|I l @ ve RuBoard|
Control for an iterative and incremental life cycle is supported by employing the Rational Unified Process ”an extensive set of guidelines that address the technical and organizational aspects of software development focusing on requirements analysis and design.
The Rational Unified Process is structured along two dimensions:
Both dimensions must be taken into account for a project to succeed.
Structuring a project along the time dimension involves the adoption of the following time-based phases:
Structuring the project along the process component dimension includes the following activities:
Figure 1-4 shows how the process components are applied to each time-based phase.
Figure 1-4. The Development Process
Each activity of the process component dimension typically is applied to each phase of the time-based dimension. However, the degree to which a particular process component is applied is dependent upon the phase of development. For example, you may decide to do a proof of concept prototype during the Inception Phase, and thus, you will be doing more than just capturing requirements (you will be doing the analysis, design, implementation, and test needed to complete the prototype). The majority of the analysis process component occurs during the Elaboration Phase. However, it is also advisable to complete the first few iterations of the system during this phase. These first few iterations typically are used to validate the analysis decisions made for the architecture of the system. Hence, you are doing more than just analyzing the problem. During the Construction Phase of development, the system is completed as a series of iterations. As with any type of development structure, things always crop up as the system is built; thus, you are still doing some analysis.
The diagram is meant to be a guideline for the life cycle of your project. The main point is if you are still trying to figure out what you are supposed to be building as you are writing the code, you are probably in trouble. You should also note that testing is applied throughout the iteration process ”you do not wait until all the code is done to see if it all works together!
This book uses a simplified version of the Rational Unified Process, which concentrates on the use of the UML to capture and document the decisions made during the Inception and Elaboration phases of development. The last few chapters lightly cover construction of the system. Although testing is a very integral part of system development, it is beyond the scope of this book.
|I l @ ve RuBoard|