Title: Modeling%20Tough%20Scheduling%20Problems%20with%20Software
1Modeling Tough Scheduling Problems with Software
- Alex S. Brown
- http//www.alexsbrown.com
- Mitsui Sumitomo Insurance Group, USA
2Objectives
- Get past frustration (intermediate)
- Learn new tools and techniques (expert)
- Not for beginners
- Software-brand neutral
- Interactive, case-study format
Participate!
3Key Terms
- Network Diagram
- Gantt Chart
- Two Types of Projects
Serial Dependencies
Parallel Opportunities
4Scenario
- Six Tasks
- Three Resources
5Five 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!
6Resource 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
7Principles 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
8Scheduling 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
9Breakout 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
10Possible 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
11Selecting 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
12Questions Answers on Leveling
Pick Next Topic
13Hard 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?
14Issues with Dependencies
- Software usually recognizes only hard
dependencies - Critical path analysis requires an accurate
network diagram - Documenting dependencies is
- Challenging
- Absolutely essential
15Breakout 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?
16Documenting 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
17Dependencies 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
18Consequences 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 projects
network - Respond to change differently
19Questions Answers on Dependencies
Pick Next Topic
20Only 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
21Breakout 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?
22What 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
23Questions Answers on Full-Time Work
Pick Next Topic
24Quickly-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
25Planning 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
26Breakout 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
27Change 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
28Change 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
29Questions Answers on Quickly-Changing Schedules
Pick Next Topic
30Maintenance 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
31Benefits 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
32Package-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
33Breakout 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?
34What 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
35Responsibility 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
36Important 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
37Questions Answers on Schedule Maintenance
Pick Next Topic
38Review - Five Tough Problems
- Resource Leveling
- Representing Hard Soft Dependencies
- Only Full-Time Work
- Quickly-Changing Work Assignments
- Maintaining Schedules During Execution
39Resources 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
40An 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
41Complete 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
42Change Your Relationship with Your Scheduling
Software
- No need to get angry any more
43(No Transcript)
44Questions Answers
- Contact speaker at
- http//www.alexsbrown.com
- alexsbrown_at_alexsbrown.com
- alexbrown_at_msigusa.com
- Share ideas, examples, exercises!
45Modeling Tough Scheduling Problems with Software
- Alex S. Brown
- http//www.alexsbrown.com
- Mitsui Sumitomo Insurance Group, USA