Vous êtes sur la page 1sur 52

Chapter 2

Project Planning, Monitoring &


Control and Process Models
2.1 Project Planning
2.2 Project Monitoring and Control
2.3 Project Process Models
2.4 Project Process Models Selection
References:
1.
Hughes, B. and Cotterell, H. 2009. Software Project Management. 5 th edn. McGraw Hill.
1
2.
Pressman, R.S. 2009. Software Engineering A Practitioners Approach. 7 th edn. McGraw
Hill.

2.1 PROJECT PLANNING (PP)


What are the steps?

2.1 Project Planning (STEP


WISE Approach)
0. Select project
1. Identify project scope
and objectives
3. Analyze project
characteristics

2. Identify
project
infrastru
cture

4. Identify the
products and
activities
5. Estimate effort for
each activity

For each
activity

What are the steps?


1 to 10
Step 0 is not part of PP
Steps 1 and 2 can be
performed in parallel
Steps 5 and 6 need to be
repeated for each activity
in the project

6. Identify activity risks


10. Lower-level
planning

9. Execute plan

7. Allocate resources
8. Review/ publicize
plan

Steps in Project Planning

Planning project:
Start with an outline
3

Step 1
0. Select project
1. Identify project scope
and objectives
3. Analyze project
characteristics

2. Identify
project
infrastru
cture

4. Identify the
products and
activities
5. Estimate effort for
each activity
6. Identify activity risks
10. Lower-level
planning

9. Execute plan

7. Allocate resources
8. Review/ publicize
plan

Steps in Project Planning

For each
activity

1.1 Identify objectives and


measures of
effectiveness in
meeting them
Obj the things that
you want to achieve
1.2 Establish a project
authority
who is the boss?
1.3 Identify stakeholders
who will be
affected/involved in
the project?
4

Step 1
0. Select project
1. Identify project scope
and objectives
3. Analyze project
characteristics

2. Identify
project
infrastru
cture

4. Identify the
products and
activities
5. Estimate effort for
each activity
6. Identify activity risks
10. Lower-level
planning

9. Execute plan

For each
activity

1.4 Modify objectives in


the light of stakeholder
analysis
It might be necessary to
modify objectives to
gain full coorperation
from stakeholders
1.5 Establish methods of
communication with all
parties

7. Allocate resources
8. Review/ publicize
plan

Steps in Project Planning

Step 2
0. Select project
1. Identify project scope
and objectives
3. Analyze project
characteristics

2. Identify
project
infrastru
cture

4. Identify the
products and
activities
5. Estimate effort for
each activity
6. Identify activity risks
10. Lower-level
planning

9. Execute plan

7. Allocate resources
8. Review/ publicize
plan

Steps in Project Planning

For each
activity

2.1 Establish relationship


between project and
strategic planning
Understand why the
project is needed
2.2 Identify installation
standards and
procedures
What standards to follow?
(internal std/external
std)
2.3 Identify project team
organization
6

Step 3
0. Select project
1. Identify project scope
and objectives
3. Analyze project
characteristics

2. Identify
project
infrastru
cture

4. Identify the
products and
activities
5. Estimate effort for
each activity
6. Identify activity risks
10. Lower-level
planning

9. Execute plan

7. Allocate resources
8. Review/ publicize
plan

Steps in Project Planning

For each
activity

This step is to determined


whether the project is to
meet specific objectives or
to create a specified
product
Select a suitable project
approach
Waterfall?
Prototyping?
Incremental model? etc

Step 4
0. Select project
1. Identify project scope
and objectives
3. Analyze project
characteristics

2. Identify
project
infrastru
cture

e.g. of project products

4. Identify the
products and
activities
5. Estimate effort for
each activity

Identify and describe


project products (i.e.
deliverables)

For each
activity

6. Identify activity risks


10. Lower-level
planning

9. Execute plan

7. Allocate resources
8. Review/ publicize
plan

Steps in Project Planning

Step 5
0. Select project
1. Identify project scope
and objectives
3. Analyze project
characteristics

2. Identify
project
infrastru
cture

4. Identify the
products and
activities
5. Estimate effort for
each activity

For each
activity

6. Identify activity risks


10. Lower-level
planning

9. Execute plan

7. Allocate resources
8. Review/ publicize
plan

Steps in Project Planning

Step 6
0. Select project
1. Identify project scope
and objectives
3. Analyze project
characteristics

2. Identify
project
infrastru
cture

6. Identify activity risks


10. Lower-level
planning

9. Execute plan

