0% found this document useful (0 votes)
14 views23 pages

Chapter 03

The document outlines various project life cycles in systems development, including the traditional waterfall model, prototyping, and incremental development. It emphasizes the importance of user involvement and project management, as well as the role of CASE tools in enhancing the development process. Additionally, it discusses the strengths and weaknesses of different life cycle approaches, highlighting the need for adaptability in real-world projects.

Uploaded by

unstable da
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views23 pages

Chapter 03

The document outlines various project life cycles in systems development, including the traditional waterfall model, prototyping, and incremental development. It emphasizes the importance of user involvement and project management, as well as the role of CASE tools in enhancing the development process. Additionally, it discusses the strengths and weaknesses of different life cycle approaches, highlighting the need for adaptability in real-world projects.

Uploaded by

unstable da
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 23

Avoiding the Problems

Based on Chapter 3 of Bennett, McRobb


and Farmer:
Object Oriented Systems Analysis and
Design Using UML, (2nd Edition), McGraw
Hill, 2002.
03/12/2001 © Bennett, McRobb and Farmer 2002 1
In This Lecture You Will
Learn:
 The stages in the waterfall life cycle
 About prototyping and incremental life
cycles
 The importance of project
management
 How users may be involved in a project
 The role of CASE tools in systems
development
© Bennett, McRobb and Farmer 2002 2
Problem Solving Model
 Main phases are
– Data gathering  These focus on

– Problem redefinitionunderstanding what the


problem is about

 Concerned with
– Finding ideas understanding more about
– Finding solutions the nature of the problem
and possible solutions

– Implementation
© Bennett, McRobb and Farmer 2002 3
Problem Solving Model
Problem
definition
Data
gathering
Problem
redefinition
Finding
ideas

Finding
solutions

Implementation

General problem solving model (adapted from Hicks, 1991).

© Bennett, McRobb and Farmer 2002 4


Project Life Cycles
 A distinction should be made between
– Systems development which
incorporates human, software and
hardware elements
– Software development which is primarily
concerned with software systems
 Two important phases are
– Strategic Information Systems Planning
– Business Modelling
© Bennett, McRobb and Farmer 2002 5
Waterfall Life Cycle
 The traditional life cycle (TLC) for
information systems development is also
known as the waterfall life cycle model
– So called because of the difficulty of returning
to an earlier phase
 The model shown here is one of several
more or less equivalent alternatives
– Typical deliverables are shown for each phase

© Bennett, McRobb and Farmer 2002 6


System
System
Engineering
Engineering Traditional
Requirements
Analysis
Analy sis
Life Cycle
Design
Design

Construction

Code
Testing

Code
Installation

M aintenance
Maintenance

© Bennett, McRobb and Farmer 2002 7


TLC Deliverables
 System Engineering
– High Level Architectural Specification
 Requirements Analysis
– Requirements Specification
– Functional Specification
– Acceptance Test Specifications

Life cycle deliverables (adapted from Sommerville, 1992).

© Bennett, McRobb and Farmer 2002 8


TLC Deliverables
 Design
– Software architecture specification
– System test specification
– Design specification
– Sub-system test specification
– Unit test specification

Life cycle deliverables (adapted from Sommerville, 1992).

© Bennett, McRobb and Farmer 2002 9


TLC Deliverables
 Construction
– Program code
 Testing
– Unit test report
– Sub-system test report
– System test report
– Acceptance test report
– Completed system Life cycle deliverables (adapted from Sommerville, 1992).

© Bennett, McRobb and Farmer 2002 10


TLC Deliverables
 Installation
– Installed System
 Maintenance
– Change requests
– Change request report

Life cycle deliverables (adapted from Sommerville, 1992).

© Bennett, McRobb and Farmer 2002 11


Problems with TLC
 Real projects rarely follow such a
simple sequential life cycle
 Iterations are almost inevitable
 Time elapses between system
engineering and the final installation
 The design is unresponsive to
business changes during the project

© Bennett, McRobb and Farmer 2002 12


System
System
Engineering
Engineering TLC with
Requirements
Analy sis Iteration
Design
Design

Construction Iteration added to


resolve some of
Code
Testing
the problems
Code
Installation

M aintenance
Maintenance

© Bennett, McRobb and Farmer 2002 13


Strengths of TLC
 Tasks in phases may be assigned
to specialized teams
 Project progress evaluated at the
end of each phase
 Manage projects with high levels of
risks

© Bennett, McRobb and Farmer 2002 14


Prototyping Life Cycle
Initial Define
analysis objectives

Specify

Prototyping
completed Evaluate Construct

© Bennett, McRobb and Farmer 2002 15


Prototyping—Advantages
 Early demonstrations of system functionality
help identify any misunderstandings
between developer and client
 Client requirements that have been missed
are identified
 Difficulties in the interface can be identified
 The feasibility and usefulness of the system
can be tested, even though, by its very
nature, the prototype is incomplete

© Bennett, McRobb and Farmer 2002 16


Prototyping—Problems
 The client may perceive the
prototype as part of the final system
 The prototype may divert attention
from functional to solely interface
issues
 Prototyping requires significant user
involvement
 Managing the prototyping life cycle
requires careful decision making
© Bennett, McRobb and Farmer 2002 17
Spiral Model & Incremental
Development
Initial Risk analysis
requirements Planning Risk analysis based on initial
gathering and requirements
project planning Risk analysis
based on user
Further planning reaction to plan
based on user
comments Go, no-go decision
Risk assessment
Progress towards
User final system
evaluation
of Develop first
increments increment
User evaluation Software development
Develop next
increment

© Bennett, McRobb and Farmer 2002 18


Unified Software Development
Process
 Captures many elements of best
practice
 Main phases
– Inception is concerned with determining the
scope and purpose of the project
– Elaboration focuses requirements capture
and determining the structure of the system
– Construction's main aim is to build the
software system
– Transition deals with product installation
and rollout
© Bennett, McRobb and Farmer 2002 19
Project Workflows
Phases

Requirements Analysis Design Implementation Test

Inception 1

3 Size of
Elaboration square
relative to
4 time spent
on workflow
5
Construction

Transition 9

10

Iterations within each


phase © Bennett, McRobb and Farmer 2002 20
User Involvement
 Users can be involved in various
ways
– As part of the development team
(DSDM)
– Via a consultative approach
– In fact gathering

© Bennett, McRobb and Farmer 2002 21


Computer Aided Software
Engineering
 CASE tools typically provide a range of features
including
– checks for syntactic correctness
– repository support
– checks for consistency and completeness
– navigation to linked diagrams
– layering
– requirements tracing
– report generation
– system simulation
– performance analysis
– code generation
© Bennett, McRobb and Farmer 2002 22
References
 Hicks (1991)
 Sommerville (1992) and Pressman
(1994)
 Jacobson, Booch and Rumbaugh (1999)
 Chapters 5 and 22 of Bennett, McRobb
and Farmer include more detail about
the Unified Process
(For full bibliographic details, see Bennett,
McRobb and Farmer)
© Bennett, McRobb and Farmer 2002 23

You might also like