Project Management with the IBM Rational Unified Process: Lessons From The Trenches
| A project's readiness for the Construction phase is largely determined by what happened in the Elaboration phase. In some respects, the shift from the Elaboration phase to the Construction phase is subtle. In other respects, it is a major change in emphasis. Simply stated, during Elaboration, risk reduction is emphasized. This task is accomplished through choosing a suitable architecture for the system and testing it by implementing the requirements that affect the architecture. The project is ready to move into the Construction phase after the following two things happen:
Staffing-wise, Construction is the phase in which the bulk of the product funds and resources are consumed. If the project is truly ready for the Construction phase, the team will settle into a smooth, rhythmic pattern, somewhat resembling an assembly line. If the project and team are not ready for Construction, they lose forward momentum while their "burn rate" (the rate at which money and resources are being consumed) is at its highest. This is a difficult situation from which to recover. Although the architecture is perhaps the most significant risk that must be mitigated during Elaboration, it is by no means the only risk. For example, is the project infrastructure ready to support the Construction phase? Is the entire team in place, and have they received any applicable training? What about the software development environment and associated tools? Assessing Project Readiness for Construction: Checklists
When the project is believed to be approaching the end of the Elaboration phase, it is useful to hold a group meeting. The people in the following roles should be present:
The key topic of the meeting is to determine whether the objectives and exit criteria of the Elaboration phase have been reached. During the meeting, discuss the items in the following checklists. Checklist for the Product in Development
Has the architecture been validated against the systems supplemental requirements? For example, if there is a requirement that the system must support 1,000 users, and that response time with 1,000 users must be within 2 seconds, has the architecture been demonstrably proven to meet the requirement? Have all other risks, in addition to the systems architecture, been identified and mitigated? At the very least, a plan should exist for any significant risks that are not mitigated by the conclusion of Elaboration. Checklist for the Project Environment and Staffing
Have all the necessary software development tools been acquired and installed? Is the staff proficient with the tools and technologies used on the project, or have they received training? Is any Commercial Off-The-Shelf (COTS) software required? If so, has it been acquired and set up? For some COTS software, setup and configuration may not be trivial. The software should be ready for use so that the team can be productive with it. Checklist for the Customer
Have the end users reviewed the systems major artifacts, such as the user interface design? Have they signed off, signifying their approval? These checklists are not exhaustive, but they cover the major areas. The importance of performing a thorough, accurate self-assessment cannot be overemphasized. Resist the temptation to plunge into the Construction phase until you know the status of these issues. |
Категории