Analysis of a Software Maintenance System: A CASE Study
To design, implement, and operate a successful software development process, exposure to similar existing systems is invaluable. The objective of this paper is thus to document and analyze an existing, moderate size, software maintenance project. The project, which supports the maintenance of a software environment has, through incremental improvement, become very effective. However, this effectiveness has only been achieved through struggle, compromise, and creativity. The paper documents the evolution of the project, providing insights into how change was managed, and defines and formally models the project as it existed until recently. The project's process is still evolving, and recent changes, while not formally modeled, are also described. The results of this modeling are applied 1) to compare the project's practices from a perspective of the SEI Capability Maturity Model (CMM), and 2) to address briefly the issue of process reuse. Comparison to the CMM resulted in an identification of strengths and weaknesses of the project's software process. In the examination of reuse issues, three hypothetical examples of process reuse are examined.