Project Management

Dan Fleck
Ch 24 Project Mgmt Concepts Ch 27 Project Scheduling

Coming up: Project Management – 4 Ps

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

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.

Your job is to organize and bring value from these people
Coming up: Your job as a leader

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

etc… Defect tracking against quality targets  People aware project management  Coming up: Project Manager . costs.Your job as a manager Make sure these happen Formal risk management  Empirical cost and schedule estimation  Metrics-based project management   Tracking – amount of work done. work remaining.

Coming up: Motivating People .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.

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 .

. people. database) will be needed? Barry Boehm Coming up: Define success and failure . tools.g.Understanding the problem At 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. software.

Dan Fleck  Coming up: Leadership Case Study: 3M .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 .

it becomes increasingly necessary to delegate responsibility and to encourage men and women to exercise their initiative. This requires considerable tolerance. are going to want to do their jobs in their own way. if they are good people. but not in 1940s when 3M codified them  Coming up: 3M Results . "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." . Those men and women to whom we delegate authority and responsibility. And it's essential that we have many people with initiative if we are to continue to grow.” "Management that is destructively critical when mistakes are made kills initiative. These are common themes now.Leadership Case Study: 3M Philosophy:    As our business grows.

Creates little notepapers. who wants to pay for scraps of paper?‖. will be costly‖ Response: If it’s hard to make that’s great. Spence Silver does an experiment that yields an adhesive that sticks.3M Results    Encouragement and a culture of innovation yields: 1968 Dr. but not strongly Presents around the company for 5 years with no ―takers‖ In 1973. making sure to include executive’s assistants Demand rises – finally the product is introduced. and experiment!        Coming up: Avoid team toxicity . Art works with Spence. 3M scientist Art Fry was trying to mark his place in his church choir hymn book with bits of paper that kept falling out. Marketing says ―not enough market. 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. engineering says ―too hard to make. no one but 3M will be able to do it! Fry sends out ―free samples‖ across the company. encourage.

org  Coming up: Planning .  Also one of the first things you should do!  Tools help  Microsoft Project  OpenProj.org  OpenWorkbench.Scheduling One of the most important things you can do is schedule.

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 .

or business context and what constraints are imposed as a result of the context? • Information objectives.Creating a plan: Things to know  Scope • Context. 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. How does the software to be built fit into a larger system. Coming up: Creating a plan: Things to do . product. What customer-visible data objects (Chapter 8) are produced as output from the software? What data objects are required for input? • Function and performance.

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 objects It is decomposed into a set of problem classes or   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 .

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 .

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

Finish to finish    SS .Finish to start (most common)   A FS B. B is allowed to finish B=Baby sit a child. B doesn’t start until A has started Project funded SS project management activities begin A SF B. B doesn’t start until A is finished Build wall FS Paint wall A FF B. B doesn’t finish before A is finished Write final chapter FF Complete Index A SS B.Start to start    SF . A=parent comes home  FF . B doesn’t finish before A has started Once A starts.Start to finish    Coming up: Resource Leveling .Schedule Dependencies  FS .

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 .

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 .

Gantt Chart Coming up: Finding Critical Path .

Work from beginning node (ES=0) to final node  ES .Finding Critical Path Draw a network diagram of the activities  Determine the Early Start (ES) of each node.earliest time the activity can start   ES = Max(ESprevNode + DurationPrevNode) ES: 4 A ES: 2 ES: ?? C B Coming up: Finding Critical Path .

Finding Critical Path  Determine the Late Start (LS) of each node. The latest time the activity can start without changing the end date of the project  LS = MIN(LSnext . Work from the final node to the beginning node.DurationNode) LS: 13  For the last node LS = ES  B LS: ? A LS: ? Coming up: Example B LS: 12 LS: ? C A LS: 12 C .

G.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 Coming up: Example Node Network Predecessor (None) (None) A A A C D B. E H F. I Duration 5 months 1 2 3 2 3 4 2 1 1 .

