Lecture-05

advertisement
CEN 4021
Software Engineering II
Software Project Planning (POMA)
Task Scheduling
Instructor: Masoud Sadjadi
http://www.cs.fiu.edu/~sadjadi/
sadjadi@cs.fiu.edu
CEN 4021
5th Lecture
Acknowledgements

Dr. Onyeka Ezenwoye

Dr. Peter Clarke
CEN 4021: Software Engineering II
5th Lecture
2
Agenda

Software Project Planning (POMA)
– Task Scheduling
CEN 4021: Software Engineering II
5th Lecture
Task Sequence and Effort
representation

All tasks share at least two basic characteristics
– Require effort in terms of person-days required to complete
each task
– A specified order for processing the task
CEN 4021: Software Engineering II
5th Lecture
Task sequence/effort table
Task
Effort
(person-days)
A
Immediate
prerequisite
tasks
None
B
A
5
C
A
7
D
B,C
11
E
D
8
9
Total effort required: 40 person-days
CEN 4021: Software Engineering II
5th Lecture
tasks from previous table
Task
B
5
9
Task
A
Task
D
9
11
Task
E
8
End
7
Task
C
Critical Task
Critical Path
Non-critical Task
Total project time: 35 days
CEN 4021: Software Engineering II
Non-critical Path
5th Lecture
Critical versus Non-Critical Paths
Critical path

The path that takes the most time to complete.
Critical task (critical activity)

A task that resides on the critical path.
Non-critical path

Any path that is not a critical path and thus takes less effort to complete
than the critical path.
Non-critical task (non-critical activity)

Any activity that resides on a non-critical path and not a critical path.
These tasks may accept some delay in completion.
CEN 4021: Software Engineering II
5th Lecture
Critical Path Method (CPM)
“The critical path method analyses the precedence of
activities to predict the total project duration. The
method calculates which sequence activities (path)
has the least amount of flexibility ”
– Quality Software Project Management, Futrell et. al.
CEN 4021: Software Engineering II
5th Lecture
Task Scheduling

Forward-pass scheduling
– Early start time (ES) and early finish (EF)

Backward-pass scheduling
– Late start (LS) and Late finish (LF)

Slack time
CEN 4021: Software Engineering II
5th Lecture
Forward-pass scheduling
Task
Tasks
precedence
Task length
Earliest
possible
start time
(ES)
Earliest
possible
finish time
(EF)
A
None
9
0
9
B
A
5
9
14
C
A
7
9
16
D
B,C
11
16
27
D
8
27
35
E
CEN 4021: Software Engineering
II
5th Lecture
Backward-pass scheduling
Task
Tasks
precedence
Task length
Late start
time (ES)
Late finish
time (EF)
A
None
9
0
9
B
A
5
11
16
C
A
7
9
16
D
B,C
11
16
27
E
D
8
27
35
CEN 4021: Software Engineering II
5th Lecture
Slack time

Total slack time of an activity
– The difference in start time between a non-critical task’s late
start time and its early start time or its late finish time and early
finish time.
Total slack time of a task = LS - ES
Or
Total slack time of a task = LF – EF
e.g., Activity B: LS – ES (11 - 9) or LF – EF (16 - 14) => 2

Total slack time
– The maximum allowable delay for all non-critical activities.
CEN 4021: Software Engineering II
5th Lecture
Review Technique (PERT)



An estimating technique
assumes each activity duration is subject to a range
estimates
uses weighting method to arrive at a specific duration.
CEN 4021: Software Engineering II
5th Lecture
Review Technique (PERT)
Expected estimate (EE) = [O + P + (4 x A)] / 6
Where
O = most optimistic estimate
P = most pessimistic estimate
A = most likely estimate
CEN 4021: Software Engineering II
5th Lecture
Review Technique (PERT)
Expected Project time (EPT)
 Sum of expected estimates of the critical tasks.
EPT = Σ(EE of all critical task)
CEN 4021: Software Engineering II
5th Lecture
CPM vs PERT



Scheduling a lot of activities with 3 estimates
computationally messy
many people argue 3 estimates are not much more
accurate than 1 estimate
Most project management scheduling software use CPM
CEN 4021: Software Engineering II
5th Lecture
Download