Project Management

55
Project Management Dan Fleck Ch 24 Project Mgmt Concepts Ch 27 Project Scheduling Coming up: Project Management – 4 Ps

description

Project Management. Dan Fleck Ch 24 Project Mgmt Concepts Ch 27 Project Scheduling. Why care about project management?. 10% of projects successful between 1998 and 2004. Project Management – 4 Ps. People — the most important element of a successful project - PowerPoint PPT Presentation

Transcript of Project Management

Page 1: Project Management

Project Management

Dan Fleck

Ch 24 Project Mgmt Concepts

Ch 27 Project Scheduling

Coming up: Project Management – 4 Ps

Page 2: Project Management

Why care about project management? 10% of projects successful between 1998 and 2004

Page 3: Project Management

Project Management – 4 Ps People — the most important element of a

successful project Product — the software to be built Process — the set of framework activities and

software engineering tasks to get the job done Project — all work required to make the product a

reality

Coming up: Stakeholders are people to

Page 4: Project Management

Stakeholders are people too Senior managers who define the business issues that often have

significant influence on the project. Project (technical) managers who must plan, motivate, organize,

and control the practitioners who do software work. Practitioners who deliver the technical skills that are necessary to

engineer a product or application; often make poor team leaders Customers who specify the requirements for the software to be

engineered and other stakeholders who have a peripheral interest in the outcome.

End-users who interact with the software once it is released for production use.

Coming up: Your job as a leader

Your job is to organize and bring value from these people

Page 5: Project Management

Your job as a leader The MOI Model

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.

Coming up: Your job as a manager

Page 6: Project Management

Your job as a managerMake sure these happen

Formal risk management Empirical cost and schedule estimation Metrics-based project management

Tracking – amount of work done, costs, work remaining, etc…

Defect tracking against quality targets People aware project management

Coming up: Project Manager

Page 7: Project Management

Project Manager

Management is using tools and techniques

Leadership is inspiring people to do the right thing

Leadership with poor management practices can be successful, management with poor leadership will fail.

Coming up: Motivating People

Page 8: Project Management

Motivating People

Use monetary rewards cautiously Use intrinsic rewards

Recognition Achievement The work itself Responsibility Advancement Chance to learn new skills

Coming up: Understanding the problem

Page 9: Project Management

Understanding the problemAt the beginning you should ask yourself these questions

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 BoehmComing up: Define success and failure

Page 10: Project Management

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

yourself for success! Quantify your project

outcomes to allow

success or failure A vague or un-measurable outcome is much

less helpful - Dan Fleck

Coming up: Leadership Case Study: 3M

Page 11: Project Management

Leadership Case Study: 3M

Philosophy: As our business grows, it becomes increasingly necessary to delegate

responsibility and to encourage men and women to exercise their initiative. This requires considerable tolerance. Those men and women to whom we delegate authority and responsibility, if they are good people, are going to want to do their jobs in their own way.

"Mistakes will be made. But if a person is essentially right, the mistakes he or she makes are not as serious in the long run as the mistakes management will make if it undertakes to tell those in authority exactly how they must do their jobs.”

"Management that is destructively critical when mistakes are made kills initiative. And it's essential that we have many people with initiative if we are to continue to grow." .

These are common themes now, but not in 1940s when 3M codified themComing up: 3M Results

Page 12: Project Management

3M Results

Encouragement and a culture of innovation yields:

1968 Dr. Spence Silver does an experiment that yields an adhesive that sticks, but not strongly Presents around the company for 5 years with no “takers” In 1973, 3M scientist Art Fry was trying to mark his place in his church choir hymn book with

bits of paper that kept falling out. Art works with Spence. Creates little notepapers. Marketing says “not enough market, who wants to pay for scraps of paper?”, engineering says

“too hard to make, will be costly” Response: If it’s hard to make that’s great, no one but 3M will be able to do it! Fry sends out “free samples” across the company, making sure to include executive’s

assistants Demand rises – finally the product is introduced. Within 1 year PostIt notes named “Outstanding

New Product” and today generates $100 million in US sales This is possible because of a culture in the company to empower, encourage, and experiment!Coming up: Avoid team toxicity

Page 13: Project Management

Scheduling

One of the most

important things you

can do is schedule. Also one of the first things you should do! Tools help

Microsoft Project OpenProj.org OpenWorkbench.org

