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
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.
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.
Iterative model: a subset of the system requirements is designed, developed, tested and implemented iteratively until the full system is implemented.
Verification and validation model: similar to the waterfall model but consists of a testing phase for each development stage.
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?
© Coventry University. CC BY-NC 4.0