TK3333 Software Management Topic 8: Resource Consideration.

25
TK3333 Software Management Topic 8: Topic 8: Resource Consideration Resource Consideration

Transcript of TK3333 Software Management Topic 8: Resource Consideration.

Page 1: TK3333 Software Management Topic 8: Resource Consideration.

TK3333Software Management

Topic 8:Topic 8:Resource ConsiderationResource Consideration

Page 2: TK3333 Software Management Topic 8: Resource Consideration.

ContentsContents• Learn how to take resource constraints into

account

• Determine the planned resource utilisation for a project

• Level the use of resources within the required time frame

• Determine the shortest project schedule with limited resources

Page 3: TK3333 Software Management Topic 8: Resource Consideration.

Real World ExampleReal World Example• Vignette: Human Genome Project• In the 1980s, the US Department of Energy recommended a study to

define the entire human genome. • The US government began funding for scientists in the US to join the

Human Genome Project.• The project began with a $3 billion budget and a completion date of 2005.• Because of lack of technology in 1990, they spent the first few years

creating tools they might need. Once better technology was available, the scientists could work more efficiently.

• The Human Genome Project finished 2 years ahead of schedule, and $400 million under budget. Scientists were able to identify 99% of the human genome.

Page 4: TK3333 Software Management Topic 8: Resource Consideration.

Real World ExampleReal World Example• Vignette: Indiana Road Construction Project• The state of Indiana decided to close a stretch of Interstate 65 and

Interstate 70 in Indianapolis for construction.• A total shutdown of the road would allow work crews to work through the

night to complete the project in 85 days. It would take 250 days without a total shutdown.

• The state knew that closing the highway would be an inconvenience- approximately 175,000 vehicles travel the highway each day. They decided to devise a communication campaign to inform the public about the highway closing.

• Construction began in May 2003 with no major problems. The public knew in advance about the project, so they were able to use alternate routes or public transportation.

Page 5: TK3333 Software Management Topic 8: Resource Consideration.

Resource-Constrained PlanningResource-Constrained Planning• Nearly all projects have limits on available

resources.

• Project delays often occur due to certain resources being unavailable.

• A network diagram can be drawn to reflect the availability of a limited number of resources. – 1st: Arrange based on technically constrained activity

sequence.– 2nd: Arrange based on resource constraints, if any.

Page 6: TK3333 Software Management Topic 8: Resource Consideration.

Resource-Constrained PlanningResource-Constrained Planning

Arrange Food

SetVenue

Invite Guests ....

Arrange Food Set

Venue

Invite Guests

....

With resource constraints

Without resource constraints

Page 7: TK3333 Software Management Topic 8: Resource Consideration.

Planned Resource UtilisationPlanned Resource Utilisation

• It is necessary to indicate the amounts and types of resources needed to perform each activity.

• E.g.

Page 8: TK3333 Software Management Topic 8: Resource Consideration.

Planned Resource UtilisationPlanned Resource Utilisation• Based on the information in the network diagram, a

resource utilisation chart is produced:

Source: pg. 244-245

No. of painters x No. of days

Total of painters for the day

Page 9: TK3333 Software Management Topic 8: Resource Consideration.

Planned Resource UtilisationPlanned Resource Utilisation

• 2 alternatives to draw resource utilisation charts:

– Based on each activity’s earliest start time => as-soon-as-possible (ASAP) schedule.

– Based on each activity’s latest start time => as-late-as-possible (ALAP) schedule.

Page 10: TK3333 Software Management Topic 8: Resource Consideration.

Planned Resource UtilisationPlanned Resource Utilisation• Based on the resource utilisation chart, a resource

profile is produced:

Uneven utilisation of painters

Source: pg. 244-245

Page 11: TK3333 Software Management Topic 8: Resource Consideration.

Resource LevelingResource Leveling

• Resource leveling, or smoothing, is a method for developing a schedule that attempts to minimise the fluctuations in requirements for resources (i.e. uneven distribution).

• This method levels the resources so that they are applied as uniformly as possible without extending the project schedule beyond the required completion time.

Page 12: TK3333 Software Management Topic 8: Resource Consideration.

Resource LevelingResource Leveling

• Critical path: Paint 1st Floor + Paint Stairs &Hall = 12 days => cannot be touched (if we don’t want to delay the project).

• “Basement” can delay 8 days (12-4 days); “Bedroom” can delay 6 days (12-6 days); “Bathroom” can delay 2 days (12-8-2 days)

• 2 alternatives:1) Delay the activity with the most +ve slack (i.e. “Basement” +8 days slack) by 6

days (i.e. it starts after “Bedroom” is finished) => can use the same person to do both.

2) Delay “Bedroom” by 4 days (i.e. it starts after “Basement” is finished).

Source: pg. 244

Page 13: TK3333 Software Management Topic 8: Resource Consideration.

Resource LevelingResource Leveling

Source: pg. 246-247

If choose Alternative 1 :

More even utilisation of painters

Page 14: TK3333 Software Management Topic 8: Resource Consideration.

Resource-Limited SchedulingResource-Limited Scheduling

