SYSTEMS ANALYSIS & DESIGN
Course Objectives
• To provide you with new ways of looking at information in
the world in order to solve business problems
• To introduce you to concepts and methods of System
Analysis and design (SAD)
• To describe the systems development life cycle (SDLC)
• To teach you effective methods for gathering essential
information during system analysis
• To teach you effective methods for designing systems to
solve problems effectively using technology
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, mainly deals with the
software development activities.
What is Systems Analysis and Design (SAD)?
• Systems Analysis: understanding and specifying in
detail what an information system should do
• System Design: specifying in detail how the parts of
an information system should be implemented
Why is it important?
• Success of information systems depends on good SAD
• Widely used in industry - proven techniques
• increasing demand for systems analysis skills
4
5
6
7
8
9
10
The World of the Modern System Analyst
• System Analysis: the process of understanding and specifying in detail
what the information system should do
• System Design: the process of specifying in detail how the many
component parts of the information system should be implemented
• System Analyst: A professional who used analysis and design
techniques to solve business problems (involving information
technology)
• A theme of the course: developing effective information systems is
much more than just writing computer programs (involves cognitive
skills in understanding problems and knowing where computer
technology best “fits in”)
11
The Analysts’ Research and understand the problem
Approach to Problem
Solving
Verify that the benefits of solving the
problem outweigh the costs
Develop a set of possible solutions
(alternatives)
Decide which solution is best,
and make a recommendation
Design the details of the chosen
solution
Implement the solution
Monitor to make sure the you
Obtain the desired results
12
Thinking in terms of “Systems”
• What is a system?
A system is a collection of interrelated components
(subsystems) that function together to achieve
some outcome (e.g. biological system, computer
system, social system)
An information system is a collection of interrelated
components that collect, process, store and
provide as output the information needed to
complete business tasks (e.g. payroll system)
13
What is a System?
• Basically there are three major components in every
system, namely input, processing and output.
• In a system the different components are connected
with each other and they are interdependent.
• A system exists within an environment
• A boundary separates a system from its environment
Characteristics of a System
• Components
• Interrelated Components
• Boundary
• Purpose
• Environment
• Interfaces
• Constraints
• Input
• Output
General Depiction of a System
input
boundary
interrelationship
subsystem
output
output
17
Important System Concepts
• Functional Decomposition
– The process of breaking down a system into smaller
components
– Allows the systems analyst to:
• Break a system into small, manageable subsystems
• Focus on one area at a time
• Concentrate on component pertinent to one group of users
• Build different components at independent times
Types of Systems
i) Physical Systems, such as man, weapons etc.
ii) Abstract Systems, such as god, nature etc.
iii) Open Systems, such as man.
iv) Closed Systems, such as Chemical process.
v) Probabilistic Systems, such as arrival pattern, class
etc.
vi) Man made – Machine Systems, such as aeroplane.
Open and Close Systems
• A closed system is one which is self contained.
– It has no interaction with its environment.
– No known system can continue to operate for a long
period of time without interacting with its
environment.
• An open system continuously, interacts with its
environment.
– This type of system can adapt to changing internal
and environmental conditions.
– A business organization is an excellent example of an
open system.
Deterministic and Probabilistic System
• The behavior of a deterministic system is completely known.
– There is no uncertainty involved in defining the outputs of the system
knowing the inputs.
– This implies that the interaction between various subsystems is known with
certainty.
– Computer program is a good example of deterministic system, here, knowing
the inputs, the outputs of the program can be completely defined.
• In the probabilistic system, the behaviour cannot be predicted with
certainty; only probabilistic estimates can be given.
– In this case, the interactions between various subsystems cannot be defined
with certainty.
System Development Life Cycle (SDLC)
The SDLC is the process of understanding
how an information system can support
business needs, designing the system,
building it, and delivering it to users.
The key person in the SDLC is the systems
analyst .
Duties of the System Analyst
• analyzes the business situation
• identifies opportunities for improvements
• designs an information system to implement
them.
Note
• the primary objective of the systems analyst is not
to create a wonderful system.
• The primary goal is to create value for the
organization, which for most companies means
increasing profits (government agencies and not-
for-profit organizations measure value differently).
Many failed systems were abandoned
because the analysts tried to build a
wonderful system without clearly
understanding how the system would fit with
the organization’s goals, current business
processes, and other information systems to
provide value.
• The SDLC is composed of FOUR fundamental
phases:
– Planning
– Analysis
– Design
– Implementation
1.27
• Each of the phases include a set of steps,
which rely on techniques that produce
specific document files that provide
understanding about the project
(deliverables).
• To Understand the SDLC:
– Each phase consists of steps that lead to
specific deliverables
– The system evolves through gradual
refinement
Project Phases
• Planning (Why build the system?)
• Analysis (Who, what when, where will the
system be?)
• Design (How will the system work?)
• Implementation (System delivery)
Planning
• Identifying business value
• Analyze feasibility
• Develop work plan
• Staff the project
• Control and direct project
Analysis
• Analysis
• Information gathering
• Process modeling
• Data modeling
Design
• Physical design
• Architectural design
• Interface design
• Database and file design
• Program design
Implementation
• Construction
• Installation
Processes and Deliverables
Process Product
Planning Project Plan
Analysis System Proposal
Design System
Specification
Implementation New System and
Maintenance Plan
Systems Development
Methodologies
• A methodology is a formalized approach to
implementing the SDLC.
• The methodology will vary depending on
whether the emphasis is on businesses
processes or on the data that supports the
business.
Process-centered Methodologies
• With this methodology, the focus is on
defining the activities associated with the
system.
• The concentration is on representing the
system concept as a set of processes with
information flowing into and out of the
processes.
Data-centered Methodologies
• This methodology focuses on defining the
content of the data storage containers and
how they are organized.
• Data-centered methodologies utilize data
models as the core of the system concept.
Object-oriented Methodologies
• This methodology attempts to balance the
focus between processes and data.
• The Unified Modeling Language (UML) is
used to describe the system concept as a
collection of objects incorporating both data
and processes.
Principles of System Development
• Get the system users involved.
• Use a problem-solving approach.
• Establish phases and activities.
• Document throughout the development.
• Establish standards.
• Manage the process and projects
• Justify systems as capital investments.
• Don’t be afraid to cancel or revise scope.
• Divide and conquer.
• Design systems for growth and change.
41
A Meeting Transcript
• System Developer:
– “I am going to build a P2P system [???] with killer apps in
PHP and CCC [???] running on cutting-edge technologies DSL
and XYZ [???].”
• System Owner/User:
– “Would YOUR system solve MY problem [in singular] or it
just introduce YOUR %&$# [unprintable term / bleep]
technology and leave ME to figure out the solutions for new
problems [in plural] created by YOU &%$# &c&c… [again,
longer and stronger unprintable terms] ? ”
42
Principles of System Development …
• Principle 1: Get the owners and users
involved in all system development phases.
• User Participation/Involvement creates
“System Ownership” and leads to User
Acceptance and User Satisfaction .
• Bottom line: owners and users will live with
the system !!!
• “OUR system [owners + users + developers]
will be effective, efficient, competitive, user
friendly etc, etc”
43
Principles of System Development …
• Principle 2: Use a problem solving approach
– Study and understand the problem in its context
– Define the requirements of a suitable solution
– Identify candidate solutions and select the best
available
– Design and /or implement the solution
– Observe and evaluate the solution impact, and
refine the solution accordingly
• Solve a WRONG problem with a WRONG
solution !!!
44
Principles of System Development …
• Principle 3: Establish phases and activities
(define a process to follow)
– These phases identify problems, evaluate,
design, and implement solution (Systems
Development Process)
45
Principles of System Development …
• Principle 4: Document throughout the
system development process
– Ongoing activity to reveal strength and
weakness of the system during the
development process
– Enhance communication and acceptance
among stakeholders
– Agreements and Contracts between
Owner/User and Analyst/Designer on the
Scope, Requirements, Resources of the project.
46
Principles of System Development …
• Principle 5: Establish standards for
consistency
– System development standards: documentation,
methodology
– Business standards: business rules and practices
– IT standards : common architecture and
configuration for a consistent system
development
47
Principles of System Development …
• Principle 6: Manage the process and
projects
– Process management : ongoing activity that
documents, manages, oversees the use of, and
improves an organization’s chosen methodology
(the “process”) for system development.
Process management is concerned with phases,
activities, deliverables, and quality standards
should be consistently applied to all projects.
– Project management : the process of scoping,
planning, staffing, organizing, directing, and
controlling a project to develop an information
system at a minimum cost, within a specified
time frame, and with acceptable quality.
48
Principles of System Development …
• Principle 7: Justify Systems as Capital
Investments
– Strategic Information System Plan fits in and
supports Strategic Enterprise Plan
– There are several possible solutions, the first
one is not necessary the best *
– Feasibility of each solution in terms of
• Cost Effectiveness: Cost/benefit analysis
• Risk management: Identification, evaluation, and
control of potential threat to the completion of a
system
* In fact, there is a saying “ If you have two alternatives to solve a problem,
the third one is the best ” (See Murphy’s Laws)
49
Principles of System Development …
• Principle 8: Don’t be Afraid to Cancel and Revise
Scope: Creeping Commitment
– Expectation and scope of a project may be growing
up
– Development process has checkpoints for its
phases: all costs committed so far are sunk costs.
• Cancel the project if it is no longer feasible
(ORGANIZATION)
• Reevaluate/adjust cost/schedule if the scope expanding
(ANALYST)
• Reduce the scope if budget/schedule shrinking (ANALYST)
50
Principles of System Development …
• Principle 9: Divide and Conquer
– Divide a complex system into simpler
subsystems /components
– Problem solving process could be simplified for
smaller problems
– Different subsystems for different stakeholders
51
Principles of System Development …
• Principle 10: Design Systems for Growth and
Change
– The entropy of a system
– Changes of technology, user requirements
– Flexibility and adaptability should be built into
the system
52
Where Do Systems Development Projects
Come From?
• Problem – an actual undesirable situation
that prevents the organization from fully
achieving its purpose, goals, and/or
objectives.
• Opportunity – a chance to improve the
organization even in the absence of an
identified problem (using PIECES framework).
• Directive - a new requirement that is
imposed by management, government, or
some external influence/parties.
53
PIECES Framework for Systems Improvement
P the need to improve performance
I the need to improve information (and data)
E the need to improve economics, control costs, or
increase profits
C the need to improve control or security
E the need to improve efficiency of people and
processes
S the need to improve service to customers, suppliers, partners,
employees, etc.
(They are Opportunities for New System Development
Projects)
54