Software Project Management Project scope and activities INFO

  • Slides: 47
Download presentation
Software Project Management Project scope and activities INFO 638 Lecture #2 1

Software Project Management Project scope and activities INFO 638 Lecture #2 1

Project Scope o In Traditional Project Management (TPM), it is assumed that you can

Project Scope o In Traditional Project Management (TPM), it is assumed that you can determine the goal of the project from the onset n o The adaptive or extreme management methods examined later will allow this not to be true Capture key project objectives in the Project Overview Statement (POS) INFO 638 Lecture #2 2

Disclaimer o I didn’t make up the POS acronym – it’s not my fault

Disclaimer o I didn’t make up the POS acronym – it’s not my fault INFO 638 Lecture #2 3

Role of the POS o The POS captures key objectives of the project, such

Role of the POS o The POS captures key objectives of the project, such as the Conditions of Satisfaction (COS) n n INFO 638 It should be a short document (1 -2 pp) The COS should convey what the project is expected to deliver and accomplish It should be reviewed and updated throughout the project – it isn’t static It is negotiated with the customer Lecture #2 4

Role of the POS o o The POS is a communications tool among the

Role of the POS o o The POS is a communications tool among the project manager, their development team, the customer, and the project manager’s boss (upper or senior management) The POS is a concise statement of the project, and a summary of its justification to continue INFO 638 Lecture #2 5

Other Views o The POS and COS are often known by other terms, like

Other Views o The POS and COS are often known by other terms, like the Vision or Mission of the project n INFO 638 POS and COS are Wysocki’s terminology Lecture #2 6

Generating the POS o Often the POS is developed through an iterative process n

Generating the POS o Often the POS is developed through an iterative process n n n INFO 638 The customer makes a request for some major aspect of the product (key set of features, for example) The developer asks to clarify the request The customer provides a response Customer and developer agree on the response Repeat the previous four steps until done Lecture #2 7

Non-traditional POS Uses o The POS can help understand a project even if not

Non-traditional POS Uses o The POS can help understand a project even if not starting from scratch n n n INFO 638 Inheriting a project from someone else Using a POS as a suggestion to start an unsolicited project Use a POS as a reference to guide your team during development Lecture #2 8

Parts of a POS o The POS has five major sections n n n

Parts of a POS o The POS has five major sections n n n o Problem/opportunity Goal Objectives Success criteria Assumptions, risks, obstacles Each is typically a few paragraphs long INFO 638 Lecture #2 9

Problem/opportunity o This section summarizes major problems the project will fix, and identify significant

Problem/opportunity o This section summarizes major problems the project will fix, and identify significant new opportunities of which it will take advantage n INFO 638 Like the INFO 503 analysis method of the same name, this helps prove there is significant motivation for the project to occur Lecture #2 10

Goal o o The goal gives direction and purpose to the project, summarizing how

Goal o o The goal gives direction and purpose to the project, summarizing how the organization will address the problems, or act on the opportunities Don’t commit to specific time or cost goals – the scope of the project is too vague for that INFO 638 Lecture #2 11

Objectives o The objective statements elaborate on the goal, and clarify its scope or

Objectives o The objective statements elaborate on the goal, and clarify its scope or boundaries n n INFO 638 If you meet all the objectives, then the goal must also be met Each objective should define an expected outcome, the rough time frame it will be done, a measure, and the action needed to meet the objective Lecture #2 12

Success criteria o Imagine the project is done, and you want to prove how

Success criteria o Imagine the project is done, and you want to prove how much the organization benefited from it n n o What specific measures could you make to prove the project was worthwhile? These are your success criteria Typical criteria are increased revenue, reduced costs, improved service, etc. INFO 638 Lecture #2 13

Assumptions, risks, obstacles o This is an executive summary of major assumptions the project

Assumptions, risks, obstacles o This is an executive summary of major assumptions the project is based upon, key risks to manage, and foreseeable obstacles that will need to be overcome n o Particularly focus on areas you might need help managing More details will appear in the Project Definition Statement (PDS) INFO 638 Lecture #2 14

