Chapter two:
Basic concepts of System analysis and Design
1
Outline
◦ Systems analysis and design – core concepts
◦ Approaches to Systems Analysis and Design
◦ Role of the System Analyst
◦ Systems development Life Cycle (SDLC)
◦ Approaches for Development
2
Basic concepts of System
analysis and Design
Systems Analysis : It is the study of a business problem domain for the
purpose of recommending improvements and specifying the business
requirements for the solution.
Systems Design: It is the specification or construction of a technical, computer
based solution for the business requirements identified during systems analysis.
3
Systems Analysis and Design
(SAD)
Information systems analysis and design is a method used by companies to
create and maintain information systems that perform basic business functions.
The main goal of SAD is to improve organizational systems through
developing or acquiring application software that can help employees
accomplish key business tasks more easily and efficiently.
An application software is designed to support a specific organizational
function or process, such as inventory management, payroll. The goal of
application software is to turn data into information.
4
Cont’d…
An Information System is developed by following Software Engineering
Process, which consists of proven methodologies, techniques and tool. These
three process work together to form an organization approach to SAD.
5
Cont’d…
A process used to create an information system
Consists of:
Methodologies
• A sequence of step-by-step approaches that help to develop
the information system
Techniques
• Processes that the analyst follows to ensure thorough,
complete and comprehensive analysis and design
Tools
• Computer programs that aid in applying techniques
6
Approach to system Analysis and Design
There are three strategies of IS development
1. Process-oriented approach
2. Data-oriented approach
3. Object-oriented approach
7
Cont’d…
1) Process-oriented approach
A strategy to IS development that focuses on how and
when data are moved through and changed by an IS
2) Data-oriented approach
A strategy to IS development that focuses on the ideal
organization of data rather than where and how data are
used.
8
Cont’d…
3) Object-oriented approach
A system development methodologies and techniques base on
objects rather than data or process.
Registration Class
system Scheduling
Student Courses DB Staff DB
DB
9
Role of Systems Analysts
Systems analysts are the key individuals in the
systems development process.
A systems analyst studies the problems and
needs of an organization to determine how people,
data, processes, communications, and information
technology can best accomplish improvements for
the business.
10
Skills of a Successful Systems Analyst
Analytical skills
Technical skills
Managerial skills
Interpersonal skills
Business
Ethical
11
The analyst is responsible
for:
The efficient capture of data from its business
source,
The flow of that data to the computer,
The processing and storage of that data by the
computer, and
The flow of useful and timely information back
to the business and its people.
12
Variations on the Systems Analysts
Title
A business analyst is a systems analyst that
specializes in business problem analysis and
technology-independent requirements analysis.
A programmer/analyst includes the
responsibilities of both the computer programmer
and the systems analyst.
Others
Systems consultant
Systems engineer
Information engineer
13
The Systems Analyst as a Facilitator
14
Programmers in systems development
Programmers convert the specifications given to
them by the analysts into instructions the computer
can understand.
Coding: writing a computer program
Code generators have been developed to
generate code from specifications, saving an
organization time and money.
15
Programmers in systems development
The aim of CASE tools (Computer-Aided Software
Engineering) is to provide a variety of code
generators that can automatically produce 90% or
more from the system specifications normally
given a programmer.
16
Other IS managers/ Technicians in system development
Database ----- database administrator
Network and telecommunications experts:
Manager of Data Communication
Manager of Voice Communication
Internal auditors
17
System 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.
Definition of SAD: The complex organizational
process whereby computer-based information
systems are developed and maintained.
18
System Analysis and Design (SAD)
Analysis: defining the problem
From requirements to specification
Design: partial solution of the problem
From specification to implementation
19
Systems Development Life Cycle
(SDLC)
It is a common methodology for systems often
follows for system development in many
organization, featuring several phases that mark
the progress of the systems analysis and design
effort.
20
Systems Development Life Cycle
(SDLC)
SDLC phases:
1-Project identification and selection
2-Project initiation and planning
3-Analysis
4-Design
4.1 Logical design
4.2 Physical design
5-Implementation
6-Maintenance
21
Disadvantages of traditional SDLC
It is too expensive (cost + time) when dealing
with change once it is developed
It is structured approaches that requires to follow
all its phases
Maintenance costs are too expensive
Improving the traditional SDLC
22
Object Oriented Analysis and Design
(OOAD)
A more recent approach to system development
that is becoming is object oriented analysis and
design (OOAD).
It is often called third approach to system
development, after the process oriented and
data oriented approaches
Definition: OOAD its systems development
methodologies and techniques are based on
objects rather than data or process
23
Object oriented analysis
and design
So many analysis and design techniques
[Link]
[Link] Application Design (JAD)
[Link] Design
24
Prototyping
An iterative process of systems development in
which requirements are converted to a working
system that is continually revised through close
work between an analyst and users.
You can build prototype by some development
tool to simplify the process.
CASE: Computer Aided Software Tools such as
Oracle (designer 2000)
4GLs: fourth-generation languages
Prototyping is a form of Rapid Application
Development (RAD)
25
Joint Application Design (JAD)
In the late 1970 systems development personnel
at IBM developed a new process for collecting IS
requirements and reviewing system design. It is
called JAD
Definition: It is structured process in which users,
mangers, and analysts work together for several
days in a series of intensive meeting to specify or
review system requirements
26
CASE Tools
Design Analysis
Generator tool
Drawing
Code
Tool
Generator
Document CASE Database
Generator repository Generator
Error-checking Prototyping
tool Tool
Screen and
Security and Report Generator
Version Control
27
Computer-Aided Software Engineering: CASE tools
Computer-aided Software engineering (CASE)
tools are software programs that automate or
support the drawing and analysis of system
models and provide for the translation of system
models into application programs.
Automated software tools used by systems
analysts to develop information systems
A collection of tools used to support the
software development process.
28
Computer-Aided Software Engineering: CASE
tools
Used to support or automate activities throughout
the systems development life cycle (SDLC)
A CASE repository is a system developers’
database. It is a place where developers can store
system models, detailed descriptions and
specifications, and other products of system
development.
29
Computer-Aided Software Engineering: CASE
tools
Forward engineering requires the systems analyst
to draw system models, either from scratch or from
templates. The resulting models are subsequently
transformed into program code.
Reverse engineering allows a CASE tool to read
existing program code and transform that code into
a representative system model that can be edited
and refined by the systems analyst.
30
Objective of CASE tools
Improve quality of systems to be developed
Increase speed of development and design
Ease and improve testing process through
automated checking
Improve integration of development activities via
common methodologies
31
Objective of CASE tools
Improve quality and completeness of
documentation
Help standardize the development process
Improve project management
Promote reusability and Improve software
portability
Increase productivity and Improve overall quality
of systems
32
Components of CASE tools
Upper CASE:CASE tools designed to support the
information planning and the project identification and
selection, project initiation and planning, analysis and
design phases of the systems development life cycle
Lower CASE:CASE tools designed to support the
implementation and maintenance phases of the
systems development life cycle
33
Components of CASE tools
Cross life-cycle CASE:CASE tools designed to support
activities that occur across multiple phases of the
systems development life cycle
Most CASE tools utilize a repository to store all
diagrams, forms, models and report definitions
34
CASE tools limitations
May be difficult to customize/complex
Requires training of maintenance staff
May be difficult to use with existing system
Good quality CASE tools are very expensive.
35
Feel free to ask
36