Table of Contents

Software Lifecycle and Configuration Management

 Bachelors (1st level) classification icon

Software Lifecycle and Typical Lifecycle Models

The software lifecycle defines the complete process by which software is conceived, developed, deployed, maintained, and eventually retired. In the context of modern engineering — particularly for complex systems such as autonomous platforms, embedded systems, or enterprise solutions — understanding the lifecycle is essential to ensure quality, reliability, and maintainability. The lifecycle acts as a roadmap that guides project teams through stages of development and management. Each stage defines specific deliverables, milestones, and feedback loops, ensuring that the software evolves in a controlled, traceable, and predictable way [1].

Definition

“The software lifecycle refers to a structured sequence of processes and activities required to develop, maintain, and retire a software system.” — [2] In other words, the lifecycle describes how a software product transitions from idea to obsolescence — incorporating all the engineering, management, and maintenance steps along the way. The lifecycle ensures:

In regulated domains like aerospace, automotive, and medical devices, adherence to a defined lifecycle is also a legal requirement for certification and compliance (e.g., ISO/IEC 12207, DO-178C, ISO 26262).

The main lifecycle models, Configuration management and configuration management tools are discussed in the following chapters:


[1] Sommerville, I. (2016). Software Engineering (10th ed.). Pearson
[2] Pressman, R. S., & Maxim, B. R. (2020). Software Engineering: A Practitioner’s Approach (9th ed.). McGraw-Hill