POS Attachments o o The POS can have attachments for more information on the

POS Attachments o o The POS can have attachments for more information on the project Most common are n n INFO 638 A risk analysis (to show more detail than given earlier), and/or A financial analysis (such as cost-benefit analysis, feasibility studies, ROI, etc. ) Lecture #2 15

POS Approval o o The POS is submitted to middle or upper management for

POS Approval o o The POS is submitted to middle or upper management for approval The expected outcome is to continue more detailed planning and analysis for the project INFO 638 Lecture #2 16

Expand POS into PDS o The Project Definition Statement (PDS) expands on the POS

Expand POS into PDS o The Project Definition Statement (PDS) expands on the POS in two key areas n n INFO 638 Objectives can be more specific, and use more technical language to convey their exact intent Assumptions, risks, obstacles can cover more details of interest to the development team Lecture #2 17

Summary of Project Scope o The POS and PDS capture the key concepts needed

Summary of Project Scope o The POS and PDS capture the key concepts needed to n n INFO 638 Understand the basis for the project (why does it need to exist? ) Demonstrate understanding of the project risks, context, and concerns Provide an outline of objectives the project will (hopefully) achieve And therefore justify approval for the project to continue Lecture #2 18

Work Breakdown Structure (WBS) o o The WBS gives structure to the set of

Work Breakdown Structure (WBS) o o The WBS gives structure to the set of activities in a project It expands on the POS by describing activities in more and more detail, until you get down to the smallest level of task you need to define for your project n INFO 638 The WBS is a really big ‘to-do’ list Lecture #2 19

Smallest Level of Task? o How big is the smallest level of task? n

Smallest Level of Task? o How big is the smallest level of task? n n INFO 638 Depends on the size of the project, and how mature the staff are In general, from a couple hours to a week might be the range Near term tasks are typically defined in more detail than distant ones In Wysocki’s terminology, ‘tasks’ make up the smallest level of ‘activity’ Lecture #2 20

WBS o o The goal of the project should be accomplished when all tasks

WBS o o The goal of the project should be accomplished when all tasks in the WBS are completed When major activities are sequential, they typically appear in that order in the WBS n INFO 638 The Gantt chart and PERT chart (we’ll discuss later) are graphic forms of the WBS Lecture #2 21

Activity Decomposition o The key to writing a good WBS is to decompose the

Activity Decomposition o The key to writing a good WBS is to decompose the project goal into major activities n n Then keep breaking those activities down until you get to the smallest level of tasks mentioned earlier A WBS with too much detail is time consuming to generate and follow o INFO 638 …not enough detail, and you miss important tasks Lecture #2 22

Why Create a WBS? o o The WBS helps plan out the process needed

Why Create a WBS? o o The WBS helps plan out the process needed to accomplish the project It also helps design the architecture of the project It forms the basis for estimating the time and effort needed for the project It establishes a baseline for reporting project status INFO 638 Lecture #2 23

Generating a WBS o There are two basic approaches to generating a WBS n

Generating a WBS o There are two basic approaches to generating a WBS n Top-down o Start at the project goal, and keep breaking down activities until you get to the smallest task needed n n INFO 638 Can use the Team approach (have everyone work on the schedule together) or The Subteam approach (agree on level 1 activities, then have subteams tackle each activity in detail; then check for duplication and missed tasks) Lecture #2 24

Generating a WBS n Bottom-up o o Agree on the top level activities using

Generating a WBS n Bottom-up o o Agree on the top level activities using the top-down approach Then break into teams and brainstorm all the activities you think are within that overall activity Organize the activities, and check for missed tasks and redundancies Often the top-down approach results in a more complete draft WBS INFO 638 Lecture #2 25

Special Case WBS’s o o Small projects may want to consider tools to help

Special Case WBS’s o o Small projects may want to consider tools to help generate a good WBS, such as mindmapping Large projects may need to alter the approach to develop the top two WBS levels as a group, then establish subteams or teams to fill out the details below that INFO 638 Lecture #2 26