I Duration 5 months 1 2 3 2 3 4 2 1 1 . E Pricing H Project report F. G.Example Node Network ES:5 ES(H) LS: ES(E)+dur(E) = 5 + 2 =7 ES(J) C ES:0 LS: ES(B)+dur(B) 1=1 ES(F)+dur(F) == ? 0 +ES:5 A Maximum = 7 == ES(H) ES(G)+dur(G) ? LS: D ES(I) + dur(I) = ? ES:0 ES:5 LS: Maximum = ? = ES(J) LS: B E ES:7 LS: F ES:12 LS: G ES:8 LS: J I ES:9 LS: Here's the example: H ES:7 LS: Coming up: Example Node Network 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.

I Duration 5 months 1 2 3 2 3 4 2 1 1 .Example Node Network ES:5 LS:7 ES:0 LS:0 LS(A) = LS(C) – dur(A) = 7 – 5 = 2 LS(D) – dur(A) = 5 – 5 = 0 LS(E) – dur (A) = 7 – 5 = 2 Minimum = 0 = LS(A) ES:7 LS:9 C ES:5 LS:5 F ES:12 LS:12 A ES:0 LS:8 D B ES:5 LS:7 G ES:8 LS:8 J E I ES:9 LS:11 LS(F) LS(J)-dur(F) = 12 – 3 =9 Coming up: Example Node Network 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. G. E Pricing H Project report F.

E Pricing H Project report F.Example Node Network ES:5 LS:7 ES:0 LS:0 C ES:5 LS:5 ES:7 LS:9 F ES:12 LS:12 A ES:0 LS:8 D B ES:5 LS:7 G ES:8 LS:8 J E I ES:9 LS:11 H ES:7 LS:9 Here's the example: Coming up: Game Development In-Class Exercise 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. I Duration 5 months 1 2 3 2 3 4 2 1 1 . G.

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

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

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 .

Sprint Burndown Chart Story Points Remaining Day Coming up: Release Burndown Chart .

Release Burndown Chart Story Points Remaining Iteration Number Coming up: Burndown Chart .

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 .

create two files and link them together Keep it simple and useful  Level your resources  Share the schedule with your team  40-20-40.Scheduling Rules of Thumb  One person should always edit the schedule (you!)  If you have two people that need to. coding is 20% of the effort  Coming up: Schedule Example .

D E PREDECESSORs Coming up: Scheduling Steps .Schedule Example  Lets try to schedule this work among our three developers ―John. Carl‖ TASK A Graphics Engine B Sound Engine C Music Engine D Input Engine E Gameplay/general programming F Physics G 2D Artwork H 3D Artwork I Sound Effects J Music K Level Design DURATION (days) 14 5 5 10 31 7 14 21 14 9 21 F. C. Mary. H G I J A B.

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 .

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 .

called the Earned Value!   Idea is to link schedule and cost together to monitor both in the same “units” of value Coming up: Earned Value Management . called Actual Cost The value. of the work accomplished by now (in dollars or hours).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). in terms of your baseline budget.

Earned Value Management  Planned value (PV) .the amount of value completed at any point during the project Actual Cost (AC) . Coming up: Earned Value Management Example .The sum of all the PVs Earned value (EV) .actual amount of money you have spent so far.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) . In a perfect project AC and EV are the same.

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

BAC / CPI = 200 / 0.96 Memorization Hint: Most equations begin with earned value    Estimated cost at completion (EAC)  Schedule Variance (SV) : EV . Our group is on schedule  Cost performance index (CPI)   EV / AC --> 50/60 = 0.com/pm_cscs. I get 83 cents worth of work.PV Cost Variance (CV) : EV .Earned Value Management Example  Schedule performance index (SPI)   EV / PV --> 50/50 = 1 (perfect).hyperthot.htm .AC Coming up: EVM Example 2 from: http://www.83 For every dollar spent.83 = $240.