7. Allocate resources
8. Review/ publicize
plan

Steps in Project Planning

If it happens
- what will be the damage
(lost of time/money?)

4. Identify the
products and
activities
5. Estimate effort for
each activity

Estimate how likely the


risks will occur

- What actions to be taken


For each
activity

Then add new activities


to reduce risks
When new activities are
added to reduce risks,
what need to be adjusted?
10
Ans: overall project p___

Step 7
0. Select project
1. Identify project scope
and objectives
3. Analyze project
characteristics

2. Identify
project
infrastru
cture

4. Identify the
products and
activities
5. Estimate effort for
each activity

For each
activity

7.1 Identify resources and


assign resources to
tasks
7.2 Revise plan to take
account of resource
constraints
e.g. when staff is not
available on certain
dates

6. Identify activity risks


10. Lower-level
planning

9. Execute plan

7. Allocate resources
8. Review/ publicize
plan

Steps in Project Planning

11

Step 7
2.1 Project Planning

Example of Gantt Chart

12

Step 8
0. Select project
1. Identify project scope
and objectives
3. Analyze project
characteristics

2. Identify
project
infrastru
cture

4. Identify the
products and
activities
5. Estimate effort for
each activity

For each
activity

6. Identify activity risks


10. Lower-level
planning

9. Execute plan

7. Allocate resources
8. Review/ publicize
plan

Steps in Project Planning

13

Step 9 and 10
0. Select project
1. Identify project scope
and objectives
3. Analyze project
characteristics

2. Identify
project
infrastru
cture

And
Create lower level plans
(a more detailed plan)

4. Identify the
products and
activities
5. Estimate effort for
each activity

Execute plan

For each
activity

6. Identify activity risks


10. Lower-level
planning

9. Execute plan

7. Allocate resources
8. Review/ publicize
plan

Steps in Project Planning

14

2.1 Project Planning


0. Select project
1. Identify project scope
and objectives
3. Analyze project
characteristics

2. Identify
project
infrastru
cture

4. Identify the
products and
activities
5. Estimate effort for
each activity
6. Identify activity risks
10. Lower-level
planning

9. Execute plan

7. Allocate resources
8. Review/ publicize
plan

Steps in Project Planning

For each
activity

This
framework
is called
STEP
WISE
Approach
15

2.1 Project Planning


This framework is called PRINCE2

16
en.wikipedia.org

2.2 PROJECT MONITORING AND


CONTROL
Why Do We Need Monitor
Purpose of Project Control
Possible Corrective Actions

17

Monitoring and Control


Why do we need to monitor? ______

Ans: We want to know if things happened as planned


What tasks must be monitored closely? ___________
18

Monitoring and Control


What is the purpose of project control? ______
To bring actual performance to planned
performance

Projects often dont go according plan. Agree?


So, PM must be able to detect problems and
react appropriately
19

Possible Corrective Actions


Adding more staffs
Adding people with greater skills
Reassigning tasks
Decreasing individual supervision
Improving the ways of working

or using better tools


Reallocate staff to critical activities
Encouraging the team
Subcontracting part of the work
Reducing scope

Can you give 1 e.g.? _____

Increasing
the
number of
inspection
s
Enable
inexperien
ced/ less
confident
staff to
obtain
guidance
Improving
the
software
dev
20
process

Adding more staff


One of the possibilities when project is behind

schedule
Will work if task can be parti_____ (e.g.
interviewing users)
Sometimes, adding more staff is counter
productive because time needed for:
communication,
learning

21

Adding people with greater skills


An alternative to adding more staff, consider

adding people with greater skills


Adding experienced/skilled staff to a team
may yield results

22

Reassigning Tasks
No need to add staffs/people with greater skills
Some staffs are creative, some are thorough,

while some are analytical


May get better productivity/quality of work by
switching tasks between staffs

23

Decreasing individual supervision


When dealing with experienced staff reduce

check up frequency
Give experienced staffs greater responsibility
and reduced the amount of supervision

24

Improve the ways of working or use


better tools

25

Reallocate staff to critical activities

Supposed to be completed in 10d but it is


already 4 days late

10 d
20 d
10 d

JOHN

JACK

26

Encouraging the team


Project fatigue may arise causing lower

productivity, increased absenteeism,


resignations, complaints, etc
Action plan:

Reduced the size of deliverables


Redistribute work to provide development
opportunities
Organizing social events in company to revive the
sense of team spirit

27

Subcontracting part of the work


Despite all the techniques mentioned above

and the project is still not on schedule


Project manager may consider outsourcing
the tasks to co______
Must make sure the contractors work to the
required standards

28

Reducing Scope
When all else fail:
Negotiate to reduce the scope. It may be the
original scope is too ambitious for the time or
money
Reducing the scope will reduce the amount of
wo___
Alternatively resort to phased delivery with
major functions being delivered first.
Usually not well received but better than to fail
the project totally
29

Handling Quality Problems


Increasing the no. of product

inspections
Enable inexperienced/ less
confident staff to obtain
guidance
Improving the software dev
process

30

Increasing the no. of inspections


If there is a high level of defects in

the completed deliverables then


increase the no. of product
inspections
May delay the project when no. of
inspections increases
But errors are discovered earlier
and rectified more quickly else the
co__ error corrections will be
much higher at later stage.

31

Enable inexperienced/ less


confident staff to obtain guidance

https://malaysia.images.search.yahoo.com/search/images;_ylt=A2KI9kONLz5UtHoAkwflPwx.;_ylu=X3oDMTBsZ29xY3ZzBHNlYwNzZWFyY2gEc2xrA2J1dHRvbg-;_ylc=X1MDMjExNDczMjAwNQRfcgMyBGJjawMyOGJoc2xsYTNzYTN1JTI2YiUzRDMlMjZzJTNEbGcEZnIDeWZwLXQtNzM5BGdwcmlkA3BWeU1nMENXUXJh
MU5GMmNPV1FzMEEEbXRlc3RpZANudWxsBG5fc3VnZwMwBG9yaWdpbgNtYWxheXNpYS5pbWFnZXMuc2VhcmNoLnlhaG9vLmNvbQRwb3MDMARwcXN0
cgMEcHFzdHJsAwRxc3RybAMzNQRxdWVyeQNJbXByb3ZlIHRoZSB3YXlzIG9mIHdvcmtpbmcgY2xpcGFydAR0X3N0bXADMTQxMzQxNTY5NAR2dGVzdGlkA2
51bGw-?gprid=pVyMg0CWQra1NF2cOWQs0A&pvid=d5INdzk4LjEkLjytVD4ofgSsMTc1LgAAAADhGq7A&p=Improve+the+ways+of+working+clipart&fr=yfp-t739&fr2=sb-top-malaysia.images.search.yahoo.com&ei=UTF-8&n=60&x=wrt

32

Improving the software dev process

https://malaysia.images.search.yahoo.com/search/images;_ylt=A2KI9kONLz5UtHoAkwflPwx.;_ylu=X3oDMTBsZ29xY3ZzBHNlYwNzZWFyY2gEc2xrA2J1dHRvbg-;_ylc=X1MDMjExNDczMjAwNQRfcgMyBGJjawMyOGJoc2xsYTNzYTN1JTI2YiUzRDMlMjZzJTNEbGcEZnIDeWZwLXQtNzM5BGdwcmlkA3BWeU1nMENXUXJh
MU5GMmNPV1FzMEEEbXRlc3RpZANudWxsBG5fc3VnZwMwBG9yaWdpbgNtYWxheXNpYS5pbWFnZXMuc2VhcmNoLnlhaG9vLmNvbQRwb3MDMARwcXN0
cgMEcHFzdHJsAwRxc3RybAMzNQRxdWVyeQNJbXByb3ZlIHRoZSB3YXlzIG9mIHdvcmtpbmcgY2xpcGFydAR0X3N0bXADMTQxMzQxNTY5NAR2dGVzdGlkA2
51bGw-?gprid=pVyMg0CWQra1NF2cOWQs0A&pvid=d5INdzk4LjEkLjytVD4ofgSsMTc1LgAAAADhGq7A&p=Improve+the+ways+of+working+clipart&fr=yfp-t739&fr2=sb-top-malaysia.images.search.yahoo.com&ei=UTF-8&n=60&x=wrt

Generally, quality depends on:


Input
People
Process

33

Possible Corrective Actions


Increasing
the
number of
inspection
s

Adding more staffs


Adding people with greater skills
Reassigning tasks
Decreasing individual supervision
Improving the ways of working

Enable
inexperien
ced/ less
confident
staff to
obtain
guidance

or using better tools


Reallocate staff to critical activities
Encouraging the team
Subcontracting part of the work
Reducing scope

Can you give 1 e.g.? _____

Can you give 1 e.g.?


________________

Improving
the
software
dev
34
process

2.3 PROJECT PROCESS MODELS

Waterfall models
Incremental Model
Prototyping Model
Rapid Application Development (RAD)
Spiral model
Other Models