• Resource-limited scheduling is a method for developing the shortest schedule when the number or amount of available resources is fixed and cannot be exceeded.

• This method will extend the project completion time if necessary in order to keep within the resource limits.

• It is an iterative method where resources are allocated based on the least slack.– Least slack has the higher priority.

Page 15: TK3333 Software Management Topic 8: Resource Consideration.

Resource-Limited SchedulingResource-Limited Scheduling

Source: pg. 248-249

1st Priority

Presuming only 2 people are available:

Shifted to after Day 8 (when 2 painters are free)

1st iteration;1st Priority

2nd Priority, which one?

Page 16: TK3333 Software Management Topic 8: Resource Consideration.

Resource-Limited SchedulingResource-Limited Scheduling

Source: pg. 251-252

2nd iteration1st Priority

Cannot touch - critical Has to be sacrificed

Shifted to after Day 12 (when 1 painter is free)

3rd iteration

Has to be sacrificed

Page 17: TK3333 Software Management Topic 8: Resource Consideration.

Project Management SoftwareProject Management Software• Provides excellent features for handling resource

considerations within a project.

• Allows you to create and maintain a list of resources.

• Resources can be assigned to various tasks within a project.

• The user is informed if any resources have time conflicts or if they are over-allocated.

• Numerous resource allocation reports can be generated.

Page 18: TK3333 Software Management Topic 8: Resource Consideration.

Some notes …Some notes …• During scheduling, assume unlimited resources. Or else, it

takes forever to work out the schedule.– If resources are unavailable, techniques such as resource leveling

and resource-limited scheduling can help.

• Software can only calculate, not decide.– We have to set the inputs i.e. duration, dependencies etc.

– “Garbage-in-Garbage-out”

– Don’t be too rigid about “must start/end” dates. Let the software calculates based on your inputs.

Page 19: TK3333 Software Management Topic 8: Resource Consideration.

Some notes …Some notes …• Do not assume people to work more than 50-60% of the

time.– Knowledge workers (e.g. software engineers) are not like factory

workers (who are tied to their workstations).

– For knowledge work (i.e. engineering and programming), the maximum duration of an increment should be 1-3 weeks. Or else, it will reach 90% completion and stays forever. Why?

Time

% Complete100 Due to:

•Discovering “must-do but forgotten” things.

•Debugging => It’s common to find the solution after the deadline so that the work is completed in one simple step.D

EAD

LIN

E

Page 20: TK3333 Software Management Topic 8: Resource Consideration.

Some notes …Some notes …• If duration of knowledge work is too long.

Discovering “must-do but forgotten” things

Time

% Complete100

DEA

DLI

NE

Time

% Complete100

Debugging

DEA

DLI

NE

Page 21: TK3333 Software Management Topic 8: Resource Consideration.

Some notes …Some notes …• Major causes of reduced resource availability:

– Having people work on too many projects at the same time.• Every time a person “shifts gears”, it takes time for them to remember where they

were, get the momentum etc.

• No one should work more than 2-3 projects. Ideally, one project is enough.

– Overallocation of people to their work.• Queuing theory – if no “out”, no chance of “in”.

• No system should be loaded beyond 85% capacity for very long. 15% should be reserved to respond to “turbulence”.

• Estimating is guessing.– All activities are probabilistic, not deterministic.

– It is best done with past experience.

Page 22: TK3333 Software Management Topic 8: Resource Consideration.

Some notes …Some notes …• Parkinson’s Law (1955):

– Work will always expand to take as long as has been allowed. Projects never finish early!

• Goldratt’s Principle (1997):– A project will accumulate delays but will never accumulate gains (i.e.

always costs more than necessary and takes longer than it should).

• Accept variations.– It is OK to have variations (i.e. allows dates to vary) as long as the

project finishes on time (i.e. some early, some late => variations will average out).

– Takes “typical values” for the estimates.

Page 23: TK3333 Software Management Topic 8: Resource Consideration.

Some notes …Some notes …• What if, we have no past experience. How to estimate?

– Use consensual estimating.• Ask several individuals who know something about the task for an estimate.• Understand the variations among the estimates given by the individuals.• Choose a single realistic number that everyone agrees and can support.• May take time but it is worthwhile.

• When ask for estimates, ask both: actual working time & calendar time.– Why? We are always juggling tradeoffs between those times.– Actual working time => labour costs; calendar time => completion time.

Page 24: TK3333 Software Management Topic 8: Resource Consideration.

Some notes …Some notes …• In many projects, we don’t own the resources; they are

provided by functional managers on a temporary basis.– The necessary signatures should be obtained in a project plan sign-off

meeting.

– The functional managers should be clear that their signatures indicate their commitment to provide resources when and in the quantities they say.

• If we have more than one project, prioritise them.– Ensure products are produced over time, rather than all at once.

Tota

l Sal

es R

even

ue

Gen

erat

ed

Time Time

Tota

l Sal

es R

even

ue

Gen

erat

ed

Page 25: TK3333 Software Management Topic 8: Resource Consideration.

Thank YouThank You

• Question?

• Next (27/4) :– Cost Planning and Performance

• Mid Sem (20%)– Tue 4/5 8.15pm; Topic 1-8