System development life cycle

We will now explore some of the different system development life cycle (SDLC) models that are used for the implementation of different types of systems.

The SDLC framework was introduced to avoid the costly design and implementation mistakes regularly encountered in a developed system (defined either as a software, hardware or a combination of both). This framework can also expedite the development process of a system as it proposes an iterative approach that consists of the following distinct stages:

  • Planning: provides a project management plan that works as the basis for acquiring the resources needed to develop the considered system
  • Requirements/analysis: specifies user requirements, describing the detailed functioning of the intended system
  • Design: system features and operations are described in detail (ie system requirements) through the use of prototype models like process diagrams, pseudocodes, etc
  • Development: the system is constructed involving the actual programming process
  • Testing: demonstrates that the system conforms to requirements by applying testing techniques
  • Maintenance: the system is assessed/evaluated to ensure it does not become obsolete; this is also where changes are made to initial system functioning

SDLC (Click on the image to zoom)

Alternatives to the standard model

There are several variations of the standard framework described above. Some examples include:

Agile model: product development takes places in iterations.

Agile model (Click on the image to zoom)

Waterfall model: a linear sequential development approach where one phase needs to be fully completed before the next phase in the process starts. Phases do not overlap.

Waterfall model (Click on the image to zoom)

Iterative model: a subset of the system requirements is designed, developed, tested and implemented iteratively until the full system is implemented.

Iterative model (Click on the image to zoom)


Verification and validation model: similar to the waterfall model but consists of a testing phase for each development stage.

Verfication and validation model (Click on the image to zoom)

Your task

Conduct some research on the alternative methods mentioned above and then answer the following scenario question:

You have been hired as a chief engineer for a company that produces commercial monitoring systems to assist the daily living of older people. The monitoring system enables the recording of the users’ actions through the use of sensors, and also alerts their relatives to potential hazardous situations related to the people being monitored.

What SDLC model would you use to develop this system, and why?

Share this article:

This article is from the free online course:

Cyber Security in the Software Development Life Cycle

Coventry University