Intelligent Information Webs

Download Report

Transcript Intelligent Information Webs

The Formal Mechanics of Project Management
•
•
•
•
•
•
•
•
Work Breakdown Structure
Capabilities
Resources
Resource Requirements
Resource Assignments
Scheduling and Critical Path Analysis
Load Balancing
Issues
Step 1: Create a Work Breakdown Structure
• Specify Milestones, the places where significant change occurs.
• Specify what work product is produced at each milestone.
• Break your project down into major tasks and those into subtasks
• Often it’s useful to work between the milestones
• Indicate the dependencies between tasks (which ones must end before others can start).
• Indicate which tasks have a fixed duration (wait for paint to dry) and which depend on
how many resources are applied
Step 2: Taxonomize Capabilities
• Often the resources you need can be thought of in terms of their capabilities
• There are better and worse computers, for example
• You might need to use people with certain skills
• Capabilities (or skills) often form a taxonomy
• Higher capability can do everything one below it can do
• Typically higher capability resources are also more scarce, expensive
• Each individual may possess a variety of capabilities, some high some low
• I’m a good programmer and a lousy artist
Step 3: Describe The Resources
• Any particular resource has
–
–
–
–
–
a set of capabilities
An organizational position
A work calendar, that may not be easy to change
A cost
Ability (or inability) to switch between different tasks
Step 4: Indicate Resource Requirements
• A resource requirement specifies:
–
–
–
–
What kind of resource is needed
The minimum required capability
How much of that resource is required (work hours)
How easy it would be to combine several resources to meet this
requirement
Step 5: Assign Resources
• Pick a set of resources that are consistent with the requirement
• Have a least the capability required
• Add up to the needed amount of the resource
• Specify how much you want to load the resource
• Resources might be sharable
• I.e. you can split your day into segments and apply each to a different task
• There are complications to this (see later)
Step 6: Schedule Tasks
• Assign the earliest start date for the whole project
• Assign the latest end date for the whole project
• Forward simulation:
– A task’s earliest start date is the maximum of all its predecessors earliest
end date
– Given the earliest start date, figure out how long the task will take (its
duration) to complete, given the resources allocated (this depends on their
calendar).
– The earliest end date is the earliest start date plus the task duration.
– A subtask with no predecessors in the task takes the super-task as its
predecessor.
– The project’s earliest end date is the max of the earliest end date of all
terminal tasks.
• Backward simulation:
–
–
–
–
A task’s latest end date is the minimum of its successors’ latest start dates.
Duration works the calendar backward from latest end date
Latest start date is Latest End Date minus duration
Project’s Latest Start Date is minimum of Latest Start Dates o fall initial
tasks
Step 6: Schedule Tasks
• Normally the difference between Earliest State Date and Latest End Date for
each task is bigger than the task’s duration
• The difference is called “Slack”
• You can schedule the task at any time so that it remains between its ESD and
LED using the slack as you like to minimize resource conflicts
• The path through the WBS network with minimum slack is called the Critical
Path
• The Critical Path determines how fast you can get done.
Step 7: Roll Up Resources Consumption
• Each specific resource will be required by different tasks at different times
at different loading levels
• At each time point we can add up how much of that resource is required
• This is called the total load
• If the total load exceeds the amount of the resource available, then you must
reschedule some task that uses the resource, or allocate other resources in
its place.
• When you’ve come up with a schedule in which all resources are underconsumed, you have an executable Project Plan
• Once you start executing it, it will go wrong, so plans with slack and underloaded resources are preferable.
Issues
• Divisibility and additivity
– How many tasks can you cut yourself up into while staying sane
– How effective on each one will you be if there are 1, 2, 10
– Will applying two people to a task make it happen twice as fast?
• How about 10
– How much of your day isn’t devoted to “official tasks”
• Conversations, email, coffee, esprit building
• Subtleties of Requirements
– Some requirements are just for time (e.g. glue drying)
– Some requirements are subordinate to other requirements
• (clamps needed while glue sets up, or tools needed by workers)
– Some requirements can be divided but then the subordinate ones multiply
• If two people do the job at 50% they both still need 100% of the tools
• Risk
– How accurate are your assumptions?
– How much will it matter?
– Redo the exercise with all resource requirements doubled