Modern Systems Analysis and Design
Chapter 1 & 2 (compiled)
Basic concepts in system analysis and design
Ayana. A (MPH in public health informatics)
Topic to be covered in this section
Introduction to system analysis and design
– System thinking and Characteristics of Systems
System development approach and development
life cycle
– Project identification and selection
Definition of System
1. An arrangement of parts and their interconnections that come together
for a purpose.
2. A regularly interacting or interdependent group of items
forming a
unified whole.
3. An organized set of doctrines, ideas, or principles, usually intended to
explain the arrangements or working of a systematic whole
4. An organized or established procedure
5. Harmonious arrangement or pattern
Systems Thinking
Characteristics of a System
– Environment
– Components
– Interfaces
– Interrelated Components
– Input
– Boundary
– Output
– Purpose
– Constraints
Systems Thinking
• Important System Concepts
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 related to one group of users
– Build different components at independent times
Systems Thinking
Important System Concepts (Continued)
– Modularity
• Process of dividing a system into modules of a relatively uniform
size
• Modules simplify system design
– Coupling
• Subsystems that are dependent upon each other are coupled
– Cohesion
• Extent to which a subsystem performs a single function
Systems Thinking
• Important System Concepts (Continued)
– Logical System Description
• describes the purpose and function of the system
• Does not tie the description to a physica
l
specific implementation
– Physical System Description
• Focuses on how the system will be materially constructed
Common types of systems
I. Natural systems
II. Man-made systems
I. Natural systems
• Two basic subcategories of natural systems:
1. Physical systems
2. Living systems
1. Physical system:
– Stellar systems: galaxies, solar systems, and so on.
– Geological systems: rivers, mountain ranges, & so on.
– Molecular systems: complex organizations of atoms.
2. Living systems:
– Systems of animals and plants around us
II. Man-made systems
1. Social systems: organizations of laws, doctrines, customs,
2. Transportation systems: networks of highways, airlines
3. Communication systems: telephone, telex, and so on
4. Manufacturing systems: factories, assembly lines, and so on
5. Financial systems: accounting, inventory
Most of these systems include computers today.
Automated systems
• Batch system:
– A batch system is one which in it, the information is
usually retrieved on a sequential basis
– the computer system read through all the records in
its database, processing and updating those records
for which there is some activity.
• On-line systems:
– An on-line systems is one which accepts input directly
from the area where it is created. It is also a system in
which the outputs, or results of computation, are
returned directly to where they are required.
• Real-time systems:
– A real-time system may be defined as one which
controls an environment by receiving data, processing
them, and returning the results sufficiently quickly to
affect the environment at that time.
• Decision-support systems:
– These computer systems do not make decisions on
their own, but instead help managers and other
professional “knowledge workers” in an organization
make intelligent, informed decisions about various
aspects of the operation.
– Typically, the decision-support systems are passive in
the sense that they do not operate on a regular basis:
instead, they are used on an ad hoc basis, whenever
needed.
• Knowledge-based systems:
– The goal of computer scientists working in the field
of artificial intelligence is to produce programs that
imitate human performance in a wide variety of
“intelligent” tasks. For some expert systems, that
goal is close to being attained.
– For others, although we do not yet know how to
construct programs that perform well on their own,
we can begin to build programs that significantly
assist people in their performance of a task.
Health System
• Health system is concerned with people’s health
• A health system has many parts.
– Patients, families, and communities
– Ministries of Health
– Health providers
– Health services organizations
– Pharmaceutical companies
– Health financing bodies
– Other organizations who play important roles
• The interconnections of the health system can be viewed as the functions
and roles played by these parts
• These functions include:
– oversight (e.g., policymaking, regulation)
– health service provision (e.g., clinical services, health promotion)
– financing, and managing resources (e.g., pharmaceuticals, medical equipment,
information)
Definition of Health System
• Health system - “the combination of resources,
organization, financing and management that
culminate in the delivery of health services to the
population.” Roemer (1991)
• Health system - “all activities whose primary
purpose is to promote, restore, and maintain
health.” In recent years, the definition of
“purpose” has been further extended to include
the prevention of household poverty due to
illness. (WHO 2000)
Health System Functions
• Main health system functions:
– Stewardship
– Health service provision
– Health service inputs
– Health financing
• Stewardship (overall system oversight)sets the context and policy
framework for the overall health system.
• This function is usually (but not always) a governmental responsibility.
• Core of the stewardship function.
– What are the health priorities to which public resources should be
targeted?
– What is the institutional framework in which the system and its
many actors
should function?
– Which activities should be coordinated with other systems outside
the realm of health care, and how (e.g., highway safety, food quality
control)?
– What are the trends in health priorities and resource generation and
their implications for the next 10, 20, or 30 years?
– What information is needed and by whom to ensure effective
decision making on health matters, including prevention and
mitigation of epidemics?
• Central function of stewardship is generating appropriate data for
policymaking.
• Public and private health service provision is the most visible
product of the health care system
• The best systems also promote health and try to head off illness
through education and preventive measures such as well-child
consultations
• All these roles and activities mean that the system has to perform a
wide range of activities.
• “Delivering health services is that an essential part of what the
system does—but it is not what the system is” (WHO 2000)
Health service inputs (managing resources) is the assembling of
essential resources for delivering health services, but these inputs are
usually produced at the borders of the health system.
These inputs include human resources (produced mostly by the
education system with some input from the health system),
medications, and medical equipment.
Producing these resources often takes a long time (e.g., a trained
medical doctor, a new vaccine or drug).
Health system financing includes collecting revenues, and
allocating revenue.
Systems Thinking & its Benefits
Identification of a system leads to abstraction
From abstraction you can think about essential characteristics of
specific system
Abstraction allows analyst to gain insights into specific system, to
question assumptions, provide documentation and manipulate the
system without disrupting the real situation
Systems Thinking
• Applying Systems Thinking to Information Systems
Information systems are subsystems in larger
organizational systems
Data flow diagrams represent information systems as systems
• Inputs
• Outputs
• System boundaries
• Environment
• Subsystems
• Interrelationships
Organizational Knowledge
• Understanding of how organizations work
• Knowledge of specific functions and procedures of organization and
department
• How work officially gets done
• Internal policies
• Competitive and Regulatory Environment
• Organizational Strategies and Tactics
Problem Identification
Problem: Difference between an existing situation and a
desired situation
Identification is process of defining differences
Differences are defined by comparing the current situation to the
output of a model that predicts what the output should be
Problem Analyzing and Solving
• Four Phases
– Intelligence
• All relevant
information is
collected
– Design
• Alternatives
are formulated
– Choice
• Best
alternative
solution is
chosen
Technical Skills for Systems Analysis
Constant re-education is necessary as technology changes rapidly
Understanding of a wide variety of technologies is required
Microcomputers, workstations, minicomputers and mainframe
computers
Programming languages
Operating systems
Database and file management systems
Data communication standards
Systems development tools and environments
Web development languages and tools
Decision support system generators
Management Skills for Systems Analysis
• Four categories
o Resource Management
o Project Management
o Risk Management
o Change Management
Resource Management
• Systems analyst needs to know how to get the most out of the resources
of an organization, including team members & Includes the following
capabilities
Predicting resource usage
Tracking resource consumption
Effective use of resources
Evaluation of resource quality
Securing resources from abusive use
Relinquishing resources when no longer needed
Project Management
Two Goals
– Prevent projects from coming in late
– Prevent projects from going over budget
Assists management in keeping track of project’s progress
Consists of several steps
Decomposing project into independent tasks
Determining relationships between tasks
Assigning resources and personnel to tasks
Risk Management
Ability to anticipate what might go wrong in a
project
Minimize risk and/or minimize damage that
might result
Placement of resources
Prioritization of activities to achieve greatest gain
Change Management
Ability to assist people in making transition to new system
Ability to deal with technical issues related to change
– Reusability
Systems analysts
• Systems analyst plays several roles:
1. Archaeologist and scribe: to uncover detail and to document
business policy
2. Innovator: to help the user explore useful, new applications of
computers
3. Mediator: Systems analyst often finds himself in the middle of
users, managers, programmers, auditors, and various other players,
all of whom frequently disagree with one another
4. Project leader: Systems analyst is usually more experienced than
the programmers on the project, and since he is assigned to the
project before the programmers begin working,
Systems designers
The systems designer is the person who will receive the output of
the systems analysis work
His or her job is to transform a technology-free statement of user
requirements into a high-level architectural design that will provide
the framework within which the programmer can work
In many case, the systems analyst and the systems designer are the
same person, or member of the same unified group of people
It is important for the systems analyst and systems designer to stay
in close touch throughout the project
Programmers
On large systems development projects, the systems designers are
likely to be a “buffer” between the systems analysts and the
programmers
The systems analysts deliver their product to the system designers,
and the system designers deliver their product to the programmer
There is another reason why the systems analyst and the
programmer may have little or no contact with each other:
work is often performed in a strictly serial sequence in many systems
development projects
Thus, the work of systems analysis takes place first and is
completely finished before the work of programming begins
System development Life-cycle
systems development life cycle (SDLC) is the entire process
of building, deploying, using, and updating an information
system.
SDLC approaches
• Predictive approach: an SDLC approach that assumes the
development project can be planned and organized in advance and
that the new information system can be developed according to
the plan.
• Adaptive approach: an SDLC approach that is more flexible,
assuming that the project cannot be planned out completely in
advance but must be modified as it progresses.
SDLC approaches
In practice, any project could have and most do
have both predictive and adaptive elements.
Traditional predictive approach:
– Project planning
– Analysis
– Design
– Implementation
– support
SDLC approaches
• Project planning: to identify the scope of the new system, ensure
that the project is feasible, and develop a schedule, resource plan,
and budget for the remainder of the project
• Analysis: to understand and document in detail the business
needs and the processing requirements of the new system
SDLC approaches
• Design: to design the solution system based on the
requirements defined and decisions made during analysis
• Implementation: to build, test, and install a reliable
information system with trained users ready to benefit as
expected from use of the system
• Support: to keep the system running productively, both
initially and during the many years of the system’s lifetime
SDLC approaches
waterfall model an SDLC approach that assumes the various
phases of a project can be completed sequentially one phase leads
(falls) into the next phase.
SDLC approaches
• Modified water fall model: there would
be overlap of development phases.
– Refined requirements
– Efficiency in development
– Why don’t we overlap all activities? b/c of dependency
SDLC approaches
The newer adaptive approach: the spiral model
– Spiral model is an adaptive SDLC approach that cycles
over and over again through development activities until
a project is complete.
– Plan analyze and design construct prototype test and
integrate plan next iteration do the rest of the phases until
the final prototype.
SDLC approaches
Prototype: a preliminary working model showing some aspect of a
larger system
The spiral model focuses on handling risks in each iteration
Another adaptive approach is iteration
An iteration system development process in which work activities
analysis, design, implementation are done once, then again, and
yet again on different system components; they are repeated until
the system is closer to what is ultimately needed.
SDLC approach
• In iteration the system should be divided into different smaller
components
• Another adaptive approach is the incremental development: a
development approach that completes parts of a system in
several iterations and then puts them into operation for users.
• Other parts of a system will be done iteratively and integrated.
SDLC approach
Each incremental step benefits users in a way
that users will use the preceding components
in use till the other come by.
Cont…
• Prototyping
– Building a scaled-down working version of the system
– Advantages:
• Users are involved in design
• Captures requirements in concrete form
• Rapid Application Development (RAD)
– Utilizes prototyping to delay producing system design until
after user
requirements are clear
• Joint Application Design (JAD)
– Users, Managers and Analysts work together for several days
– System requirements are reviewed
– Structured meetings
Activities in each SDLC phase
Project planning:
– Define the problem.
– Produce the project schedule.
– Confirm project feasibility.
– Staff the project.
– Launch the project.
Activities in each SDLC phase
ANALYSIS ACTIVITIES
⁑ Gather information.
⁑ Define system requirements.
⁑ Build prototypes for discovery of requirements.
⁑ Prioritize requirements.
⁑ Generate and evaluate alternatives.
⁑ Review recommendations with management.
Activities in each SDLC phase
DESIGN ACTIVITIES
Design and integrate the network.
Design the application architecture.
Design the user interfaces.
Design the system interfaces.
Design and integrate the database.
Prototype for design details.
Activities in each SDLC phase
IMPLEMENTATION ACTIVITIES
Construct software components.
Verify and test.
Convert data.
Train users and document the system.
Install the system.
Activities in each SDLC phase
SUPPORT
ACTIVITIES
– Maintain the system.
– Enhance the system.
– Support the users.
Methodologies, models, tools, and techniques
System development methodology is comprehensive
guidelines to follow for completing every activity in
the systems development life cycle, including specific
models, tools, and techniques.
Models
Model a representation of an important aspect of the
real world
Sometimes the term abstraction is used because we abstract
(separate out) an aspect of particular importance to us.
Models
Some models of system
components
– Flowchart
– Data flow diagram (DFD)
– Entity-relationship diagram (ERD)
– Structure chart
– Use case diagram
– Class diagram
– Sequence diagram
Models
Some used to manage the development
models
process
– Gantt chart
– Organizational hierarchy chart
Tool
Tool is a software s
support that helps create models or
other
components required in the project.
Some tools used in system development are:
– Project management application
– Drawing/graphics application
– Word processor/text editor
– Visual modeling tool
– Integrated development environment (IDE)
– Database management application
– Code generator tool
Technique
A technique is a collection of guidelines that help an
analyst complete a system development activity or task.
– Strategic planning techniques
– Project management techniques
– User interviewing techniques
– Data-modeling techniques
– Relational database design techniques
– Structured analysis technique
– Structured design technique
– Structured programming technique
– Software-testing techniques and Object-oriented analysis and design techniques
Two approaches to system development
All system developers should be familiar with two
very general approaches to system development,
because they form the basis of virtually all
methodologies: the traditional approach and the object-
oriented approach.
The traditional approach
Often referred as structured system development
Structured approach is a system development using
structured analysis, structured design, and structured
programming techniques
Structured program is a program or program module
that has one beginning and one ending, and for which
each step in the program execution consists of
sequence, decision, or repetition constructs
The traditional approach
Top-down programming divides more complex programs
into a hierarchy of program modules
Each program module (paragraph or procedure) using the
rules of structured programming (one beginning, one end,
and sequence, decision, and repetition constructs).
The traditional approach
Structured design is a technique providing guidelines for
deciding what the set of programs should be, what each
program should accomplish, and how the programs
should be organized into a hierarchy
Structure chart is a graphical model showing the
hierarchy of program modules produced by the structured
design technique
The traditional approach
Two main principles of structured design are that
program modules should be designed so they are
loosely coupled and highly cohesive.
The traditional approach
Structured analysis
– A technique used to define what processing the
system needs to do, what data it needs to store and
use, and what inputs and outputs are needed
The traditional approach
Data flow diagram (DFD)
√ A structured analysis model showing the
inputs, processes, storage, and outputs of a system
Entity-relationship diagram (ERD)
√A structured analysis and information engineering model of
the data needed by a system.
Project Identification, Selection and
Initiation & Planning Phase
Project Identification, Selection and Initiation & Planning
Phase
• At these two phases, major activities to be conducted are:
– Need (identification) Assessment,
– Selection of a project,
– Project initiation,
– Detailed study,
– Feasibility study, and
– Project planning
Project Identification and Selection
• Need Identification or Assessment which is focusing
on
different sources and forms of projects request.
• Possible sources of request with their own reasons are:
Manger
User
System analyst
Initiating and Planning System Development Projects
1. Project Initiation
– Establishment of project team
– Development of relationship with customer
– Project Initiation Plan
– Establishment of Management Procedures
– Establishment of Project Workbook and
Project Management
Environment
2. Project Planning
– Defining clear, discrete activities and the work needed to complete
each activity
Initiating and Planning System Development Projects
• Deliverables and Outcomes
Baseline Project Plan (BPP)
1. Scope
2. Benefits
3. Costs
4. Risks
5. Resources
Statement of Work (SOW)
• Describes deliverables
• Outlines work needed to be performed
Assessing Project Feasibility
Six Categories
Economic
Technical
Operational
Schedule
Legal and
contractual
Political
Assessing Economic Feasibility
• Cost – Benefit Analysis
• Determine Benefits
– Tangible Benefits
• Can be measured easily
– Examples
» Cost reduction and avoidance
» Error reduction
» Increased flexibility
» Increased speed of activity
» Improved management planning and control
» Opening new markets and
increasing sales opportunities
Assessing Economic Feasibility
– Intangible Benefits
• Cannot be measured easily
• Examples
– Increased employee morale
– Competitive necessity
– More timely information
– Promotion of organizational learning and
understanding
• Determine Costs
– Tangible Costs
• Can easily be measured in dollars
– Example: Hardware
Assessing Economic Feasibility
• Determine Costs (Continued)
– Intangible Costs
•Cannot be easily measured in
dollars
•Examples:
–Loss of customer goodwill
–Loss of employee morale
Assessing Economic Feasibility
– One-Time Costs
• Associated with project initiation and
startup, development
• Includes
– System Development
– New hardware and software
purchases
– User training
– Site preparation
–
Assessing Economic Feasibility
– Recurring Costs
• Associated with ongoing use of the system
• Includes:
– Application software maintenance
– Incremental data storage expense
– New software and hardware releases
– Consumable supplies
– Incremental communications
– Time value of money (TVM)
• The process of comparing present cash outlays to future expected returns
Assessing Technical Feasibility
Technical Feasibility
• Assessment of the development organization’s ability
to construct a proposed system.
• Project risk can be assessed based upon:
– Project size
– Project structure
– Development group’s experience with the application
– User group’s experience with development projects
and the application area
Assessing Other Project Feasibility Concerns
• Operational Feasibility
– Assessment of how a proposed system solves
business problems or takes advantage of opportunities
• Schedule Feasibility
– Assessment of time frame and project completion dates with
respect to organization constraints for affecting change
• Legal and Contractual Feasibility
– Assessment of legal and contractual ramifications
of new system
• Political Feasibility
– Assessment of key stakeholders in organization’s
view toward proposed system
u !
yo
n k
ha
T