Before we set out to define configuration management, it is crucial to understand why we need it in the first place. How does it come into the play?
Let us consider a situation wherein you are working on one of the work packages. And, looking at the WBS dictionary for acceptance criteria. You have completed the development of the deliverable and sent it to the Quality Control. You are surprised to see that the quality control team rejected the deliverable. They stated that it is not meeting the acceptance criteria.
To clear the confusion, you approach the member of the quality control team. He shows you the WBS Dictionary, where acceptance criteria for the same deliverable are different. You concluded a thorough analysis of the situation. And, got to know that you were using the old version of the WBS Dictionary. To avoid such issues in the future, you need a concrete system called Configuration Management.
Now the question is, what is Configuration Management in a project? Why it is important?
PMBOK® Guide Sixth Edition Defines Configuration Management as
A subsystem of the overall project management system. It is a collection of formal documented procedures used to apply technical and administrative direction and surveillance to recognize and document the functional and physical characteristics of a product, result, service, or component; control any changes to such characteristics; record and report each change and it is implementation status; and support the audit of the products, results, or components to verify conformance to requirements. It includes the documentation, tracking systems, & defined approval levels necessary for authorizing & controlling changes.
Let’s discuss one point at a time; this would make it easier to understand the definition:
- It is a formally defined and documented procedure. It identifies and records the physical and functional characteristics of the Configurable Items.
- Once identified, it helps to control changes to the characteristics of Configurable Item
- It records the history of changes done on each configurable items
- Also, it supports the audit of these Configurable Items. We use this audit to verify conformance to the requirements
Now the question is how to implicate these points in a Project?
We need to first start from Configuration management planning, and the result of this planning could be Configuration management Plan.
What is Configuration Management Plan (CMS)?
PMBOK® Guide Sixth Edition Defines Configuration management plan as,
“The configuration management plan defines those items that are configurable, those items that are require formal change control, & the process for controlling changes to such items.”
Configuration Planning tells us the following:
- What all project items are configurable (Configurable Items CIs)
- Which all items (say Scope Statement, WBS Dictionary) needs, formal change control
- And, what would be the process of controlling changes to these items?
Configuration Management Plan also recommends:
- A tool to manage Configurable Items,
- A versioning scheme. For example, a Document Version will have two segments like aa, bb, cc, .dd. The first segment will represent the product; the second will represent deliverable, etc.
In the configuration management plan, we define a clear versioning system. It helps in the identification of baseline CIs. Like, when we have many version of Project Scope Statement, it helps to get a baseline version of Project Scope Statement.
Also, a Configuration management plan may go beyond project boundaries. Since the product we are developing may already be in existence before the project commenced. And it may also remain in existence after the project is over. A product life cycle may include many project life cycles.. In some cases, configuration management system is highly influenced by the product level configurations. And, we end up having two views of configuration management –
- Product Level configuration – Like product related artefacts e.g. product user manual. These have to be maintained by their subsequent project also.
- Project level configuration – Like WBS dictionary, project management plan etc.
What is the goal of configuration management?
The configuration management system is a subsystem of overall project management. The goal of this subsystem is to manage fundamental project constraints of scope, time, cost and quality. It is an environment needed to apply change management processes to admin all changes related to the organization (project).
We do Configuration management activities in the Perform Integrated Change Control Process. This process includes the following configuration management activities:
During configuration management planning, we identify CIs. And, while performing an integrated change control process-
We need to make sure to follow the configuration management plan for those CIs. And, as the configuration management plan records the physical and functional characteristics –
This process controls changes to these characteristics based on CMS. It helps in maintaining the integrity of those CIs.
Configuration Status Accounting
The goal of configuration status accounting is to maintain an audit trail and artifacts of all changes, including all versions of CIs. It also shows the status of each version. The status may say the following:
- CI Stage in the life cycle. Example stage could be either of one – draft, in review, approved, not effective, effective, retired, or obsolete. These stages are examples; we may have different stages based on the need of the project.
- Status of any pending changes to a CI. It shows if any changes are pending to a CI
- The status of approved changes. It ensures all necessary data are captured for a given change.
- It also reports the number of submitted change requests, how many were rejected, and why.
Let’s take an example:
If I am approving the change in the scope statement –
I need a record that the new version of this document would be coming for this approved change. And, after change implementation, the Configuration Management system will ensure that everybody gets the latest version.
We can consider Configuration status accounting as like recording the changes as they are taking place as per the configuration management plan. Like, changing the version, maintaining the version history, etc.
Configuration Verification and Audit
Following is the goal of configuration verification and audit:
It ensures that we build project CIs according to their defined documentation. These are formal audits usually conducted at least once for each release.
Now, the question is, why do we need configuration verification and audit?
We need it because:
At a defined frequency, the project team should have a process to verify and audit that configuration management plan which should be followed. Some of the verification points could be:
- is the team managing the CIs version as defined,
- Is the team maintaining the record of changes,
- Can the system produce the old version without any issues, etc?
It is not a replacement of existing reviews, inspections. It is like quality assurance team visits and formally audit to see if the Configuration management plan is followed.
PMBOK® Guide Sixth Edition defines Configuration Verification and Audit as,
Configuration verification and audits ensure the composition of a project’s configuration items is correct and that corresponding changes are registered, assessed, approved, tracked, and correctly implemented. This ensures the functional requirements defined in the configuration documentation have been met.
So, what is configuration management process?
To summarize, the entire Configuration Management process can be viewed as:
- It’s all about ensuring that we do not get into the pile of documents. Where we do not know which one is the right version and which document is compatible with the other
- Configuration management manages configurable items. In the typical project configuration; items are made of baseline plans and project documents. The items like operating procure, instruction sheets may also become a part of configurable items
- CMS also takes care about how are we going to record changes? Which system are we going to use? For how long we want to maintain history? Like a history of 5 years, six years, etc.
- For Project Management Professional (PMP)® Exam, do keep in mind that the configuration management activities (Configuration identification, Configuration status accounting, and Configuration verification and audit) are done in Perform Integrated Change Control
Also, it is crucial to understand that we don’t follow formal change for all the artifacts. It is not needed, we need to invest our energy wisely. Let’s take an example – In a project, we feel that we need formal change control for the WBS dictionary. The reason could be like many other CIs are depend on it, like
- change in acceptance criteria,
- change in test cases
- and resourcing which is related to a particular WBS dictionary
On the other hand, when we are adding or removing issues from issue log – we don’t have any direct impact. So, we decided not to do formal change control for it.
Here, next question arises – what is the difference between configuration management plan and change management plan?
Configuration management is an umbrella which includes change management. When a change is requested, we need to make sure physical and functional characteristics of CI based on Configuration management plan. And, the change request is approved or rejected based on the change management plan.
According to the Practice Standard for Project Configuration Management (On page number 17) configuration change management can be viewed as follows:
Configuration change management is usually described in the project change control plan or in a separate configuration management plan if project size and complexity justify it.
You can watch and listen to the live video presentation on configuration management here. It will help you with practical examples about how you can see the configuration management system in your project:
By now you must have completely understood the basic concepts underlying the configuration management and how does it impact the software project. Good Luck for your PMP® Certification Exam.
Enroll to our FREE PMP® Certification Introductory Program to learn more about PMP® certification