Chapter 8. The Construction Phase

This chapter describes what Construction, the third phase of the Rational Unified Process lifecycle, is all about (see Figure 8.1). While you read this chapter, remember that you need to decide how formally you want to capture artifacts: This could be done in your head, on a whiteboard, or in a model or document. Nothing can replace common sense, and you will need to make a judgment call as to what fits your project the best.

Figure 8.1. The Construction Phase. Construction is the third phase of the RUP lifecycle; it has a well-defined set of objectives and is concluded by the Lifecycle Architecture Milestone. Use these objectives to help you decide which activities to carry out and which artifacts to produce.

graphics/08fig01.gif

Elaboration ended with the internal release of a baselined, executable architecture, which allowed you to address major technical risks, such as resource contention risks, performance risks, and data security risks, by implementing and validating actual code. During the Construction phase, you focus heavily on detailed design, implementation, and testing to flesh out a complete system.

So what is left to do? Actually, the vast majority of the work. Many use cases have not been implemented at all, and the ones that have are typically only partially implemented ”just enough to validate some hypothesis or to mitigate a risk. Subsystems have been defined and interfaces implemented, but only a very small subset of the underlying code (handling the business logics, the alternative flows of events, and error handling) has been implemented. As you implement more and more functionality, you will fine-tune the requirements. So, among other things, there is a lot of requirements tuning and detailed design, implementation, and testing to be done in Construction (see Figure 8.2).

Figure 8.2. Work Distribution over the RUP Phases. In Construction, the emphasis shifts toward requirements tuning and detailed design, implementation, and testing. You also have a strong focus on deployment toward the latter part of the phase. Configuration and Change Management are now used routinely on all aspects of the project.

graphics/08fig02.gif

In fact, the Construction phase is typically the most time-consuming . As we will discuss in more detail in the section Staffing the Project, in Chapter 12, on average, 65 percent of overall effort and 50 percent of overall schedule time are spent in Construction (note that these figures can vary greatly from project to project).

Even though most major technical risks were addressed during Elaboration, new risks will continually pop up in Construction, which you need to address. In general, however, these risks should have a smaller impact on the overall architecture. If not, it indicates that you did not do a good job during Elaboration.

During Construction, you focus on developing high-quality code cost-effectively. You take advantage of architectural mechanisms to accelerate the production of code. Especially for larger projects, ensuring architectural integrity, parallel development, Configuration and Change Management, and automated testing become primary skills to ensure success. You leverage the baselined architecture that you produced in Elaboration to allow you to scale up the project and add additional people as required.

As you design, implement, and test more and more functionality, you will continuously renegotiate especially detailed requirements to determine what is the right functionality to deliver. You will increasingly focus on what is the right balance between quality, scope, time, and "feature polishing" (choosing the right balance between producing barely usable features and perfecting a solution that already is good enough ”also referred to as "gold plating ").



The Rational Unified Process Made Easy(c) A Practitioner's Guide to Rational Unified Process
Programming Microsoft Visual C++
ISBN: N/A
EAN: 2147483647
Year: 2005
Pages: 173

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net