|
|
Papers & PresentationsSoftware Configuration Management Audits - An audit is a planned and independent evaluation of one or more products or processes to determine conformance or compliance to a set of agreed to requirements. Auditing is an “objective assurance and consulting activity designed to add value and improve an organization’s operations.” [Hutchins-03] Audits provide assurance by validating that the products and/or processes are implemented in accordance with their requirements and objectives. Audits are consulting activities because they provide on-going analysis of the degree to which those implementations are effective and efficient and they identify opportunities for continuous improvement. Audits also visibly demonstrate management’s support for the quality program. In the case of Software Configuration Management (SCM) audits, three types of audits are typically performed:
This paper discusses the purpose of each of these three types of SCM audits. It also provides examples of checklist items that could be used during audit evaluations and suggested evidence gathering techniques for each of the items in those checklists. Linda Westfall Date Posted: September 2, 2007
Risk-Based Configuration Control - Balancing Flexibility and Stability : There is a dichotomy in software configuration management. On one side, individual developers need the flexibility necessary to do creative work, to modify code to try out what-if scenarios, and to make mistakes, learn from them and evolve better software solutions. On the other side, teams need stability to allow code to be shared with confidence, to create builds and perform testing in a consistent environment, and to ship high-quality products with confidence. This requires an intricate balance to be maintained. Too much flexibility can result in problems including, unauthorized and/or unwanted changes, the inability to integrate software components, uncertainty about what needs to be tested and working programs that suddenly stop working. On the other hand, enforcing too much stability can result in costly bureaucratic overhead, delays in delivery, and may even require developers to ignore the process in order to get their work done.This paper explores risk-based software configuration control. It also examines techniques that can be used to help maintain this necessary balance between flexibility and stability, as software moves through the life cycle. These techniques include:
Vertical and Horizontal Requirements Relationships: This article explores a common question raised about Capability Maturity Model – Integration (CMMI®) expectations regarding the management of vertical and horizontal relationships within the context of requirements traceability. It seems that the CMMI® really does not define vertical and horizontal traceability explicitly. In order to document/prove/provide evidence of vertical and/or horizontal requirements traceability, we first need an understanding of exactly what vertical and horizontal traceability are in the context of software systems. In hopes of finding an acceptable answer, it is necessary for this paper to:
Bidirectional Requirements Traceability: Traceability is one of the essential activities of good requirements management. Traceability is used to ensure that the right products are being built at each phase of the software development life cycle, to trace the progress of that development and to reduce the effort required to determine the impacts of requested changes. This article explores:
Book ReviewsA Guide to Software Configuration Management
Recommended ReferencesA Guide to Software Configuration Management; Alexis Leon; Artech House, Boston, 2000; ISBN 1-58053-072-9. (see review) Software Configuration Management; H. Ronald Berlack; John Wiley & Sons, 1992; ISBN-0-471-53049-2. Recommended LinksData and Analysis Center for Software (DACS) and the Defense Software Collaborators (DSC) - http://www.dacs.dtic.mil/ For more information about consulting services or training offered by The Westfall Team Send an email to: lwestfall@westfallteam.com Or call: 972-867-1172
|