INF5890 – IT and Management Project Management in Practice: handling complexity and uncertainty March 10, 2016 Xenia Vasilakopoulou - IFI xvasil@ifi.uio.no
Recap previous lectures • What is a project • How to manage a project • When to have a project
Today’s lecture outline • Uncertainty and complexity in projects • Managing uncertainty and complexity in projects: – Initiating. – Planning. – Executing. – Monitoring and Controlling. – Closing.
Why are projects uncertain and complex? • “A project is a temporary endeavor undertaken to create a unique product, service, or result” (PMBOK).
Why are projects uncertain and complex? • It has not been done before. We might not know exactly what it takes and we might not be sure about the exact properties of the end result. – Also, even the “knowns” such as scope and key specifications might change along the way. • Multiple relationships are at play: among the resources involved the project, between different parts of the work in progress, between the project and the ongoing business. Complexity increases when number, variety and connectedness increase. – Also, resources, work parts and business might change along the way. • Complexity further aggravates uncertainty…
Can project management help? Yes and no: • No when it contributes to workload increase (adding too many administrative tasks) and to a false sense of being “in control”. • Yes, when it prepares projects to accommodate uncertainty and is consciously used for complexity containment.
Initiating, Planning, Executing, Monitoring and Controlling, Closing Project management is accomplished through the appropriate application and integration of 42 logically grouped processes comprising the 5 Process Groups (Initiating, Planning, Executing, Monitoring and Controlling, Closing). Source: PMBOK 4 th edition, 2008, adopted by IEEE as Std 1490-2011
The five process groups may recur during the project life cycle
Software process models from a project management perspective Waterfall Req. Analysis Design Development Testing Requirements Design Development Testing Deployment Agile Iterative incremental cycles (analysis, design, development, testing) Backlog Backlog Spiral Evolutionary cycles and staged commitment
Not all projects have the same needs 12.0 Simple, young projects. 10.0 Need agility Agility and iterations Tight Teams Colts Bulls 8.0 to handle uncertainty Uncertainty 6.0 Skunks Cows 4.0 laissez faire Complex, mega projects Need discipline 2.0 Dogs 0.0 0.0 5.0 10.0 15.0 20.0 25.0 30.0 Project Complexity Adapted from: Little, T. (2005). Context-adaptive agility: managing complexity and uncertainty. Software, IEEE , 22 (3), 28-35.
Initiation-the charter Concise piece of text for uncertainty containment – e xpresses stakeholder’s needs and expectations. – objectives and constraints not features or how to achieve results. – a focal point throughout the project, important for empathy, engagement and mindful manoeuvring. Very important, to have this document from the sponsor/owner/initiator before planning or starting.
Planning – work breakdown Modularity: project components that can be separated and recombined Why it is good to componentise work as much as possible: • Handling interruptions and changes of priorities. • Managing dependencies and risk propagation. • Enhancing ownership. • Exploiting opportunities for early wins. New Banking New Banking System System Loans Deposits Asset-Liability Process Design Programming Data Migration Testing Training Redesign Design Design Design Loans Handling Loans Handling Loans Handling Loans Handling Loans Handling Loans Handling Programming Programming Programming Deposits Deposits Deposits Deposits Deposits Deposits Handling Handling Handling Handling Handling Handling Process Process Process Redesign Redesign Redesign Asset-Liability Asset-Liability Asset-Liability Asset-Liability Asset-Liability Asset-Liability Management Management Management Management Management Handling Data Migration Data Migation Data Migration Testing Testing Testing Alternatives for work breakdown of the same project Training Training Training
Planning – developing schedules Thinking of resources and time 40 Resource units Resource units Resource units Work vs 20 vs effort 10 Work Work effort effort 40 20 10 Duration of work task (time) Duration of work task (time) Duration of work task (time) Where do we increase uncertainty? Where do we increase complexity?
Planning – developing schedules Including all the “knowns” • Actual dates (including non working days, vacation times, major reporting events etc.). • Actual project members (with their circumstances e.g. part-time, different time zones, different capabilities and domain knowledge). • Known constraints (availability of test environment, computation facilities, users and managers that need to take decisions). • Overheads are included (e.g. for coordination, reporting etc.). Preparing to accommodate the “unknowns” • Include a contingency margin (both for time and budget). • Handle lag times as safety buffers (but do not tamper with actual estimates). • Lag times are good also for dealing with the quality of the work done, where quality determines the amount of required “rework”. Using lag times ensures that rework is not transferred to other project tasks. • Never schedule using best case scenarios.
Planning – WBS & schedules manage dependencies and risk propagation Remington, K. (2011). Leading complex projects . Gower Publishing, Ltd..
Planning – WBS, schedules, costs Including resource allocation
Executing – teams coordination Minimise surprises within the team by ensuring that information is shared • Information sharing is not only for meetings. • Shared physical spaces (war rooms, team rooms, etc.). • Shared virtual spaces ( e.g. Sharepoint, fileservers, code repositories).
Monitoring and Controlling • Collect, document and distribute performance information including status reports, progress measurements, and forecasts. • Brief reports to steering committees, focus on actions and decisions needed. • Most importantly: involvement and contribution to actual accomplishments and addressing of challenges.
Closing • Obtain formal acceptance by the customer or sponsor. • Report key opportunities for further developments. • Hand over to operations pointing to key interrelationships that matter.
Key points • Information Systems’ projects can be complex and uncertain: they are unique, they unfold under changing business conditions, they require multiple interrelated resources and work parts. • Not all projects have the same uncertainty and complexity so they need to be approached in different ways (no universally best solution). • Project management processes can be used to prepare projects for uncertainty and complexity.
Recommend
More recommend