System Development Life Cycle 2023
System Development Life Cycle 2023
System development life cycle is the overall process of developing information system through a
multistep process including the following stages:
- Fact finding
- Analysis
- Design
- Testing
- Documentation
- Implementation
- Evaluation and Maintenance
Fact Finding
If the job that the information system will carry out is currently being performed by another
system then a good starting point for a feasibility study is to examine the existing system. Even
if it has already been decided that a new system will be created it is still a good idea to
examine any existing system. Any problems with the system can be identified and new ways of
performing the job can be considered. A variety of methods can be used to identify how the
existing system works. These include :
Method Description
Preparing questions and giving them to the respondents to answer immediately
they get the questions, either orally or written. People who operate the
current system can be interviewed to find out what they think of it. Oral
Interviews
interviews can be in more depth than a questionnaire could be. If an
interviewee makes a useful point about the system then the person doing the
oral interview can follow the point up to get further information.
Preparing questions and giving them to respondents to answer at their own
time. Questionnaires are useful when information about a system has to be
Questionnaires
gathered from a lot of people. Because people can remain anonymous they may
be more likely to tell the truth than they would in an interview.
Looking at how things are done while making notes on the information
obtained. This can give an unbiased view of how the system works. Because
the person designing the information system is doing the observation himself it
Observation
is possible to get first hand information about how the system works. The
system developer can identify if any of the workers have been lying about their
role in the system.
Examining existing company documents to understand how the system works.
Literature
This can be documents about the organization, records kept or technical
review
documentation.
1
Analysis
This is an investigation that is carried out by a systems analyst to find out what the main
problems are with the existing system and if it is technically possible and cost-effective to solve
these problems by developing a computer based solution.
A description of the existing system outlining what is being done and how it is being
done;
A set of problem statements describing exactly what the problems are with the existing
system;
A set of system objectives which describe what the new system must be able to do;
A description of some alternative solutions;
A description of the technical, economic, legal and social factors that have been
considered;
A recommended course of action.
Once the systems analysts have completed their investigation they produce a detailed
description of how the existing system works. Methods used to help describe the system include
data flow diagrams and systems flowcharts
External entity – data source or data destination, for example people who generate
data such as a customer order, or receive information such as an invoice.
Process – an operation performed on the data. The two lines are optional; the top
section of the box can be used to label the process, the middle to give a brief
explanation, the bottom to say where the process takes place.
Data flow – the arrow represents movement between entities, processes or data
stores. The arrow should be labelled to describe what data is involved.
2
System Flowcharts
System flowcharts describe in detail how a process will be carried out. Sometimes during the
development of an information system it is useful to be able to produce a more general
description of how a system will work. A system flowchart shows in general terms the
operations that will be performed on information in an information system. The arrows on a
system flowchart show the direction that data will flow in around the system rather than the
order in which the operations will be carried out.
Program Flowcharts
Program flowcharts is a type of flowchart that explains how a particular program solves a given
task. It shows part of a system. It uses geometric shapes to represent steps and arrows to
communicate the flow of data.
Input / Output
Process
Decision
Data flow
3
Design Stage
Input
Output
Data storage
User interface
Backup and recovery procedures
Security procedures
Hardware/software to be used
Testing Stage
Testing carried out using the plan to make sure that all the parts of the system work correctly
with normal, extreme and erroneous data
Normal test data is used to check that a system can handle the sort of data that would be
expected during day-to-day use
Extreme test data is used to check that a system can cope with data that lies on the
boundaries of what is acceptable
Erroneous (or exceptional) test data is used to check that a system can identify data that
is wrong and reject it
4
Documentation Stage
Producing documentation
Technical documentation
User documentation
NOTE: Even with the user documentation, users may need training on how to use the system.
This can be done before or during implementation.
Implementation Stage
When a new system has been tested thoroughly by the programmers then it is ready is be
implemented into the working environment, replacing the original system. There are four
strategies that can be used to do this: direct; phased; pilot or parallel running
Direct implementation:
With this strategy, the changeover is done in one operation, completely replacing the old
system in one go. This usually takes place on a set date, often after a break in production or a
holiday period so that time can be used to get the hardware and software for the new system
installed without causing too much disruption.
5
Advantages:
The most rapid of all the strategies, provided it works!
Less risk of confusion between old and new systems.
Disadvantages:
Most stressful for the users - the old system has gone so there is no going back if
they have difficulties.
Most difficult to train staff on as the new system was not in place to learn on
before the change over.
Most stressful for the developers - all the data and files from the old system will
have to be converted ready for use on the new one.
Most risky - if the new system does not work properly then there is nothing to fall
back on.
Phased implementation:
With this strategy, the new brought in in stages (phases). If each phase is successful then the
next phase is started, eventually leading to the final phase when the new system fully replaces
the old one.
Advantages:
Very structured, each phase can be fully evaluated before moving onto the next
one.
Lower risk, a well planned and controlled introduction of the new system.
Easy to train staff by letting them learn new skills on each phase as it is
introduced.
Disadvantages:
Slower than direct implementation.
Although each phase is easy to evaluate, you have to wait until all the phases are
complete before you can evaluate the whole change over.
Pilot implementation:
With this strategy, the new system replaces the old one in one operation but only on a small
scale. For example it might be tried out in one branch of the company or in one location. If
successful then the pilot is extended until it eventually replaces the old system completely.
Advantages:
Easy to control, the pilot can be halted at any time.
Easy to evaluate because the new and old systems are both running.
Low risk, if a small-scale pilot fails then not too much has been lost.
6
Easy to train staff by letting them learn new skills on the pilot system.
Disadvantages:
It can be slow to get a pilot to completely replace the old system.
A pilot may not show up problems that a full-scale implementation would. This is
because a system can work well as a small-scale pilot but has difficulties when it is
scaled up to a full operating system with more realistic volumes of data to be
processed.
With this strategy, the old and the new system are both used alongside each other for a certain
period of time, both being able to operate independently. If all goes well, the old system is
stopped and new system carries on as the only system.
Advantages:
If there are initial problems with the new system then the old one can still be
used.
Both systems can easily be compared.
Easy to train staff by letting them learn new skills on the parallel system.
Easy to evaluate because the new and old systems are both running.
Disadvantages:
Expensive - both systems are being run as fully operating versions so both are doing
the same job. This may mean duplication of staff and hardware.
Some risk - there is a greater chance of confusion or errors if the two different
systems are being run side-by-side.