CS 501: Software Engineering
Fall 2000
Lecture 4
Management I: Project Management
Administration
• Assignment 1 has been posted to the web site. Note that
submission is by email to the senior Teaching Assistant.
• Remember to copy email about the course to the Teaching
Assistants.
• Readings about Requirements Analysis and Definition have
been posted to the web site.
OS 360
The operating system for the IBM 360 was two years late.
Question: How does a project get two years behind
schedule?
Answer: One day at a time!
Fred Brooks Jr.,The Mythical Man Month
The Aim of Project Management
To complete a project:
• On time
• On budget
• With required functionality
• To the satisfaction of the client
• Without exhausting the team
The Project Manager
• Create and maintain the schedule
• Should track progress against schedule
• Keep some slack in the schedule
• Be continually making adjustments:
Start activities before previous activity complete
Sub-contract activities
Renegotiate deliverables
• Keep senior management informed
Project Planning Methods
The Critical Path Method, Gantt charts, Activity bar charts, etc.
are roughly equivalent.
These methods are best when:
• Model is updated regularly (e.g., monthly)
• The structure of the project is well understood
• The time estimates are reliable
• Activities do not share resources
[Critical Path Method is excellent for large construction
projects.]
Example: An Open University Course
Deliverables:
16 Written texts (bound in pairs)
8 Television programs
8 Radio programs
4 Computer programs
1 Home experimental kit (scientific calculator)
4 Assignments and sample solutions
Flexibility
Schedule: Dates for broadcasting TV and radio programs are
fixed. Printing and mailings can be accelerated if overtime is
used.
Functionality: The course team can decide what goes into the
components of the course.
Resources: The size of the course team can be increased
slightly.
Scheduling: Critical Path Method
An activity
A dummy activity
An event
A milestone
Critical Path Method
other Revise Edit Print Mail
activities Unit 3 Unit 3 Unit 3 Unit 3
START END
Critical Path Method
other Revise Edit
activities Unit 3 Typeset
Unit 3 Unit 3 Print Mail
START Units 3/4 Units 3/4
Typeset
other Revise Unit 4
activities Edit
Unit 4 Unit 4
Critical Path Method
Script Make
TV 2 TV 2
Edit
Mail
Unit 3
START Delivery
Edit
Unit 4 Document
Computer 1 Program
Computer 1
Prototype Computer 1
Time Estimates for Activities (Weeks)
4
6
1 3 1
2 3
12 1 1
12 3
3 2 2
4 8
4
Earliest Start Dates
1 26
4 6
1 3 1
2 17 3
12 15
12 1 1
22 23 25
0 3
12
3 17 2 19 2
12
4 8
4
4 17
Latest Start Dates
11 26
4 6
1 3 1
2 17
12 15 3
12 1 1
23 24 25
0 3
12
3 17 2 20 2
14
8
4
4
13 17
Critical Path
1/11 26/26
12/12 15/15 17/17
22/23 23/24 25/25
0/0
12/14 17/17 19/20
4/13 17/17
Slack
1/11 26/26
10 3
10 12/12 15/15 17/17 0
0 0 1 22/23 23/24
0/0 0 25/25
0 1
1
2 12/14 17/17 19/20 1
2 5
9 0
4/13 0 17/17
9
Key Personnel
In computing, not all people are equal:
• The best are at least 5 times more productive
• Some tasks are too difficult for everybody
Adding more people adds communications complexity
• Some activities need a single mind
• Sometimes, the elapsed time for an activity can not be
shortened.
What happens to the project if a key person is sick or quits?
Key Personnel: Schedule for Editor
Earliest Start Date Activity
Weeks 15-16 Edit Unit 3
Weeks 17-18 Edit Unit 4
Weeks 19-20 Edit Unit 5
Weeks 21-22 Edit Unit 6
Week 15 Review draft of Unit 7
Week 17 Review draft of Unit 8
Week 19 Check proofs of Unit 3
Week 21 Check proofs of Unit 4
Weeks 18-19 Vacation
Week 22 Out sick
Start-up Time
On a big project, the start-up time is typically three to six
months:
• Personnel have to complete previous projects (fatigue) or
recruited.
• Hardware and software has to be acquired and installed.
• Staff have to learn new domain areas and software (slow
while learning)
• Clients may not be ready.
Experience with Critical Path Method
Administrative computing department at Dartmouth used the
Critical Path Method for implementation phase of major
projects.
Experience: Elapsed time to complete projects was consistently
25% to 40% longer than predicted by model.
Analysis:
• Some tasks not anticipated (incomplete understanding)
• Some tasks had to be redone (change of requirements,
technical changes)
• Key personnel on many activities (schedule conflicts)
• System ZZZ (non-billable hours)
Reading
Before next class, read the readings on Requirements
that have been posted on the web site.