Software Configuration Control

By June 20, 2015

 

The term Configuration Control is defined in Section 1.1 of this document. Software Configuration Control includes the following objectives:

• Procedures for changing baselines
• Change requests approvals
• Responsibilities for change control
• Change control process
• Request for Change process
• Level of control
• Management of release documentation
• Configuration control tools and techniques
4.1 Procedures for Changing Baselines

Activities performed in the SCM Plan for processing changes include:

• Defining the information needed for approving the requested change
• Identifying the review process and how communication of information is completed
4.2 Change Requests and Approvals

This SCM Plan contains documented procedures for originating change requests, enforcing the flow of the change process, capturing CCB decisions, and reporting change process information. Included in this SCM Plan is a prioritization process for software change requests.

The software change request process in this SCM Plan requires the use of supporting tools and procedures. Basic tools used in this SCM Plan are:

• Remedy flow and procedures
• Rational software
• Serena Team Track
• Microsoft Excel
• Microsoft Word
4.3 Change Control Process

The purpose of the CCB/LCB is to control changes that impact schedule, function, and the configuration of the system as a whole.

The change control processes described in this SCM Plan include the following activities:

• Providing direction of the entire configuration management effort
• Resolving all problems and situations that arise during the effort
• Using the SCM Plan as its primary decision-making resource
• Taking into account organizational management considerations for decision making
• Initiating and controlling all activities from the beginning to the approval of the baselines for SCM establishment
• Making decisions on which products should be baselined or managed, the methods to be used, and the order in which they should be done
4.4 Request for Change (RFC) Process

This SCM Plan supports the DTMB RFC process. The Configuration Management Manager (CMM) is responsible for ensuring that all LCB and ECB processes are followed.
4.5 Level of Control

Control of CIs varies depending on environment, action, and responsible party. The following tables define appropriate levels of control:

Development Environment

Action Control
Check in Source Code Developers, Librarians
Promote Source Code Automatic when checked in
Check in Project Documentation Project Manager, Developers, Librarians
Check in Application Documentation Project Manager, Developers, Librarians

System Test Environment

Action Control
Check in Source Code Check in to system test not allowed
Authorize Code Promotion to system test CCB
Promote Source Code to system test Librarian
Define Release CCB
Authorize Baseline Label CCB
Label Baseline Librarian
Authorize Environment Build CCB
Build Environment Technical Operations

User Acceptance Test (UAT) Environment

Action Control
Check in Source Code Check in to UAT not allowed
Authorize Code Promotion to UAT CCB
Promote Source Code to UAT Librarian
Define Release CCB
Authorize Baseline Label CCB
Label Baseline Librarian
Authorize Environment Build CCB
Build Environment Technical Operations

Production Environment

Action Control
Check in Source Code Check in to production not allowed
Define Release CCB
Authorize Baseline Label CCB
Label Baseline Librarian
Authorize Environment Build CCB
Build Environment Technical Operations
4.6 Management of Release Documentation

The following documents are required for the release to production:

• Installation Plan (including a backout plan)
• Release notes
• Updated user documentation
• Training materials
4.7 Configuration Control Tools and Techniques

These SCM processes use a basic tool set to manage access to the repositories, to process change requests and to report status. The basic tool set includes:

• Basic database management systems
• Report generators
• Means for maintaining separate dynamic and controlled repositories
• File system for managing the check in and check out of units, for controlling compilations, and capturing the resulting products

Specific tools include:

• Infrastructure Configuration Management Build Application
• Remedy
• Issue Tracker
• Oracle Repository
• Serena Version Manager

The tools listed in this SCM Plan provide support to the Configuration Control and Release processes.