Purpose:

Establish and maintain the integrity of work products using configuration identification, configuration control, configuration status accounting, and configuration audits.

Objective:

Establishes organizational expectations for establishing and maintaining baselines, tracking and controlling changes to work products (under configuration management), and establishing and maintaining the integrity of the baselines.

Description:

The Configuration Management process involves the following activities:

    • Identifying the configuration of selected work products that compose baselines at given points in time
    • Controlling changes to configuration items
    • The building or providing specifications to build work products from the configuration management system
    • Maintaining the integrity of baselines
    • Providing accurate status and current configuration data to developers, end users, and customers

The work products placed under configuration management include the products that are delivered to the customer, designated internal work products, acquired products, tools, and other items used in creating and describing these work products.

Examples of work products that can be placed under configuration management include the following:

    • Hardware and equipment
    • Drawings
    • Product specifications
    • Tool configurations
    • Code and libraries
    • Compilers
    • Test tools and test scripts
    • Installation logs
    • Product data files
    • Product technical publications
    • Plans
    • User stories
    • Iteration backlogs
    • Process descriptions
    • Requirements
    • Architecture documentation and design data
    • Product line plans, processes, and core assets

Acquired products may need to be placed under configuration management by both the supplier and the project. Provisions for conducting configuration management should be established in supplier agreements. Methods to ensure that data are complete and consistent should be established and maintained.

Configuration management of work products can be performed at several levels of granularity. Configuration items can be decomposed into configuration components and configuration units. Only the term “configuration item” is used in this process area. Therefore, in these practices, “configuration item” may be interpreted as “configuration component” or “configuration unit” as appropriate. Baselines provide a stable basis for the continuing evolution of configuration items.

An example of a baseline is an approved description of a product that includes internally consistent versions of requirements, requirement traceability matrices, design, discipline-specific items, and end-user documentation.

Baselines are added to the configuration management system as they are developed. Changes to baselines and the release of work products built from the configuration management system are systematically controlled and monitored via the configuration control, change management, and configuration auditing functions of configuration management. This process applies not only to configuration management on projects but also to configuration management of organizational work products such as standards, procedures, reuse libraries, and other shared supporting assets. Configuration management is focused on the rigorous control of the managerial and technical aspects of work products, including the delivered product or service.

This process covers the practices for performing the configuration management function and is applicable to all work products that are placed under configuration management.

For product lines, configuration management involves additional considerations due to the sharing of core assets across the products in the product line and across multiple versions of core assets and products.

In Agile environments, configuration management is important because of the need to support frequent change, frequent builds (typically daily), multiple baselines, and multiple configurations management-supported workspaces (e.g., for individuals, teams, and even for pair programming). Agile teams may get bogged down if the organization doesn’t: 1) automate configuration management (e.g., build scripts, status accounting, integrity checking) and 2) implement configuration management as a single set of standard services. At its start, an Agile team should identify the individual who will be responsible to ensure configuration management is implemented correctly. At the start of each iteration, configuration management support needs are re-confirmed. configuration management is carefully integrated into the rhythms of each team with a focus on minimizing team distraction to get the job done

Entrance Criteria:

  • Approved Project

Exit Criteria:

  • Configuration item(s) have been formally agreed upon
  • Project has developed a Configuration Management Plan and obtained approval
  • Baselines have been established and maintained

Process and Procedures:

Tailoring Guidelines:

Using Online-PMO’s Configuration Management process, organizations can tailor the process to fit their organization, or may choose to purchase a configuration management process and procedures rather than develop them.   

Process Verification Record(s):

  • Trends in the status of configuration items
    • Stored By: [PMO Director]
  • Configuration audit results
    • Stored By: [PMO Director]
  • Change request aging reports
    • Stored By: [PMO Director]

Measure(s):

  • Number of changes to configuration items
    • Maintained By: <?>
    • Submitted By: <?>
    • Frequency of Submission: <?>
  • Number of configuration audits conducted
    • Maintained By: <?>
    • Submitted By: <?>
    • Frequency of Submission: <?>
  • Schedule of CCB or audit activities
    • Maintained By: <?>
    • Submitted By: <?>
    • Frequency of Submission: <?>

References: