16_projectmanagement

30
1 Project Management Practical Advice for Thriving in Chaos Tim Halloran Projects in Contemporary Organizations l Project management has emerged because the characteristics of our turn-of-the-century society demands the development of new methods of management l Many forces have fostered the emergence and expansion of project management

Upload: aibhimani

Post on 10-Apr-2015

31 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 16_ProjectManagement

1

Project Management

Practical Advice for Thriving in Chaos

Tim Halloran

Projects in Contemporary Organizations

l Project management has emerged because the characteristics of our turn-of-the-century society demands the development of new methods of management

l Many forces have fostered the emergence and expansion of project management

Page 2: 16_ProjectManagement

2

Forces Driving Project Management

l 3 forces driving project management:– The exponential expansion of human knowledge– The growing demand for a broad range of complex,

sophisticated, customized goods and services– The evolution of worldwide competitive markets for

the production and consumption of goods and services

l All 3 forces combine to mandate the use of teams to solve problems that used to be solvable by individuals

Objectives of a Project

l 3 project objectives:– Performance– Time– Cost

l Expectations of clients are not an additional target, but an inherent part of the project specifications

Page 3: 16_ProjectManagement

3

Objectives of a Project

The Project Manager

Page 4: 16_ProjectManagement

4

The Project Manager

l The project manager (PM) is expected to:– Integrate all aspects of a project– Ensure that proper knowledge and resources are

available when and where needed– Ensure that the expected results are produced in a

timely, cost-effective manner

l Often a PM is responsible for outcomes but lacks authority to command requisite resources and personnel

l PM faces many challenges and risks (rewards)

Recent Changes in Managing Organizations

l The process of managing organizations has been impacted by 3 revolutionary changes:– Accelerating replacement of traditional, hierarchical

management by participatory management– Currently witnessing the adoption of the “systems

approach” (sometimes called “systems engineering”)

– Organizations establishing projects as the preferred way to accomplish the many specific changes that must be made when the organization attempts to alter its strategy

Page 5: 16_ProjectManagement

5

Recent Changes in Managing Organizations

l Manhattan Project– One of the first large projects– Most contributors worked full-time on the project

l The use of multiple organizations as contributors to a project is no longer remarkable– SAGE, Altas ICBM, ARPANET– Transdisciplinary projects are more the rule than the

exception

The Definition of a Project

l Project Management Institute definition– A temporary endeavor undertaken to create a

unique product or servicel In the broadest sense, a project is a specific,

finite task to be accomplishedl Distinction between terms:

– Program - an exceptionally large, long-range objective that is broken down into a set of projects

– Task - set of activities comprising a project– Work Packages - division of tasks– Work Units - division of work packages

Page 6: 16_ProjectManagement

6

Project Characteristics

l Have a purposel Have a life cyclel Interdependenciesl Uniquenessl Conflict

Non-projects

l Routine tasks are not projects– A project is a one-time event

l Non-projects– Production of weekly employment reports– Preparation of school lunches– Mail delivery

l Projects– Construction of a building– Olympic Torch Relay Project

Page 7: 16_ProjectManagement

7

Why Project Management?

l Project form of organization allows the PM to:– Be more responsive to the client and the

environment– Identify and correct problems at and early date– Make timely decisions about trade-offs between

conflicting project goals– Ensure that managers of the separate tasks do not

optimize the performance of their individual tasks at the expense of the total project (suboptimize)

Why Project Management?

l Companies have experienced:– Better control– Better customer relations– Shorter development times– Lower costs– Higher quality and reliability– Higher profit margins– Sharper orientation toward results– Better interdepartmental coordination– Higher worker morale

Page 8: 16_ProjectManagement

8

Why Project Management?

l Companies have also experienced negatives:– Greater organizational complexity– Increased likelihood of organizational policy

violations– Higher costs– More management difficulties– Low personnel utilization

l On the whole the balance weighs in favor of project organization if the work to be done is appropriate for a project

The Project Life Cycle

l Stages of a Conventional Project:– Slow beginning– Buildup of size– Peak– Begin a decline– Termination