Coming up: Planning

Page 14: Project Management

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

You must begin planning immediately Given limited information Plan anyway and then

revise

Coming up: Creating a plan: Things to know

Page 15: Project Management

Creating a plan: Things to know 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?

Software project scope must be unambiguous and understandable at the management and technical levels.

Coming up: Creating a plan: Things to do

Page 16: Project Management

Creating a plan: Things to do Problem Decomposition: Sometimes called

partitioning or problem elaboration Once scope is defined …

It is decomposed into constituent functions It is decomposed into user-visible data objectsor 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)

Coming up: Create a schedule

Page 17: Project Management

Schedule List of tasks

With dates With assigned resources (people) With durations With predecessors and successors

How do you get buy-in from the team for a schedule? History Increments

Coming up: Schedule Terms

Page 18: Project Management

Schedule Terms Critical path

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 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

Milestone - An import date in the schedule Dependencies - relationship between tasks

Coming up: Schedule Dependencies

Page 19: Project Management

Schedule Dependencies FS - Finish to start (most common)

A FS B. B doesn’t start until A is finished Build wall FS Paint wall

FF - Finish to finish A FF B. B doesn’t finish before A is finished Write final chapter FF Complete Index

SS - Start to start A SS B. B doesn’t start until A has started Project funded SS project management activities begin

SF - Start to finish A SF B. B doesn’t finish before A has started Once A starts, B is allowed to finish B=Baby sit a child, A=parent comes home

Coming up: Resource Leveling

Page 20: Project Management

Resource Leveling A process to examine a project for an unbalanced

use of people and to resolve over-allocations or conflicts

Happens when multiple tasks are scheduled at the same time for the same person

Solution: Make tasks sequential by introducing “fake” dependencies Split resource usage among tasks (50% on task 1, 50%

on task 2)

Coming up: Auto Resource Leveling

Page 21: Project Management

Auto Resource Leveling

Some tools (not Open Project) provide auto resource leveling

Tool automatically ensures no person works over 100% of the time (automatically makes tasks sequential)

Advantageous because this does not introduce “fake” dependencies

Coming up: Gantt Chart

Page 22: Project Management

Gantt Chart

Coming up: Finding Critical Path

Page 23: Project Management

Finding Critical Path Draw a network diagram of the activities Determine the Early Start (ES) of each

node. Work from beginning node (ES=0) to final node

ES - earliest time the activity can start ES = Max(ESprevNode + DurationPrevNode)

Coming up: Finding Critical Path

AC

B

ES: 4

ES: 2 10

7 ES: ??

Page 24: Project Management

Finding Critical Path 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 LS = MIN(LSnext - DurationNode) For the last node LS = ES

Coming up: Example

AC

B

LS: ?

LS: ? 10

7 LS: 12A

C

BLS: ?

LS: 13

10

7 LS: 12

Page 25: Project Management

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

Coming up: Example Node Network

Page 26: Project Management

Example Node Network

A

E

D

C

I

G

F

J

B

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

ES:0LS:

ES:5LS:

ES:0LS:

ES:5LS:

ES:5LS:

ES:7LS:

ES:9LS:

ES:8LS:

ES:7LS:

ES:12LS:

Coming up: Example Node Network

ES(H) ES(E)+dur(E) = 5 + 2 = 7 ES(B)+dur(B) = 0 + 1 = 1Maximum = 7 = ES(H)

ES(J) ES(F)+dur(F) = ? ES(G)+dur(G) = ? ES(I) + dur(I) = ?Maximum = ? = ES(J)

Page 27: Project Management

Example Node Network

A

E

D

C

I

G

F

J

B

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

ES:0LS:0

ES:5LS:5

ES:0LS:8

ES:5LS:7

ES:5LS:7

ES:7LS:9

ES:9LS:11

ES:8LS:8

ES:7LS:9

ES:12LS:12

Coming up: Example Node Network

LS(F) LS(J)-dur(F) = 12 – 3 = 9

LS(A) = LS(C) – dur(A) = 7 – 5 = 2 LS(D) – dur(A) = 5 – 5 = 0 LS(E) – dur (A) = 7 – 5 = 2Minimum = 0 = LS(A)

Page 28: Project Management

Example Node Network

A

E

D

C

I

G

F

J

B

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

ES:0LS:0

ES:5LS:5

