0% found this document useful (0 votes)
8 views

Cambridge-Ict-Notes-Ch7-

Chapter 7 discusses the System Development Life Cycle (SDLC), outlining the stages from analysis to implementation. It emphasizes the importance of gathering information through various methods such as observation, interviews, questionnaires, and document examination to identify system requirements and issues. The chapter also covers the design, development, and testing phases, highlighting the need for validation and verification techniques to ensure system accuracy and functionality.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views

Cambridge-Ict-Notes-Ch7-

Chapter 7 discusses the System Development Life Cycle (SDLC), outlining the stages from analysis to implementation. It emphasizes the importance of gathering information through various methods such as observation, interviews, questionnaires, and document examination to identify system requirements and issues. The chapter also covers the design, development, and testing phases, highlighting the need for validation and verification techniques to ensure system accuracy and functionality.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

Ch.

7: System Development Life Cycle  


I.C.T.
 

Chapter 7
System Development Life
Cycle (SDLC)

Eng. Mustafa El-Komy 91 Theory Notes


Eng.   Omar El Safty
Ch.7: System Development Life Cycle  
I.C.T.
 
A systems analysis team is often brought in to review an existing system and
suggest a number of improvements. The existing method used may be either a
manual, paper-based system, or it could be a computer-based operation that is no
longer regarded as adequate for the task. The main stages in the systems life cycle
can be shown in the following figure.

 
  Analysis  
 
 
Evaluation   Design  
 
 
 
  Documentation   Development  &  Test  
 
 
Implementation  
 
 
 

7.1 Analysis
System analysis involves examining the existing system in details, in particular:
• Collecting information about the existing system.
• Describe the inputs, outputs and processing of the current system.
• Identifying problems with current system.
Having carried out these stages, the systems analyst then needs to:
• Identify and agree customer requirements for the new system.
• Identify suitable hardware and software for the new system

7.1.1    Methods  of  Researching  (Facts  Finding)  


There are four methods of collecting information about the current system:
• Observation
• Interviews
• Questionnaires
• Examination of existing documents.
 
 
 

Eng. Mustafa El-Komy 92 Theory Notes


Eng.   Omar El Safty
Ch.7: System Development Life Cycle  
I.C.T.
 

Observation  
This method involves watching personnel using the
existing system to find out exactly how it works.

Advantages
• Enables the systems analyst to see the
process as a whole to get an overall view of
the system.
• The systems analyst obtains reliable data.
• A relatively inexpensive method.
Disadvantages
• People are generally uncomfortable being watched and may work in a
different way.
• If workers perform tasks that violate standard procedures, they may not do
this while being watched.

Interviews  
The systems analyst can interview key people within the system to find out how it
works.

Advantages
• Flexible, the systems analyst can change script
to suit circumstances.
• Allow lots of very detailed information to be
gathered.
• More likely to get truthful responses.

Disadvantages
• It can be a rather time-consuming exercise.
• It is relatively expensive (use of system’s analyst time).
• Not possible if large groups of people are involved.
• The interviewee can’t remain anonymous with this method.
 
Questionnaires  
This method involves distributing questionnaires to the workforce, clients or system
users to find out their views of the existing system and to find out how some of the
key tasks are carried out.
 
 

Eng. Mustafa El-Komy 93 Theory Notes


Eng.   Omar El Safty
Ch.7: System Development Life Cycle  
I.C.T.
 
Advantages
• The questions can be answered quite quickly.
• It is a relatively inexpensive method.
• Individuals can remain anonymous if they want.
• This method allows quick analysis of data.
• No need to prearrange appointments.

Disadvantages
• Workers may exaggerate their answers.
• The number of returned questionnaires if often low.
• The questions are rather inflexible since they have to be generic.

Examination  of  existing  documents  


Most businesses and organizations use documents
to record information, or to deliver information
(forms get filled in and passed to other offices,
etc.). This method allows the systems analyst to
see how the paper files are kept, look at operating
instructions and training manuals, check the
accounts, etc. It allows the analyst to get some idea
of the scale of the problem.

Advantages
• This method allows information to be obtained which wasn’t possible by any
of the other methods.
• Systems analysts can see for themselves how the paper system operates.