50 = -$10 Earned – Planned. System) Therefore:   Schedule Variance = 40 .hyperthot.8 Perfect is? Coming up: What is earned value? .EVM Example 2 from: http://www. Schedule Performance Index = 40 / 50 = 0.com/pm_cscs.htm Line is at 16. blue bar ends at 14 Line is at 6     PLANNED VALUE (Budgeted cost of the work scheduled) = 18 + 10 is + 16 + 6 = $50 What planned value at time X? EARNED VALUE (Budgeted cost of the work performed) = 18 + 8 + 14 + 0 = $40 What is earned value at time X? ACTUAL COST (of the work performed) = $45 (Data from Acct.

What is earned value? A. The value of the work completed by now in the schedule  D. The amount of money you get upon completion of a task  B. The value of all activities planned to be completed by now in the schedule  Coming up: Why do you use earned value management? . The value of an activity  C.

I don’t use it  D. Measuring value give you more information than measuring cost or time alone  C.It is required by my contract  B. It guarantees my project will be done on time  Coming up: Scheduling Rules of Thumb .Why do you use earned value management? A.

The scope is ―creeping‖ up… Scope changes are OK. features or people accordingly) Coming up: Why would scope changes occur? . and really unavoidable… that’s fine. Scope creep is when your project gets new tasks throughout it’s lifetime without adding more resources to handle new tasks.BOO! Scope Creep Scope    The scope of your project is all the work you initially planned to do. However you must update the resources (time.

All of these  Coming up: Which are causes of scope creep? . The customer asks you to do something extra because ―it is critical for success‖  C. You get more money to do more things  B. A competing product has a feature that you must have to be competitive  D.Why would scope changes occur? A.

Scope Change versus Creep Change is good! Your company has a $1million dollar contract with a defined scope. and I’ll increase the contract to $2million dollars Manager: Certainly!  Scope creep: Customer: please add all these requirements. Manager: Certainly!  . Scope change: Customer: please add all these requirements. and I’ll be really happy.

poor change control  B.Which are causes of scope creep? A. a weak project manager  D. lack of proper initial identification of what is required to satisfy project objectives  C. all of these  Source: Wikipedia: Scope Creep Coming up: Managing Scope .

Managing Scope  Scope How to deal with the inevitable ―Scope creep‖?  Joint Application Development and prototyping  Formal change approval  Defer additional requirements as future system enhancements Coming up: Managing Risk .

Managing Risk  Document your risks in a risk management plan 1 2 3 4 5 Description of risk Likelihood of occurrence (0-100%) Impact .000 Exposure = Impact * Likelihood 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… .1(low)  5 (high). or cost $20.

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

Make smart decisions. The project manager must provide incentives to keep turnover of personnel to an absolute minimum. For a software project. sets of test cases) are produced and approved (using formal technical reviews) as part of a quality assurance activity. models. source code. the decisions of the project manager and the software team should be to ―keep it simple. and senior management should do everything possible to stay out of the team’s way. Establish a consistent mechanism for extracting lessons learned for each project.     Coming up: References . progress is tracked as work products (e.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. In essence. Track progress.‖ Conduct a postmortem analysis.g. the team should emphasize quality in every task it performs.. Maintain momentum.

Earned Value Management.projity.shidler.com Wikipedia: Project Management Pressman R. The CIO. Software Engineering A Practical Approach.computerworld. Ch 21 Pressman R..ppt Pratt M.com/action/article.. People Issues. Software Engineering A Practical Approach. Project & Change Management.References       www.do?command=viewArticleBasic&articleI d=110065&intsrc=article_pots_bot End of presentation . Slides for Ch 21 Kazman R. http://www.. kazman.edu/619ch12.hawaii.

Next week Review student essays (due in a week)  Homework 6 due   Please submit sceenshots (in a word document or pdf) to blackboard  Testing .