Chapter 1-Systems Analysis and Design (1) (1)
Chapter 1-Systems Analysis and Design (1) (1)
System users or the manager would have realized that the Information system is
no longer reflective of or satisfying the existing business aims and objectives. This
problem could be triggered by many factors, some of which are:
i. System users: they may be dissatisfied with the current system since they are
the ones who operate it. They will the sent requests to have a new system or
some modification to the existing one.
ii. Top management: they may issue directives in order to meet new
organisational objectives. It can also be due to change in management (new
manager), new requirements, etc.
iii. The need for improved operating efficiency: Errors in the existing systems
may be intolerable, especially to customers.
iv. Changes in technology: new hardware and software may force organisations
to change their ways of operation.
v. Change of government policies: new government laws and policies can force
organisations to change their systems
vi. The user could have changed his/her mind
Vii. The business might have expanded or due to other reasons
The systems analyst now needs to examine whether the said problem is real by
carrying out an in-depth study, after getting permission to conduct a feasibility
study.
Page 1 of 21
‘A’ Level Computing Notes: Systems Analysis And Design
1. Feasibility Study:
-This is a preliminary investigation conducted to determine if there is need for a
new system or modification of the existing one.
-The Analyst examines whether a new system is feasible or not.
He assesses the magnitude of this problem and decides the scope of the project.
He examines the problem of the current system and what will be required of the
new system.
-It involves evaluation of systems requests from users to determine if it is feasible
to construct a new one. Feasibility can be measured by its:
Thus the analyst must consider the following questions when producing a
feasibility study:
- Is the solution technically possible?
- Is the solution economically possible to produce?
- Is the solution economic to run?
- Will the solution be socially acceptable?
- Is skilled workforce available? If not, are training requirements feasible
- How will the system affect employees
- Will profits increase?
- How long will it take to produce the system?
- etc
After carrying out the feasibility study, a feasibility study report must be
produced and it contains the following information:
A brief description of the business.
Advantages and problems of the existing system.
Objectives of the new system.
Evaluation of the alternative solutions.
Development timetable.
Management summary
Terms of reference. Contents page.
Proposed solution, its advantages and disadvantages
Page 3 of 21
‘A’ Level Computing Notes: Systems Analysis And Design
2. DATA COLLECTION
The systems analyst collects data about the system. The fact finding methods that
can be used include: interviews, record inspection, questionnaire, observations,
etc.
i. Interview:
This refers to the face-to-face communication between two or more people in
order to obtain information. Interviews can also be done over the phone but the
most common ones are face to face. Interviews are done when you want to collect
information from a very small population sample.
Advantages of Interviews
Effective when gathering information about a system
The researcher can ask for clarification on some points that may not be
clear.
Encourages good rapport between the researcher and the respondent.
Non-verbal gestures like facial expressions can help the researcher to
determine if the respondent is telling the truth.
Information can be collected even from the illiterate since the respondent’s
language could be used.
First-hand information is collected.
The researcher can probe to get more information.
Disadvantages of Interviews
It is expensive since the researcher has to travel to the interview venue.
Difficult to remain anonymous
It is time consuming as more time is spent travelling and carrying out the
interview.
Good interview techniques are required as failure may lead to
disappointments.
Biased information can be given since the respondent may not tell the truth.
Page 4 of 21
‘A’ Level Computing Notes: Systems Analysis And Design
Disadvantages of record inspection
It is time consuming to go through all system records.
Manual files can be tiresome to go through and some of the data may be
illegible.
Confidential files are not given to the researcher
Documentation may difficult for an outsider to understand
Some records may not be relevant
iii. Questionnaire:
A document with carefully crafted questions to be answered by the respondent by
filling on the spaces provided. Questionnaires are used when collecting
information from a widely spaced population sample and when collecting
information from many people. A questionnaire contains open-ended and closed
questions. Open-ended questions are gap filling questions which require the
respondent to express his or her own view. Closed questions are guided
questions where the respondent just chooses Yes or No, True or False, or by just
putting a tick on given options. Questionnaires can be distributed personally or
by post.
Advantages of questionnaires
Effective when collecting a lot of data
Questions are very simple to answer.
It saves time as questionnaires can be distributes and then collected later.
Respondents can fill questionnaires at their own pace.
Give guarantees confidential of information, thereby encouraging
respondents to give accurate information.
They are cheap to use as travel expense can be low
Disadvantages of questionnaires
Questions must be well thought out and precise.
Some questions are left blank.
Some questionnaires may not be returned. Biased information can be
collected.
Respondents usually do not fill the correct information.
It is difficult to analyse information collect using questionnaires.
They are expensive to use if the postal system is used.
Abusive information can be filled by respondents.
Page 5 of 21
‘A’ Level Computing Notes: Systems Analysis And Design
iv. Observations:
It is a fact finding method that involves viewing the actual system in operation by
the researcher. The researcher can even take part in operating the system. It is
used when the researcher wants to see for himself how the system operates.
Advantages of observations
First-hand information is collected.
May identify problems that the users did not see
Accurate information can be obtained.
More reliable information is obtained.
Only areas of interest can be observed.
The researcher can take part in operating the system thereby getting
insight on how the system operates.
Disadvantages of observations
People work differently if they feel that they are being observed, therefore
inaccurate information can be collected.
The researcher may not understand some of the activities being observed.
It is time consuming to collect the required information.
The researcher may interrupt some of the activities being done.
More expensive than other methods
Dataflow Diagrams
These are diagrams that show how data moves between external sources,
through processes and data stores of a particular system. Dataflow diagrams use
the following symbols:
Page 7 of 21
‘A’ Level Computing Notes: Systems Analysis And Design
(2) First Level DFD
The context level DFD is split into detailed processes, entities and data
stores and present it as one diagram.
4. Design Stage:
This stage is concerned with the development of the new computer based
solution as specified by the analysis stage. The hardware and software
requirements are identified and purchased, ready for the construction stage.
The Database designer fulfills the file requirements. The output is a design
specification.
Tools used are DFD, Data Dictionary, Data models, prototypes, system flowcharts:
The personnel involved are users, Analysts, Database Designer.
Design stage involves:
Input Design: includes designing of data entry forms, input methods (e.g. by
filling forms, use of barcodes, etc) and the user interface.
Output Design: Includes design of reports, data output formats, screen displays
and other printed documents like receipts, etc
File design: Involves designing tables/files, records and validation rules. It also
involves determining how data is to be stored and accessed, the media to be used
for storage and the mode of file organisation. Fields in each files can be designed,
their length and data type, e.g.
File Name: Student File
Storage Location: Hard Disk
Mode of Access: Direct/Random
Page 8 of 21
‘A’ Level Computing Notes: Systems Analysis And Design
File Structure:
Page 9 of 21
‘A’ Level Computing Notes: Systems Analysis And Design
Costs of designing as well as maintainability
PROTOTYPING
Involves building a working but limited model of a new system that will be tested,
evaluated and improved if necessary before building the actual system. It involves
construction of a simple version of a program which is used as part of the design
to demonstrate how the system will work.
It is a mock-up of parts of the system for early evaluation
Reasons for prototyping:
- Gives an idea of the system before development
- enables clear identification of requirements
- allows revision and adjustments before full system is developed
The prototype will have a working interface but may not actually process data
Special software will be used to design input screens and to run the system.
The prototype can then be discarded and the real system designed using other or
the same software (throw away prototype).
Prototyping can be used at any stage of the SDLC. The prototype can be further
refined until the user is satisfied with it and then it is implemented as it is
(Evolutionary prototype).
Benefits of prototypes:
cheaper to setup than alternative methods that could be used to predict
what will happen in a system
faster to design a system model
Gives user the chance to experience the look and feel of the input process
and make suggestions where necessary.
System is more likely to have fewer or no errors
More acceptable to users of the system since they are also involved in the
design
Disadvantages of prototyping
prototypes can be very expensive to design
takes too long to finish system design, especially if the prototype is thrown
away
SYSTEM DOCUMENTATION
Documentation refers to the careful and disciplined recording of information on
the development, operation and maintenance of a system. Documentation is in
two main types: user documentation and technical documentation
(a) User Documentation: It is a manual that guides system users on how to load,
operate, navigate and exit a program (system). User documentation contains the
following:
System/program name.
Storage location.
System password.
Page 10 of 21
‘A’ Level Computing Notes: Systems Analysis And Design
Instruction on how to install the program.
Instruction on how to operate the system: e.g.
o How to quit the program
o how to load/run the software
o how to save files
o how to do print outs
o how to sort data
o how to do a search
o how to add, delete or amend records
o print layouts (output)
o screen layouts (input)
o the purpose of the system/program/software package
o error handling/meaning of errors
o troubleshooting guide/help lines/FAQs
o how to log in/log out
The computer environment is prepared, the programs to be written are done and
they are tested, user documentation and training manuals are developed.
Programs are written per the program and design specifications. The programs
are tested using walk through and group reviews. The Analyst supervises the
writing of training manuals and user documentations. User documentation
includes user manuals, user quick reference guides, on-screen help etc.
It also involves the construction and assembling of the technical components that
are needed for the new system to operate. This includes preparation of the
computer room environment, coding of the computer program using a specific
programming language, testing of the coded program, user training (users are
trained on how to enter data, search records, edit fields, produce reports, etc).
Testing strategies
First step involves testing of the programs and various modules individually, e.g.
- Top-Down testing: program is tested with limited functionality. Most
functions are replaced with stubs that contain code. Functions are gradually
added to the program until the complete program is tested.
- Bottom – up testing:
Each function is tested individually and then combined to test the complete
program.
- Black-box testing:
Program is regarded as a black box and is tested according to its
specification.
No account is taken of the way the program is written
Different values are entered for variables to determine whether the
program can cope with them. This includes standard
(typical/normal), extreme (borderline) and abnormal data values.
testing will include:
Use of extreme, standard and abnormal data
Inputting error free data into the system to see if error free
outputs can be produced.
Inputting data that contains errors into the system to see if the
validation procedures will identify the errors.
Inputting large quantities of data into the system to test
whether or not the system can cope with it.
Testing all the regular and occasional processing procedures.
Page 12 of 21
‘A’ Level Computing Notes: Systems Analysis And Design
Inputting data that contains extreme ranges of information to
check that the validation procedures can cope with it.
- White-box testing:
Each path through the program is tested to ensure that all lines of
code work perfectly.
Involves testing the program to determine whether all possible paths
through the program produce desired results
Mostly appropriate if the program has different routes through it, i.e.
uses selection control structure and loops
Involves testing of logical paths through the code
Involves testing of the structure and logic of the program (if it has
logical errors)
Involves desk checking (dry running)
- Alpha testing:
The first testing done within the developers company (at owners’
laboratory).
Testing is done by members of the software company
Some errors may still be in existence after alpha testing as the testers
are programmers not users.
The software version will be unfinished
Testers have knowledge of the software and of programming
- Beta testing: System testing done after alpha testing; in which the program
version is released to a number of privileged customers in exchange of their
constructive comments. Mostly similar to the finally released version.
Once a program is tested, it is installed and the analyst can now test it. A very
large program must be tested using the following types of tests:
1. Unit testing: the process of testing each program unit (sub-routine/module in
a suite) singly to determine if it produces expected results.
2. Integration Testing: testing to see if modules can combine with each other
and work as expected. The whole program is tested to determine if its module
integrate perfectly
3. System testing: the testing of the whole program after joining the modules to
determine if it runs perfectly.
4. User acceptance testing: determining if users of the new system are
prepared to use it. Usually the final step. It enables identification of some bugs
related to usability. User gain the confidence that the program being ushered
meets their requirements
Page 13 of 21
‘A’ Level Computing Notes: Systems Analysis And Design
typing with inadequate breaks can lead to RSI. Printer noise can lead to stress.
Badly designed software can cause stress. Trailing electricity cables are a safety
hazard.
a. Parallel Run: This involves using of both the old and new system concurrently
until the new system proves to be efficient. It involves operating the new and old
systems simultaneously until management is confident that the new system will
perform satisfactorily. Other workers will be using the old system while others
use the old system but doing the same type of job.
Advantages of parallel run
Results for both systems are compared for accuracy and consistency.
If the new system develops problems, it will be easier to revert to the old
one.
There is enough time given to determine if the new system produces
expected results.
Employees have enough time to familiarise with the new system.
ii. Abrupt (Direct) changeover: Involves stopping using the old system on a
certain day and the new system takes over on the next morning. This is suitable
for control systems like in chemical plants and for traffic lights.
Advantages of Direct Changeover
Reduces cost as of running two systems at the same time.
Faster and more efficient to implement.
There is minimum duplication of tasks.
Enough resources can be allocated to make sure that the new system
operates successfully.
iii. Phased / Partial conversion: This is whereby the old system is gradually
removed while the new system is gradually moved in at the same time. This can
be done by computerising only one department in an organisation this month,
Page 14 of 21
‘A’ Level Computing Notes: Systems Analysis And Design
then the next department in two months’ time, and so on until the whole system
is computerised.
iv. Pilot conversion: This is whereby a program is tested in one organisation (or
department), and is applied to the whole organisation if it passes the pilot stage.
It serves as a model for other departments. A pilot program can then be applied in
phases, directly or using the parallel run method.
7. Maintenance/review/evaluation Stage:
This stage is concerned with making upgrades and repairs to an already existing
system. Certain sections of the system will be modified with time.
Maintenance can be
NB
Criteria used to evaluate a computer based solution includes the following:
- Were the objectives met? (Successes of the system are compared with set
objectives)
- Does it carry out all the required tasks?
- Easiness to use (user friendly)
- Maintainability
- Compatibility with existing systems and hardware
- Offering better performance than the previous one
- Cost effectiveness, etc.
Page 15 of 21
‘A’ Level Computing Notes: Systems Analysis And Design
-The order of performing each activity is very important, e.g. coding comes first
before testing
-A number of PERT packages can be used
-PERT software packages should show the following information and features:
Different paths of the project using lines of different value according to
length of task
Arrows showing the order of completion
Longest journey along the arrows must show the shortest time of completion
Resources must be allocates at correct times
Deadlines (bottlenecks) can easily be predicted
Must have a modelling tool
Should be able to produce DFDs, ER diagrams
Should have a library of standard shapes
Data dictionary must be automatically generated
Tables can be generated automatically
The activities are all interconnected into a PERT network as given below:
Critical path:
All activities that are critical and are used to determine how long it will take to
complete the project; they must not delayed if the project is to finish in time.
GANTT CHART
Software for producing Gantt Charts should have some of the following features:
Should be able to show individual components of tasks
Should show the earliest starting time
Should indicate latest ending times
Should be able to show relationships between components
Should show the shortest time to finish
Every aspect should be diagrammatic
It should be simple to follow
Should contain review milestones
Should show percentage of chart finished
Should automatically generate reports on costs
SYSTEM SECURITY
It is important to keep data secure so that it may not be damaged or get lost. The
risks and their solutions are as follows:
Risk Solution
Hardware -Frequent back-up of data, at least one copy to be kept at
failure different locations on daily basis
-Log files to be kept for all transactions
Fire Keep backup file at fireproof safe or storage at an
alternative location
Theft Physical security measures like locking rooms, use
security cameras, guards, electric fence, screen gates, etc
Disgruntled Employee checks (ID cards to check workers, careful
employees vetting during employment, instant removal of access
right to sacked workers, separation of tasks for workers,
educating workers to be aware of security breaches)
Hackers Usernames & Passwords, firewalls
Viruses Latest and updated Antiviruses (, firewalls
Floods Building rooms at higher grounds, waterproof safes for
backups
If a hard disc fails, files can be recovered by using the last backup, which is copied
on to another hard disc. The log file should be used to update the master file.
Page 17 of 21
‘A’ Level Computing Notes: Systems Analysis And Design
During the recovering process, the master file will not be available but the system
could be maintained at a lower level of services. Any transaction could be logged
and used to update the master file when the system is up and running.
User training:
Once a new system is put in place, existing employees are trained on how to
operate the new system, otherwise new employees are recruited. User training
can be in the following forms:
i. On the job training: Users are trained at their organisation by hired trainers.
This has the following advantages:
Learners practice with actual equipment and the environment of the job.
Learners can engage in productive practices while on training.
This is cheaper for the organisation.
Enough practice is gained on how to operate the system.
ii. Classroom training: Users are send to other colleges and institutions which
offer courses on the subject matter. This could be expensive to organisations
since employees take study leave while being paid at the same time. Employees
can also be trained on aspects that they will not apply when they finish the
course. The gap between what is learnt and what is needed at the job may be too
wide.
NB
- User dissatisfaction. SDLC assumes that the user already knows all their
requirements thus the analysts expect the users to tell them their
requirements and once documented the requirements should remain
unchanged, thus they develop the system with these requirements only to
find that when the system is implemented, it does not provide for their
need or their changed requirements, hence they become dissatisfied with
the system.
- Failure to meet the needs of the management in that the systems
developed with the approach are mainly operational processing systems
such as payroll, invoicing which deals with low level operational tasks, thus
ignoring the information needs of the tactical and top management, that
they require to make decisions e.g. which products to stop selling etc.
- Unambitious system design, in that the systems developed by this
approach often tend to computerize the manual operational tasks like
invoicing, thus they tend to come up with systems design that is similar to
the existing manual process.
- Application backlog, this approach has many phases with sub phases, It
may take many weeks to complete a phase, thus the overall development
time of a single project may be months and if there are other system
waiting to be developed using this process, it may cause a backlog.
Page 19 of 21
‘A’ Level Computing Notes: Systems Analysis And Design
- Maintenance workload since the firm may have many systems to develop,
the development is often quick and ‘dirty’ so as to make the delivery date,
thus brings about systems which take a huge effort to maintain.
- Problems with documentation, this approach provides for
documentation of the implementation process which is very ideal, but the
notation of the documentation is towards the computer person in that the
documentation is highly technical and not easy to understand by the user.
REVIEW QUESTIONS
(a) Explain why care must be taken in defining the problem to be solved [2]
(b) State the methods that the systems analyst can use to find out more
information about the problem, giving an advantage of each. [4]
(c) Explain the importance of evaluating the system against the original
specifications. [2]
(a) Alpha testing, black-box testing, white-box testing, beta testing [8]
(b) Adaptive maintenance, Corrective maintenance, Perfective
maintenance and preventive maintenance [8]
4. The analyst needs to collect information about the current system. State
one advantage and one disadvantage of each of the following methods of
information collection.
(a) Questionnaires
(b) Interviews
(c) Document Collection
(d) Observation [8]
Page 20 of 21
‘A’ Level Computing Notes: Systems Analysis And Design
5. (a) The analyst has to decide whether to use off-the-shelf or custom –
written software. Explain what is meant by:
(i) Off-the-shelf-software
(ii) Custom written software [2]
(c) List three advantages and one advantage of using off-the-shelf software
rather than custom-written software [4]
i. User documentation
ii. Technical documentation [2]
i. User documentation
Page 21 of 21