Introduction
The purpose of the Configuration Management Plan is to describe how configuration management (CM) will be conducted throughout the project lifecycle. This includes documenting how CM is managed, roles and responsibilities, how configuration item (CI) changes are made, and communicating all aspects of CM to project stakeholders. Without a documented configuration management plan it is likely that CIs may be missed, incomplete, or unnecessary work is done because of a lack or version and document control. While a configuration management plan is important for all projects, this is especially so for software and other information technology (IT) projects.
The NexGen Project will utilize existing Smith Company network infrastructure and add numerous capabilities in order to allow for remote access, direct ability to modify LAN/WAN environments, and improved monitoring of network tools and devices. As a result, Smith Company’s ability to perform network maintenance and updates will be significantly improved. Additionally, Smith Company will improve its ability to monitor all network diagnostics in real time and streamline workforce efficiency. Cost savings will be realized by greatly reducing the amount of time associated with competing network tasks and allowing Smith Company employees to perform work that was previously outsourced.
In order to effectively manage the NexGen Project, a coordinated Configuration Management (CM) Plan is needed. This plan will establish CM roles and responsibilities and describe how the NexGen Project team will track, implement, and communicate configuration items (CIs) and changes throughout the project lifecycle.
Roles and Responsibilities
Roles and responsibilities is an important part of any Configuration Management Plan. In order to communicate a clear understanding of expectations, these roles and responsibilities must be clearly defined. Any work that will be performed as part of the plan must be assigned to someone and this section allows us to illustrate who owns these tasks and to communicate them to all project stakeholders.
The following roles and responsibilities pertain to the CM Plan for Smith Company’s NexGen Project.
Configuration Control Board (CCB)
The CCB is comprised of the NexGen Project Sponsor, Project Manager, Configuration Manager, and the Lead Engineer for the configuration item (CI) under consideration. The CCB is responsible for the following:
- Review and approve/reject configuration change requests
- Ensure all approved changes are added to the configuration management database (CMDB)
- Seeking clarification on any CIs as required
Project Sponsor
The Project Sponsor is responsible for:
- Chairing all CCB meetings
- Providing approval for any issues requiring additional scope, time, or cost
Project Manager
The Project Manager is responsible for:
- Overall responsibility for all CM activities related to the NexGen project
- Identification of CIs
- All communication of CM activities to project stakeholders
- Participation in CCB meetings
- Re-baselining, if necessary, any items affected by CM changes
Configuration Manager
The Configuration Manager will be appointed by the Program Management Office (PMO). The Configuration Manager is responsible for:
- Overall management of the CMDB
- Identification of CIs
- Providing configuration standards and templates to the project team
- Providing any required configuration training
Lead Engineers
All identified CIs will be assigned to a Lead Engineer. The assigned Lead Engineer is responsible for:
- Designating a focus group to develop the change request
- Ensure all change requests comply with organizational templates and standards prior to the CCB
- Identification of CIs
Engineers
Each CI will be assigned to a focus group consisting of several engineers. Each member of the focus group will provide input to the change request prior to submitting the change request to the lead engineer for review and presentation at the CCB
Configuration Control
Configuration Control is the process of systematically controlling and managing all steps of configuration throughout the project lifecycle. In order to effectively handle project Configuration Management it is important to use a process which ensures only necessary configuration changes are made. Additionally, like any change management efforts, configuration change decisions must be made with the understanding of the impact of the change. Configuration control is an important part of the Configuration Management Plan.
The NexGen Project will use a standardized configuration control process throughout the project lifecycle in order to ensure all CIs are handled in a consistent manner and any approved changes are fully vetted regarding impact and communicated to stakeholders.
As CIs are identified by the project team, the Configuration Manager will assign a CI name and the CI will be entered into the CMDB in an “initiate” status. The CI will then be assigned to an engineer focus group. Each member of a CIs focus group will have the ability to access the CI through the CMDB, make changes and edits, and enter the CI back into the CMDB with a description of the change/edit annotated in the CMDB log.
It is imperative that for any software changes testing is conducted by the focus group in order to validate any changes made. The Lead Engineer assigned to manage the focus group is responsible for ensuring that testing has been conducted, changes are entered into the CMDB log, and that all changes/edits are saved properly into the CMDB. The Lead Engineer is also responsible for assigning new version numbers and CMDB status for any changes made by his/her assigned focus group.
Many times a CI will have a relationship with one or more other CIs within a project. The Lead Engineer, CM, and Project Manager will work together to ensure these relationships are fully understood. The Lead Engineer and CM will then be responsible for illustrating these relationships and co-dependencies in the CMDB to ensure a full understanding of each CI and how they relate to one another.
Any configuration changes which are identified by the project team or stakeholders must be captured in a configuration change request (CCR) and submitted to the CCB. The CCB will review, analyze, and approve/deny the request based on the impact, scope, time, and cost of the proposed change. If the change is approved, the project requirements will be re-baselined (if necessary) and all changes will be communicated to the project team and stakeholders by the Project Manager. Denied CCRs may be re-submitted with additional or new information for re-consideration by the CCB.
Configuration Management Database (CMDB)
A Configuration Management Database (CMDB) is where the organizations configuration information is stored. CMDB is a term which originates from Information Technology Infrastructure Library (ITIL) which provides a framework for best practices in IT services management. The CMDB contains not only the configuration information for assets but also information about the assets such as physical location, ownership, and its relationship to other configurable items (CIs). It is important to address the CMDB in the Configuration Management Plan.
A key component to configuration management is having a well defined and followed process for both document and data management.
The Configuration Management Database (CMDB) will be the centralized repository for all configuration information for the NexGen project. The CMDB provides a common platform for the project team to edit, change, revise, and review CIs and also to ensure all documents and data are updated with the latest revision and release formats.
Access to the CMDB will be granted and governed by standard UNIX permissions. Two types of CMDB access will be granted for the NexGen project:
- Full read and write access will be granted to the CM, Project Manager, Lead Engineers, and Engineers. These individuals will be authorized to access the CMDB to make changes, edit documents and data, and review and approve versions and CI status.
- Read only access will be granted to the Project Sponsor and all other stakeholders. This access will allow these individuals to view all CIs and CI data but they will not be authorized to make any changes. If these individuals identify the need for a change or edit they will notify the CM who will review the notification and provide feedback.
The CMDB will provide assurance that members of the project team are always working off of the latest version of software, data, and documentation. However, it is important to maintain the history of these assets throughout the project lifecycle. As these assets are changed and updated, the Lead Engineer of the CI’s assigned focus group will be responsible for updating the status of the CI and providing new revision numbering. This numbering will be done in accordance with Smith Company’s standard revision control numbering process wherein higher version numbers indicate more recent versions of the software, data, or documentation.
Configuration Status Accounting
Accounting for the status of the configuration involves the collection, processing, and reporting of the configuration data for all CIs at any given time. This also includes management stored configuration information held in the Configuration Management Database (CMDB). This may include approved configuration documents, software, data, and their current version numbers; build reports; status of any submitted changes; or any discrepancies and status identified through configuration audits.
It is important that for the NexGen Project, the Project Sponsor and Vice President of Technology have the ability to review configuration status at any given time. The Project Manager will also submit weekly reports, to include configuration status, every Friday. These reports will consist of the following information as part of the configuration status section:
1) Change requests
a. Aging – How long change requests have been open
b. Distribution – number of change requests submitted by owner/group
c. Trending – what area(s) are approved changes occurring in
2) Version Control
a. Software
b. Hardware
c. Data
d. Documentation
3) Build Reporting
a. Files
b. CI relationships
c. Incorporated Changes
4) Audits
a. Physical Configuration
b. Functional Configuration
Prior to any new software releases, the CM will work with each Lead Engineer to ensure all CIs are updated with latest release versions.
Configuration Audits
Audits are an important part of project and configuration management, so it should be contained in the Configuration Management Plan. The purpose of an audit is to ensure that established processes are being followed as intended and to provide an opportunity to correct any deviations from these processes. Many people hold a negative view of audits; however, when used appropriately, audits are an effective management and quality assurance tool.
Configuration audits will be an ongoing part of the NexGen project lifecycle. The purpose of the configuration audit is to ensure all team members are following the established procedures and processes for configuration management. Project audits for the NexGen Project will occur prior to any major software release or at the Project Manager or Sponsor’s discretion if they determine the need for one.
All NexGen configuration audits will be performed by the CM. Throughout the project the CM works closely with Lead Engineers to ensure that all configuration processes and procedures are being followed. As part of the configuration audit the CM will perform the following tasks:
- Establish an audit environment in the CMDB
- The CM will copy all of the latest software, data, and document versions into the audit environment
- The CM will ensure all versions are correctly numbered and that version control has been performed properly
- The CM will analyze historical versions and timestamps of all software, data, and documents to ensure all changes/edits were properly recorded and captured
- The CM will copy latest software versions and conduct software testing to ensure requirements are being met
- The CM will ensure all required artifacts are present and current in the CMDB
- The CM will ensure all approved CCRs have been incorporated into the project and are recorded in the CMDB
Once the audit has been performed, the Configuration Manager will compile his/her audit findings. For each finding, the CM must work with the Project Manager/Team to identify the corrective action(s) necessary to resolve the discrepancy and assign responsibility for each corrective action. Upon completion of the project audit and findings, the CM will note all discrepancies and compile a report to be presented to the Project Manager, Sponsor, and VP of Technology.