ALGORITHM DESIGN AND PROBLEM SOLVING
ALGORITHM DESIGN AND PROBLEM SOLVING
Analysis
✓ Clearly define and set out the problem to ensure everyone understands
the requirements.
✓ Requirements Specification: A detailed list of what the program must
achieve.
✓ Tools Used:
i. Abstraction: Focuses on essential details and removes unnecessary
information.
Example: A map highlights necessary details for traveling.
ii. Decomposition: Breaks a complex problem into smaller,
manageable parts. These smaller tasks can be further subdivided if
needed.
Example: Getting dressed involves:
1. Selecting items to wear.
2. Removing any clothes currently worn.
3. Putting selected items on in the correct order.
Design
✓ Use the analysis results to plan how the program should be developed.
✓ Clearly outline tasks, how they are to be performed, and their interactions.
✓ Documented using:
▪ Structure Charts
▪ Flowcharts
▪ Pseudocode
Testing
✓ Ensure the completed program works as designed.
✓ The program is tested with different sets of data.
✓ Ensures all tasks work together as specified in the program design.
Decomposing a Problem
To solve a problem using a computer system, break it into components:
i. Inputs:
Data entered into the system during operation.
ii. Processes:
Tasks performed using input data and stored data.
iii. Outputs:
Information displayed or printed for users.
iv. Storage:
Data stored in files for future use.