Project Management Dan Fleck Fall 2007 Overview Planning

  • Slides: 35
Download presentation
Project Management Dan Fleck Fall 2007

Project Management Dan Fleck Fall 2007

Overview Planning n Scheduling n Scope Creep n Managing Risk n Motivating People n

Overview Planning n Scheduling n Scope Creep n Managing Risk n Motivating People n Schedule examples and demo n Earned Value Management n

Planning The bad news: time flies n The good news: you’re the pilot! n

Planning The bad news: time flies n The good news: you’re the pilot! n n You must begin planning immediately Given limited information n Plan anyway and then revise n

Creating a plan: Things to know n Scope • Context. How does the software

Creating a plan: Things to know n Scope • Context. How does the software to be built fit into a larger system, product, or business context and what constraints are imposed as a result of the context? • Information objectives. What customer-visible data objects (Chapter 8) are produced as output from the software? What data objects are required for input? • Function and performance. What function does the software perform to transform input data into output? Are any special performance characteristics to be addressed? n Software project scope must be unambiguous and understandable at the management and technical levels.

Creating a plan: Things to do n n Problem Decomposition: Sometimes called partitioning or

Creating a plan: Things to do n n Problem Decomposition: Sometimes called partitioning or problem elaboration Once scope is defined … n n It is decomposed into constituent functions It is decomposed into user-visible data objects or n n It is decomposed into a set of problem classes Decomposition process continues until all functions or problem classes have been defined (this won’t be far at the beginning of your project)

Create a schedule n An idea without a schedule is just a dream. -

Create a schedule n An idea without a schedule is just a dream. - Unknown

Ask yourself n n n n Why is the system being developed? What will

Ask yourself n n n n Why is the system being developed? What will be done? When will it be accomplished? Who is responsible? Where are they organizationally located? How will the job be done technically and managerially? How much of each resource (e. g. , people, software, tools, database) will be needed? Barry Boehm

Your job (one view) n The MOI Model n n n Motivation. The ability

Your job (one view) n The MOI Model n n n Motivation. The ability to encourage (by “push or pull”) technical people to produce to their best ability. Organization. The ability to mold existing processes (or invent new ones) that will enable the initial concept to be translated into a final product. Ideas or innovation. The ability to encourage people to create and feel creative even when they must work within bounds established for a particular software product or application.

Your job (another view) Make sure these happen Formal risk management n Empirical cost

Your job (another view) Make sure these happen Formal risk management n Empirical cost and schedule estimation n Metrics-based project management n Earned value tracking n Defect tracking against quality targets n People aware project management n

Define success and failure Don’t lie to yourself! n Be confident, trust yourself for

Define success and failure Don’t lie to yourself! n Be confident, trust yourself for success! n Quantify your plans to allow success or failure n A vague or un-measurable idea is much less helpful - Dan Fleck n

Scheduling One of the most important things you can do is schedule. n Also

Scheduling One of the most important things you can do is schedule. n Also one of the first things you should do! n Tools help n Microsoft Project n Open. Proj. org <-- This is what I will use n Open. Workbench. org n

Schedule n List of tasks With dates n With assigned resources (people) n With

Schedule n List of tasks With dates n With assigned resources (people) n With durations n With predecessors and successors n

Schedule Terms n Critical path n n Sequence of tasks that form the longest

Schedule Terms n Critical path n n Sequence of tasks that form the longest path to completion of the project. Any delay on any of these will make the overall completion date move. Slack n Amount of time a task can be delayed without affecting the overall completion date. • Start slack - amount before task needs to start • Finish slack - amount before task needs to finish n n Milestone - An import date in the schedule Dependencies - relationship between tasks

Schedule Dependencies n FS - Finish to start (most common) n n n FF

Schedule Dependencies n FS - Finish to start (most common) n n n FF - Finish to finish n n n A FF B. B doesn’t finish before A is finished Write final chapter FF Complete Index SS - Start to start n n n A FS B. B doesn’t start until A is finished Build wall FS Paint wall A SS B. B doesn’t start until A has started Project funded SS project management activies begin SF - Start to finish n A SF B. B doesn’t finish before A has started

Resource Leveling A process to examine a project for an unbalanced use of people

