I started as a software engineer in probably one of the most process driven company, motorola. Trouble was it can be very heavy sometimes, and it turns out that you only spend 10% of your time coding. the rest is left for process maintenance, reviews, etc ..
Applied then for an internet agency where nobody knew what a process was. What I then realised is that a process helps you focusing on what is important: improving performances - if something goes wrong, this means that either a team or an individual hasn't followed the process, or it means that the process is wrong - you meet then , and suggest changes to improve it. quite simple...very hard to convince people about that when they have learnt the hard way: if something goes wrong, point at some else before anybody can point at you.
Decided then to Set up Jazar. We have set up simple processes (such as simple software development process, following roughly the V cycle, a way to manage feedbacks and reviews, control of customer acquisition), and now keep imporving the process.
We have just release the Version 1 of our content management system, completed box and integration testing, run "alpha" testing (in house integration), and are ready to make it available in beta version to a selected bunch of integrators. Here come the necessity to define a new process to teach our integrators: integration process or "CMS implementation model". Just pick up a nice summary from CMSwatch - here we go:
First you need to determine what sort of development cycle are you planning to use to implement the JDD (Jazar CMS) -- or any other CMS. Different cyles have different milestones. Your choices include:
Traditional Software Development Model – The Waterfall
In this model there are numerous milestones and formal documentation is a must. Use this method if your organization requires predictable, structured development. This method affords you the most control of your resources (human and financial). It’s a heavy process, however, which makes it difficult for organizations to develop systems quickly.
Prototyping Model
In this model, there are few formal milestones. The implementation team creates iterative prototypes of your system until you get it right. This might be the way for you to go if are doing your implementation in house and not not paying an integrator -- and are really not really sure of your requirements. Beware, though, you could spend a lot quickly in the system iterations.
Rapid Application Development
If you’re in a hurry and are working with a known team and a controllable budget, the Rapid Application Development approach might be right for you. The key milestones here are JAD (joint application development) sessions between the technical folks and the CM user core team. And then you undertake iterative prototypes. Each prototype is analyzed by the end user cm team and then progressive tweaks are made. RAD is a compromise between a traditional software development lifecycle and the prototyping model.
0 comments:
Post a Comment