INTRODUCTION TO SOFTWARE DEVELOPMENT AND OPERATING SYSTEMS

2. Software Development Life Cycle (SDLC)

2. Software Development Life Cycle (SDLC)

The SDLC is a framework that defines the phases of software development. Common models include:

a. Waterfall Model:

  • A linear and sequential approach where each phase (requirements, design, implementation, testing, deployment) is completed before moving to the next.
  • Suitable for projects with well-defined requirements.

b. Agile Model:

  • An iterative and incremental approach that emphasizes flexibility and customer collaboration.
  • Delivers software in small, functional increments called sprints.
  • Popular frameworks: Scrum, Kanban.

c. Iterative Model:

  • Develops software in cycles, with each iteration producing a working version of the product.
  • Allows for continuous refinement and feedback.

d. DevOps:

  • Combines development (Dev) and operations (Ops) to streamline the software delivery process.
  • Emphasizes automation, continuous integration (CI), and continuous delivery (CD).