Lesson7 0417 ICT
Lesson7 0417 ICT
In this chapter we will consider the stages and processes involved when
replacing computer systems, from analysis of an existing system right
through to evaluation of the new system.
Suppose a company has been using an existing computer system for a number
of years. They have decided to replace the current system with a new one. After
a number of years of successful operation, what would initiate this need to
upgrade?
» The existing computer equipment is now obsolete (it cannot be repaired
anymore).
» Changes to laws or taxes requiring radical overhaul of software.
» More suitable hardware is now available to improve efficiency and reliability.
» There is a need to expand the company.
There could be many more reasons.
The changes will involve an ICT solution, which means a systems analyst
needs to be brought in to oversee the whole upgrade process. Their first task
will be to analyse the existing (current) system, and then suggest a number
of improvements that can be made. All these improvements need to be costed
and their advantages over the current system need to be reported back to the
company’s management team.
169
Once a new system is agreed and it has been fully tested, it is then installed.
It then needs to be fully evaluated and any changes made where necessary.
Therefore, a cycle of events take place until a fully-working system is signed
off and handed over to the management team. This whole process is called the
systems life cycle.
There are many stages in the systems life cycle, which have been summarised in
Figure 7.1.
ANALYSIS
EVALUATION DESIGN
This is a two-way process,
since development and
testing may uncover a need
to redesign the solution
DOCUMENTATION DEVELOPMENT/ several times
TESTING
IMPLEMENTATION
7.1 Analysis
The first stage in the process is the analysis of the current system. Figure 7.2
shows the stages in analysis.
170
Name of research Description of research method Advantages of research method Disadvantages of research
method method
This method involves watching » The analyst obtains reliable » People are generally
personnel using the existing data uncomfortable being
system to find out exactly how it » It is possible to get a better watched and may work in a
works. overall view of the system different way (known as the
Observation » Relatively inexpensive Hawthorne effect)
method because it only » If workers perform tasks
involves the analyst that contravene standard
» All inputs and outputs of the procedures, they may not do
current system are seen this while being watched
This method involves a one- » It gives the opportunity to » It can be a rather time-
to-one question-and-answer motivate the interviewee consuming exercise
session between the analyst into giving open and honest » It is relatively expensive
and the user. It is a good method answers to the analyst’s (team of interviewers and
if the analyst wants to probe questions analyst needed)
deeply into one specific aspect of » The method allows the » The interviewee cannot
the existing system. analyst to probe for remain anonymous with
more feedback from the this method, and may hide
Interviews interviewee (questions can information or not be honest
be extended) with their answers
» It is possible to modify » Interviewee can give
questions as the interview answers they think the
proceeds and ask questions interviewer wants to hear
specific to the interviewee » Interviewees may not be
» Analyst can watch body available at times to suit the
language and facial analyst
expressions
This method involves distributing » The questions can be » The number of returned
questionnaires to the workforce, answered fairly quickly questionnaires can be low;
clients or system users to find » It is a relatively inexpensive not always a popular method
out their views of the existing method (only need to » The questions are rather
system and to find out how some produce questionnaires) rigid because they have to be
of the key tasks are carried out. » Individuals can remain generic; it is not possible to
anonymous if they want ask follow-up questions
(therefore give more truthful » No immediate way to
Questionnaires answers) clarify a vague answer to a
» Allows for a quick analysis of question; it is not possible to
the data expand their answers
» Interviewees can fill in » Users tend to exaggerate
questionnaire in their own their responses as they are
time anonymous
» Allows a greater number of » Because anonymous, the
people to take part interviewees may not take it
seriously
Looking at the This method allows the analyst » This method allows » It can be a very time-
existing documents to see how existing files are kept, information to be obtained consuming exercise
look at operating instructions which was not possible by » Because of the analyst’s
and training manuals, check the any of the other methods time needed, it is a relatively
accounts, etc. This allows the » The analyst can see for expensive method to use
analyst to get some idea of the themselves how the current
scale of the problem, memory system operates
size requirements, type of input/
output devices needed, etc.
171
One method the analyst can use is a data flow diagram (DFD). Figure 7.3 shows
an example of a DFD that follows the reservation system when booking a flight
on an a aeroplane.
Available flights
Customer makes
e-ticket is issued a flight enquiry
to customer Booking system
(database on
hard disk drive)
Flight data is
Flight booking
collected and
is confirmed
confirmation made
Advice
Producing a DFD is not required for this syllabus.
172
As the analyst looks at each stage in the DFD process, they will then identify:
» any problems that occur in the current system (this is done by looking at the
data flows in each stage of the process and looking for bottlenecks and other
potential areas where errors do or could occur)
» user and information requirements (see below).
User requirements
The problem to solve is this: computer system developers do not really
understand how a business works: business managers do not really know how
computer systems could help them. The user requirements are designed to help
with this problem:
» User requirements are therefore written by the analyst for the business
managers (who are the customers).
» They are written in natural language with very few technical details or jargon.
» Their purpose is to allow the customers to check that what the analyst
proposes, following the investigations, is exactly what they originally
specified; for example, if the company employs people with disabilities, does
the new hardware take that into account?
» The user requirements will also describe what the analyst thinks the customer
does with their system.
Information requirements
» This is the information needed to support the business.
» The information requirements are made up of:
» what? (that is, the data)
» when? (that is, the timing).
A systems analyst turns the information and user requirements into a functional
requirements specification (that is, how the new system will be developed and
implemented, including timescales).
The requirements are typically defined as a list of, for example:
» who the customers are and how they interface with the system
» who the vendors are (the sellers of the products), and how they interface with
the system
» who the employees are and how they interface with the system.
173
174
7.2 Design
7.2.1 Design
Once the analysis of the existing system has taken place, and the systems analyst
has a better idea of the scale of the problem, then the next stage in the process
is design. Figure 7.4 summarises the design stage.
DESIGN
Output formats, including screen layouts and
report layouts
Validation routines
175
Data types
We will now consider data types. The data types in Table 7.2 are the ones you are
most likely to come across:
▼ Table 7.2 Data types
It is now possible to complete the file structure for the example in Figure 7.5.
▼ Table 7.3 Field lengths and data types
Product_description 40 Text
Department 1 Character/text
Please note that the field lengths given in Table 7.3 are just ‘possible’ values.
When assigning a field length, it is important to give a good estimate of what
will be the smallest value needed to store the data items. If a field length of 50
is assigned to a field and the largest data item is only five characters, then this
will be a large waste of memory space in a database because a field size of 50
would have been allocated for the whole file.
176
Exercise 7a
Which data types would you use for the following data items?
i A21DD45678 v 01214444555 ix 22/10/2020
ii Y vi 200 x 21:45
iii Sample_data_items vii €55
iv T or F (only) viii 24.12
177
Exercise 7b
1 A password (which takes the form xxxxnnxx where x = a letter and n = a
numerical digit) is being entered using an online form.
a Name three possible validation checks you could use.
b Give an example of an input that would pass each of your validation checks.
c Give an example of an input that would cause an error message for each of
your validation checks.
2 The following data is being entered into a database:
Name:
Telephone number:
Sex: M or F
178
Figure 7.7 shows a typical example, which allows data about a car for sale to be
manually completed, for later input into a computer database.
A computer-based data capture form is slightly different. These often have the
following features:
» use of text boxes to capture key data clearly
» use of on-screen help when completing the form
» use of drop-down/combo boxes where there are limited choices
» use of radio buttons and tick boxes requiring a single click of a mouse to select
» automatic validation of data as it is entered
» control buttons (such as next form, clear entry, save, etc.)
» double entry boxes (with verification rules) to check correctness of key data
(for example, when keying in an email address).
In the car sales example shown in Figure 7.7, the following differences could be
used with a computer-based data capture form:
» registration number: same as paper-based form
» make of car: make use of a drop-down box as there are a limited number of
manufacturers
» model of car: same as paper-based form
» date first registered: use of drop-down boxes for day, month and year
» price: use boxes as shown but include a validation check
» new or used: use of tick box or radio button to indicate option
» other features: a back and forward button (to complete details of all cars), and
a save button when the form is complete for each car.
Exercise 7c
Design a computer-based data capture form using the fields given above.
Remember that it has to be completed online, so it should include radio buttons,
drop-down boxes and so on. It should look a little different to the paper-based
form shown in Figure 7.7.
179
180
» Because it is important that the correct data is stored in files (etc.) there are
certain techniques that need to be adopted to make sure the data populating
the files/database is at least of the right type and that it conforms to certain
rules. Validation routines and verification methods are used to ensure this
happens. Again, these routines have to be fully tested to ensure they do trap
unwanted data, but also to make sure any data transferred from a paper-based
system to an electronic system has been done accurately.
» Obviously, any system being developed will have some form of user interface.
The types of hardware have already been considered; how these are used
to actually interface with the final system now needs to be identified. For
example, how the screens (and any other input devices) will be used to collect
the data and the way the output will be presented. If specialist hardware is
needed (for example, for people with disabilities) then it will be necessary to
finalise how these devices are used with the system when it is implemented.
This will be followed by thorough testing to ensure the user screens are user-
friendly and that the correct output is associated with the inputs to the system.
Test designs
Test designs cover how a system is to be tested. Table 7.5 shows the test designs that
need to be considered, and how we can ensure the following aspects can be achieved:
» testing the data structures
» testing the file structures
» testing the input methods
» testing the output formats
» testing the validation rules.
▼ Table 7.5 Testing designs
The test design should determine how we can test that all data is in
Data structures a correct format or has been stored in the correct way (for example,
whether tables hold data correctly)
The testing design should test that the file structures function
File structures correctly (i.e. data is stored in the correct format and can be correctly
retrieved when required)
The testing design should determine how we can test that all data can
Input formats be entered into the system correctly (for example, if a date is to be
entered does the input format permit this date to be entered correctly)
The test design should determine how we can test that screen outputs
Output formats and reports are all in the correct format (for example, are the output
results clear, complete and correctly match the input data)
The test design should determine what data is needed to test to see if
Validation
all the validation rules work (for example, does the system correctly
routines
reject unreasonable data being input)
Test strategies
» Software is often developed in modular form. This method allows it to be
broken down into smaller parts (known as modules). Each module is developed
separately by a programmer (or team of programmers).
» Each module needs to be tested separately to see if it functions correctly. Any
problems resulting from the testing require the module to be modified and
then tested again.
181
» Once the development of each module is completed, the whole system needs
to be tested as a whole (with all modules functioning together). Even though
each module may work satisfactorily, when they are all put together there may
be data clashes or incompatibility, memory issues, etc.
» All of this may lead to a need to improve the input and output methods, file/
database structures, validation and verification methods, etc. and then fully
test everything again. It is a very time-consuming process, but has to be as
perfect as possible before the system uses live data.
Modify module if any Modify module if any Modify module if any Modify module if any
errors are found errors are found errors are found errors are found
The list above included the types of data referred to as: normal, abnormal and
extreme. Before looking at a sample test plan, we need to define these three
types of data.
The example we will use is inputting a date into a database field. The entered
data must take the format dd/mm/yyyy and all data must be numeric.
» normal – this is data which is acceptable/valid and has an expected (known)
outcome; for example, the month can be any whole number in the range 1 to 12
» extreme – this is data at the limits of acceptability/validity; for example, the
month can be either of the two end values i.e. 1 or 12
182
Data set Data input Type of data input Expected outcome Actual outcome
183
Exercise 7d
Use the example of a date in the format dd/mm/yyyy when answering the following three questions.
1 Consider the following 20 pieces of data and decide whether each data item is normal, abnormal or extreme
(tick the appropriate box in the table).
Data item Field Normal Abnormal Extreme
15 month
12 month
07 month
1.6 month
1 month
0 month
13 month
March month
1 day
31 day
18 day
Tuesday day
45 day
0 day
30 day
0001 year
2021 year
90.55 year
−25 year
1854 year
2 Describe what validation routines could be used to check the date if it was input on the screen as follows:
Day:
Month:
Year:
Describe how it would be possible to avoid errors altogether when inputting the data in the form shown above.
3 Write test data for the following fields in a database (the data should try to cover all possible types of data).
The database will store the following information:
l name of holiday resort
l average daily temperature (a whole number value is used)
l number of hours of sunshine per day (a whole number value is used).
Describe the validation routines that should be written into the database interface to check the above input
values are reasonable.
184
7.4 Implementation
7.4.1 System implementation
Once the system is fully tested, the next stage is to fully implement it. Some of
the stages in this process are shown in Figure 7.12.
There is a need to train staff on
the new system
Direct changeover
Parallel running
Changeover to the new system
Pilot implementation/running
Phased implementation
185
We will now consider changeover to the new system in more depth. As indicated
in Figure 7.12, there are four common methods used for changing over from
the old system to the new system. Each one has advantages and disadvantages
which need to be weighed up before the most appropriate method is chosen for a
particular application.
7.5 Documentation
7.5.1 Documentation
Once the new system is fully developed, a considerable amount of documentation
also needs to be produced for:
1 people who may need to modify or develop the system further at some later stage
2 the end-user.
There is some overlap between the two types of documentation, but the basic
requirements are shown below.
Technical documentation
Technical documentation is designed to help programmers/analysts to make
improvements to the system or repair/maintain the system. This can consist of
any of the following:
» program listing/coding
» programming language used
» program flowcharts/algorithms
» system flowcharts
» purpose of the system/program/software
» limitations of the system
» input formats
» hardware requirements
» software requirements
» minimum memory requirements
» known ‘bugs’ in the system
» list of variables used (and their meaning/description)
» file structures
» sample runs (with results and actual test data used)
» output formats
» validation rules
» meaning of error messages.
User documentation
User documentation is designed to help users to learn how to use the software
or system. This can consist of any of the following:
» how to load/install/run the software
» how to save files
» how to do a search
» how to sort data
» how to print out
» how to add, delete or amend records
186
7.6 Evaluation
7.6.1 Evaluate a solution
Once a system is up and running it is necessary to do some evaluation and carry
out any maintenance if necessary. The following is a list of some of the things
to be considered when evaluating how well the new system has worked; this can
ultimately lead to a redesign of part of the system if there is strong evidence
to suggest that changes need be made (refer back to the Figure 7.1 in the
introduction to this chapter).
» Compare the final solution with the original task requirements.
» Identify any limitations of the system.
» Identify any necessary improvements that need to be made.
» Evaluate the users’ responses to using the new system.
» Compare test results from the new system with results from the old system.
» Compare performance of the new system with performance of the old system.
» Observe users performing set tasks (compare old with new).
» Measure the time taken to complete tasks (compare old with new).
» Interview users to gather responses about how well the new system works.
» Give out questionnaires to gather responses about the ease of use of the new system.
Overall, is the new solution:
– more efficient? (this might mean ‘more efficient to use’ or ‘more efficient
for the business’)
– easy to use?
– appropriate for the task it was designed for?
Some results from the evaluation may lead to two things happening:
» update of hardware because:
– of feedback from end-users
– new hardware comes on the market, necessitating change
– changes within the company require new devices to be added or updated.
» update of software because:
– of feedback from end-users
– changes to the company structure or how the company works that may
require modifications to the software
– changes in legislation that may require modifications to the software.
187
Exam-style questions
1 For each of these questions, choose the correct response from the five options
given.[10]
a What validation type would make sure a post code, such as LA21 4NN,
was entered in the correct layout?
a Length check
b Presence check
c Range check
d Format check
e Type check
b What validation type would you use to make sure a number entered was > 0
but not > 100?
a Length check
b Presence check
c Range check
d Format check
e Type check
c What validation type checks that a field in an online form is not left
empty?
a Length check
b Presence check
c Range check
d Format check
e Type check
d What validation type checks that the correct number of characters has
been entered?
a Length check
b Presence check
c Range check
d Format check
e Type check
188
h What is the name given to data which is outside the limits of acceptability?
a Normal
b Live
c Extreme
d Abnormal
e Erroneous
189
190
b State which field would be the most appropriate for the primary key. [1]
c A validation check is used when entering the animal passport number
into the database.
Name and describe the most appropriate validation check that could be
applied to this field. [2]
Cambridge IGCSE Information and Communication Technology (0417) Paper 11 Q9 a, b & c,
May/June 2018
4 In the table below, by using a tick (✓) indicate whether each component
is found in user documentation only, in technical documentation only or
in both types of documentation. [5]
Technical User
Description of component documentation documentation
(✓) (✓)
How to sort the data
Hardware requirements
How to load and run the software
Program flowcharts/algorithms
Troubleshooting guide/FAQs
Validation rules/routines
Purpose of the system
Program listing/coding
Glossary of terms
Meaning of error messages
5 Put the following six stages of the systems life cycle into their correct order:
» Analysis
» Design
» Development and Testing
» Documentation
» Evaluation
» Implementation [3]
6 Which five computer terms are being described below? [5]
a A changeover method where the old system is stopped overnight and
the new system is introduced straight away.
b A changeover method where the new system is introduced into one
branch of a company and its performance assessed before being
introduced in all the company’s branches.
c Type of validation that checks whether or not the correct number of
characters has been entered.
d Part of the system life cycle that considers data capture forms, file
structures, validation and screen layouts.
e Software development technique where the program is broken down
into smaller parts and each part is tested separately.
191
7 a Describe what is meant by the evaluation stage in the systems life cycle. [3]
b Give two reasons why hardware may need to be updated ten years after
its initial introduction. [2]
c Give two reasons why software may need to be updated ten years after
its initial introduction. [2]
8 A program is being written which only accepts numbers in the range 1 to
100 (inclusively) to be input. Validation routines are being used to check the
input data.
a Name two validation routines which could be used to check the input
data in this program. Give a reason for your choice in each case. [2]
b Test data can be normal, abnormal or extreme. Explain the differences
in these three types of test data. Use examples to illustrate your
answer.[3]
c For this program being written, indicate, by ticking the appropriate
box, whether the following input data is normal, abnormal or
extreme.[3]
Normal Abnormal Extreme
(✓) (✓) (✓)
52
1
104
100
twenty-five
99
192
10 Six descriptions are given on the left and ten computer terms are given
on the right. By drawing arrows, connect each description to its
correct term. [6]
Designed to help programmers/analysts User documentation
to make improvements to the system or
repair/maintain the system
Live data
Direct changeover
Actual data used which has known
outcomes
Type check
Technical
Part of a new system is introduced and,
documentation
only when it proves to work satisfactorily,
is the next part introduced, and so on, until
the old system is fully replaced
Abnormal data
Phased
implementation
This is data which is outside the limits
of acceptability or validity and should be
rejected or cause an error message Evaluation stage
193