Disadvantage
• It can be very time-consuming.
• Because of the systems analyst’s time needed, it is a relatively expensive
method to use.
• Documents can sometimes be difficult to understand.

Eng. Mustafa El-Komy 94 Theory Notes


Eng.   Omar El Safty
Ch.7: System Development Life Cycle  
I.C.T.
 

7.1.2    Recording  and  analyzing  information  about  the  current  


system  

Identifying  features  of  the  existing  system  


Whist carrying out the fact-finding methods, the systems analyst needs to record all
the results in order to establish all the relevant features of the existing system.
 
Identify  inputs,  outputs  and  processing  of  the  current  system  
The systems analyst needs to identify the data input to the present system, and the
data output. This is because any new system that is designed will have to deal with
similar inputs and outputs as the present system.
 
Identify  problems  with  the  system  
The job of the systems analyst is to identify the problems of the current system. The
new system must be designed to avoid the problem in the old system.

Identify  and  agree  customer  requirements  for  the  new  system  


After meeting with the client(s) and agreeing with them about the features of the new
system, the systems analyst produces a requirements specifications document.
The document includes the agreed features of the new system.
 
Identify  suitable  hardware  and  software  for  the  new  system  
The actual hardware and software will not be recommended at this early stage,
however, the system analyst makes generalized recommendations for the software
and hardware to use.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Eng. Mustafa El-Komy 95 Theory Notes


Eng.   Omar El Safty
Ch.7: System Development Life Cycle  
I.C.T.
 

7.2 Design
Using the list of requirements, the design team (composed of system designers and
sometimes the systems analyst himself) now has to design the new system. The
design team needs to:
• Design data capture forms and screen layouts.
• Design reports layouts and screen displays.
• Design validation routines.
• Design the required data/file structures.

 
7.2.1    Designing  Data  Capture  Forms  for  Data  Input  
To get data into a system is a two-part process:
• Data must first be 'captured'
(collected in a way that then
makes it easy to input)
• Data must be input into the
computer
The systems analyst selects a data
capture method and data input method
that best suit the requirements of the
new system.
Much of the data that enters computer
systems needs to be typed in. A well-
designed data capture form can make
this task easier and quicker.
Data capture forms should:
• Have all of the necessary fields.
• Have obvious places for user input (boxes, use of colour, etc.).
• Use appropriate controls (see right) for each field.
• Have text box controls that are the right size for the data.
• Have easy-to-understand instructions (if needed).
• Make good use of the screen area available.

As data is entered into the form, it needs to be checked for accuracy. Two
techniques help us do this: validation and verification.
 
Data  Validation  Techniques  
Validation is a process where data is checked to see if it satisfies certain criteria
when input into a computer. A number of validation techniques exist.

Eng. Mustafa El-Komy 96 Theory Notes


Eng.   Omar El Safty
Ch.7: System Development Life Cycle  
I.C.T.
 

Validation check Description Example(s)


Range check Checks whether data is within e.g. To check if a person’s
given/acceptable values age is > 0 but is also < 150
Length check Checks if the input data e.g. If a field needs six digits
contains the required number then inputting a five-digit or
of characters seven-digit number should
cause an error message
Type check Checks that the input data e.g. A person’s age should
has the appropriate data type be numeric integer not
alphanumeric, for example
Format check Checks the data is in a e.g. A date which should be
specific format or fixed in the form of dd/mm/yyyy
pattern
Presence check Checks if data is actually e.g. In an electronic from a
present and hasn’t been person’s telephone number
missed out may be a required field so, if
no data is entered, an error
message will be produced

Existence check Checks if data from a list has e.g. When signing up to a
been chosen and not left social networking website,
blank the country list may contain
existence check. If the user
doesn’t choose a country
from the list then an error
message will be displayed
Boolean check Checks that the input data is e.g. If a database admin
from only two options. wishes to restrict the users
to enter only ‘M’ or ‘F’ in the
Gender field, then the admin
should put Boolean check on
the Gender field that accepts
only characters ‘M’ or ‘F’
Check digit A validation check used in e.g. Validating the
barcodes to validate the correctness of a barcode
correctness of the barcode.
This is done by adding an
extra digit to the left that is
calculated from the rightmost
digits using some formula.