Page 9: 16_ProjectManagement

9

The Project Life Cycle

The Project Life Cycle

Page 10: 16_ProjectManagement

10

The Project Life Cycle

l Other projects also exist which do not follow the conventional project life cycle

l These projects are comprised of subunits that have little use as a stand alone unit, yet become useful when put together– Software– Book

The Project Life Cycle

Page 11: 16_ProjectManagement

11

The Project Life Cycle

l It is essential for the Project Manager to understand the characteristics of the life cycle curve for his project

l The distinction between the two life cycles plays a critical role in the development of budgets and schedules for the project

Risk During the Project Life Cycle

l With most projects there is some uncertainty about the ability to meet project goals

l Uncertainty of outcome is greatest at the start of a project

l Uncertainty decreases as the project moves toward completion

Page 12: 16_ProjectManagement

12

Project Cost Estimate

Project Cost Estimate

Page 13: 16_ProjectManagement

13

Summary

l The use of projects and project management continues to grow in our society

l The Project Management Institute (PMI) was founded in 1969 to foster the growth and professionalism of project management

l Project management is now being recognized as a valuable “career path” in many organizations, as well as a way to gain valuable experience within the organization

Summary

l The 3 primary forces behind project management are:– The growing demand for complex, customized

goods and services– The exponential expansion of human knowledge– The global production-consumption environment

Page 14: 16_ProjectManagement

14

Summary

l Prime objectives of project management are:– To meet specified performance– To do it within specified costs– Complete on schedule

l Terminology follows in this order: program, project, task, work package, work unit

Summary

l Projects are characterized by a singleness of purpose, a definite life cycle, complex interdependencies, some or all unique elements, and an environment of conflict

l Project management, though not problem-free, is the best way to accomplish certain goals

l Projects often start slow, build up speed while using considerable resources, and then slow down as completion nears

Page 15: 16_ProjectManagement

15

I’m a programmer, why should I care about this?

You WILL be in charge sooner than you think!

Page 16: 16_ProjectManagement

16

Lessons for an Accidental Profession

l Understand the context of project managementl Recognize project team conflict as progressl Understand who the stakeholders are and what

they wantl Accept the political nature of organizations and

use it to your advantagel Lead from the front; the view is betterl Understand what “success” means

Lessons for an Accidental Profession

l Build and maintain a cohesive teaml Enthusiasm and despair are both infectiousl One look forward is worth two looks backl Remember what you are trying to dol Use time carefully or it will use youl Above all, plan, plan, plan

Page 17: 16_ProjectManagement

17

Budgeting and Cost Estimation

Pathfinder Mission to Mars-On a Shoestring

l 2 Viking Mars-lander missions: $3 billion– Design-to-performance

l Pathfinder: $175 million (94% cost reduction)– Design-to-cost– Cost was limited by:

l Development was cost-capped – no more fundsl A set of “de-scope” options was identifiedl Mission, flight, and ground systems designs – use existingl Project cash reserve of 27% of total budgetl Mission designers/builders » testers/operators – savingsl Existing NASA infrastructure used (more on page 264)

Page 18: 16_ProjectManagement

18

Scheduling

l A schedule is the conversion of a project action plan into an operating timetable– It serves as the basis for monitoring and controlling

project activity

l Taken together with the plan and budget, it is probably the major tool for the management of projects

PopulationSurvey

GameSightings

MeatRequirements

Review(MRR)

PreliminaryGame

Selection

PreliminaryHunting Plan

Trade Study:Mammoth vs.

Tiger vs. Rabbit

Hunt LeaderChosen

Final GameSelection

Site Selection

Site Survey

Site Preparation

Final HuntingPlan

PreliminaryHuntingReview(PHR)

PreliminaryHunter

SelectionTrade Study:

Club vs. SpearWeaponSelection Weapon

Development

CriticalHuntingReview(CHR)

SiteInspection

WeaponsInspection

HunterInspection

HuntReadiness

Review(HRR)

Chase Game

Catch Game

