Software Process

Program-Transformation.Org: The Program Transformation Wiki
From W. Humphrey, Managing the Software Process, Addison-Wesley, 1989:
  • The software process is the set of tools, methods, and practices used to produce a software product. (p. 3)
  • An important first step in addressing software problems is to treat the entire software task as a process that can be controlled, measured, and improved (p. 4)

Resources include:

The field of Software Process Improvement is concerned with systematic ways of improving an organization's software process. The Capability Maturity Model from SEI uses five process maturity levels for this: initial, repeatable, defined, managed, and optimizing.

See also

SPICE provides a framework for the assessment of software processes. It can be used by organizations involved in planning, managing, monitoring, controlling, and improving the acquisition, supply, development, operation, evolution and support of software.

It distinguishes software process assessment (which examines the process), capability determination (which identifies capabilities and risks of the process), and process improvement, which identifies changes to the software process.

See also

PracticalSoftwareMaintenance covers software process models for SoftwareMaintenance.

The IEEE maintenance process covers 7 steps: Problem classification, analysis, design, implementation, system test, acceptance test, and delivery.

The ISO/IEC model contains 6 steps:

  • process implementation,
  • modification request analysis,
  • modification request implementation,
  • maintenance review and acceptance,
  • migration,
  • software retirement
PracticalSoftwareMaintenance treats this model as the recommmended software maintenance process.

Processes can be described by means of process modeling languages, aimed at supporting process understanding, process design, training and education, and simulation and optimization. An example modeling method is SDM: the System Dynamics Modeling approach. See, e.g., Boehms work on software process dynamics at

CategorySoftwareEvolution | Contributions by ArieVanDeursen.