Workflow

Figure 11-2 shows an implementation workflow, giving an overview of all activities.

Figure 11-2. An implementation workflow

graphics/11fig02.gif

The main work to Structure the Implementation Model is done early in the elaboration phase. The goal is to ensure that the implementation model is organized in such a way as to make the development of components and the build process as conflict-free as possible. A well-organized model will prevent configuration management problems and will allow the product to be built up from successively larger integration builds.

For each iteration, you would do the following:

  • Plan which subsystems should be implemented, and the order in which the subsystems should be integrated in the current iteration. This is described in Plan the Integration.

  • For each subsystem, the responsible implementer plans the integration of the subsystem, that is, defines in which order to implement the classes.

  • The implementers implement the classes and objects in the design modelwrite source code, adapt existing components, compile, link, and execute. If the implementers discover defects in the design, they submit rework feedback on the design.

  • The implementers also fix code defects and perform unit tests to verify the changes. Then the code is reviewed to ensure quality and that the programming guidelines are followed.

  • If several implementers work (as a team) in the same implementation subsystem, one of the implementers is responsible for integrating the new and changed components from the individual implementers into a new version of the implementation subsystem. The integration results in a series of builds in a team integration area. Each build is then integration tested by an integration tester. The latest version of the subsystem is released for system integration.

  • Following the Integration Build Plan, the System Integrator integrates the system, by adding the released subsystems into an integration area and creating builds. Each build is then integration tested by an integration tester. After the last increment, the build can be system tested by a system tester.

Implementation is tied closely to design, and there are clear tracing links from design elements to implementation elements (for example, classes to code).

Round-trip engineering, which is possible only with the use of certain programming languages and tools, such as Rational Rose, and for some types of applications, will allow a close tie between design and implementation. The person acting alternately as the designer and the implementer can either modify the design model and regenerate the corresponding code or modify the implementation code and then alter the design to match the modification. This closes a gap in the process and helps prevent errors in translating the design or a design's getting out of sync with the implementation and therefore not being trusted by the implementers.

For information about integration test and system tests, see Chapter 12, The Test Discipline. Chapter 13, The Configuration and Change Management Discipline, discusses the activity of building the product.



The Rational Unified Process. An Introduction
Blogosphere: Best of Blogs
ISBN: B0072U14D8
EAN: 2147483647
Year: 2002
Pages: 193

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