The first phase would correspond to RUP's Inception and Elaboration phases. The duration of this phase can be anywhere from one week to three months, depending on the scale of the project. The team can be as small as two people - one architect and one business analyst - and the occasional help of a user-interface designer.
The goals of this phase would be as follows:
- Business requirements analysis.
- Architectural design and prototyping.
- Project plan, including schedule and cost estimates.
The benefits to the client will be as follows:
- Less "padding" on construction estimates.
- A chance to decide if the project is worth pursuing before engaging in a more expensive commitment.
- The client can choose to use a different contracting firm than the ones that did the initial phase. The client will have business requirements, an initial codebase, and a project plan which another contractor can start with.
I'm trying to think of a good name for this phase, something that business people and traditional IT people can appreciate quickly. I've thought of calling it the "Feasibility Phase" (ugh), the "Business Analysis and Design Phase" (B.A.D.?), or the "Analysis and Architecture Phase" (A.A.A.? A.A.P.?).
The second phase, would map to RUP's Construction and Transition phases. Again, this is not waterfall. Delivery will be in regular iterations, say every month or every two weeks. The client will be able to test working code after each iteration, and can thus are able to give their feedback in short cycles.
Furthermore, we allow the client the privilege to change their mind. At any point in the project, the customer can say, "I want a new feature.", and we can accomodate that, of course with a corresponding change in pricing and schedule. The iterative nature of the process will allow us to work in the new feature efficiently.
Also, we will allow the client to end the project at any iteration. We allow a client to say, "Ok, we're happy with what we'll get after this iteration. Let's not continue anymore." They will be able to do that because they have a working, usable application at the end of each iteration. It is therefore up to us to continue to bring business value to the client with each succeeding iteration. (I don't mind an abrupt end to a project, we always have lots of other pending work for people.)
The second phase can probably simply be called the "Construction Phase", even if it covers both Construction and Transition.
Update: Looks like there's a company that's already successful in doing this.
No comments:
Post a Comment