35

Waterfall models
Feasibility
Feasibility
study
study

Oldest model of system

development
There is a sequence of activities
from top to bottom.
Activities flow downwards with
little possibility of reworking the
previous stage activities

User
User
requirements
requirements
Analysis
Analysis

System
System design
design

Program
Program design
design

Coding
Coding

Testing
Testing

Operation
Operation

36

Waterfall models
Feasibility
Feasibility
study
study

Advantages:

Manager can easily review


project progress.
Suitable for project where
requirements are well
defined
Easier to forecast project
duration
Disadvantages:
Not suitable for project with
high level of uncertainty.
Not flexible reluctant to go
back to previous stage.

User
User
requirements
requirements
Analysis
Analysis

System
System design
design

Program
Program design
design

Coding
Coding

Testing
Testing

Operation
Operation

37

Incremental model
Software is

delivered in small
usable piece called
increment at a
time.
Each increment
give some benefits
to the user
Useful when
staffing is too short
for a full-scale
development

Complete
product
38

Prototyping Model

Throw-away

prototypes
Evolutionary
prototypes

39

Throwaway Prototypes
Identifying basic requirements

Step 1

Develop a working prototype

Step 2

Use the prototype

Step 3

Yes

User satisfied?
No

System design document

Revise & enhance the prototype

Step 4
40

Evolutionary Prototyping
Identifying basic requirements

Step 1

Develop a working prototype

Step 2

Use the prototype

Step 3

Yes

User satisfied?
No

Implement the system

Revise & enhance the prototype

Step 4

41

Prototyping Model
Throw-away

prototypes
Evolutionary
prototypes

Advantages:
Useful when user
requirements are
uncertain.
Valuable in designing
user interface (dataentry screen, reports or
Web pages).
Encourages intensive
user involvement.

Disadvantages:
Users can misunderstand the role of the prototype because ___
A system evolved from a prototype might not be as efficient as
42
one developed using conventional methods.

Rapid Application Development


Software development model

that emphasizes on extremely


short development cycle.
Each RAD team will take up a
major module and then
integrated to form a whole.
If requirements and project
scope is well defined, system
can be produced within 60-90
days.

43

Rapid Application Development


Drawbacks:
For large and scalable
projects, RAD requires
several teams
Not suitable for system that
cannot be modularized.
Not appropriate when
technical risks are high:
E.g. New software needs to
integrate with existing
system.
44

Spiral model

Plan

Evaluate
alternative

Start

Engineering

Analyse risks

Process is represented as
a spiral rather than as a
sequence of activities
Each loop in the spiral
represents a phase of the
sw dev process (e.g.
feasibility study,
requirements analysis,
design, coding, etc)
Used when requirements
are not well understood
and risks are high

45

Spiral model

Plan

Evaluate
alternative

Start

Engineering

Risks management

activities are explicitly


included to minimise
risks
Suitable for large-scale
software development
projects.

Analyse risks

46

Application of Spiral model to coding


Stage
Feasibility study, requirement analysis, design, coding, implementation..
Plan
Plan for resources
Coding schedule

Evaluate alternative
What language to use

Start

Engineering
Develop the code
testing

Analyse risks
What is the level of proficiency
compatibility issues

47

2.3 PROJECT PROCESS MODELS

Waterfall models
Prototyping Model
Rapid Application Development (RAD)
Incremental Model
Spiral model
Other Models ???

Next topic:
2.4 PROJECT PROCESS MODEL SELECTION
48

2.4 PROJECT PROCESS MODEL


SELECTION

49

2.4 Project Process Model Selection


Selecting the most appropriate process model
Uncertainty is high ?
an e.g. of uncertainty = user
requirements are not clearly
defined
Deadlines are tight ?
Requirements are certain but

Waterfal
Evolutionary

Prototyping
Rapid Application

Development
(RAD)

with many complexities ?

Incremental

e.g. a word processing software


needing a large amount of code)

Spiral
50

2.4 Project Process Model Selection


Models

User
Requireme
nt

Waterfall

Well defined

Prototyping
(evolutionary)

Uncertain

RAD

Well defined

RAD team
to tackle
component

Incremental

Well defined

Lack of staff

Spiral

Man power

User

Schedule

Project
scope

Can be
Constrained
forecasted
Heavily
involved
Heavily
involved

For tight
schedule
(3
months)

Scalable

Tight

Flexible or
complex
Large-scale
system
51

End of Chapter 2

Vous aimerez peut-être aussi