Eng. Mustafa El-Komy 97 Theory Notes


Eng.   Omar El Safty
Ch.7: System Development Life Cycle  
I.C.T.
 

Data  Verification  Techniques  


Verification is a way of preventing errors when data is copied from one medium to
another. There are two common ways that verification checks are carried out:

Visual  check  
This is checking for errors by the person who is entering the data. They compare the
entered data with the original document (i.e., what is on the screen is compared to
the data on the original paper documents – note that this is not the same as
proofreading).

Double  data  entry  


In this method, data is entered twice, using two people, and is then compared (either
after data entry or during the data-entry process).
 
7.2.2    Designing  File  Structures/Database                
When designing a database, the system designer needs to consider
• The type of data being stored (numbers, text, dates, etc.)
• The size of the data (how long is a typical name, etc.)
• The field names to use
• How many records will need to be stored

7.2.3    Designing  the  System  Outputs  


There are usually two types of output from a system that need to be designed:
• Screen displays (information displayed on the monitor)
• Printed reports (hard-copy to be mailed, filed, etc.)

7.3 Development and testing


7.3.1    Development  
Once the design stage is completed, it is then necessary to create the system and
test it fully.
• If the system contains files (for example, a database) then the file structures
would need to be finalized at this stage (e.g. what type of data is being stored,
how will the data files be linked, etc.). Once the file structures has been
determined, it is then created and tested fully to make sure it is robust when
the system actually goes alive.
• 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

Eng. Mustafa El-Komy 98 Theory Notes


Eng.   Omar El Safty
Ch.7: System Development Life Cycle  
I.C.T.
 
actually interface with the final system now needs to be identified. For
example, how the screens 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 finalize how these devices
are used with the system. This will be followed by testing to ensure that the
user screens are user-friendly and that the correct output is associated with
the inputs to the system.

