System Analysis and Design
System Analysis and Design
System Analysis and Design
Chapter 1
Objectives;
•Define system
•Explain the types of systems and give examples
•Understand the importance of systems
•explain the different phases of system
development life cycle
•Enumerate the components of system analysis
•Explain the components of system designing
INTRODUCTION
Systems are created to solve problems. One can
think of the systems approach as an organized
way of dealing with a problem. In this dynamic
world, the subject System Analysis and Design
(SAD),mainly deals with the software
development activities.
DEFINING A SYSTEM
• A collection of (related)components that work
together to realize(or achieve) some
objectives(or tasks) forms a system.
• Regularly interacting or independent group of
items working together to forma unified
whole.
• An organized or established procedure.
DEFINING A SYSTEM
• The objective of most systems demands that
some output is produced as a result of
processing the suitable inputs.
• A well-designed system also includes an
additional element referred to as ‘control’
that provides a feedback to achieve desired
objectives of the system.
DEFINING A SYSTEM
• Basically there are three major components in
every system, namely;
input,
processing
output.
COMMON TYPES OF SYSTEM
There are two main categories;
•Natural Systems
•Man-made Systems
Natural Systems
• Natural systems can be divided into two sub-
categories namely;
• Physical systems
• Living systems
Physical Systems
• Stella systems: Consists of heavenly bodies i.e.
meteors, asteroids, planets, galaxies etc.
• Geological
• Molecular
Living Systems
This has to do with everything which can be termed
as being alive.
NB: Numerous research studies have proven that, giving attributes of living things
to man-made systems is a sure way of creating resilient and robust systems.
Characteristics of Living Systems Given to Man-
Made Systems
• The reproducer
• The boundary
• The ingestor
• The distributor
• The converter
• The producer
• The matter-energy storage subsystem
• The extruder
• The motor
Characteristics of Living Systems Given
to Man-Made Systems
• The supporter
• The input transducer
• The internal transducer
• The channel and net
• The decoder
• The associator
• The memory
• The decider
• The encoder
• The output transducer
Man-Made Systems
1. Social Systems: organizations of laws, doctrines,
customs, culture etc.
2. An organized disciplined collection of ideas
3. Transportation systems: networks of highways,
canals, airlines, railways etc.
4. Communication systems: telephones, telex etc.
5. Manufacturing systems: assembly lines,
factories and so on.
6. Financial systems: inventory, general ledger,
accounting and so on
Reasons Why Some People
Do Not Use Computers
• Time
• Cost
• Security
• Convenience
• Dependence on electricity
• Availability
• Politics
• Maintainability
Automated Systems
Man-made systems which interact with or are
controlled by one or more computers.
NB: In the System Analysis and Design terminology, the system development
life cycle also means software development life cycle.
Phases of System Development
Life Cycle
1. Preliminary study (Initial investigation)
2. Feasibility study
3. General Design(System analysis)
4. Detailed design
System Design,
Coding/Building/Development
Testing
5. Implementation and maintenance
6. System Audit
Systems Approach
• This the strategy used in the creation /
development of systems.
• Usually there are two main models used by
professionals. Namely
Waterfall model
Spiral model
These have formed the basis for a lot of new and
improve models including the
The modified waterfall model
Systems Approach
Waterfall Model
• Waterfall model is the foundation for most of the
structured development methods since the
1970’s to date. It consist of the following phases
Systems analysis
Systems design
Systems build and test
Systems introduction and transition
Maintenance of production status systems
WATERFALL MODEL
Systems Approach Spiral Model
• Was introduced by Barry Boehm as approach
for iterative development.
• It has the same phases as the waterfall
method but follows an incremental approach
to system development
SPIRAL MODEL
System Requirements
This is a documentation on the system and is also one of the most important
activity in the system development life cycle.
This ensures the continuity of the system.
The view points of any system are:
The users requirements
The system’s requirements
Technical requirements
The user requirements: is a complete description of the system from the
users point of view detailing how to use or operate the system. It also
includes the major error messages likely to be encountered by the users.
The system’s requirements: contains the details of system design, programs,
their coding, system flow, data dictionary, process description, etc.
The technical requirements: composes of all the technical equipment and
tools needed to make the system function properly
NB: This helps to understand the system and permit changes to be made in the existing system to satisfy new
user needs.
System’s Requirements
• Suitable with general strategies
• Supporting decision maker
• Competitive edge
• Return on investment
• Overhead control
• Supporting operational management
• Improving information communication
• Impact of information products
• Ability to implement quicker and better
Users Requirements
• Easy access:
• The system: It must be solid, stable and
resilient and must provide accurate
information and be easy to spot mistakes in
order to correct them.
• Interface: It is the point of interaction
between the user and the system. As such all
effort should be made to make sure the user
can use it.
Technical Requirements
• Information volume
• Period
• Accuracy
• Complexity
Some Popular Issues in Development
• Incompatibility
• Shortcomings
• Low reliability
• Poor resources
• Bad support
System Survey
Survey is the process of finding out more about
some subject of particular interest. This done
through meticulous strategizing, planning,
research and investigations to reveal what is
needed(by the system).
There are two main phases;
Preliminary survey
Detailed survey
Phases of Survey
• Preliminary survey: this is where a cursory
look of the project is conducted which helps
determine its feasibility
• Detailed survey: an in-depth definition of
what needs to be done, how it is to be done
and who is to do what in order for the
requirements to be achieved. It is divided into
two parts namely;
Detailing the objectives set forth
Identifying information sources and requirements
Investigation Methods
• Survey methods
The interview
Questions
Communication
• Observation methods
Official/formal observation
Unofficial/informal observation
• Questionnaire method
Title
Data classification
Data
Survey Report
A good survey should contain the following;
•Objectives of the system
•Inter-connection between related departments
•Details of the current system
•Future system and sketchy estimate of costs and benefits
•Advice
•Time frame and plan for system development
•General description(non-technical)
•Original document
•Evaluation of the current system in terms of organizational
structure, technology, information system, users’ IT skills and
policy renovation
Survey Report
A good survey should answer the following;
•Is the document of the current system adequate?
•Have users reviewed and agreed with your point of
view?
•Has the whole report been thoroughly?
•What functional requirements need further
research?
•Have all requirements been reviewed?
•What are the substitute designing solutions?
•What are the project’s possible changes?
WHAT YOU HAVE LEARNT
In this lesson a systematic approach to solve any
given problem is explained.
Phases of system such as preliminary system study,
detailed system study, system analysis, design,
coding, testing, implementation and maintenance
were explained.
Computer based systems were defined. System
development life cycle was discussed in detail.
The different phases of the development of system
are explained in detail.
QUESTIONS
• 1. Write True or False for the following statements.
• (a) A collection of components that work together to realize
• some objectives forms a system.
• (b) System life cycle is not an organizational process of developing
• and maintaining a system.
• (c) In the system analysis and design terminology the system
• development life cycle means software development life cycle.
• (d) Coding is not a step in system development life cycle.
• (e) System analysis and system design are the same phase of
• system development life cycle.
Questions
1. Fill in the blanks.
(a) System study is the _____________ stage of system development
life cycle.
(b) Analysis involves a ____________ study of the current system.
(c) All procedures requirements must be analysed and documented
in the form of data flow diagrams, data dictionary,
___________ and miniature specifications.
(d) _____________ is a blue print of a computer system.
(e) In ___________ run the new system installed in parts.
(f) In parallel run computerized and ____________ systems are
executed in parallel.
TERMINAL QUESTIONS
1. Define a system. Explain the components of a system.
2. How do you explain system development life cycle?
3. Discuss the importance of system analysis and design
in the
development of a system.
1.8 KEY TO INTEXT QUESTIONS
1. (A) True (b) False (c) True (d) False (e) False
2. (a) first (b) detailed (c) logical data structure
(d) structure design (e) pilot (f) manual
Chapter 2
Objectives;
•Understanding techniques applied in
information analysis
•Explain DFD
•Function diagram
•Identify E-R diagrams
•Understand Normalization and de-
normalization
Roles of The System Analysts
• Archaeologist and scribe
• Innovator
• Mediator
• Project leader
Abilities of an Analyst
• Skills to interview users, mediate disagreements
• Ability to do more than just draw flowchart and other
technical diagrams
• Application knowledge to understand and appreciate
user’s business
• Computer skills to understand the potential uses of
computer hardware and software in the user’s
business
• Ability to view a system from many perspectives
• Ability to partition it(the system) into lower levels of
subsystems
• Ability to think of a system in abstract as well as
physical terms
Popular Methods of System Analysis
Structured system analysis originated from the
believe that principles of structure programming
can be applied to analysis and design phase.
Tools supporting analysis: Data Flow
Diagram, Function Diagram and Entity
Relationship Diagram
• Concentrate on important feature of the
system,
• Able to respond to changes or changes in
user’s requirement with low cost and risk
• Properly understand user’s environment and
write documents in the same way that
designers and programmers construct the
system
Tools supporting analysis
The three(3) most important tools used in
system analysis are:
•Data Flow Diagram
• Function Diagram and
•Entity Relationship Diagram
Data Flow Diagram (DFD)
• The Data Flow Diagram (DFD) is a graphical
representation of the flow of data through an
information system.
• You can associate data with conceptual,
logical, and physical data models and object-
oriented models.
DFD Importance
• It enables you to represent the processes in your
information system from the viewpoint of data.
• The DFD lets you visualize how the system operates, what
the system accomplishes and how it will be implemented,
when it is refined with further specification.
• Data flow diagrams are used by systems analysts to design
information-processing systems but also as a way to model
whole organizations.
• You build a DFD at the very beginning of your business
process modelling in order to model the functions your
system has to carry out and the interaction between those
functions together with focusing on data exchanges
between processes.
Types of DFDs
• There are two types of DFDs, both of which support a top-
down approach to systems analysis, whereby analysts
begin by developing a general understanding of the system
and gradually break components out into greater detail:
Logical data flow diagrams - are implementation-
independent and describe the system, rather than how
activities are accomplished.
• Physical data flow diagrams - are implementation-
dependent and describe the actual entities (devices,
department, people, etc.) involved in the current system.
• DFDs can also be grouped together to represent a sub-
system of the system being analyzed.
• A data flow diagram can look as follows:
DFD Symbols
OR The process
The flow
The store
Magazine information
Magazines 2.3
Documents Suppliers
Insert New
Magazine
Function Analysis
• This is an attempt to understand what the
users expect of the system regardless or how
it achieves it.
Functional Analysis
A complete function should have the following;
•Function name
•Description of function
•Function’s input (data)
•Function’s output (data)
•Events that cause changes and their efficiency
Function Diagram Example
Library Management
System
Reader
Allocating
Entity Relationship Diagram
• An entity relationship (ER) diagram is a
picturistic representation of entities and how
they are connected(related).
Components of ERD
There are three main components of an entity
model;
•Entity:
It is a subject, duty or an event about which we want
to save information.
An entity can be said to anything of importance that
we want to save information about
•Attribute: These are the characteristics of entities
displayed by fields or columns of tables
•Relationship: It is used to show the connection
between system entities.
Components of ERD
Relationship(continued):
There are three(3) main types of relationship
One – one relationship
One to many relationship
Many – many relationship
Components of ERD
Attributes(continued):
Identifying: consists of one or more attributes of
an used to uniquely identify each entity instance in
the entity set
Specification: These attributes provide
descriptions of the entity instance
Connection(foreign key): This points out the
relationship between an entity instance in one
table and another entity instance in another table
Models of ER Diagrams
• There are two main models used to depict ER
diagrams namely;
• Chen notation and
• Crow’s foot notation
ERD Models Example
CHEN
NOTATION
Student_ID Course_ID
Course_Desc
LastName
Sex
Student takes Course
Course_ID Course_Name
Age
Course_Duration
FirstName
ERD Models Example
CROW’S FOOT NOTATION
Student Course
Student_ID Course_ID
FirstName Course_Name
LastName Course_Desc
Age Course_Duration
Sex
Course_ID
Data Model Development
There are two(2) main steps;
•Defining entities: The following would help you
define which entities require storing details about
– Information relating to one of the objects of the
system(e.g. borrowing list, returning lists)
– Information relating to major assets or resources used
in the system(such as book store)
– Information about planning and controlling(such as
book returning deadline, financial plan)
•Defining relationships: After identifying entities
find the connect between them
The Advanced Data Modeling
Sometimes there are complicated contexts in
realities where analyst must display them well
Below are some of those contexts;
•Optional relationship
•Abstract entity
•Recursive relationship
Normalization
Normalization is the process of analyzing
attributes in an entity set(table/relation) in
order to minimize repetition, avoid redundancy
and eliminate ambiguity from entity sets
Normalization
• First Normal Form(1NF): A relation is said to be
in 1NF if and only if it contains no repeating
groups
• Second Normal Form(2NF): A relation is said to
be in 2NF if and only if it is in 1NF and every non
key attribute(composite key) is dependant on all
parts of the key.
• Third Normal Form(3NF): A relation is said to be
in 3NF if and only if it is in 2NF and non key
attribute is functionally dependant on another
non key attribute
NB: For this course we only considered the first three normal forms
De-Normalization
On some occasions, after the normalization
process, there is the need to reverse it. This
process of reversing or undoing normalization is
termed de-normalization.
Completion of Information Analysis
Finally we have to do the following;
•Corporation of new requirements
•Supporting tools and techniques
•Summary of analysis process
Summary
We learnt;
•Which techniques are applied in information
analysis
•How to explain DFD
•How to create a function diagram
•How to identify E-R diagrams
•The types of E-R models
•How to Normalize and de-normalize
Chapter 3
SYSTEM DESIGN
Chapter 3
Objectives;
•Learn the meaning of system design
•The techniques used in system’s design.
•Understand what is meant by user interface
•Identify the different kinds of user interfaces
•Identify the ideal interface for users of the
system
The Designing Specifications
• System design is the process of refining the
deliverables from system’s analysis phase into
a form programmers can understand.
• In principle System analysis is different from
system design
Principles of Structured Design
• Structured design is the result of a desire on
the part of its authors to formalise what they
consider to be good programming practice
• Structured design should be geared towards
addressing changes that occur in response to
shifts in the competitive environment
• Functionality is essential throughout the
structured design process
Challenges Software Engineers Face in
Structured Design
• The suppressing of coding issues, making
these issues subservient to design principles
• Acceptance of system view and not the local
view as key indicator of success or failure
• Resolution of issues related to ‘finishing’ the
design through application of predetermined
value systems.
Guidelines For Introducing
Structured Design
• Make it clear from the start that Structured
design is not a remedy for any problems of the
organization
• Obtain support from anyone who may be
affected by this change
• Emphasize the flexibility that structured design
provides and downplay the misconception that it
is restrictive
• Structured design development passes through
two primary phases: Logical Design development
and Physical Design development
Guidelines For Introducing
Structured Design
• Logical Design transforms the dataflow
diagrams developed during the structured
analysis phase into refining the design to
reflect the kinds of quality attributes that
structured design encourages
• Physical Design phase involves the
modification of the Logical design to
accommodate whatever changes necessary
Stages of Design as a Process
• Transformation of the problem model into an
initial solution model
• Embellishment of initial design to include
necessary features
• Transformation of the structured English into
pseudocode.
• Evaluation and refinement of the qualities of the
design
• Revise the design to accommodate
implementation constraints
Design Goals and Objectives
The design objectives of the user implementation
model are the quality of the design.
The efficiency and accuracy of the system is directly
related to the nature of the design as created by
the designer.
The most important guidelines are coupling and
cohesion;
•Cohesion: It is the degree to which the
components of a model are necessary and
sufficient to carry out one single well defined
function.
•Coupling: It is the degree to which modules are
interconnected with or related to one another.
Relationship Between System
Analysis and Design
Some failings of structured analysis and their corresponding
symptoms during design
Problem Effect on Design
NB: In choosing the ideal interface always consider the users you are a targeting.
System Monitoring Design
• In order to ensure the system is reliable,
efficient and safe it must be monitored
regularly
• Things to consider:
– Accuracy
– Safety
– Privacy
Summary
• We learnt;
• What structured design is
• Some challenges developers face in design
• How to choose the tool or technique
• Some tools and techniques in design
• Some types of user interface