SOFTWARE IN PRACTICE
A configuration management process that confirms the integrity of a systems product prior to delivery. There are two types of configuration audits:
Who Conducts Configuration Audits?
Why Audit the Configuration?
Configuration audits are conducted at the end of each life cycle phase. They verify that:
What Can Happen If You Don't Audit the Configuration
Scenario 1 - Missing Features
A multi million dollar system is shipped to a customer with three important features missing. The customer's business is disrupted. The missing features were clearly specified in the Contract Software Requirements Specification. The customer successfully sues the developer for damages.
Solution: Set up an independent group within the project to determine that the software product complies with its specifications as it is being developed and on delivery. A thorough functional configuration audit would have kept this company out of court.
Scenario 2 - An Unmaintainable System
A steel company installs a complex control system in their rolling mill. Seven years later the computer hardware platform ceases to be supported by its supplier. The company initiates a project to refactor the software for a new hardware platform. After searching the archives the project team realises that they cannot guarantee that the source code on file exactly matches the executables running on the operational system. Further, the requirements specifications and design descriptions have been lost.
They decide to redesign the system from scratch. What should have been a three man month project is transformed into a five-man year monolith.
Solution: Prior to commissioning the system this company should have conducted a physical configuration audit to confirm that:
Failure to perform these simple checks routinely costs companies millions of dollars.