Are we Done Yet? o Six criteria can help determine if a WBS is

Are we Done Yet? o Six criteria can help determine if a WBS is complete n Measurable Status – Is each task defined in a way to help monitor its status toward completion? o n Bounded – Is each task clearly bounded by start and stop events? o INFO 638 Typically requires some kind of measurement to assess percent completion What event marks the start and stop of each task? Lecture #2 27

Are we Done Yet? n Deliverable – Does each activity have a clearly defined

Are we Done Yet? n Deliverable – Does each activity have a clearly defined deliverable? o n Cost and Time Estimate – Is each activity defined in a way that allows a meaningful estimate of its calendar time and cost to completion? o INFO 638 What output should the activity produce? Often software cost is largely driven by the labor cost, and hence the amount of effort needed to develop it Lecture #2 28

Are we Done Yet? n Acceptable Duration Limits – Most activities should be broken

Are we Done Yet? n Acceptable Duration Limits – Most activities should be broken down into tasks which are reasonably small o o n Activity Independence – Are the activities defined to be independent of each other as much as practical? o INFO 638 Under two weeks is the upper limit There can be exceptions to this rule Avoid activities that are too complex, or the other extreme, micromanaging Lecture #2 29

WBS Approaches o There are three major approaches to structuring a WBS n n

WBS Approaches o There are three major approaches to structuring a WBS n n n INFO 638 Noun-type approaches Verb-type approaches Organizational approaches Lecture #2 30

Noun-type approaches o The noun-type approach means the WBS is structured by the physical

Noun-type approaches o The noun-type approach means the WBS is structured by the physical or functional components of the project n n INFO 638 In a client-server system, the client and server’s development could each be top level WBS activities In assembling a car, each major subsystem could be a WBS activity (drivetrain, body, cabin, suspension, . . . ) Lecture #2 31

Verb-type approaches o Verb-type approaches focus on the processes in the project n n

Verb-type approaches o Verb-type approaches focus on the processes in the project n n Most common for software development, this includes using each phase of the life cycle as a top level WBS activity – Requirements Analysis, High Level Design, Low Level Design, Coding, various kinds of Testing, etc. Could define WBS by project objectives o INFO 638 Shows how close project is to completion Lecture #2 32

Organizational approaches o The organizational approach groups activities by who does them n n

Organizational approaches o The organizational approach groups activities by who does them n n INFO 638 Could be based on geographic location, department, etc. Might be good for a distributed development team, to help make it clear what each group is supposed to do Lecture #2 33

Showing the WBS o o The WBS can be shown as an organization chart-like

Showing the WBS o o The WBS can be shown as an organization chart-like structure (p. 93) This gives an overview of all the activities INFO 638 Lecture #2 34

