Role: Integrator
This role leads the planning and execution of implementation element integration to produce builds.
Relationships
Performs: Responsible for:
Additionally Performs:Modifies:
Main Description

Implementers deliver their tested Implementation Elements into an integration workspace, whereas integrators combine them to produce a build. An integrator is also responsible for planning the integration, which takes place at the subsystem and system levels, with each having a separate integration workspace. Tested elements are delivered from an implementer's private development workspace into a subsystem integration workspace, whereas integrated implementation subsystems are delivered from the subsystem integration workspace into the system integration workspace. 

Further Reading

See Code Complete - A Practical Handbook of Software Construction [MCO93].

Properties
Multiple Occurrences
Optional
PlannedYes
Staffing
Skills

The appropriate skills and knowledge for this role include:

  • knowledge of the system or part of the system to be integrated. In particular, the integrator needs to know the interdependencies between Implementation Elements and the inter-dependencies between Implementation Subsystems, and how their development and dependencies are expected to change over time.
  • familiarity with integration tools

Integrators need to have good coordination skills, as he/she often works with multiple developers to ensure a successful integration.

Assignment Approaches

It may sometimes be appropriate for an individual acting as an integrator to also act as tester. For example, if the project is small or the integration is at the subsystem level, it may be an effective use of resources to have the integrator and tester be the same team member. Indeed, for subsystem-level integration and test, a single individual might play the role of implementer, integrator, and tester. At the system level, however, we recommend that integration and testing are performed by an independent team.

More Information