Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Workflow Detail: Integrate Each Subsystem

The purpose of this workflow detail is to integrate changes from multiple implementers to create a new consistent version of an Implementation Subsystem.
Topics - Description - Related Information - Timing - Optionality - How to Staff - Work Guidelines

Description

If several implementers work (as a team) in the same Implementation Subsystem, the changes from the individual implementers need to be integrated to create a new consistent version of the Implementation Subsystem. The integration results in series of builds in a subsystem integration workspace. Each build is then integration tested by a tester and/or an implementer executing the developer tests. Following testing, the Implementation Subsystem is delivered into the system integration workspace.

This section provides links to additional information related to this workflow detail.

Timing

Starts in Elaboration phase, recurs through Construction and Transition phases.

Optionality

Recommended for larger systems. Optional for smaller systems.

How to Staff

Integration is typically carried out by a single person (for a small project on which the build process in simple) or a small team (for a large project on which the build process is complex). The integrators need experience in software build management, configuration management, and experience in the programming language in which the components to be integrated are written. Because integration often involves a high degree of automation, expertise in operating system shell or scripting languages and tools like ‘make’ (on Unix) is also essential.

Work Guidelines

Integration work is typically automated to a large degree, with manual effort required when the build breaks. A frequent strategy is to perform automated nightly builds and some automated testing (usually at the unit level), allowing for frequent feedback from the build process.