Get CaughtBy Game

Lose Game

KILL Game

Choose NewHunt Leader

Transport toCave

ExamineEntrails

DistributeMeat

ScheduleHunt

ForecastWeather

Obtain Blessingof Great God

Thag

MeatDistribution

PlanFinal HunterSelection

Why the Neanderthals Became ExtinctWhy the Neanderthals Became Extinct

MeatRequirements

WeaponsPractice and Skill

Qualification

I don't know. It seemed

easier when we just went hunting.

Yes, but Og assures me that this will improve

our efficiency and keep us ahead of

those Cro-Magnons in

the valley.

Page 19: 16_ProjectManagement

19

Why Schedule?

l In a project environment, the scheduling function is more important than it would be in an ongoing operation – Projects lack the continuity of day-to-day operations

and often present much more complex problems of coordination

Scheduling – Network Approach

l The basic approach of all scheduling techniques is to form a network of activity and event relationships

l This network should graphically portray the sequential relations between the tasks in a project

l Tasks that must precede or follow other tasks are then clearly identified, in time as well as function

Page 20: 16_ProjectManagement

20

Gantt Charts

l The Gantt chart shows planned and actual progress for a number of tasks displayed against a horizontal time scale

l It is an effective and easy-to-read method of indicating the actual current status for each set of tasks compared to the planned progress for each item of the set

l It can be helpful in expediting, sequencing, and reallocating resources among tasks

l Gantt charts usually do not show technical dependencies

Gantt Charts

Page 21: 16_ProjectManagement

21

Gantt Charts – Advantages

l Advantages to the use of Gantt charts:– Even though they may contain a great deal of

information, they are easily understood– While they may require frequent updating (as does

any scheduling/control device), they are easy to maintain as long as task requirements are not changed or major alterations of the schedule are not made

– Gantt charts provide a clear picture of the current state of a project

– They are easy to construct

Gantt Charts – The Flaw

l Gantt charts have the weakness that one needs the PERT/CPM network (or the WBS) to interpret what appears on the Gantt chart beyond a cursory level – or to plan how to compensate for lateness

Page 22: 16_ProjectManagement

22

Being a software “team lead”

l Be very aware of the project life cycle curve for a software project

l Be very aware of people issues

– Need a strong desire to have other people succeed

– People’s jobs will depend upon your leadership

l Politics always exist—use them wisely

Being a software “team lead”

l Risk Management– Avoid staying in “comfort zone”– Do the hardest things first

l Plan to have running code at all times– Sync & Stabilize / Agile / Open Source– Booch quote “The mark of any solid…”

l Focus on objectives – not diversions– Death by DFD– Writing your own compiler

Page 23: 16_ProjectManagement

23

StratWar Wargame

l Strategic wargame– SIOP creation/execution– 4 days (3 plan / 1 war)

l 18 month project– Sun 386i / CDC Cyber– BDM (Fortran Simulation)– High risk (backup game)

l Played by 500 students– Hailed as the “Highlight of

the 1990 Academic Year”

Not all requirements have an “elegant” technical solution

l Oracle Forms was used to allow student input of SIOP planning

– Designed for terminals– Used Xterm or vt100

l PCs used EGA color textl Management Edict

– Change to color screens or abandon Suns for PCs

l Project death?

Page 24: 16_ProjectManagement

24

Advice for “Team Leaders”

l There are no “accidents”—being put in chargel “The buck stops here”—trust from leadershipl If you “know it all” you will fail quickly

– Set team standards and enforce them (cautiously)– Punish folks for being stupid, not for being ignorant– Work to leverage individual strengths, but…– If someone doesn’t fit in—get rid of them– In my ideal team I would be the slowest member

l Goal: working software not long work hours

Turning around a “bad project”—move slowly but gain momentum

l DM replacement project in very bad shape– VMS Ada, New vs. Old, “death by DFD”, “easy lib”– When you have nothing but code, be creative…

