Analysis

  • The analysis stage of the program development life cycle is to precisely understand the problem the program is intended to solve

Abstraction

[!def] removing unnecessary details, and focus on the essential components.

Decomposition

[!def] the process of breaking down a large problem into a set of smaller problems

components: inputs, processes, outputs, storage

Decomposing a problem requires developers to think about four component parts:

  • Inputs: data entered into the system
  • Processes: subroutines and algorithms that turn inputs and stored data into outputs
  • Outputs: data that is produced by the system, such as information on a screen or printed information
  • Storage: data that is stored on a physical device, such as on a hard drive or in memory whilst the program is running

Identification of the problem

Identification of the requirements

Design

[!def] using techniques to come up with a blueprint for a solution

Structure diagrams

The structure diagram shows the top-down design of a computer system in a hierarchical way, in a diagrammatic* form, with each level giving a more detailed *breakdown of the system into sub-systems.

Flowcharts

A flowchart is a visual tool that uses shapes to represent different functions to describe an algorithm.

Coding

  • Developers begin programming modules  in a suitable programming language that works together to provide an overall solution to the problem

Testing

[!def] Iterative testing
modular tests are conducted, code amended, test repeated until the module performs as required