Professional Documents
Culture Documents
Life Cycle (SDLC)
Systems Development Life Cycle
(SDLC)
The traditional methodology used to develop,
maintain, and replace information systems.
[HOFF96]
The evolution of process that is followed in
implementing a computer-based information
system subsystem. [MCLE93]
Also known as Systems Life Cycle, SystemsDeve-
lopment Methodology, Project Life Cycle,
Methodology.
Participants
MIS/IS Steering Committee
Establishes policies, provides fiscal
control, resolves conflict
Project Team
Headed by a Team Leader
Executives
Purpose
to define the activities to be carried out
in a systems development project
to introduce consistency among many
systems development projects in the
same organization
to provide checkpoints for management
control for go/no-go decisions
SDLC Phases
Planning Phases
Steps:
1. Recognize the problem
What is a problem?
When is a problem advantageous?
2. Define the problem
Is it the correct problem?
3. Set system objectives
How will you solve the problem?
4. Identify system constraints
What are the boundaries/limitations of the
system?
Planning Phases...
Organize the project team
who does what?
define the information needs
- what kind of information will be needed?
- what tools should be used to get the
information effectively?
define the system performance criteria
prepare the design proposal
Analysis Phases....
Activities
Identify and describe complete problem
specification
Studies and documents the current system – in
terms of its problems, requirements and processes
Prepares a list of requirements for the new system
Diagrams the functions of the existing system
necessary for the development of the new system
Design Phase
Steps:
Use the system
Audit the system
Conduct a post implementation
review
Maintain the system
Correct the errors keep the system
current improve the system
Classical Project Life Cycle
Features:
Uses bottom-up implementation also known as the
“waterfall life cycle”
Has a number of difficulties:
nothing’s done until it’s all done
most trivial bugs are found at the beginning of the
testing period, and most serious bugs are found
last
Classical Project Life Cycle...
Has a number of difficulties:(cont...)
debugging tends to be extremely difficult
during the final stages of system testing
requirement for computer test time usually rises
exponentially at the final stages of testing
Phases progress sequentially
Relies on outdated techniques
Semi-Structured Project Life
Cycle
Features:
Uses top-down implementation
Uses structured design
Terminators:
Users
Managers
Operations Personnel
Semi-Structured Project Life
Cycle...
Activities:
1. Survey
Identification of users & development of initial
system scope
Identification of current deficiencies in the
user’s environment
Establishment of goals/objectives for a new
system
Determination of feasibility to automate
preparation of project charter
Structured Project Life Cycle...
2. Analysis
Transformation of user policy & project charter
into a structured specification
Development of system models (environmental,
behavioral, essential)
Preparation of budgets & cost-benefit
calculations
Structured Project Life Cycle...
3. Design
Allocation of essential model to appropriate
processors & tasks
Transformation of ER data models into a
database design
Development of user implementation model
Structured Project Life Cycle...
Implementation
Coding & integration of modules
Acceptance Test Generation
Generation of acceptance test cases from the
structured specification
Quality Assurance
Final or acceptance testing
Procedure Description
Generation of a user’s manual
Database Conversion
Installation
Prototyping Project Life Cycle
Advantages of Prototyping
Involves the user in analysis and design to a large
extent
Captures requirements in concrete, rather than
verbal or abstract form
Changing the system early in its development
Scrapping undesirable systems
Designing a system for users’ needs and
expectations
Prototyping Project Life Cycle...
Disadvantages of Prototyping
Managing the project
Adopting an incomplete system as complete
Kinds of Prototype
1. Patched-up
an inefficient and inelegant working system that is
patched together
2. Non-operational
a non-working scale model for the purpose of
testing certain aspects of the design
Prototyping Project Life Cycle..
started in the late 1970s at IBM
a structured process in which users, managers, and
analysts work together for several days in a series
of intensive meetings to specify or review system
requirements
similar to a group interview but follows a
particular structure of roles and agenda during
which analysts control the sequence of questions
answered by users
Joint Application Design
(JAD)...
sessions are usually conducted in a location other
than the place where people involved normally
work
sessions are held in special-purpose rooms where
participants sit around horseshoe-shaped tables
Joint Application Design
(JAD)...
Sponsor
takes care of the expenses incurred during the
JAD
attends usually only at the very beginning or the
end
Systems Analysts
has a limited participation and are there to learn
from users and managers
Joint Application Design
(JAD)...
Scribe
takes notes during the JAD sessions
IS Staff
programmers, database analysts, IS planners, and
data center personnel
learns from the discussions and contribute their
ideas on the technical aspects of the project
Rapid Applications
Development (RAD)
A systems development methodology created to
radically decrease the time needed to design and
implement information systems
Relies on heavy user involvement, JAD sessions,
prototyping, integrated CASE tools, and code
generators
Components
Tools
People
Methodology
Management
Rapid Applications
Development (RAD)...
Advantages:
has shorter development cycle
involves smaller development teams
increases system quality
Disadvantages
only works well for systems that have to be
developed quickly
overlooks important software engineering
concepts, such as interface consistency,
programming standards, module reuse, scalability,
and systems administration