7.3.2    Testing  
Software is often developed in modular form. This method allows the software to be
broken down into smaller parts (known as modules). Each part is developed
separately by a programmer (or team of programmers) and is then tested to see if it
functions correctly. Any problems resulting from the testing require the module to be
modified and then tested again.
Once the development of each module is completed, the whole system needs to be
tested (i.e., 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, database,
validation and verification methods, etc., and then test everything fully again. It is a
very time-consuming process but it has to be as perfect as possible before the
system goes live.
To sum things up, there are two main testing strategies:
• Test each module.
• Test the whole system.

Testing will use many different types of test data, which will fall into one of four
categories:
• Normal.
• Abnormal.
• Extreme.
• Live.
 
Normal  data  
This is data that is acceptable/reasonable and has an expected outcome. For
example, the month can be any whole number in the range of 1 to 12.

Eng. Mustafa El-Komy 99 Theory Notes


Eng.   Omar El Safty
Ch.7: System Development Life Cycle  
I.C.T.
 

Abnormal  data  
This is data outside the limits of acceptability,
Normal    
or wrong type of data, and should be rejected
or cause an error message. For example, all
Extremes    
the following values are not allowed as inputs
for the month:
• Negative numbers. Abnormal   Extremes   Abnormal    
• Any value greater than 12.
• Letters or non-numeric data.  
• Non-integer values (e.g., 3.5,10.75, etc.).
Extreme  data  
This is data at the limits or acceptability. For example, the extreme values of month
can be either 1 or 12.

Live  data  
Once the system has been fully tested, it is then tested with live data. Live data is
data with known outcomes. Live data is entered into the new system and the results
are compared with those produced from the existing system. Further modifications to
the software may be needed following this testing procedure.
The following table shows an example:

Live data Expected result Actual result Any actions


January error message data was accepted validation routines
on month element
need to be
modified
0 message output: ‘a computer software software needs to
zero value is not crashed be modified to
allowed’ avoid the crash
 
Improve the system as a result of testing
If an error is detected in some module in the testing phase, the development team
will have to modify the module to fix the error and then send it again to be tested. If
the detected error is beyond the development team’s scope, the design team will be
responsible for fixing this error.  
 

Eng. Mustafa El-Komy 100 Theory Notes


Eng.   Omar El Safty
Ch.7: System Development Life Cycle  
I.C.T.
 

7.4 Implementation
After the system has been developed and tested the system analyst will want to get
the system up and running. There are four methods of implementation:
• Parallel running
• Direct Changeover
• Phase implementation
• Pilot running
 
7.4.1    Parallel  Running  
The old and new systems run side by side for a time before the new system takes
over completely.
 
  Old  System    
 
 
   New  System    
 
 
Advantages
• If the new system fails, the old system will still be available as a backup.
• It is possible to gradually train staff.

Disadvantages
• More expensive than direct changeover as since extra staff is needed to run
both systems together.
• More time consuming than direct changeover since data needs to be entered
into two systems.

7.4.2    Direct  Changeover    


The existing system is stopped and the new system starts running immediately.
 
 
 
  Old  system     New  system    
 
 
 

Eng. Mustafa El-Komy 101 Theory Notes


Eng.   Omar El Safty
Ch.7: System Development Life Cycle  
I.C.T.
 
Advantages
• The cost is less than parallel running (since only one system is used, there is
no need to pay two sets of staff).
• The benefits of the new system are immediate.
 
Disadvantages
• This method can be disastrous if the new system fails since the old the
system is no longer available.

7.4.3    Phased    
With phased implementation, only part of the new system is introduced and only
when it proves satisfactorily, the next part is introduced, and so on, until the old
system is fully replaced. For example, the production of invoices is done by the new
system whilst other aspects like payroll and processing of orders carries on as
before.
 
Advantages
• If the latest part fails, it is only necessary to go back in the system to the point
of failure; hence failure isn’t disastrous.
• It is possible to ensure that the system works properly before expanding.
 
Disadvantages
• More expensive than direct changeover since it is necessary to evaluate each
phase before moving to the next stage.
• Very time consuming since each part needs to be fully evaluated before
making any further changes to the system.

Old  system    

New  system    

Eng. Mustafa El-Komy 102 Theory Notes


Eng.   Omar El Safty
Ch.7: System Development Life Cycle  
I.C.T.
 

7.4.4    Pilot  Running    


Pilot running is the method adopted by large organizations. The new system is
introduced into one branch or office of the company and its performance assessed
before being introduced elsewhere in the company.
 
Advantages
• If the new system fails, only one part is affected; the remainder is unaffected.
• It is possible to train staff in one area only, which is much faster and less
costly than parallel running.

7.5 Documentation
Once the new system is fully developed, a considerable amount of documentation
also needs to be produced for:
• The end-user.
• Specialists who may need to modify and develop the system further at some
later stage.
Thus, there are two types of documentation: User and Technical.

7.5.1    User  Documentation  


User documentation is intended to help users to learn how to use the software or
system. This can consist of any of the following:
• Purpose of the system.
• How to load/install/run the software.
• Limitations of the system.
• Hardware requirements.
• Software requirements.
• How to use the system.
• Screen layouts (input formats).
• Print layouts (output format).
• Sample runs.
• Error messages/ Meaning of error messages.
• Trouble-shooting guide/ Frequently asked questions.
• Tutorials.
• Glossary of terms.

Eng. Mustafa El-Komy 103 Theory Notes


Eng.   Omar El Safty
Ch.7: System Development Life Cycle  
I.C.T.
 

7.5.2    Technical  Documentation  


Technical documentation is designed to help programmers/analysts to make
improvements to the system or to repair/maintain the system. This can consist of any
of the following:
• Purpose of the system
• Limitations of the system
• Program coding
• Program flowcharts
• System flowcharts
• Hardware and software requirements
• File structures
• List of variables
• Validation routines

7.6 Evaluation
The purpose of an evaluation is to assess the system to see if it does what it was
supposed to do, that it is working well, and that everyone is happy with it in order to
carry out any maintenance if necessary.
When the new system is evaluated, the following questions will be asked: Is the
system:

efficient?
• Does it operate quickly, smoothly and with minimal waste?
• Is the system saving time, and resources?

easy to use?
• Are all of the system's users able to use the system easily and effectively?
• Can new staff understand and use the system with minimal training?

appropriate?
• Is the system suitable for the particular business / organization?
• Does the system actually meet the needs of the business / organization?
 
The following is a list of some of the techniques used to evaluate the new system:
• Comparing the final solution with the original task requirements.
• Identifying any limitations of the system.
• Identifying any necessary improvements that need to be made.
• Evaluating the user’s responses to using the new system.

Eng. Mustafa El-Komy 104 Theory Notes


Eng.   Omar El Safty
Ch.7: System Development Life Cycle  
I.C.T.
 
• Comparing test results from the new system with results from the old system.
• Comparing performance of the new system with performance of the old
system.
• Measure the time take to complete tasks (comparing old with new).
• Interviewing users to gather responses about how well the new system works.
• Giving out questionnaires to gather responses about the ease of use of the
new system.
• Observing users performing set tasks (comparing old with new).
 
What Happens Next?
The outcome of the evaluation will be to identify any limitations/problems and
necessary improvements to the new system.

Eng. Mustafa El-Komy 105 Theory Notes


Eng.   Omar El Safty
Ch.7: System Development Life Cycle  
I.C.T.
 

Audience appreciation
When planning and creating ICT solutions, it is important to consider the audience
who will either use or take part in this solution in order to achieve better results.
These better results are in terms of:
• Users’ satisfaction.
• Users’ response and appreciation.
The following list shows a number of factors that should be considered:
• The age of the target group.
o Young children will have a different response compared to more
mature group of adults.
• The experience of the audience.
o A board of company directors would expect a different approach
compared to an audience composed of school children.
• The expectations of the audience.
o For example, if you are advertising or giving a presentation on a new
restaurant, an older audience would expect to see good waiter service;
whereas a group of students would be more interested in pizzas and
fast counter service.
• Knowledge of the audience.
o For example, graduates in maths would expect to see a different
approach to a solution than a group of history students.

When starting to look at the ICT solution, some or all of these factors need to be
taken into account. Some research needs to be done first to find out about the target
audience. This could be done by:
• Interviewing a cross section of the target group to find out how to engage the
audience.
• Giving out questionnaires to people in the target group to find out their
background, interests, and so on, so that the final solution can be tailored to
meet the full expectation of the audience.
• Carrying out market research – this could involve the two techniques
described above, but would certainly involve a more sophisticated and in-
depth analysis of the data received.  

Eng. Mustafa El-Komy 106 Theory Notes


Eng.   Omar El Safty
Ch.7: System Development Life Cycle  
I.C.T.
 

Legal, moral, ethical and cultural implications

Legal  
Anything that breaks the law is termed illegal.
Examples would include breaking the software copyright by, for
example, copying software and then selling it without the
permission of the copyright holders.

Morality  
Morality covers the human desire to distinguish between right and wrong.
The only problem here is that culture can get in the way.
What may be immoral in some cultures is regarded as
acceptable practice in other cultures.
Note that, if something is immoral it doesn’t mean that it is
necessarily illegal (and vice versa).
For example, creating fake websites is not in itself illegal
(provided that the person who carries out the act doesn’t try to gain from their
actions), it is simply an immoral act since it can cause distress to others who aren’t
aware that it was simply a harmless prank. However, as soon as they try to obtain
personal and financial data then it becomes an illegal act.
Some people regard hacking as simply immoral. This again ceases to be true if the
act of hacking leads to breaking national security, or financial gain or leads to
revealing of personal information.

Ethics  
Ethics governs professional interactions by a society or group of people (it
sometimes goes against an individual’s own sense of morality). Unethical behavior
is essentially breaking a code of conduct/ethics.
For example, if somebody works for a software company and passes on some of the
ideas to a rival company, this would be regarded as unethical behavior.

Culture    
It refers to the attitudes, values and practices shared by a society or group of people.
The importance of culture is less clear-cut.
For example, writing software games that make fun of religion could be seen by
certain people as unacceptable behavior – but some cultures would find it funny and
would understand why it seen as offensive.
When writing computer games, for example, programmer need to be careful that
they don’t include items which some cultures would find offensive.

Eng. Mustafa El-Komy 107 Theory Notes


Eng.   Omar El Safty

You might also like