ES:0LS:8

ES:5LS:7

ES:5LS:7

ES:7LS:9

ES:9LS:11

ES:8LS:8

ES:7LS:9

ES:12LS:12

Coming up: Game Development In-Class Exercise

Page 29: Project Management

Game Development In-Class Exercise

TASK DURATION (days) PREDECESSORs

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 2D Artwork 14

H 3D Artwork 21 G

I Sound Effects 14

J Music 9

K Level Design 21 F, H

Find the critical path

Coming up: Review Questions

Page 30: Project Management

Review Questions What is the critical path? Do all nodes on the critical

path have to be connected

to each other? (directly) What is slack? When should you write your schedule for the

work? What is resource leveling?

Coming up: What about Agile?

Page 31: Project Management

What about Agile?

Planning and tracking is still important! Scrum Burndown Chart

Release Burndown: Number of story points versus Release

Sprint Burndown: Number of story points versus day Burndown chart shows amount of work

remaining, and charts the trajectory to help predict success or failure

Coming up: Sprint Burndown Chart

Page 32: Project Management

Sprint Burndown Chart

Coming up: Release Burndown Chart

Day

Sto

ry P

oint

s R

emai

ning

Page 33: Project Management

Release Burndown Chart

Coming up: Burndown Chart

Iteration Number

Sto

ry P

oint

s R

emai

ning

Page 34: Project Management

Burndown Chart

Vertical axis can be any metric describing amount of work remaining: Story points User Stories Use Cases Requirements Ideal developer hours

Coming up: Earned Value Management

Page 35: Project Management

Scheduling Rules of Thumb

One person should always edit the schedule (you!) If you have two people that need to, create

two files and link them together Keep it simple and useful Level your resources Share the schedule with your team 40-20-40; coding is 20% of the effort

Coming up: Schedule Example

Page 36: Project Management

Schedule Example Lets try to schedule this work among our

three developers “John, Mary, Carl”

Coming up: Scheduling Steps

TASK DURATION (days) PREDECESSORs

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 2D Artwork 14

H 3D Artwork 21 G

I Sound Effects 14

J Music 9

K Level Design 21 F, H

Page 37: Project Management

Scheduling Steps Add in all the tasks (preferably in a

hierarchy) Add in all the dependencies Break down large tasks into smaller tasks.

Optimally (in Dan Fleck’s opinion) you want to schedule so the duration of each smallest task is at most 3-5 days

Assign people (resources) to tasks Level your resources

Coming up: Classic Mistakes

Page 38: Project Management

Classic Mistakes

Overly optimistic schedule Failing to monitor schedule Failing to update schedule Adding people to a late project Failure to manage expectations of others Leaving out a task

Coming up: Scope Creep

Page 39: Project Management

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

now (in dollars or hours) called the Planned Value

How much you have actually spent by now (in dollars or hours), called Actual Cost

The value, in terms of your baseline budget, of the work accomplished by now (in dollars or hours), called the Earned Value!

Coming up: Earned Value Management

Idea is to link schedule and cost together to monitor both in the same “units” of value

Page 40: Project Management

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

needed to meet the project’s objectives 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.

Coming up: Earned Value Management Example

Page 41: Project Management

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

and test a new system Our planned values (PVs) of each task are:

• Buy - $50, Setup - $75, network - $50, test - $25• Our BAC is therefore $200

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))

Coming up: Earned Value Management Example

Page 42: Project Management

Earned Value Management Example Schedule performance index (SPI)

EV / PV --> 50/50 = 1 (perfect). Our group is on schedule

Cost performance index (CPI) EV / AC --> 50/60 = 0.83 For every dollar spent, I get 83 cents worth of work.

Estimated cost at completion (EAC) BAC / CPI = 200 / 0.83 = $240.96

Schedule Variance (SV) : EV - PV Cost Variance (CV) : EV - AC

Coming up: EVM Example 2 from: http://www.hyperthot.com/pm_cscs.htm

Memorization Hint: Most equations begin with earned value

Page 43: Project Management

EVM Example 2 from: http://www.hyperthot.com/pm_cscs.htm

PLANNED VALUE (Budgeted cost of the work scheduled) = 18 + 10 + 16 + 6 = $50

EARNED VALUE (Budgeted cost of the work performed) = 18 + 8 + 14 + 0 = $40

