Sunday, April 27, 2008

SDLC's diagram






Systems Development Life Cycle

Referred to variously as the waterfall model and linear cycle, this methodology is a coherent description of the steps taken in the development of information systems. The reason why it is referred to as the waterfall model should be obvious from the following figure (from Horner, 1993):

The methodology SDLC is closely linked to what has come to be known as structured systems analysis & design. It involves a series of steps to be undertaken in the development of information systems as follows:

  • Problem definition: On receiving a request from the user for systems development, an investigation is conducted to state the problem to be solved.
    • Deliverables: Problem statement.
  • Feasibility study: The objective here is to clearly define the scope and objectives of the systems project, and to identify alternative solutions to the problem defined earlier.
    • Deliverables: Feasibility report.
  • Systems analysis phase: The present system is investigated and its specifications documented. They should contain our understanding of HOW the present system works and WHAT it does.
    • Deliverables: Specifications of the present system.
  • Systems design phase: The specifications of the present system are studied to determine what changes will be needed to incorporate the user needs not met by the system presently. The output of this phase will consist of the specifications, which must describe both WHAT the proposed system will do and HOW it will work.
    • Deliverables: Specifications of the proposed system.
  • Systems construction: Programming the system, and development of user documentation for the system as well as the programs.
    • Deliverables: Programs, their documentation, and user manuals.
  • System testing & evaluation: Testing, verification and validation of the system just built.
    • Deliverables: Test and evaluation results, and the system ready to be delivered to the user/client.


The waterfall model has many attractive features: Clearly defined deliverables at the end of each phase, so that the client can take decisions on continuing the project. Incremental resource committment. The client does not have to make a full committment on the project at the beginning. Isolation of the problem early in the process.

It does, however, have some drawbacks:

Requires an all-or-nothing approach to systems development. Does not allow incremental development. Requires very early isolation of the problem. In the real world, often the problems are uncovered in the process of development of systems.

No comments: