Skip to main content
S
s
Glossary Term

Software development life cycle

The software development life cycle (SDLC) is an iterative process that teams can use to develop and deliver software.

By IT Brew Staff

less than 3 min read

Back to Glossary

Definition:

A software development life cycle (SDLC) breaks down software development into discrete and replicable stages, each with objectives and deliverables. It incorporates factors such as resources and experts available for building the software, the needs of stakeholders and customers, and timing concerns.

Common SDLC stages include:

  • Planning/analysis: This includes gathering stakeholder requirements, analyzing resources, and scheduling.
  • Design: The software team designs the software, including how much to build from scratch (versus prewritten code or adapting another piece of software) and which development tools to use.
  • Coding: The team begins writing code, ending with a functional prototype.
  • Testing/iteration: The team reviews the code, tweaks functionality, and squishes as many bugs as it can. This stage can involve a combination of manual and automated testing.
  • Deployment: The team deploys the software to a production environment, which means end users will have a chance to use it.
  • Maintenance: The team continually updates the software, including fixing any bugs or issues that arise. Data from end users can be utilized to refine the product.

When executed correctly, the SDLC gives stakeholders transparency into the software development process, allows for the more efficient use of resources and people to build software, and manages risk. With lessons and data from a life cycle, a software development team can improve future software building and delivery.