Configuration management (CM) is a field of management that focuses on establishing and maintaining consistency of a product's performance and its functional and physical attributes with its requirements, design, and operational information throughout its life.[1] For information assurance, CM can be defined as the management of security features and assurances through control of changes made to hardware, software, firmware, documentation, test, test fixtures, and test documentation throughout the life cycle of an information system.[2]
Contents
1 History
2 Software configuration management
3 Computer hardware configuration management
4 Maintenance systems
4.1 Preventative maintenance
4.2 Predictive maintenance
5 Standards
6 Guidelines
7 See also
8 References
1. History
Configuration management was first developed by the United States Department of Defense in the 1950s as a technical management discipline. The concepts have been widely adopted by numerous technical management models, including systems engineering, integrated logistics support, Capability Maturity Model Integration (CMMI), ISO 9000, Prince2 project management methodology, COBIT, Information Technology Infrastructure Library (ITIL), product lifecycle management, and application lifecycle management. Many of these models have redefined configuration management from its traditional holistic approach to technical management. Some treat configuration management as being similar to a librarian activity, and break out change control and change management as separate areas of discipline (as Prince 2); some break out the traditional elements of revision control and engineering release into separate management disciplines; others treat CM as an overarching management discipline.
2. Software configuration management
The traditional software configuration management (SCM) process is looked upon as the best solution to handling changes in software projects. It identifies the functional and physical attributes of software at various points in time, and performs systematic control of changes to the identified attributes for the purpose of maintaining software integrity and traceability throughout the software development life cycle.
The SCM process further defines the need to trace changes, and the ability to verify that the final delivered software has all of the planned enhancements that are supposed to be included in the release. It identifies four procedures that must be defined for each software project to ensure that a sound SCM process is implemented. They are:
Configuration identification
Configuration control
Configuration status accounting
Configuration authentication
These terms and definitions change from standard to standard, but are essentially the same.
Configuration identification is the process of identifying the attributes that define every aspect of a configuration item. A configuration item is a product (hardware and/or software) that has an end-user purpose. These attributes are recorded in configuration documentation and baselined. Baselining an attribute forces formal configuration change control processes to be effected in the event that these attributes are changed.
Configuration change control is a set of processes and approval stages required to change a configuration item's attributes and to re-baseline them.
Configuration status accounting is the ability to record and report on the configuration baselines associated with each configuration item at any moment of time.
Configuration audits are broken into functional and physical configuration audits. They occur either at delivery or at the moment of effecting the change. A functional configuration audit ensures that functional and performance attributes of a configuration item are achieved, while a physical configuration audit ensures that a configuration item is installed in accordance with the requirements of its detailed design documentation.
Configuration management is widely used by many military organizations to manage the technical aspects of any complex systems, such as weapon systems, vehicles, and information systems. The discipline combines the capability aspects that these systems provide an organization with the issues of management of change to these systems over time.
Outside of the military, CM is equally appropriate to a wide range of fields and industry and commercial sectors
3. Computer hardware configuration management
Computer hardware configuration management is the process of creating and maintaining an up-to-date record of all the components of the infrastructure, including related documentation. Its purpose is to show what makes up the infrastructure and illustrate the physical locations and links between each item, which are known as configuration items.
Computer hardware configuration goes beyond the recording of computer hardware for the purpose of asset management, although it can be used to maintain asset information. The extra value provided is the rich source of support information that it provides to all interested parties. This information is typically stored together in a configuration management database (CMDB).
The scope of configuration management is assumed to include, at a minimum, all configuration items used in the provision of live, operational services.
Computer hardware configuration management provides direct control over information technology (IT) assets and improves the ability of the service provider to deliver quality IT services in an economic and effective manner. Configuration management should work closely with change management.
All components of the IT infrastructure should be registered in the CMDB. The responsibilities of configuration management with regard to the CMDB are:
identification
control
status accounting
verification
The scope of configuration management is assumed to include:
physical client and server hardware products and versions
operating system software products and versions
application development software products and versions
technical architecture product sets and versions as they are defined and introduced
live documentation
networking products and versions
live application products and versions
definitions of packages of software releases
definitions of hardware base configurations
configuration item standards and definitions
The benefits of computer hardware configuration management are:
helps to minimize the impact of changes
provides accurate information on CIs
improves security by controlling the versions of CIs in use
facilitates adherence to legal obligations
helps in financial and expenditure planning
4. Maintenance systems
Configuration management is used to maintain an understanding of the status of complex assets with a view to maintaining the highest level of serviceability for the lowest cost. Specifically, it aims to ensure that operations are not disrupted due to the asset (or parts of the asset) overrunning limits of planned lifespan or below quality levels.
In the military, this type of activity is often classed as "mission readiness", and seeks to define which assets are available and for which type of mission; a classic example is whether aircraft onboard an aircraft carrier are equipped with bombs for ground support or missiles for defense.
4.1 Preventative maintenance
Understanding the "as is" state of an asset and its major components is an essential element in preventative maintenance as used in maintenance, repair, and overhaul and enterprise asset management systems.
Complex assets such as aircraft, ships, industrial machinery etc. depend on many different components being serviceable. This serviceability is often defined in terms of the amount of usage the component has had since it was new, since fitted, since repaired, the amount of use it has had over its life and several other limiting factors. Understanding how near the end of their life each of these components has been a major undertaking involving labor intensive record keeping until recent developments in software.
4.2 Predictive maintenance
Many types of component use electronic sensors to capture data which provides live condition monitoring. This data is analyzed on board or at a remote location by computer to evaluate its current serviceability and increasingly its likely future state using algorithms which predict potential future failures based on previous examples of failure through field experience and modeling. This is the basis for "predictive maintenance".
Availability of accurate and timely data is essential in order for CM to provide operational value and a lack of this can often be a limiting factor. Capturing and disseminating the operating data to the various support organizations is becoming an industry in itself.
The consumers of this data have grown more numerous and complex with the growth of programs offered by original equipment manufacturers (OEMs). These are designed to offer operators guaranteed availability and make the picture more complex with the operator managing the asset but the OEM taking on the liability to ensure its serviceability. In such a situation, individual components within an asset may communicate directly to an analysis center provided by the OEM or an independent analyst.
5. Standards
ANSI/EIA-649-1998 National Consensus Standard for Configuration Management
ISO 10007:2003 Quality management systems - Guidelines for configuration management
Federal Standard 1037C
GEIA Standard 836-2002 Configuration Management Data Exchange and Interoperability
IEEE Std. 828-1998 IEEE Standard for Software Configuration Management Plans
MIL-STD-973 Configuration Management (canceled, but still good reference)
STANAG 4159 NATO Material Configuration Management Policy and Procedures for Multinational Joint Projects
STANAG 4427 Introduction of Allied Configuration Management Publications (ACMPs)
6. Guidelines
IEEE Std. 1042-1987 IEEE Guide to Software Configuration Management
MIL-HDBK-61A CONFIGURATION MANAGEMENT GUIDANCE 7 February 2001
ISO 10007 Quality management - Guidelines for configuration management
GEIA-HB-649 - Implementation Guide for Configuration Management
ANSI/EIA-649-1998 National Consensus Standard for Configuration Management
EIA-836 Consensus Standard for Configuration Management Data Exchange and Interoperability
ANSI/EIA-632-1998 Processes for Engineering a System
7. See also
Change detection
Comparison of open source configuration management software
Dependency
List of software engineering topics
Netconf
Network management
Programming tool
Revision control
Software configuration management
Software engineering
8. References
^ MIL-HDBK-61A CONFIGURATION MANAGEMENT GUIDANCE 7 February 2001[1]
^ National Information Systems Security Glossary
^ ANSI/EIA-649-1998 National Consensus Standard for Configuration Management