background image

The concept of a project 

The concept of a project 

life cycle

life cycle

Grzegorz Gronkiewicz

Grzegorz Gronkiewicz

Radosław Całka

Radosław Całka

background image

What is the purpose of having 

What is the purpose of having 

a project life cycle? 

a project life cycle? 

To define the activities to be carried out in a 

To define the activities to be carried out in a 

systems development project.

systems development project.

To introduce consistency among many systems 

To introduce consistency among many systems 

development projects in the same organization.

development projects in the same organization.

To provide checkpoints for management control 

To provide checkpoints for management control 

for go/no-go decisions. 

for go/no-go decisions. 

background image

The classical project life 

The classical project life 

cycle

cycle

The survey phase and the analysis phase may be lumped 

The survey phase and the analysis phase may be lumped 

together into a single phase (this is especially common in 

together into a single phase (this is especially common in 

organizations in which anything the user wants is deemed 

organizations in which anything the user wants is deemed 

at the outset to be feasible).

at the outset to be feasible).

There may not be a phase called hardware study if it can be 

There may not be a phase called hardware study if it can be 

taken for granted that any new system can be implemented 

taken for granted that any new system can be implemented 

on an existing computer without causing any major 

on an existing computer without causing any major 

operational impact.

operational impact.

The preliminary design and detail design phases may be 

The preliminary design and detail design phases may be 

lumped together in a single phase simply called design.

lumped together in a single phase simply called design.

Several of the testing phases may be grouped together into 

Several of the testing phases may be grouped together into 

a single phase; indeed, they may even be included with 

a single phase; indeed, they may even be included with 

coding.

coding.

background image
background image

Bottom-Up Implementation 

Bottom-Up Implementation 

Nothing is done until it's 

Nothing is done until it's 

all

all

 done. 

 done. 

Module testing uncovers relatively simple 

Module testing uncovers relatively simple 

logic errors inside individual modules.

logic errors inside individual modules.

Debugging tends to be extremely difficult 

Debugging tends to be extremely difficult 

during the final stages of system testing. 

during the final stages of system testing. 

The requirement for computer test time 

The requirement for computer test time 

usually rises exponentially during the 

usually rises exponentially during the 

final stages of testing. 

final stages of testing. 

background image
background image

Sequential Progression

Sequential Progression

sequential approach doesn't allow for real-

sequential approach doesn't allow for real-

world phenomena having to do with 

world phenomena having to do with 

personnel 

personnel 

we rarely do a complex job right the first 

we rarely do a complex job right the first 

time, but we are very good at making 

time, but we are very good at making 

repeated improvements to an imperfect job 

repeated improvements to an imperfect job 

the user may change his or her mind about 

the user may change his or her mind about 

what the system should do 

what the system should do 

the classical project life cycle relies on 

the classical project life cycle relies on 

outdated techniques 

outdated techniques 

background image

The semi structured life 

The semi structured life 

cycle

cycle

The bottom-up sequence of coding, 

The bottom-up sequence of coding, 

module testing, and system testing is 

module testing, and system testing is 

replaced by top-down implementation

replaced by top-down implementation

Approach where high-level modules are 

Approach where high-level modules are 

coded and tested first, followed by the 

coded and tested first, followed by the 

lower-level, detailed modules. 

lower-level, detailed modules. 

Strong indication that structured 

Strong indication that structured 

programming is to be used as the method 

programming is to be used as the method 

of actually coding the system.

of actually coding the system.

Classical design is replaced by structured 

Classical design is replaced by structured 

design.

design.

background image
background image
background image

The structured project life 

The structured project life 

cycle

cycle

The Survey

The Survey

Systems Analysis 

Systems Analysis 

Design 

Design 

Implementation

Implementation

Acceptance Test Generation

Acceptance Test Generation

Quality Assurance

Quality Assurance

Procedure Description

Procedure Description

Database Conversion

Database Conversion

Installation 

Installation 

background image
background image

Radical versus conservative 

Radical versus conservative 

top-down implementation

top-down implementation

In the most extreme 

In the most extreme 

situation, all the 

situation, all the 

activities in the 

activities in the 

structured project life 

structured project life 

cycle could be taking 

cycle could be taking 

place simultaneously 

place simultaneously 

in a 

in a 

conservative

conservative

 

 

approach to the 

approach to the 

structured project life 

structured project life 

cycle, all of activity N 

cycle, all of activity N 

is completed before 

is completed before 

activity N + 1 begins.

activity N + 1 begins.

background image

How does a project manager 

How does a project manager 

decide whether to adopt a 

decide whether to adopt a 

radical or conservative 

radical or conservative 

approach? 

approach? 

How fickle is the user?

How fickle is the user?

What pressure is the project team under to 

What pressure is the project team under to 

produce immediate, tangible results?

produce immediate, tangible results?

What pressure is the project manager under 

What pressure is the project manager under 

to produce an accurate schedule, budget, 

to produce an accurate schedule, budget, 

and estimate of people and other 

and estimate of people and other 

resources?

resources?

What are the dangers of making a major 

What are the dangers of making a major 

technical blunder?

technical blunder?

background image

The Prototyping life cycle

The Prototyping life cycle

An alternative approach to 

An alternative approach to 

requirements definition is to capture 

requirements definition is to capture 

an initial set of needs and to 

an initial set of needs and to 

implement quickly those needs with 

implement quickly those needs with 

the stated intent of iteratively 

the stated intent of iteratively 

expanding and refining them as 

expanding and refining them as 

mutual user/developer understanding 

mutual user/developer understanding 

of the system grows 

of the system grows 

background image

Good candidates for a 

Good candidates for a 

prototyping approach 

prototyping approach 

The user is unable (or unwilling) to examine 

The user is unable (or unwilling) to examine 

abstract paper models like dataflow diagrams.

abstract paper models like dataflow diagrams.

The user is unable or unwilling to articulate (or 

The user is unable or unwilling to articulate (or 

“prespecify”) his or her requirements in any 

“prespecify”) his or her requirements in any 

form and can only determine the requirements 

form and can only determine the requirements 

through a process of trial and error. 

through a process of trial and error. 

The system is intended to be on-line with full-

The system is intended to be on-line with full-

screen terminal activities, as opposed to batch 

screen terminal activities, as opposed to batch 

edit, update, and report systems. 

edit, update, and report systems. 

background image

Document Outline