ACTUAL COST (of the work performed) = $45 (Data from Acct. System)

Therefore: Schedule Variance = 40 - 50 = -$10 Schedule Performance Index = 40 / 50 = 0.8

Coming up: What is earned value?

What is planned value at time X?

What is earned value at time X?

Line is at 16, blue bar ends at 14

Line is at 6

Earned – Planned. Perfect is?

Page 44: Project Management

What is earned value?

A. The amount of money you get upon completion of a task

B. The value of an activity C. The value of the work completed by

now in the schedule D. The value of all activities planned to be

completed by now in the schedule

Coming up: Why do you use earned value management?

Page 45: Project Management

Why do you use earned value management?

A.It is required by my contract B. Measuring value give you more

information than measuring cost or time alone

C. I don’t use it D. It guarantees my project will be done

on time

Coming up: Scheduling Rules of Thumb

Page 46: Project Management

Scope Creep The scope of your project is all the work you

initially planned to do. Scope creep is when your project gets new

tasks throughout it’s lifetime without adding more resources to handle new tasks. The scope is “creeping” up…

Scope changes are OK, and really unavoidable… that’s fine. However you must update the resources (time, features or people accordingly)

Coming up: Why would scope changes occur?

Scope

BOO!

Page 47: Project Management

Why would scope changes occur?

A. You get more money to do more things B. The customer asks you to do

something extra because “it is critical for success”

C. A competing product has a feature that you must have to be competitive

D. All of these

Coming up: Which are causes of scope creep?

Page 48: Project Management

Scope Change versus Creep

Your company has a $1million dollar contract with a defined scope.

Scope change:

Customer: please add all these requirements, and I’ll increase the contract to $2million dollars

Manager: Certainly!

Scope creep:

Customer: please add all these requirements, and I’ll be really happy.

Manager: Certainly!

Change is good!

Page 49: Project Management

Which are causes of scope creep?

A. poor change control B. lack of proper initial identification of

what is required to satisfy project objectives

C. a weak project manager D. all of these

Source: Wikipedia: Scope Creep

Coming up: Managing Scope

Page 50: Project Management

Managing Scope

How to deal with the inevitable “Scope creep”?

Joint Application Development and prototyping

Formal change approval Defer additional requirements as future

system enhancements

Scope

Coming up: Managing Risk

Page 51: Project Management

Managing Risk Document your risks in a risk management plan

1 Description of risk

2 Likelihood of occurrence (0-100%)

3 Impact - 1(low) 5 (high), or cost $20,000

4 Exposure = Impact * Likelihood

5 Mitigation strategy• How to lessen the impact of the risk• How to lessen the likelihood• An action plan if risk occurs

Update and track your risks Communicate your risks to upper management

Coming up: Projects get into trouble when…

Page 52: Project Management

Coming up: Common-Sense Approach to Projects

Projects get into trouble when… Software people don’t understand their customer’s needs. The product scope is poorly defined. Changes are managed poorly. The chosen technology changes. Business needs change [or are ill-defined]. Deadlines are unrealistic. Users are resistant. Sponsorship is lost [or was never properly obtained]. The project team lacks people with appropriate skills. Managers [and practitioners] avoid best practices and lessons

learned.

Page 53: Project Management

Coming up: References

Common-Sense Approach to Projects Start on the right foot. This is accomplished by working hard (very hard) to

understand the problem that is to be solved and then setting realistic objectives and expectations.

Maintain momentum. The project manager must provide incentives to keep turnover of personnel to an absolute minimum, the team should emphasize quality in every task it performs, and senior management should do everything possible to stay out of the team’s way.

Track progress. For a software project, progress is tracked as work products (e.g., models, source code, sets of test cases) are produced and approved (using formal technical reviews) as part of a quality assurance activity.

Make smart decisions. In essence, the decisions of the project manager and the software team should be to “keep it simple.”

Conduct a postmortem analysis. Establish a consistent mechanism for extracting lessons learned for each project.

Page 54: Project Management

References 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/619ch12.ppt Pratt M, Earned Value Management,

http://www.computerworld.com/action/article.do?command=viewArticleBasic&articleId=110065&intsrc=article_pots_bot

End of presentation

Page 55: Project Management

Next week

Review student essays (due in a week) Homework 6 due

Please submit sceenshots (in a word document or pdf) to blackboard

Testing