2. LESSON AIMS
By the end of this lesson all pupils will be able to:
❏ Describe the function of the analysis phase
❏ Define the purpose, scope and boundaries of a piece of
software
❏ Detail the Functional and User requirements of a piece of
software
❏ Design solutions to problems detailing the data flow and any
major refinements
3. PURPOSE, SCOPE AND BOUNDARIES
When performing the analysis stage of a project there are 3 things
that have to be considered first
❏ Purpose
❏ Scope
❏ Boundaries
4. PURPOSE, SCOPE AND BOUNDARIES
Purpose: a general description of the purpose of the software.
Scope: a list of the deliverables that the project will hand over to the client
and/or end-user, eg design, completed program, test plan, test results and
evaluation report. It can also include any time limits for the project.
Boundaries: the limits that help to define what is in the project and what is not.
It can also clarify any assumptions made by the software developers regarding
the client’s requirements.
5. FUNCTIONAL REQUIREMENTS
Once the purpose scope and boundaries have been established then the
requirements have to be established
Functional requirements: the features and functions that must be delivered
by the system in terms of inputs, processes and outputs.
6. EXAMPLE: PURPOSE
A teacher needs a program that will process the prelim and coursework marks
for their class of 20 pupils which are held in a file.They will also need to find the
percentages and the best performing student.
So the purpose is:
To take 20 pupil names, their prelim marks and their assignment marks from a
file. Calculate the percentage, and then find and display the name and percentage
of the pupil with the highest percentage.
7. EXAMPLE: SCOPE
Scope: list of the deliverables that the project will hand over to the client and/or
end-user
This development involves creating a modular program.
The deliverables include:
❏ detailed design of the program structure
❏ test plan with completed test data table
❏ working program
❏ results of testing
❏ evaluation report
❏ This development work must be completed within 4 hours
8. EXAMPLE: BOUNDARIES
Boundaries: the limits that help to define what is in the project and what is not.
It can also clarify any assumptions made
❏ The program will read the pupil data (name, prelim mark and assignment
mark) for 20 pupils from a sequential text file not a database.
❏ The only output needed is the name and percentage of the pupil with the
highest percentage.
❏ It will not allow the user to select a file it will be pre-named
Assumptions (these can dictate the direction of development)
❏ The data is accurate, so there is no need to implement input validation.
❏ The pupil with the top mark will be the pupil who has the highest
percentage.
9. EXAMPLE: FUNCTIONAL REQUIREMENTS
These are defined in terms of the inputs, processes and outputs.All inputs are
imported from a sequential file and all outputs displayed on the screen.
The program is activated by double clicking on the file menu and then selecting
“Run” from the menu. Each process will be a separate procedure or function
that is called from the main program.
10. EXAMPLE: FUNCTIONAL REQUIREMENTS (CONT)
The inputs, processes and output required are shown below:
1. Inputs:
Read in the Pupil Name, Prelim Mark ,Assignment Mark from external file
2. Processes
Calculate the percentage for each pupil
Find the name and percentage of the pupil with highest percentage
3. Output
Display the name of the pupil with the highest percentage.
Display the corresponding percentage.