460 likes | 610 Views
Modeling Tough Scheduling Problems with Software. Alex S. Brown http://www.alexsbrown.com Mitsui Sumitomo Insurance Group, USA. Objectives. Get past frustration (intermediate) Learn new tools and techniques (expert) Not for beginners Software-brand neutral Interactive, case-study format.
E N D
Modeling Tough Scheduling Problems with Software Alex S. Brown http://www.alexsbrown.com Mitsui Sumitomo Insurance Group, USA
Objectives • Get past frustration (intermediate) • Learn new tools and techniques (expert) • Not for beginners • Software-brand neutral • Interactive, case-study format Participate!
Key Terms • Network Diagram • Gantt Chart • Two Types of Projects Serial Dependencies Parallel Opportunities
Scenario • Six Tasks • Three Resources
Five Directions - Pick One! • Resource Leveling • Representing Hard & Soft Dependencies • Only Full-Time Work • Quickly-Changing Work & Assignments • Maintaining Schedules During Execution Go! Go! Go! Go! Go!
Resource Leveling - Key Data • Gather complete data at the start • Resource start dates and availability • Vacations • Accurate work and duration estimates • Accurate sequence relationships • Good data is essential • When data is good enough, level to discover the real end date
Principles of Leveling • Find a repeatable method • Level regularly • Changes in any estimate or assumption may require re-leveling • Leveling is iterative • Methods should allow small, frequent adjustments
Scheduling Tools for Leveling • View resource use over time • Adjust key task info • Start dates • Delays on tasks • Allocation of work over time by task • Resource availability vs. Work assigned
Breakout Discussion • Level the scenario for 40-hour weeks, 8-hour days for each resource • Different approaches on the handouts • Key questions • What method do you normally use? • Which is easiest to set up? • Which is easiest to maintain? • Five minutes for discussion
Possible Solutions • Stretch all work to five days duration • Make work sequential • Move start dates • Add delays • Break down the task list differently to simplify leveling
Selecting a Technique • What is easiest in your software? • How hard is maintenance? • What methods allow for automation for all or part of the work? • What is the impact on reporting and analysis techniques? • Critical path • Earned value
Questions & Answers on Leveling Pick Next Topic
Hard & Soft Dependencies • Hard dependencies MUST be obeyed • Soft dependencies SHOULD be obeyed • Real-life schedules often break or change soft dependencies to achieve required end dates • Challenge your assumptions: is it really IMPOSSIBLE for task B to start until task A ends?
Issues with Dependencies • Software usually recognizes only hard dependencies • Critical path analysis requires an accurate network diagram • Documenting dependencies is • Challenging • Absolutely essential
Breakout Discussion • Scenario uses soft dependencies • Soft dependencies driven by resource limitations • Questions • Where do you document dependencies? • What is the critical path? • What do you want the critical path to be? • How does the schedule respond to change?
Documenting Dependencies • Many options • Two network diagrams - “hard only” and current • Narrative explanation of dependencies • Separate columns or spreadsheets track hard and soft dependencies • Pick a method you can maintain easily
Dependencies in Software • Scheduling software usually enforces dependencies strictly (all hard) • Options • Only enter hard dependencies - satisfy soft dependencies during leveling • Enter both hard and soft dependencies for each task, update as needed • Enter only the constraining dependency
Consequences of Approaches • Calculation of critical path • Clarity of network diagram • “Only hard” is clearest diagram • “Hard & soft” creates overlapping lines • “Only constraining” looks like a serial project’s network • Respond to change differently
Questions & Answers on Dependencies Pick Next Topic
Only Full-Time Work • Reasons to insist on full-time work assignments • Use critical chain method • Improve control of work authorization • Clarify status reports • New problems • Adds more tasks • Can make the schedule more complex
Breakout Discussion • Initial scenario changed • Resource “A” and “C” have clearer assignments • Answer these questions • Why does the work take longer now? • What resource-leveling methods do you prefer for these problems?
What does 50% allocated mean, anyway? • Example illustrates a possible trap Two, five-day tasks cannot be done in five days by one person (most of the time) • Always need to add common sense to any schedule, and not rely solely on software • True with ANY methodology
Questions & Answers on Full-Time Work Pick Next Topic
Quickly-Changing Schedules • Real schedules change every reporting period • Estimate changes - work & duration • Assignment changes • Resources added, removed, and rescheduled • Resource availability changes • Optimize schedule, make new forecasts • The only certainty is change itself
Planning for Changes in the Plan • Predict future changes • What is likely to change? • What changed often in the past? • What project risks will cause change? • Create a small schedule with typical tasks • Try making typical changes • Experiment to find best techniques
Breakout Discussion • Start with initial scenario • Apply changes • Resources no longer available • Resources available more hours per week • Estimate changes • Build a new model and repeat • Hard and soft dependencies • Different leveling techniques
Change is Fundamental • Experiment with change in a small schedule • Best way to evaluate and compare different techniques • Great way to explore, understand, and evaluate scheduling software • Best techniques will vary -- find the best for your schedules, for your software
Change Drives Automation • Change is difficult with hand-drawn schedules and budgets • Software updates every view of a schedule simultaneously • WARNING: if the model is poor, software makes changes HARDER • Understand basic principles BEFORE automating
Questions & Answers on Quickly-Changing Schedules Pick Next Topic
Maintenance During Execution • Key steps • Apply actual work • Update estimates for remaining work • Optimize the schedule and update forecasts • Many managers shelve schedules after developing them • Schedule maintenance key to learning as an organization and as a manager
Benefits of Maintenance • Compare actuals to estimates • Improve estimates for next time • Improve control of work and scope • Required for earned value and benchmarking • Accurate, up-to-date forecasts of delivery dates • Prove scheduling techniques
Package-Specific Features • Timesheets automate and distribute entry of actuals • Entry of actuals vary by software package • Different packages reschedule remaining work differently • Do not focus on software differences, focus on creating a new forecast
Breakout Discussion • Review actual progress after week 1 • Schedule the remaining work • Questions • Can you predict how your software would reschedule the remaining work? • Do we change dependencies now that work is started?
What SHOULD Software Do? • Actuals sometimes break “rules” in the schedule • Actual work starts before predecessor is complete • “Must meet” deadlines missed • Software packages make assumptions and raise warnings – each has a different approach
Responsibility As Software Users • Understand that actual work might break our model • Software may react unpredictably when our models are wrong • Understand software settings, defaults, and options • Experiment, experiment, experiment – create small schedules to test and learn
Important Choices • How you build a schedule determines how you maintain it • Schedule time to update the schedule • Forecast new end dates regularly • Larger projects mean • Maintenance is critical • Maintenance is difficult
Questions & Answers on Schedule Maintenance Pick Next Topic
Review - Five Tough Problems • Resource Leveling • Representing Hard & Soft Dependencies • Only Full-Time Work • Quickly-Changing Work & Assignments • Maintaining Schedules During Execution
Resources Available On-Line • Additional exercises from 2003 session • On-line paper • Comparison of novice vs. expert use of scheduling software • Ideas to improve your skills • References and additional reading
An Appeal to Scheduling Teachers • More advanced classes • Teach techniques from real examples • Spend MORE time on resource-leveling than on dependency types • Incorporate tough problems into your courses, even introductory ones • Encourage students to experiment often with small, test schedules
Complete Your Learning Experience • This presentation is a first step • Run exercises using your software • Select scenarios from your schedules and try new techniques • Hear it and you will forget it • Do it and you will remember it! • Share with your coworkers
Change Your Relationship with Your Scheduling Software No need to get angry any more…
Questions & Answers Contact speaker at http://www.alexsbrown.com alexsbrown@alexsbrown.com alexbrown@msigusa.com Share ideas, examples, exercises!
Modeling Tough Scheduling Problems with Software Alex S. Brown http://www.alexsbrown.com Mitsui Sumitomo Insurance Group, USA