Chapter 7

Program Development Life Cycle

The program development life cycle breaks software creation into stages: analysis, design, coding and testing, helping produce reliable programs.

Why use a life cycle?

Writing a program straight away often leads to mistakes. The program development life cycle (PDLC) splits the work into clear stages so that problems are found early and the final program is reliable and well documented.

The main stages

  • Analysis - the problem is studied and broken down. Requirements are identified, often using abstraction (keeping only the important details) and decomposition (breaking the problem into smaller sub-problems).
  • Design - the solution is planned before coding, using tools such as structure diagrams, flowcharts and pseudocode.
  • Coding - the design is written as program code in a programming language, and any errors are corrected.
  • Testing - the program is run with carefully chosen test data to check it works correctly and to find remaining errors.

Key idea

The usual order is analysis -> design -> coding -> testing. The cycle is iterative: if testing reveals a problem, developers return to an earlier stage to fix it, then test again.

Testing with test data

Good testing uses three kinds of data: normal data (typical valid values), boundary data (values at the edge of what is allowed) and abnormal (erroneous) data (invalid values that should be rejected). Testing every path helps ensure the program is robust.

Example

For a program that accepts an exam mark from 0 to 100: normal data could be 57, boundary data could be 0 and 100, and abnormal data could be -5 or 150, which the program should reject.

Stuck on this topic? A verified JomKelas tutor can walk you through it.

Find a verified tutor