2. Program development design

2.1. The Program Development Cycle (PDLC)

This cycle outlines the stages a programmer goes through from identifying a problem to the final implementation and maintenance of the solution.

 
  • Stage 1: Problem Recognition & Definition

    • Identifying that a problem exists and determining if a computer solution is feasible.

    • Clearly defining the boundaries of the problem (what the program should and shouldn't do).

  • Stage 2: Problem Analysis

    • Decomposing the problem to understand its requirements.

    • Identifying:

      • Inputs: What data is needed?

      • Processes: What calculations or logical operations are required?

      • Outputs: What information must the program produce?

  • Stage 3: Program Design

    • Planning the solution logic before writing any code.

    • Tools used include algorithms, flowcharts, and pseudocode (detailed below).

    • Focuses on the logical flow and data structures.

  • Stage 4: Coding

    • Translating the design logic into a specific programming language (e.g., C, Pascal, Java).

    • Adhering to the syntax rules of the chosen language.

  • Stage 5: Testing and Debugging

    • Testing: Running the program with sample data to ensure it produces correct results.

    • Debugging: The process of detecting, locating, and correcting errors (syntax, logic, or runtime errors).

  • Stage 6: Implementation

    • Installing the software for the end-user.

    • Includes training users and converting from the old system to the new one.

  • Stage 7: Maintenance

    • Updating the program to fix previously undiscovered bugs or adding new features as user needs change.

  • Stage 8: Documentation

    • Creating written descriptions of the program (User Manuals for users, Technical Manuals for developers). This is done throughout the cycle.