2. Stages of the systems life
cycle
What is a systems life cycle?
Analysis
Design
Evaluation
Development and testing
Documentation
Implementation
3. Scenario
The company called Biashara Street Building Supplies in Nairobi,
Kenya, buys bricks, cement, gravel, sand and roof tiles from big
companies and then sells them in smaller quantities to local house
builders.
The company is run by two directors called Peter and Irene. It employs
two secretaries, three sales people and two truck drivers.
It has a computer, but this is mainly used for creating word-processed
letters and sending emails to customers. Its only other use is to keep
records of the company’s customers on a database.
One secretary, Josephine, deals with the workers’ personal
information and is also in charge of keeping customer details.
The other secretary, Mary, keeps information about the hours worked
by the workers and also processes orders from customers.
Irene is in charge of the paying of the workers.
Peter and Irene feel that they could make better use of their computer
system and need a systems analyst to look at how the computer is
used, and to advise them whether or not their business would improve
if they made increased use of the computer. They have invited Daniel
to perform this role.
4. Analysis
Collecting information on how the existing
system works
Establishing its inputs, outputs and
processing
Recording information
Identifying problems
5. Analysis
Why do we need the analysis stage?
To identify suitable hardware and software for a
new system
To identify user and information requirements
7. Analysis – Establishing the inputs, outputs
and processing in the existing system
Example 1: payroll system
Inputs: details of the workers
Processing: calculation of the payrolls
Output: payslips
Example 2: orders system
8. Analysis – Recording information
about the current system
Data flow diagram.
Orders System
Context Diagram
invoice invoice
Customers Suppliers
Order
processing
orders system
orders
9. Analysis – Recording information
about the current system
orders
Customers Suppliers
supply
Process order orders
rejected
receipts
orders
order details
receipts
Shipping Order supplies
order Orders details
details
Issue receipt
updated product Ship goods
record
Inventory
10. Analysis – Results
Identifying suitable hardware and software for
a new system
Identifying the user and information
requirements
12. Design
The inputs to the system
The outputs from the system
The files and/or databases needed to store
the data
The processing required to produce the
outputs
Any validation checks that will be needed
The data needed to test the system
19. Design – data/file structures
The files and/or databases needed to store
the data. Example: for the payroll system we
need the master file and the transaction file
21. Design – data/file structures
The master file would have the following
attributes:
Field names
Field types
Field lengths
Validation rules
Field descriptions
Selection of key field
22. Design - Validation
A validation routine checks that input data is
sensible and valid before processing.
However validation rules do not guarantee
that the data typed in is correct.
Range check. Examples:
A secondary school student is likely to be aged
between 11 and 16. The range check for the field
age would be >=11 and <=16.
The maximum marks for AS students is 200. So,
the range check would be…
23. Design - Validation
Length check. Checks the data is not too
short or too long. Examples:
Telephone numbers in Spain are 9 digits long. So,
the length check validates that no more and no
less than 9 digits are entered.
A NIE in Spain has this format X1234567R. The
length check would be…
24. Design - Validation
Format check. Checks the data is in the right
format. Example:
The NIE in Spain has this format X1234567R.
The format check would ensure that the first
character is a letter, the next 7 characters are
digits, and the 9th character is a letter.
25. Design - Validation
Invalid character check. Example:
I have a password field, and I only want the
following characters to be entered: a to z, A to Z,
0 to 9, and nothing else. So, the characters: ?, >,
*, etc. will be invalid characters and the “invalid
character check” won’t accept them.
26. Design - Validation
Check digit. Designed to capture human
transcription errors. Example:
ISBN. 13 digits, the last one is the check digit.
This is an ISBN: abcdefghijklm
m = 10 – {(1a + 3b + 1c + 3d + 1e + … + 3l) mod 10}
Barcode
This is an barcode: abcdefghijklm
m = 10 – {(3a + 1b + 3c + 1d + 3e + … + 1l) mod 10}
27. Design – Other ways of reducing
errors when inputting data
Coding data. Examples:
Instead of typing in the word “Female” in a field
Gender, we could type in “F”.
Instead of “True” or “False”, type in “T” or “F”
28. Design – Specifying the
required hardware
If there is a heavy volume of data then the
systems analyst would recommend a laser
printer, and not an inkjet printer.
If the systems analyst determines that the
articles should be bar-coded, then it is
appropriate to use a bar code reader.
29. Design – Specifying the
required software
Off-the-shelf software. Which is already
written and available.
Purpose-built software. Which has to be
specially written to solve the problem.
30. Design – Specifying the
required software
Off-the-shelf software
Advantages:
Cheaper as it is mass produced
Available straight away
Testing rigorously carried out by the developers
Helplines with operators who have had to deal with a wide
range of problems
Disadvantages:
May be difficult to adapt to the particular use
May have several distracting extra features unsuitable for
the use
May not necessarily match up with the existing system and
software use
31. Design – Specifying the
required software
Purpose-built software
Advantages:
Designed specifically for the task
Does not have to be adapted for use
Programmers can make any changes required
Disadvantages:
Costs more to pay programmers to write code specifically
for the task
Testing limited to the perception of use by the programmer
Support limited to the team of programmers
Can take a long time to develop
33. Development and testing
Testing strategies.
Produce a test plan using test data
Test Test Expected Actual results Comment
data results
Input -1 Rejected Error message Abnormal data – the system
hours works as expected
worked
65 Accepted Wages calculated Extreme data – the system
(max.
works as expected
hours
worked 0 Accepted Wages calculated Extreme data – the system
in a but result was 0 works as expected
week =
65) 40 Accepted Wages calculated Normal data – the system
works as expected
140 Rejected Error message Abnormal data – the system
works as expected
Abc Rejected Error message Abnormal data – the system
works as expected
34. Development and testing
Using live data.
Compare the results of the new system with the
results of the old system. Example: use the hours
worked in past weeks, and compare the payslips
with the ones the new system generates.
35. Development and testing
Activity:
Create a table called Student with the fields:
idstudent, name, marks
Produce a test plan for the marks of the students,
taking into account that the minimum mark is 0
and the maximum is 200.
Produce a test plan for idstudent, where idstudent
has 8 characters, the first and last character
should be a letter, the rest of the characters are
digits from 0 to 9.