Upload
landen
View
26
Download
0
Embed Size (px)
DESCRIPTION
Advanced Scheduling Concepts Software can land an aircraft. Why can’t it plan a project ?. Session FRI35. Shane Archibald, Managing Principal Archibald Associates & Spider Project USA. Advanced Scheduling Concepts. In this session, we will - PowerPoint PPT Presentation
Citation preview
Advanced Scheduling ConceptsSoftware can land an aircraft. Why can’t it plan a project?
Shane Archibald, Managing PrincipalArchibald Associates &Spider Project USA
SESSION FRI35
Advanced Scheduling Concepts
In this session, we will Review some significant advances in software and
computing capabilities… and how they came about Review what we think we know about scheduling…
and maybe learn otherwise Shift our way of thinking and take a giant step
forward Review some interesting and unique functionality in
a very special Scheduling tool
The Evolution of Computers
The Evolution of Computers
The Evolution of Computers
Computers have never been good at finding answers to complex questions
The very best can only comprehend and answer simple, straightforward questions but still get them wrong nearly one third of the time
Search engines don’t answer a question–they deliver thousands of search results that match keywords
Are we satisfied? If so, then Why?
IBM’s R&D Challenge
The grand challenge driving IBM’s project was to win on the game show Jeopardy!
The broader goal was to create a new generation of technology that could find answers in unstructured data
IBM’s Answer
Watson
Watson
A Significant Step in Computing Evolution – IBM’s Watson
Fed mountains of information, including text from Commercial sources, such as the World Book Encyclopedia
Sources that allow open copying of their content, such as Wikipedia and books from Project Gutenberg
A Significant Step in Computing Evolution – IBM’s Watson
Programed it to respond based on rank of findingsTested it in a mock game of Jeopardy!Failed miserably!
A Significant Step in Computing Evolution – IBM’s Watson
Watson
They tried Again. And again. And failed each time.
Asked themselves how people learn and improve
The Paradigm Shift
February 2011 – Success!!
Watson – Early Lessons Learned
Why was the Team successful? Didn’t settle for existing “reality”
Stopped doing the same thing, expecting different results
Team asked themselves what the difference was between people and Watson
Understood a minor change in approach can lead to a significant change in outcome
What does all this have to do with Scheduling?
IBM’s Watson – Relevant to Scheduling?
Traditional CPM Software Uses a single predefined formula; no heuristics
Uses heavy human intervention; no automated adjustments or changes
Results require significant analysis, validation & manual adjustments; “I’ll take it from there…”
Process is cumbersome, inefficient and inaccurate
Cumbersome Process?
Cumbersome Process?
Collect information and estimates (duration, effort, resource, cost, risk, etc.)
Enter into scheduling system, calculate, validate; plan and schedule produced!
Work
Update for progress, recalculate, validate
Analyze results and identify issues
Meet with team to mitigate issues; make decisions and new plans
Enter decisions / changes to schedule, recalculate, validate
Repeat …For the life of the project!
Cumbersome Process?
What if we are talking about aircraft autopilot?
Collect information
Enter into system
Fly (for a second)
Update information for flight progress, recalculate forecast, validate
Analyze results and identify issues
Meet with team to mitigate issues; make decisions and new plans
Enter decisions / changes to flight controls, recalculate, validate
Repeat …For the life of the flight!
What if we are talking about aircraft autopilot?
What if we are talking about aircraft autopilot?
What if we are talking about aircraft autopilot?
Software Can Land an Aircraft!
But it needs the variables, rules, and algorithms to do so
The Mechanics
The Variables
Internal variables Elevator (Pitch)
Rudder (Yaw)
Aileron (Roll)
Flaps (Lift)
Ground & Air speed
Thrust
Gross weight
Drag / Friction
External variables Wind speed
Wind direction
Air pressure
Weather
Altitude
Destination (location, altitude, etc.)
Other aircraft
Other changes
The Rules
Gross weight –– Air Speed
Air speed –– Flaps
Pitch –– Thrust
Drag –– Thrust
Etc…
The Algorithm
If
Air Speed < X and Flaps < Y
Then
Increase Thrust until Air Speed => X
OR
Lower Flaps until Flaps => Y
Or…
Immediately measure again and repeat
The Results
FAST response times
ACCURATE adjustments
REDUCED workload
Software Can Land an Aircraft!
If a computer can land a 450 ton aircraft full of human life with zero intervention, then why can’t it correctly re-sequence a few thousand activities and resources?
IT CAN!But it needs the variables, rules, and algorithms to do so
The Challenge
How do we develop a
“Self-Correcting”Schedule?
A Sample Exercise: Re-pave Roadway
Existing “Reality”
Standard Schedule Input for an Activity Duration
Logic
Resources
Cost
Baseline
*Timeframe (Calendar window)
Existing “Reality”
What are we trying to represent? Duration – Amount of work (and resource capacity)
Logic – Relationship to other work
Resources – People, Equipment & Materials used to complete that work
Cost – Cost of the work (and overall Spending Plan)
Baseline – Target of the work; success criteria
*Timeframe (Calendar window) – When the work will take place
Existing “Reality”
What are the maintenance requirements? Duration – Amount of work (and resource capacity)
Logic – Relationship to other work
Resources – People, Equipment & Materials used to complete that work
Cost – Cost of the work (and overall Spending Plan)
Baseline – Target of the work; success criteria
*Timeframe (Calendar window) – When the work will take place
Existing “Reality”
A Sample Exercise
Are there opportunities for improvement??
Absolutely!
Remember the IBM R&D Team?
Shifting The Paradigm
Didn’t settle for existing “reality”
Stopped doing the same thing, expecting different results
Asked themselves what the difference was between human-decision and software-output processes
Understood that a minor change in approach could lead to a significant change in outcome
Let’s Think About This…
What are the Variables? What information do we, as a team and in a meeting, use
when determining the best current plan or solution?
What are the Rules? How do we, as a team, chose alternatives when tasked with
changing our plan?
What should the Heuristic algorithm target? The target is determined by the user
The algorithm is proprietary
A Sample Exercise
Internal & ExternalVariables
Variables
Internal Variables those that are completely self-contained within the subject, are directly related and work together to achieve some result
External Variables IMPACT the Internal Variables in some way, shape or form
Our Challenge…
…Is to develop the Internal Variables and related Rules such that they react to impacts from External Variables without human intervention
Assumption: The Schedule “Activity” is the basic building block of a Schedule and will be our focus
What are the Internal Variables of our Activity?
Unique characteristics
Timeframe
Effort (Hours)
Duration
Responsibility (Resources)
Cost to Complete the Work
*Scope of Work* (volume)
What are the External Variables?
Labor Availability
Equipment Availability
Availability of Supplies & Materials
Space limitations
True Predecessors
Special Events
Weather or Season
Site Conditions
Target or Baseline
Management “preference”
How do we Automate Internal Variables…
…So they
self-correctwhen something changes?
Primary Foundational Building Block
Volume
is an attribute of each activity, representing the amount of work to be done
Let’s Start SLOW, From The Top and Automate our Internal Variables
Unique characteristics
Timeframe
Effort (Hours)
Duration
Responsibility (Resources)
Cost to Complete the Work
Imagine…
What if we could wrap Rules around the activity, like… You should delay the work until the last minute
You cannot pause the work; it must be fully completed in a single pass
If Site A has standing water, you must remove that water before digging the trench
We Will Have Automated…
Unique characteristics
Timeframe
Effort (Hours)
Duration
Responsibility (Resources)
Cost to Complete the Work
Imagine Complex Logic…
What if Logic could be used to represent complex relationships to other work, like…
You MUST do the work IMMEDIATELY following completion of predecessor Y
You can start the work as soon as predecessor X is 30 yards down the road but you cannot pass 50-yards until predecessor X is 10 yards from completion
If Z happens, then we need to do B, C, & D before A
We Will Have Automated…
Unique characteristics
Timeframe
Effort (Hours)
Duration
Responsibility (Resources)
Cost to Complete the Work
Imagine that Resources…
…had unique
Productivity Valuesfor that type of work
Then Hours Required…
…would be the result of Volume of work divided by individual Resource Productivity
Hours = Volume / Resource Productivity
And
Duration = Hours / Resource Workday
Then Hours & Duration…
…Would be
Self-Adjustingbased on Resources Assigned
But we would still need to manually assign them
We Will Have Automated…
Unique characteristics
Timeframe
Effort (Hours)
Duration
Responsibility (Resources)
Cost to Complete the Work
Imagine Resources…
…With attributes describing their specialized Skill
…That could be automatically assigned to activities based on Skill required
We Will Have Automated…
Unique characteristics
Timeframe
Effort (Hours)
Duration
Responsibility (Resources)
Cost to Complete the Work
Are we there yet?
Imagine Resources With…
Specifichourly and overhead
Rates
And…
Cost of the work was based on Forecasted hours and true rates of automatically
assigned “named” resources
Overhead costs were applied by hour or flat rate or quantity of material or use of equipment
Materials consumed by Equipment and was automatically applied
Then TOTAL Cost…
…Would be
automatically calculatedbased on the
specific Resource that has been
automatically assigned
We Will Have Automated…
Unique characteristics
Timeframe
Effort (Hours)
Duration
Responsibility (Resources)
Cost to Complete the Work
How Long…?
How long do you think it will take companies to develop software
that will let us use
Variables?
Actually… It’s already here!
Spider Project
Spider Does!
Spider allows Multi-Resources too
Connect your Named Resources (e.g. Bricklayer, Bricks, Masonry, and Mixer) to create a multi-resource and make just a single assignment for brick work
Maybe you have multiple mixers and bricklayers…
Use Skills as part of your Multi-Resource to let Spider pick the best named resource for the assignment
Spider Does!
Teams of Resources can be:
Assigned to activities so the activities will start only when the whole Team is available to work
…Or Resources can be described as “able to do the work” and the software would pick the “best” or available team to complete the work, make the assignment, calculate the costs, and consume the materials
Teams can consist of may different Resources, Equipment, Materials, Multi-Resources or Skills
Spider Does!
Resource assignments can carry Rules such as…
“You MUST have at least 2 of this type of resource to start the task. You can have more resources but cannot exceed 5 at any given time during performance of the task due to space or other limitations”
Spider will start the task when it can find two resources that are ready to perform and will ADD up to three additional resources if and when they become available, to complete the task faster
Spider Does!
Spider supports TRUE Risk Management Insert REAL Risk Events into your activity network
Attach Mitigation Plans to those Risk Events using conditional logic
Built-in Monte Carlo will consider these events and mitigation plans when calculating probabilities of success for At Complete dates and costs
Spider Does!
Baseline values… Can be driven by confidence levels, which can be
driven by MC statistical analysis
Can easily compare values, in your schedule, ON YOUR SCREEN (and NOT in a 2,394 page text file!)
Can be easily updated
Spider Does!
Spider supports the 3-Senarios Method Build Optimistic, Pessimistic, and Most Likely
schedules- Spider will automatically maintain synchronization from a single update
Provide the Pessimistic version to the owner or Client
Provide the Most Likely version to the Project Manager
…But drive the Team towards the Optimistic version
Spider Does!
Algorithms are based on Heuristics
heu·ris·tic 4. Computers, Mathematics. pertaining to a trial-and-
error method of problem solving used when an algorithmic approach is impractical.
-dictionary.com
Spider Does!
Schedule Optimization
Spider is the ONLY Project Management software that optimizes resource, cost, and material constrained schedules and budgets for projects and portfolios
Spider Does!
Monte Carlo & Schedule Optimization
Spider is the ONLY Project Management software that properly runs Monte Carlo on Optimized Schedules
Spider Does!
Spider will search through multiple combinations of variables to automatically assign the best Resource(s) to each activity, based on:
Type of Resource(s) needed
Availability of the Resource(s), when the work takes place (NOT when the project is initially planned)
Total Cost to complete the work, based on the cost and productivity of the Resources in the pool
Or on speed to complete the work, based purely on the productivity of the resources in the pool
…Based on your personal choice
Spider Does!
With the push of a button you can run a heuristics-based algorithm that will search through various combinations of all those variables to find the optimal schedule to give us:
The shortest possible schedule?
The lowest possible Cost?
The greatest return on investment?
The quickest release of key Resources?
The most Payment Milestones by the end of the year?
What is your priority? What will it be tomorrow?
Spider Does!
…SO much more
Visit
SpiderProjectUSA.com
Conclusion
Paradigm Shifts ARE possible Don’t settle for existing “reality”
Stop doing the same thing, expecting different results
Ask yourselves what the difference is between human-decision and software-output processes
Understand that a minor change in approach can AND DOES lead to a significant change in outcome
Conclusion
Project Schedules can self-adjust if given variables, rules, and heuristic algorithms instead of static values and simple equations
Spider Project employs significantly advanced heuristic-based functions and algorithms to support
Dynamic Variable Scheduling
Contact
Shane Archibald, Managing PrincipalArchibald Associates & Spider Project
USA