Naming WBS Tasks o o The tasks in a WBS (and ideally, the activities

Naming WBS Tasks o o The tasks in a WBS (and ideally, the activities too) should start with a verb Include tasks to plan the project, conduct the actual work of the project, make decisions, etc. n INFO 638 Task names might include ‘Prepare test plan, ’ ‘Conduct system test, ’ ‘Write test report, ’ ‘Approve system release’ Lecture #2 35

WBS Numbering o o [This section isn’t part of Wysocki] Tasks and activities are

WBS Numbering o o [This section isn’t part of Wysocki] Tasks and activities are often given unique identification numbers to help do cost accounting and generate status summaries n INFO 638 In Microsoft Project, you can add a column called WBS which will automatically follow this numbering Lecture #2 36

WBS Numbering o o The goal of a WBS is to structure activities to

WBS Numbering o o The goal of a WBS is to structure activities to allow for unique identification and tracking of existing activities, while being expandable to allow for new ones The WBS numbers are a series of numbers separated by periods, used to identify tasks on a project INFO 638 Lecture #2 37

WBS Number Format o o o The highest level of each major task is

WBS Number Format o o o The highest level of each major task is a “whole” number (1. 0, 2. 0, …) The duration of major tasks (1. 0) is the span of all tasks under it (e. g. 1. 1 to 1. 3) Lower level tasks are components of their higher level task (2. 1 is part of 2. 0), hence a short WBS number (2. 1) is a higher level task than a long WBS number (2. 1. 2) INFO 638 Lecture #2 38

WBS Number Example o For example n 1. 0 Risk Management Activities o o

WBS Number Example o For example n 1. 0 Risk Management Activities o o o 1. 1 Develop Risk Management Plan 1. 2 Approve Risk Management Plan 1. 3 Conduct Ongoing Risk Management Task 1. 0 is the highest level task shown; composed of tasks 1. 1 to 1. 3 Note that lower levels are indented INFO 638 Lecture #2 39

WBS Numbering o o o Numbers above nine under one task just keep counting

WBS Numbering o o o Numbers above nine under one task just keep counting (e. g. 1. 8, 1. 9, 1. 10, 1. 11, …) The WBS numbers allow new tasks to be inserted where needed, such as tasks 1. 1. 1, 1. 1. 2 and 1. 4 in the RM example, and yet uniquely identifies each task. A WBS can use as many digits as needed (e. g. 1. 2. 3. 14. 7. 6. 5) INFO 638 Lecture #2 40

Typical Software WBS o A typical waterfall life cycle project might use a WBS

Typical Software WBS o A typical waterfall life cycle project might use a WBS that follows the life cycle phases n n n INFO 638 1. 0 Do Requirements Analysis 2. 0 Conduct High Level Design 3. 0 Conduct Low Level Design 4. 0 Conduct Coding and Unit Testing 5. 0 Conduct Integration and System Testing Lecture #2 41

Typical Software WBS o While that handles the development life cycle activities, often support

Typical Software WBS o While that handles the development life cycle activities, often support activities will be broken out into separate WBS elements n n n o 6. 0 Perform Quality Assurance 7. 0 Conduct Configuration Management 8. 0 Conduct Project Management This is a hybrid of the verb and organizational WBS approaches INFO 638 Lecture #2 42

Typical Software WBS o Then, within each of the top level WBS activities, you

Typical Software WBS o Then, within each of the top level WBS activities, you decide what activities and tasks are needed n Within requirements analysis, what will you do to accomplish that? o o INFO 638 Examine legacy system documentation? Conduct interviews? Study similar systems? Describe use cases? Lecture #2 43

OO WBS o The top level WBS for an object oriented (OO) project might

OO WBS o The top level WBS for an object oriented (OO) project might follow the Rational Unified Process life cycle phases n n INFO 638 1. 0 2. 0 3. 0 4. 0 Conduct Inception Phase Elaboration Phase Construction Phase Transition Phase Lecture #2 44

OO WBS o o For an OO project, you may not need separate top

OO WBS o o For an OO project, you may not need separate top level WBS entries for support tasks, if they are integrated into each phase Then each phase has iterations, and you need to determine how long they are (eventually) and what tasks happen inside each iteration INFO 638 Lecture #2 45

OO WBS n 1. 0 Conduct Inception Phase o 1. 1 Conduct iteration I-1

OO WBS n 1. 0 Conduct Inception Phase o 1. 1 Conduct iteration I-1 n n o 1. 2 Conduct iteration I-2 n n 1. 2. 1 insert tasks for this iteration 2. 0 Conduct Elaboration Phase o 2. 1 Conduct iteration E-1 n INFO 638 1. 1. 1 insert tasks for this iteration 1. 1. 2 insert tasks for this iteration 2. 1. 1 you get the idea Lecture #2 46

WBS Summary o There is no one perfect correct way to generate a WBS

WBS Summary o There is no one perfect correct way to generate a WBS for a given project n n Many solutions could work well It is common to blend the noun, verb, and organizational structures o INFO 638 Such as use the verb approach for the top level WBS, then noun or organizational for lower level elements Lecture #2 47