You are on page 1of 39

Bachelor of Information Technology

External Degree Programme

Systems Analysis and Design


Ref_1 : System Analysis and Design Methods By Whitten, Bentley, Dittman ISBN 0-07-044539-7 (5th Edition)
Ref_2 : System Analysis and Design By Igor Hawryszkiewycz (4th Edition) ISBN 81-203-1670-3
Ref_3 : http://www.mhhe.com/whitten
Ref_3 : Practical SSADM Version 4 A Complete Tutorial Guide By Philip L Weaver ISBN 0-273-60095-8

University of Colombo School of Computing


1
System
Development
Life Cycle

2
System Development Life Cycle
(SDLC)
Problem Definition

Requirement
Maintenance Analysis

System Testing System Design

System
Development

3
System Feasibility Study
Analysis Requirement Analysis

Logical Design
System
Design Physical Design

Coding &Testing
System
Development Transition

System Post implementation


Operation & Review
Maintenance

4
Why we need a life cycle in systems
development?

•to ease the process of building


a system.

• to avoid failures like unclear


objectives, cost overruns, and
• to avoid systems not meeting user
needs

5
Provides a more Guides the systems
Facilitate project efficient / effective
review development
system

Advantages of life cycle

Improve management Computer-based


Improve
communications and control support

6
Waterfall Cycle

Problem Definition

Requirement Analysis

System Design

Implementation

System Testing

Maintenance

7
Definition the Problem
Provides a broad statement of user
Project requirements in users terms, or what
goals the users expect the system to do

project bounds are set during this


Project phase. Defines what part of the
bound system can be changed by the project
and what parts are to remain same.

Specify the resources to be made


Project available for the project (resource
limits limits). Project goals, project bounds
and resource limits are some times
called projects terms of reference.
They are set by the organization’s
management. 8
Requirement Analysis
how the current
system works and
what it does

Producing a detailed model in subject


terms of what the new system will do and
how it will work.

Producing a high-level
description of the system

9
System Design
• Produces a design
specification for the
new system

Analysts
Design
10
System Design

• Things to be done:
• Select equipment
• Specify new programs
or changes to existing
programs
• Specify new database
or changes to existing
database
• produce detailed
procedures

Design
11
System Development
Individual system components are built and
tested
Data and tools are used to build the system
User interfaces are developed and tried by
users
Database is initialized with data

Analysts System 12
System testing
¾ Test and evaluate results, and
¾ the system ready to be
delivered to the user/client.

13
Maintenance
¾ Eliminate errors in the system
during its working life.
¾ Fixing any bugs and problem found
by users
¾ Tune the system to any variations in
its working environment

14
Problems with waterfall cycle
9 It has rigid design and inflexible procedure
9 It is top-down procedure
9 One phase must be completed before the
next phase starts, and
9 No phase can be repeated.

15
Criticisms fall into the following
categories:
9Real projects rarely follow the sequential
flow that the model proposes.
9At the beginning of most projects there is
often a great deal of uncertainty about
requirements and goals, and it is therefore
difficult for customers to identify these
criteria on a detailed level. The model does
not accommodate this natural uncertainty
very well.
16
Criticisms fall into the following
categories: cont…

9Assumptions made in the early phases


no longer hold
9Some of the early work is incomplete
9Something was overlooked or not
completely understood.

17
Modified waterfall model
Problem Definition

Requirement Analysis

System Design

Implementation

System Testing

Maintenance

18
Spiral Model

Ref2 –Ststems Analysis and Design Igor Hawryszkiewycz,. 19


Spiral model has four phases

• Requirement analysis
• Design prototype
• Develop and integrate
• Acceptances and testing

20
Life Cycle vs Methodology

• The software development process


consists of several well-defined steps.
• When following a design methodology,
a designer can select appropriate
modeling method related to each step

21
Life Cycle vs Methodology

•A system life cycle Conversion

divides the life of an


information system LIFE CYCLE STAGE LIFE CYCLE STAGE

into two major System


Lifetime System Operation
and Support
stages, systems Development
of a
development and using
System Development
System using
Information
Methodology
systems operation
Technology

and support. Obsolescence

22
Life Cycle vs Methodology
• A system development methodology is
a very formal and precise system
development process that defines
– a set of activities,
– methods,
– best practices,
– deliverables,
– and automated tools

23
A System Development methodology
(Process) has some general principles.
P1: Get the owner and User Involved

System
Involved Development

24
P2: Use a problem-solving approach.
# Study and understand the problem and its
context

# Define the requirement of a suitable


solution.

# Identify candidate solutions and select the


best solution.

# Design and/or implement the solution.

# Observe and evaluate the solution’s


impact, and refine
the solution accordingly.
25
P3:Establish phases and activities.

# Preliminary investigation

# Problem analysis

# Requirement analysis

# Decision analysis

# Design

# Construction

# Implementation 26
P4: Establish standards.
# Documentation # Quality

# Automated tools #Information Technology

27
P5:Justify systems as capital investments.

# Cost-effectiveness

IS
cost

# Risk management

28
P6:Don’t be afraid to cancel or revise
scope.

# Cancel the project if it is no Cancel

longer feasible

# If project scope is to be
increased, reevaluate and adjust
the cost and schedule

# If the project budget and


schedule are frozen and not
sufficient to cover all project
objectives, reduce the scope.

29
P7:Divide and conquer.
#We divide a system into
subsystem and components

--- Easily to conquer the problem


--- Easy to build a large problem

30
P8: Design systems for growth and change.
# Correcting simple mistakes

# To redesigning the system to


accommodate changing technology
# To making modification to support
changing user requirements.

31
Development Process
Major
• Methodology Components
• Modeling Methods or Techniques
• Tools

32
Methodology
• Provides the framework
• Has a predefined set of steps
• Ensures that systems are built in the most
effective way

e.g. SSADM, RUP

33
Methodology

• Uses tools and modeling methods

Tools

Most Effective
Way of
Building
Methods
34
Modeling Methods
A set of techniques used to implement a
Methodology
• Data Flow Diagrams
• Entity Relationship Diagrams
• Structure Charts etc.
Different Views
of the System

35
System Development Methodologies
Supported by Modeling Methods or
Techniques
• Techniques used to implement the Methodology.
• Provides the descriptions of the business system
requirements from various view points.

36
Tools
• Software systems
• Assists analysts and designer to build
information systems.

e.g. Easy Case, Rational Rose

37
System Development Methodologies.

Supported by Tools.
They will not replace Systems Analysts.

38
Methodology
Eg .Rational Unified Process

us
es

es
us

Modeling Methods or Tools


Techniques
Rational Rose,
Class Diagram, Rational Suit
Use Case Diagrams etc.
39