Work Breakdown Structure
Work Breakdown Structure
Work Breakdown Structure
In the last lecture we focused on general software project management issues and conguration management
How do we structure a project? How do we deal with change? We introduced the SPMP and SCMP
Handout for tomorrows exercise Determining Work and Tasks Sizes Work Breakdown Structure (WBS) Different Approaches for developing WBSs Notations for Work Breakdown Structures Heuristics and examples for WBS
Starting with templates How to identify work What do you do with risky tasks?
Tomorrows Exercise
2 Handouts
Problem Statement from client Project Agreement from client
Background
Arena Services recently merged with Asteroids Games
Project
Advanced Developer Telecommuting project
Goal
Increase developer productivity and reduce overhead costs
Objectives
Complete project within budget, provide training materials Establish procedures for managing telecommuting developers, tracking laptop usage, how to run weekly meetings Produce training materials for task assignment workflow, work product delivery, compliance reporting
Constraints
Procedures and materials must comply with legal laws and labor relations
Copyrig ht 2006 Bernd Brueg g e Software Eng ineering II, Lecture 3: Work Breakdown Structures
Project Description Key Tasks Job Roles and Titles Estimated Schedule for Delivery Deliverables High level Work Segments (Work breakdown structure)
Dependencies
Your boss: How long will this take? You: Between 1 and 6 months.
As long as I can do it within 6 months, I keep my promise.
Your boss: How long will this take? You: Between 1 and 6 months.
I have not the slightest clue, if it is possible at all.
10
0. Front Matter 1. Introduction 2. Project Organization (Lecture on May 30) 3. Managerial Process 4. Technical Process 5. Work Elements, Schedule, Budget 5.1 Work Breakdown Structure (WBS) (Today) 5.2 Dependencies between tasks (Today) 5.3 Resource Requirements (Lecture on May 23) 5. 4 Budget (Lecture on May 23) 5.5 Schedule (Lecture on June 13) Optional Inclusions
Copyrig ht 2006 Bernd Brueg g e Software Eng ineering II, Lecture 3: Work Breakdown Structures
11
0. Front Matter 1. Introduction 2. Project Organization (Lecture on May 30) 3. Managerial Process 4. Technical Process 5. Work Elements, Schedule, Budget 5.1 Work Breakdown Structure (WBS) (Today) 5.2 Dependencies between tasks (Today) 5.3 Resource Requirements (Lecture on May 23) 5. 4 Budget (Lecture on May 23) 5.5 Schedule (Lecture on June 13) Optional Inclusions
Copyrig ht 2006 Bernd Brueg g e Software Eng ineering II, Lecture 3: Work Breakdown Structures
12
13
Surveying Excavation Request Permits Buy Material Lay foundation Build Outside Wall Install Exterior Plumbing Install Exterior Electrical Install Interior Plumbing Install Interior Electrical
Install Wallboard Paint Interior Install Interior Doors Install Floor Install Roof Install Exterior Doors Paint Exterior Install Exterior Siding Buy Pizza
Finding these tasks initially is a brainstorming activity Similar to activities used during requirements elicitation and analysis.
Copyrig ht 2006 Bernd Brueg g e Software Eng ineering II, Lecture 3: Work Breakdown Structures
14
Sub-Activity or Task
Finding this hierarchy involves categorization and renement. Good after brainstorming, not during brainstorming
Copyrig ht 2006 Bernd Brueg g e Software Eng ineering II, Lecture 3: Work Breakdown Structures
15
The work breakdown structure does not show any dependence among activities/tasks
Can we excavate before getting the permit? How much time do I need for the whole project, if I know the individual times? What can be done in parallel? Are there any critical actitivites, that can signicantly slow down the project?
16
START
Ex cava tion
17
Estimate starting times and durations for each of the tasks in the dependency graph Compute the longest path through the graph: This is the estimated duration of your project.
18
Install Floor ing 8/ 27/ 94 8/ 27/ 94 9/ 17/ 94 10/ 1/ 94 START 0 0 Sur vey ing 12 3 8/ 27/ 94 Request Per mits 0 15 12/ 3/ 94 Star t Time 8/ 29/ 94 Legend Dur ation Slack Time Copyrig ht 2006 Bernd Brueg g e 0 0 12 10 12/ 17/ 94 12/ 31/ 94 Install Ex ter ior Siding 12 8 1/ 12/ 95 Paint Ex ter ior 12 5 Install Ex ter ior Plumbing Install Ex ter ior Electr ical 12 10 Ex cava tion 0 10 10/ 15/ 94 11/ 5/ 94 Build Outside Wall 0 20 1/ 19/ 95 Lay Founda tion 0 15 0 18
Install Roong 12 9
19
Estimation of starting times and durations is crucial for setting up a plan In the lecture on scheduling we will discuss methods and heuristics on how to do it and how to establish a software project schedule First let us learn a few more technical terms dened in the SPMP IEEE Std 1058.
20
Project:
A Project has a duration and consists of functions, activities and tasks
Work Package:
A description of the work to be accomplished in an activity or task
Work Product:
Any tangible item that results from a project function, activity or task
Project Baseline:
A work product that has been formally reviewed and agreed upon can only be changed through a formal change procedure
Project Deliverable:
A work product to be delivered to the customer.
Copyrig ht 2006 Bernd Brueg g e Software Eng ineering II, Lecture 3: Work Breakdown Structures
21
Activity: A a major unit of work with precise dates that consists of smaller activities or tasks
Culminates in a project milestone
Project Function: An activity or set of activities that span the duration of the project.
22
Tasks
Completion criteria
Includes the acceptance criteria for the work products (deliverables) produced by the task.
Copyrig ht 2006 Bernd Brueg g e Software Eng ineering II, Lecture 3: Work Breakdown Structures
23
24
Work
Task
Activity
Work Breakdown Structure: The aggregation of all the work to be performed in a project. Often called WBS.
25
Functional approach
Structure the work based on development activities and project functions Examples: Analysis, design, implementation, integration
Structure the work based on geographical location Examples: Munich team, Pittsburgh team, off-shore team Structure the work based on the organizational structure Example: R&D department, predevelopment, product development, marketing, sales.
Software Eng ineering II, Lecture 3: Work Breakdown Structures
Organizational approach
26
The project is a continuation of a previously successful project, there are no changes in the requirements and no new technology enablers
Organizational approach
Whatever approach you choose, stick with it to prevent possible overlap in categories.
Copyrig ht 2006 Bernd Brueg g e Software Eng ineering II, Lecture 3: Work Breakdown Structures
27
Consider the WBS for the activity Prepare report WBS using the functional approach:
Write draft report Have draft report reviewed Write nal report
28
29
Specify all activities required for the entire project Determine all tasks required to complete each activity If necessary, specify sub-activities required to complete each task Continue in this way until you have adequately broken down your project in doable tasks Approach is good if
You are familiar with the problem (or your team) You have successfully managed a similar project in the past You are not introducing new methodologies, methods or tools.
30
On a single list, write any activities you think will have to be performed for your project Brainstorming:
Dont worry about overlap or level of detail Dont discuss activity wordings or other details Dont make any judgements Write everything down
Then study the list and group activities into a few major categories with common characteristics Group identied activities into higher level activities Consider each category you have created and use the top-down WBS development to determine any additional activities you may have overlooked.
Software Eng ineering II, Lecture 3: Work Breakdown Structures
31
Outline format
Subactivities and tasks are indented
Bubble format
The bubble in the center represents the project Lines from the center bubble lead to activities Lines from activities lead to tasks.
32
Prepare Report
Prepare Report
Prepare Final Report
1.0 Prepare draft report 2.0 Review draft report 3.0 Prepare nal report
3.1 Write nal report 3.2 Print nal report
Org-Chart Format
Outline Format
Prepare Report
Write Final Report Print Final Report
33
Bubble Format
Review Draft Report
Copyrig ht 2006 Bernd Brueg g e
Organization-chart format:
Often good for a bird view of the project (executive summaries,...) Less effective for displaying large numbers of activities
Outline format:
Easier to read and understand if WBS contains many activities
Bubble format:
Effective for supporting brainstorming Not so good for displaying work breakdown structures to audiences who are not familiar with the project
In large projects:
Use bubble format to develop the WBS, then turn it into organization-chart or outline format. Display activities in organization-chart format, Display sub-activities and tasks in outline format.
Copyrig ht 2006 Bernd Brueg g e Software Eng ineering II, Lecture 3: Work Breakdown Structures
34
Involve the people who will be doing the work in the development of the WBS
In particular involve the developers
Review and include information from work breakdown structures that were developed for similar projects
Use a project template if possible
35
Develop the WBS with different approaches. This is good, because it allows you to identify activities that you may overlook otherwise But then choose a single WBS approach to be used in the SPMP and for your project:
Nothing confuses people more than trying to use two different work breakdown structures to describe the same project.
36
Heuristic: A project plan for 1 year - especially for an innovative software project - should not address details beyond 3 months
Even for the rst 3 months project activities might not all be clear at all, if the requirements are unclear, change and/or the introduction of technology enablers is expected
When developing a work breakdown structure for a long-term project (longer than 3 months), introduce at least two phases Phase 1 (3 months): Plan your WBS in detail
List all activities and tasks that take a week or less to complete
Phase 2, Phase 3, (n-months) Plan the WBS for these phases in less and less detail
List activities that will take between one and two months
At the end of phase 1, revise phase 2 activities and plan them on the weekly level for the next 3 months
Modify future activities based on the results of your rst three months work
Continue to revise the SPMP this way throughout the project (The SPMP is an evolving document).
Software Eng ineering II, Lecture 3: Work Breakdown Structures
38
39
Project-Termination Phase
40
Activities
Meet with client, develop visionary scenario for problem statement Develop initial top level design: Describe system as a set of subsystems (subsystem decomposition) Establish stafng plan (at stafng, ramp up) Identify people: existing employees, new employees Hire team members Assign a subsystem to each team; establish additional crossfunctional teams (e.g. architecture, documentation, demo) Write problem statement (with client and other stake holders; if possible, involve project participants early) Write initial SPMP with WBS, without schedule, without budget Get project plan approved Kick project off with 2 documents: Problem statement and SPMP
41
Activities
Do scouting on technology enablers that might inuence the design or nonfunctional requirements Revise requirements and initial top level design Revise team structure, reassign team members Revise WBS and dependencies Establish cost and scheduling information Agree with client on requirements, duration and cost of the project Write the project agreement (companion document to the SPMP)
Duration: About 2 weeks time When: After project kickoff, often called planning
In parallel to requirements elicitation
Copyrig ht 2006 Bernd Brueg g e Software Eng ineering II, Lecture 3: Work Breakdown Structures
42
Project-Termination Phase
43
SPMP IEEE Std 1058 0. Front Matter 1. Introduction 2. Project Organization 3. Managerial Process 4. Technical Process 5. Work Elements, Schedule, Budget
5.1 Work Breakdown Structure (WBS) 5.2 Dependencies between tasks 5.3 Resource Requirements 5. 4 Budget ( => Lecture on cost estimation) 5.5 Schedule
Optional Inclusions
Copyrig ht 2006 Bernd Brueg g e Software Eng ineering II, Lecture 3: Work Breakdown Structures
44
Readings
45
Summary
Top down and bottom up WBS development Heuristics for developing good WBS WBS for Large Projects
46
Additional Slides
47
When developing templates, develop them for frequently performed tasks (reviews, meetings, ) Develop Checklists:
Develop and modify your WBS templates from previous projects that worked, not from plans that looked good Use templates as starting points, not as ending points Continually update your templates to reect the experience gained from performing different projects.
48
Consider to create more several different hierarchies with different categories for your work breakdown structure.
Having two or more different perspectives helps you identify activities you may overlook
49
When you identify activities for a work breakdown structure, you can also identify the risks in your project Risks are usually associated with unknown information Unknown information comes in two avors
A known unknown: Information that you dont have but someone else does Find out who has the information and determine what the information is. (Interviews, phone calls, tasks analysis) An unknown unknown: Information that you dont have because it does not yet exist Develop contingency plans for each of these risks These contingency plans need be followed when you nd out the information does not exist
50
51
Risk: The selection of the database system takes too much time
Contingency Plan? The Database team uses a bridge pattern and provides a test stub to be used by the other teams for data access while the selection process goes on.
Risk: The customer is not available for discussing and reviewing the user interface during development.
Contingency Plan? Make the design decisions that we feel are appropriate
52
Problem Statement
- Write Introduction - Write Requirements - Write Constraints - ...
Project Agreement
- Write Requirements - Write Constraints - Write Acceptance Criteria - Promise delivery date
RAD
SDD
- Write Introduction - Write Design Goals - Describe Functional - Write Hardware Model Software mapping - Describe Object Model -Write boundary - Describe Dynamic conditions Model - Write Data ... Management - Write Open Issues ...
53
Project Initiation
- Establish guidelines - Formulate requirements with client - Establish scenarios - Write project agreement
Planning
- Determine WBS - Determine dependencies between tasks - Write SPMP - Assign teams to subsystems - Establish project calendar
Analysis
- Brainstorm on application domain objects - Develop class diagram - Partition objects into boundary, entity and control objects - Develop use cases
Design
- Develop Models - Write code - Present problems to coach - Giove status reports - Write RAD - Write SDD - Write ODD
Question: Which activities mentioned in the WBS based on Project documents is left out in the WBS based on Software Process?
Copyrig ht 2006 Bernd Brueg g e Software Eng ineering II, Lecture 3: Work Breakdown Structures
54
55
Backup Slides
56