liveBook · Manning

Software development life cycle

As explained in Effective Platform Engineering

Software development is the process of designing, implementing, testing, and maintaining software systems.

The software development life cycle (SDLC) is a repeating, measurable process for moving software and platform changes from planning toward production. It makes dependencies, acceptance criteria, feedback, and delivery work explicit rather than leaving them to improvised handoffs. section 2.2.1 section 3.2.1

A practical lifecycle organizes work into connected stages:

  • Plan work against the roadmap, identify dependencies, divide changes into small increments, prioritize them, and define measurable success criteria. section 2.2.1
  • Design the architecture and acceptance criteria while preserving the ability to pivot; define experiments when evidence is needed before full implementation. section 2.2.1
  • Code against the agreed criteria, beginning with automated tests so misunderstandings surface before implementation and confirmation bias does not weaken coverage. section 2.2.1
  • Build and test changes through an automated pipeline rather than applying them manually across environments. section 2.2.1
  • Map the complete path to production, including operational work, dependencies, handoffs, delays, and support activities. section 3.2.1

Platform capability change

A platform team plans a new capability by splitting it into incremental releases, defining measurable acceptance criteria, and identifying dependencies. It designs a small experiment, writes automated tests before implementation, and moves the change through an automated build-and-test pipeline. Value stream mapping then exposes delays in infrastructure requests, reviews, or support so the team can measure improvement. section 2.2.1 section 3.2.1

Figure 2.7 The software delivery lifecycle covers all stages from feature planning through running in production.
A diagram of a process

AI-generated content may be incorrect.

Use the lifecycle diagram to navigate the stages from feature planning through running in production. section 2.2.1

How Effective Platform Engineering covers it

How deep it goes
Details planning, design, test-first coding, and automated build-to-test progression while deferring additional process detail.
Examples
Uses platform capability experiments, automated pipelines, process maps, deployment metrics, lead times, and failure rates.
What you can do after
Apply it via value stream mapping, incremental delivery, test-first coding, automated pipelines, and measurable acceptance criteria.
How it connects
Connects value stream mapping, platform engineering, DevOps, CI/CD, automated testing, acceptance criteria, and continuous improvement.

Also explained in

Compare how 2 books explain software development life cycle →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Effective Platform Engineering. The section links point to the parts of the book it draws on.