l Hit the “campaign trail” to users & management– Co-located new and old teams– Only half of original team survived changes– Radical COTS changes (SGI Unix/Ada 95/NT)– Changed infrastructure quickly– Setup is hard and requires long hours for YOU

Page 25: 16_ProjectManagement

25

“Techie blinders” & the battle of theIBM Server 500 vs. SGI Origin 2000

l During work a new requirement emerged…

l A new operating location– Use “new” or “old” system– I advocated “new”!

l Management: BOTH– Remember risk avoidance

is for the system not the software (or your part).

Optimization without a tool is a complete and utter waste of time

package body Bit is

Procedure Set_0 (Source : in out Byte_Array_Type) isByte_Constant_0 : constant Byte_Type := “00000000”;

BeginSource := (others => Byte_Constant_0);

End Set_0;

package body Bit is

Byte_Constant_0 : constant Byte_Type := “00000000”;

Procedure Set_0 (Source : in out Byte_Array_Type) isBeginSource := (others => Byte_Constant_0);

End Set_0;

l New DM ran faster than IBM, but…

l Worried Ada95 was slow

– 3 days of profiling pointed to 1 line of code accounting for 60% of program execution time

Page 26: 16_ProjectManagement

26

NATO Mid-TermCOTS Software (from my other talk)

l COTS growth not controlled– “On our computer…so”– COTS religious wars– Boeing and sub-contractors

using different COTS tools for the same purpose

– Better “system-wide” control needed

l COTS role a critical issue– Run-time on aircraft– Development only

Manage COTS like its your project’s biggest risk—or it will be!

SGI IRIX (port Windows NT)

C

Oracle DatabaseAda95 gnat

Tcl/tk

DM

Make ClearCase

SGI Developer Magic Ada

Oracle Pro*C

Exceed

MS Office

X Windows

Emacs

COTS

Page 27: 16_ProjectManagement

27

Step 1: Divide COTS software into 3 categories (or roles)

l Run-time COTSl Strategic Development COTSl Tactical Development COTS

Run-time COTS

l What COTS is required to execute the system?– IRIX– Oracle– Tcl/Tk interpreter– X Windows– Ada95 libraries

l Changes to this list are MAJOR– Check accuracy and keep as small as possible

Page 28: 16_ProjectManagement

28

Development COTS: Strategic

l Add to run-time COTS the minimum needed to “build” the software system from source code– Ada95 (gnat)– C (compiler)– Oracle Pro*C– Make

l Changes to this list may be MAJOR– Again, check accuracy and try to keep small

Development COTS: Tactical

l Everything else:– Developer Magic Ada– Emacs– Exceed– MS Office– ClearCase

l Changes to this list are usually MINOR– Not everything should be a project standard– Being draconian with this list can alienate your team

Page 29: 16_ProjectManagement

29

Step 2: Map COTS into the software system and estimate lifetimes

l For run-time and strategic development determine what components of your software depend upon the COTS and estimated the useful lifetime of the software– If possible also note SLOC counts (or rough size)

l Critical step to evaluate COTS changes and the amount of “lock-in” you have

l Don’t keep a secret—share with your team!

COTS Chart

DM: Operator Interface

5 years 10 yearsEstimated Lifetime

DM: Preps

Tcl/tk (4K)

Ada95 (1.1M)

C (500)

Oracle Pro*C (2K)

X Windows

IRIX

IRIX

Make (400)

Make (400)

Oracle

Page 30: 16_ProjectManagement

30

NATO AWACS Mid-Term: Advice when you oversee software work

l COST, SCHEDULE, PERFORMANCE– Trade-offs must become second nature– You can only hold two constant, but remember

Brooks’ law…

l Let Engineers do their job, “never tell people…”l Avoid the temptation to have “pet projects”l Maintain COTS vendor "relationships”l Logistics matters

– Contracting and long-term maintenance

Final Thoughts

l Remember these are only rules-of-thumb– Your mileage may vary

l Successful team software development is still an art not a science– Project management skills recommended– Chaos is unavoidable, but…

l When things come together, it is all worth it– 1st StratWar Exercise– Server 500 augmented with Origin 2000