Title: R
1RD SDM 1Software Project ManagementProject
Scheduling and Tracking
2Content
- What is project scheduling tracking ?
- Which steps can be recognized in project
scheduling? - Work Breakdown Structure
- Techniques CPM, Gantt Charts
- Examples
- Final remarks
- Book chapter 24
3What is project schedulingtracking?
- Scheduling
- The partitioning of the total work of a project
in tasks, which deliver defined products. - The planning of those tasks in calendar time.
- The allocation of resources to these tasks.
- Tracking
- Following of the progress of the tasks in the
course of a project. - Adapting the schedule according the latest
developments. - How software projects fall behind schedule?
- When a project is 80 finished, 80 of the work
still has to be done.
4Why software is delivered late?
- Unrealistic deadline established outside the team
- Changing customer requirements not reflected in
schedule changes - Underestimating the resources required to
complete the project - Risks that were not considered when project began
- Technical difficulties that have not been
predicted in advance - Human difficulties that have not been predicted
in advance - Miscommunication among project staff resulting in
delays - Failure by project management to recognize
project falling behind schedule and failure to
take corrective action - people, process, technology
5Perspectives
- the end-date for the software release is set
externally - the software organization is constrained to
distribute effort in the prescribed time frame. - the rough chronological bounds have been
discussed by the developers and customers - the end-date is best set by the developer after
carefully considering how to best use the
resources needed to meet the customer's needs. - negotiation process
6Basic principles for scheduling
- Compartimentalization
- decomposition of both the product and the process
- the work is divided in tasks (work-breakdown
structure) - each delivers (possible in combination with other
tasks) a part of the product. - Interdependency
- minimize the dependency between tasks
- which products of other tasks are needed to start
a task - sequential and parallel tasks
- Time allocation for each task
- How much work is needed in e.g. person-days
- Determine whether this will be part-time of
full-time - Assign a start and completion date (not assigned
yet to a person).
7continued
- Matching total time with available resources
- Are the needed resources (persons, tools,
hardware) available? (not assigned yet to a
person). - Defining responsibilities
- Every task should be the responsibility of a
person. - Defining outcomes of tasks
- Each task should have a defined outcome. (SMART)
- More than 1 of these work products may be grouped
into a deliverable. - Defining milestones
- the milestones of the project a moment in time
on which a (group of) deliverables should be
finished.
8Effort distribution
- Use the data on the organizations historical
experience with similar projects - When such data is not available, publicly
available factors can be used for guidance. - The 40-20-40 rule (a rule of thumb)
- 40 front-end analysis and design
- 20 coding
- 40 back-end testing
- Generally accepted guidelines are
- 02-03 planning
- 10-25 requirements analysis
- 20-25 design
- 15-20 coding
- 30-40 testing and debugging
9Critics of 40-20-40 rule
- Some Software Engineering Managers believe that
more than 40 of overall effort should be
expended during Analysis and Design. - Some proponents of Agile Development Method argue
that Less time should be expended on Front-end
of Project Phase and that a team should move
quickly to Construction Phase (Build phase).
10Parts and steps
- Project task A task is executable and delivers a
well defined work product (SMART) - Work-breakdown structure Division of the total
trajectory into tasks - Deliverable Intermediate or final product
delivered by a task or a number of tasks - Milestone Date on which a deliverable should be
ready - Network of dependencies of project tasks
- sequential
- parallel
11continued
Determine which tasks are critical in the
network they determine the run time of a
project Determine what the size of the tasks
are Determine which resources are needed to
execute each task Building up of a project
schedule dividing the tasks over time and
allocating resources to tasks Tracking of the
progress of the project on basis of its schedule.
12Steering project
Steer on goals
Steering Committee
Project Sponsor
Project Steering Committee
Steer on goals, milestones and deliverables
Steer on Milestones, deliverables and tasks
Project Manager(s)
Technical Project Leader
Functional/Process Groups (User Focal Points)
Steer on Tasks and resources
Analysts
Designers
programmers
..
User Group 1
User Group 2
User Group n
13Work-Breakdown Structure
- A detailed breakdown of the product into
manageable work elements. - A method for breaking down work within a project
into logical steps - Product WBS
- Work is broken down by system, subsystem, modules
the structure of the software product. - Activity WBS
- Work is broken down by activities of the project
members such as management, requirements
analysis, design programming.
14Product WBS
15Activity WBS
16Work-breakdown structure
Example Main phases of an information system
based on software packets on the market.
Phase 1 Develop Blueprint
Phase 2 Design Information system
Phase 3 Realize Information system
Phase 4 Implement Information system
17Steps in phase 1
Development blueprint
Deliverables phase 1
Blue- print
1.2. Develop process- model current situation
1.5 Fit-analysis shortlist Packets
1.1. Pre- paration Project- definition
1.7. Make plan next phases
1.3. Analysis current situation
1.4. Develop blueprint
1.6 make principle choice
Principle -choice
Fit- analysis
Plan phase 2
18Steps in phase 2
Design Information System
Deliverables Phase 2
Input Phase 2
Blue- print
Final choice
Iterative
Principle -choice
Process model future sit.
Preparation
Execution
Fit- analysis
2.2. Make simulation environment
2.3. Prototype step- through
2.4. End- report
2.5. Design interfaces conversion
2.1. Develop simulation case
Final- report
Plan phase 2
Solutions for gaps
19Relation deliverables-milestones
Project
Goals
Constraints
Deliverable 1
.......
Deliverable n
Milestone 1
......
Milestone n
Task 1
.......
Task n
Timing, resourcing and dependencies
20Relation between people and effort
- Putnam-Nordon-Rayleigh (PNR) curve
- putting more people on a project does not
decrease time linearly - people need time for communication
- 4 zones in the curve for a certain defined
project - 1) it can not be completed within a certain time
2) overstaffed completed fast, but
inefficient 3) linear range efficient staffing,
man-power trade-off with time is good possible 4)
understaffed becomes also inefficient
21PNR Formulas
- The number of delivered lines of code L is
related to effort and development time by the
equation L P E 1/3 t 4/3 - E is development effort in person-months
- P is a productivity parameter that reflects
various factors (typically 2,000-12,000) - t is the project duration in calendar months
- Rearranged to solve for development effort E
L3/(P 3t 4)
22Setting up of a schedule
- Define deliverables and milestones
- Identify tasks which belong to deliverables
- Identify relations between deliverables and
activities - Determine the type and size of the resources
needed for a task - Allocate people to activities
- Create activity networks and bar charts (Gantt
Charts).
23Example
Task Run time in workdays Dependencies (milestone)
T1 8
T2 15
T3 15 T1 (M1)
T4 10
T5 19 T2, T4 (M2)
T6 5 T1, T2 (M3)
T7 20 T1 (M1)
T8 25 T4 (M5)
T9 15 T3, T6 (M4)
T10 15 T5, T7 (M7)
T11 7 T9 (M6)
T12 10 T11 (M8)
24Activity network
Insight in parallel and sequential tasks
dependencies
15 days
14/7/99
T3
15 days
M1
4/8/99
8 days
T9
M4
T1
4/7/99
25/7/99
25/8/99
5 days
M6
M3
Start
T6
15 days
7 days
T2
20 days
T11
T7
25/7/99
5/9/99
10 days
M2
11/8/99
M8
T5
T4
M7
18/7/99
10 days
15 days
10 days
M5
T10
T12
25 days
T8
End
19/9/99
25Critical path
15 days
14/7/99
T3
15 days
M1
4/8/99
8 days
T9
M4
T1
4/7/99
25/7/99
25/8/99
5 days
M6
M3
Start
T6
15 days
7 days
T2
20 days
T11
T7
25/7/99
5/9/99
10 days
M2
11/8/99
M8
T5
T4
M7
18/7/99
10 days
15 days
10 days
M5
T10
T12
25 days
T8
Critical Path
End
19/9/99
26Bar chart (Gantt chart)
Start
T4
T1
T2
M1
T7
T3
M5
T8
M3
M2
T6
T5
M4
T9
M7
T10
M6
T11
M8
T12
End
27Extra time
28Allocation of persons to tasks and time
Task Software Engineer
T1 Jan
T2 Carolien
T3 Jan
T4 Frank
T5 Isabel
T6 Carolien
T7 Jim
T8 Frank
T9 Jan
T10 Carolien
T11 Frank
T12 Frank
Resources can influence the critial path, e.g.
Frank with T8-T11
29Another example
30Gantt chart