Skip to main content
Informatik.uz
Bachelor’s · Year 4Chapter 1. Software engineering

Software Development Life Cycle (SDLC)

We review the main stages of creating software, the Waterfall and Agile approaches, Scrum and CI/CD practices. You will learn how to choose a suitable model for a project.

Topic 1 of 22 min readUpdated October 27, 2026
All topics (1 of 2)

The software development life cycle (SDLC) is the sequence of stages a program goes through from an idea to retirement. It usually includes gathering and analyzing requirements, design (architecture and interface), coding, testing, deployment and maintenance. Sources differ slightly in the names and order of the stages, but the goal is the same: to organize the work and reduce cost and risk.

In the Waterfall model the stages are carried out strictly one after another: the next one begins only when the previous one is fully complete. This approach suits projects whose requirements are clear from the start and rarely change, for example systems with strict standards, because documentation and control are easy. Its drawback is that a misunderstood requirement found only during testing or deployment is very expensive to fix.

Agile approaches (based on the Agile Manifesto published in 2001) divide the work into short iterations: every one to four weeks a working part of the product is delivered, customer feedback is collected and the plan changes accordingly. The most widespread of them is Scrum, in which the work is divided into sprints, the team holds a short daily meeting, demonstrates the result at the end of the sprint and discusses the process. Kanban, in turn, shows tasks on a board and limits the amount of work in progress.

Modern teams speed up the cycle with CI/CD (continuous integration and delivery): every change is built and tested automatically and, if all is well, deployed to a server. The choice of model depends on the project: when requirements are stable and the cost of an error is high, a plan-driven approach fits; when requirements change, Agile is a better match. Many companies combine elements of both approaches.

Key takeaways

  • SDLC is the sequence of stages from requirements to maintenance: analysis, design, coding, testing, deployment, maintenance.
  • Waterfall is a sequential, documentation-heavy model that suits stable requirements.
  • Agile relies on short iterations, fast feedback and flexibility toward change.
  • Scrum is built on sprints, roles and meetings, while Kanban is built on visualizing the workflow and limiting work in progress.
  • CI/CD checks changes automatically and speeds up deployment.

Practice tasks

  1. Take an application you use (for example, Telegram) and write its SDLC stages into a table, giving the possible result of each stage (a document, code, a report).
  2. For a student attendance application, write five user stories in the form “As a user, I want … so that …” and plan them into a two-week sprint.
  3. Justify in writing which approach, Waterfall or Agile, suits better a bank payment system, a new mobile game and software for a medical device.

Review questions

Test yourself: think first, then reveal the answer.

  1. 1List the SDLC stages in order.
    Requirements analysis, design, coding, testing, deployment and maintenance.
  2. 2What is the main difference between Waterfall and Agile?
    In Waterfall the stages are done sequentially and once; in Agile the work is done in short repeating iterations, and customer feedback is taken into account in each one.
  3. 3What is a sprint in Scrum?
    A work period of fixed length (usually 1–4 weeks); by its end a working part of the product is ready.

0 of 2 topics completed

Sign in to mark