Resource Leveling A process to examine a project for an unbalanced use of people and to resolve over-allocations or conflicts n Happens when multiple tasks are scheduled at the same time for the same person n Solution: n Make tasks sequential n Split resource usage among tasks (50% on task 1, 50% on task 2) n

Gantt Chart

Gantt Chart

Finding Critical Path Draw a network diagram of the activities n Determine the Early

Finding Critical Path Draw a network diagram of the activities n Determine the Early Start (ES) of each node. Work from beginning node to final node n ES - earliest time the activity can start n n ES = Max(ESprev. Node + Duration. Prev. Node)

Finding Critical Path n Determine the Late Start (LS) of each node. Work from

Finding Critical Path n Determine the Late Start (LS) of each node. Work from the final node to the beginning node. The latest time the activity can start without changing the end date of the project n LS = MIN(LSnext - Duration. Node) n For the last node LS = ES n

Example Here's the example: Activity Description A Product design B Market research C Production

Example Here's the example: Activity Description A Product design B Market research C Production analysis D Product model E Sales brochure F Cost analysis G Product testing H Sales training I Pricing J Project report Predecessor (None) A A A C D B, E H F, G, I Duration 5 months 1 2 3 4 2 1 1

Example Node Network ES: 5 LS: ES: 0 LS: A ES: 0 LS: B

Example Node Network ES: 5 LS: ES: 0 LS: A ES: 0 LS: B ES: 7 LS: C F ES: 5 LS: ES: 12 LS: G D J ES: 8 LS: ES: 5 LS: E I ES: 9 LS: H ES: 7 LS: Here's the example: Activity A B C D E F G H I J Description Predecessor Product design (None) Market research(None) Production A Product model A Sales brochure A Cost analysis C Product testing D Sales training B, E Pricing H Project report F, G, I Duration 5 months 1 2 3 4 2 1 1

Example Node Network ES: 5 LS: 7 ES: 0 LS: 0 A ES: 0

Example Node Network ES: 5 LS: 7 ES: 0 LS: 0 A ES: 0 LS: 8 B ES: 7 LS: 9 C F ES: 5 LS: 5 ES: 12 LS: 12 G D J ES: 8 LS: 8 ES: 5 LS: 7 E I ES: 9 LS: 11 H ES: 7 LS: 9 Here's the example: Activity A B C D E F G H I J Description Predecessor Product design (None) Market research(None) Production A Product model A Sales brochure A Cost analysis C Product testing D Sales training B, E Pricing H Project report F, G, I Duration 5 months 1 2 3 4 2 1 1

Example Node Network ES: 5 LS: 7 ES: 0 LS: 0 A ES: 0

Example Node Network ES: 5 LS: 7 ES: 0 LS: 0 A ES: 0 LS: 8 B ES: 7 LS: 9 C F ES: 5 LS: 5 ES: 12 LS: 12 G D J ES: 8 LS: 8 ES: 5 LS: 7 E I ES: 9 LS: 11 H ES: 7 LS: 9 Here's the example: Activity A B C D E F G H I J Description Predecessor Product design (None) Market research(None) Production A Product model A Sales brochure A Cost analysis C Product testing D Sales training B, E Pricing H Project report F, G, I Duration 5 months 1 2 3 4 2 1 1

Game Development In-Class Exercise Find the critical path TASK DURATION (days) A Graphics Engine

Game Development In-Class Exercise Find the critical path TASK DURATION (days) A Graphics Engine 14 B Sound Engine 5 I C Music Engine 5 J D Input Engine 10 A E Gameplay/general programming 31 B, C, D F Physics 7 E G 2 D Artwork 14 H 3 D Artwork 21 I Sound Effects 14 J Music 9 K Level Design 21 PREDECESSORs G F, H

Earned Value Management n How much work you planned to have accomplished by now

Earned Value Management n How much work you planned to have accomplished by now (in dollars or hours) called the Planned Value n How much you have actually spent by now (in dollars or hours), called Actual Cost n The value, in terms of your baseline budget, of the work accomplished by now (in dollars or hours), called the Earned Value!

Earned Value Management n Planned value (PV) - the value of all resources needed

Earned Value Management n Planned value (PV) - the value of all resources needed to meet the project’s objectives n n Each objective of a project has an associated planned value Budgeted (cost) at completion (BAC) - The sum of all the PVs Earned value (EV) - the amount of value completed at any point during the project Actual Cost (AC) - actual amount of money you have spent so far. In a perfect project AC and EV are the same.

Earned Value Management Example n We’ve budgeted $200 to buy, setup, network and test

Earned Value Management Example n We’ve budgeted $200 to buy, setup, network and test a new system n Our planned values (PVs) of each task are: • Buy - $50, Setup - $75, network - $50, test - $25 • Our BAC is therefore $200 n n We’ve now completed phase one, and thus our earned value (EV) is now $50. To do this we spent $60 (our actual cost (AC))

Earned Value Management Example n Schedule performance index (SPI) n n n Cost performance

Earned Value Management Example n Schedule performance index (SPI) n n n Cost performance index (CPI) n n EV / AC --> 50/60 = 0. 83 For every dollar spent, I get 83 cents worth of work. Estimated cost at completion (EAC) n n EV / PV --> 50/50 = 1 (perfect). Our group is on schedule BAC / CPI = 200 / 0. 83 = $240. 96 Schedule Variance (SV) : EV - PV Cost Variance (CV) : EV - AC

EVM Example 2 from: http: //www. hyperthot. com/pm_cscs. htm n n PLANNED VALUE (Budgeted

EVM Example 2 from: http: //www. hyperthot. com/pm_cscs. htm n n PLANNED VALUE (Budgeted cost of the work scheduled) = 18 + 10 + 16 + 6 = $50 EARNED VALUE (Budgeted cost of the work performed) = 18 + 14 + 0 = $40 ACTUAL COST (of the work performed) = $45 (Data from Acct. System) Therefore: n n Schedule Variance = 40 - 50 = -$10 Schedule Performance Index = 40 / 50 = 0. 8

Scheduling Rules of Thumb Don’t work backwards! n One person should always edit the

Scheduling Rules of Thumb Don’t work backwards! n One person should always edit the schedule (you!) n n If you have two people that need to, create two files and link them together Keep it simple and useful n Level your resources n Share the schedule with your team n

Classic Mistakes Overly optimistic schedule n Failing to monitor schedule n Failing to update

Classic Mistakes Overly optimistic schedule n Failing to monitor schedule n Failing to update schedule n Adding people to a late project n Failure to manage expectations of others n

Managing Scope How to deal with the inevitable “Scope creep”? n JAD and prototyping

Managing Scope How to deal with the inevitable “Scope creep”? n JAD and prototyping Scope n Formal change approval n Defer additional requirements as future system enhancements n

Managing Risk n Document your risks in a risk management plan n n Description

Managing Risk n Document your risks in a risk management plan n n Description of risk Likelihood of occurrence Impact Mitigation strategy • How to lessen the impact of the risk • An action plan if risk occurs n n Update and track your risks Communicate your risks to upper management

Motivating People Use monetary rewards cautiously n Use intrinsic rewards n Recognition n Achievement

Motivating People Use monetary rewards cautiously n Use intrinsic rewards n Recognition n Achievement n The work itself n Responsibility n Advancement n Chance to learn new skills n

Avoid team toxicity n n n A frenzied work atmosphere in which team members

Avoid team toxicity n n n A frenzied work atmosphere in which team members waste energy and lose focus on the objectives of the work to be performed. High frustration caused by personal, business, or technological factors that cause friction among team members. “Fragmented or poorly coordinated procedures” or a poorly defined or improperly chosen process model that becomes a roadblock to accomplishment. Unclear definition of roles resulting in a lack of accountability and resultant finger-pointing. “Continuous and repeated exposure to failure” that leads to a loss of confidence and a lowering of morale.

References n n n www. projity. com Wikipedia: Project Management Pressman R. , Software

References n n n www. projity. com Wikipedia: Project Management Pressman R. , Software Engineering A Practical Approach, Ch 21 Pressman R. , Software Engineering A Practical Approach, Slides for Ch 21 Kazman R. , The CIO, People Issues, Project & Change Management, kazman. shidler. hawaii. edu/619 ch 12. ppt Pratt M, Earned Value Management, http: //www. computerworld. com/action/article. do? command=view. Article. Basic&article. I d=110065&intsrc=article_pots_bot