views:

47

answers:

1

Myself and my team is taking over a DNN web application done by a software development vendor.

There are some issues like 1. redundant non-standard data / API to access to tab and configuration of a module, and 2. some other architecture related issues.

My goal is to remove things we don't need and steer the application back to DNN best practice. I also need to implement a work flow engine with DNN because at the moment the work flow process is "semi-hard-coded".

I am wondering if there are any design pattern / best practice material (especially to do with work flow) that we can follow to ease our pain and help us to prioritize work?

EDIT: the application is not designed with unit testing in mind, but I do not mind changing it as long as I can creating unit test, please help me with something about unit testing with DNN too.

Thanks in advance.

A: 

Best case would be to make a copy of the directory, clone the db, and put it separately so you can play around with it. First and foremost, upgrade to the newest version and see what happens with the bought and built modules. I had some problems with old modules that were central to operations not having or not being compatible with the newest dnn version. In all cases, a quick look on snowcovered found me alternates which turned out to be better anyway.

We're not a huge development team, but I found writing out test cases to ensure that functionality is not lost in the upgrade process helped immeasurably.

As I mentioned before, if it's homegrown code that you might not want to bring up to speed or even take over, there are a lot of modules out there that do a lot of cool stuff. Might be worth looking at a fresh install of DNN and migrating what you have to have and going from there.

Matt Cushing
Thanks @Matt, the project did not make use of any default DNN module, so only the "homegrown" code is the concern. The suggestion of test cases is a good point. BTW, do you happen to know any good resources / books on DNN with workflow and testing?
airmanx86