29
Software project management (intro) Software project management (intro) Resource Resource allocation allocation

Software project management (intro) Resource allocation

  • View
    227

  • Download
    3

Embed Size (px)

Citation preview

Software project management (intro)Software project management (intro)

Resource allocationResource allocation

SchedulesSchedulesActivity scheduleActivity schedule indicating start and completion dates for each indicating start and completion dates for each

activityactivity

Resource scheduleResource schedule indicating dates when resources needed + indicating dates when resources needed +

level of resourceslevel of resources

Cost schedule Cost schedule showing accumulative expenditureshowing accumulative expenditure

ResourcesResourcesAny item or person required for the execution Any item or person required for the execution of the projectof the projectThese includeThese include labourlabour equipment (e.g. workstations)equipment (e.g. workstations) Materials – consumed itemsMaterials – consumed items space – eg. officespace – eg. office Services – eg. TelecommmunicationServices – eg. Telecommmunication Time - elapsed time can often be reduced by adding Time - elapsed time can often be reduced by adding

more staffmore staff Money -- used to buy the other resourcesMoney -- used to buy the other resources

Resource allocationResource allocation

Identify the resources needed for each Identify the resources needed for each activityactivity

Identify Identify resource typesresource types - - individuals are interchangeable within the individuals are interchangeable within the

group (e.g. ‘VB programmers’ as opposed to group (e.g. ‘VB programmers’ as opposed to ‘software developers’)‘software developers’)

Allocate resource types to activities and Allocate resource types to activities and examine the examine the resource histogramresource histogram

Resource histogram:Resource histogram:systems analystssystems analysts

WEEK 1 2 3 4 5 6 7

1

2

3

4

5

ST

AF

F R

EQ

D.

Resource clashesResource clashescan be resolved by:can be resolved by: delaying one of the activitiesdelaying one of the activities

taking advantage of float to change start datetaking advantage of float to change start datedelaying start of one activity until finish of the delaying start of one activity until finish of the other activity that resource is being used on - other activity that resource is being used on - puts back project completionputs back project completion

moving resource from a non-critical activitymoving resource from a non-critical activity bringing in additional resource - bringing in additional resource - increases increases

costscosts

PrioritiesPrioritiesCritical path activitiesCritical path activities

Other activities with little floatOther activities with little float

When a short activity would allow a When a short activity would allow a number of larger activities to startnumber of larger activities to start

4 days

30 days

15 days

15 days

10 daysresourceclash

Classification of A Scheduling Classification of A Scheduling ProblemProblem

Time constrainedTime constrained Project must be completed by an imposed Project must be completed by an imposed

datedate If required, resource can be addedIf required, resource can be added

Resource constrainedResource constrained The level of resources cannot be exceededThe level of resources cannot be exceeded It is acceptable to delay project if the It is acceptable to delay project if the

resources are inadequateresources are inadequate

Resource Allocation MethodResource Allocation Method

Assumption:Assumption: Splitting resources will not be allowedSplitting resources will not be allowed The level of resource used cannot be The level of resource used cannot be

changedchanged

Note:Note: This assumption just to simplify learningThis assumption just to simplify learning

Time Constrained ProjectsTime Constrained ProjectsIDID 11 22 33 44 55 66 77 88 99 1010 1111 1212

AA 22 22

BB 22 22 22 22 22 22

CC 22 22 22 22

DD 11 11

EE 11 11

FF 11 11 11 11

GG 11 11

TotalTotalresourceresource

22 22 55 55 44 44 44 44 11 11 11 11

55

44

33

22

11

Resource Chart

Resource profile

Leveled Resource Schedule Leveled Resource Schedule IDID 11 22 33 44 55 66 77 88 99 1010 1111 1212

AA 22 22

BB XX XX 22 22 22 22 22 22

CC 22 22 22 22

DD 11 11

EE 11 11

FF 11 11 11 11

GG 11 11

TotalTotalresourceresource

22 22 55 55 44 44 44 44 11 11 11 11

55

44

33

22

11

Resource Chart

Resource profile

Leveled Resource Schedule (2)Leveled Resource Schedule (2)IDID 11 22 33 44 55 66 77 88 99 1010 1111 1212

AA 22 22

BB 22 22 22 22 22 22

CC 22 22 22 22

DD XX XX XX XX XX XX 11 11

EE XX XX 11 11

FF 11 11 11 11

GG 11 11

TotalTotalresourceresource

22 22 55 55 44 44 44 44 11 11 11 11

55

44

33

22

11

Resource Chart

Resource profile

Downside of levelingDownside of leveling

Loss of flexibility that occurs from reducing Loss of flexibility that occurs from reducing slackslack

The risk of activities also increasesThe risk of activities also increases Because slack reduction can create more Because slack reduction can create more

critical activities and/or near-critical activitiescritical activities and/or near-critical activities

Resource Constrained ProjectsResource Constrained Projects

Schedule activities using the following Schedule activities using the following heuristic priority rules in the order heuristic priority rules in the order presented:presented:

1.1. Minimum slackMinimum slack

2.2. Smallest durationSmallest duration

3.3. Lowest activity identification numberLowest activity identification number

Parallel MethodParallel Method

Approach to apply heuristicsApproach to apply heuristics

An iterative process that starts at the first An iterative process that starts at the first time period of the project and schedules time period of the project and schedules period-by-period any activities eligible to period-by-period any activities eligible to startstart

When two or more activities require the When two or more activities require the same resource, the priority rules are same resource, the priority rules are appliedapplied

Parallel Method – Example (2)Parallel Method – Example (2)

IDID 11 22 33 44 55 66 77 88 99 1010 1111 1212

AA 22 22

BB 22 22 22 22 22 22

CC 22 22 22 22

DD 11 11

EE 11 11

FF 11 11 11 11

GG 11 11

TotalTotalresourceresource

22 22 55 55 44 44 44 44 11 11 11 11

Period : 1, 2

Period 1: Load APeriod 2: No activities loaded

Assume: resource pool is limited to 3

Parallel Method – Example (2)Parallel Method – Example (2)

IDID 11 22 33 44 55 66 77 88 99 1010 1111 1212

AA 22 22

BB 22 22 22 22 22 22

CC 22 22 22 22

DD 11 11

EE 11 11

FF 11 11 11 11

GG 11 11

TotalTotalresourceresource

22 22 55 55 44 44 44 44 11 11 11 11

Period : 3

Period 3: B, C, D are eligible; choose CB requires 2 resources, D requires 1 – choose D, delay Bdelaying B would also delay G

Parallel Method – Example (2)Parallel Method – Example (2)

Period : 4, 5, 6

Stays the same

IDID 11 22 33 44 55 66 77 88 99 1010 1111 1212 1313 1414

AA 22 22

BB 22 22 22 22 22 22

CC 22 22 22 22

DD 11 11

EE 11 11

FF 11 11 11 11

GG XX XX 11 11

TotalTotalresourceresource

22 22 55 55 44 44 44 44 11 11 11 11

Parallel Method – Example (2)Parallel Method – Example (2)

Period : 7

Period 7: B, E, F are eligible – choose B (by rule 1, its slack is -2)Load F, delay E

IDID 11 22 33 44 55 66 77 88 99 1010 1111 1212 1313 1414

AA 22 22

BB 22 22 22 22 22 22

CC 22 22 22 22

DD 11 11

EE 11 11

FF 11 11 11 11

GG XX XX 11 11

TotalTotalresourceresource

22 22 55 55 44 44 44 44 11 11 11 11

Parallel Method – Example (2)Parallel Method – Example (2)

Period : 8, 9, 10

Stays the same

IDID 11 22 33 44 55 66 77 88 99 1010 1111 1212 1313 1414

AA 22 22

BB 22 22 22 22 22 22

CC 22 22 22 22

DD 11 11

EE 11 11

FF 11 11 11 11

GG XX XX 11 11

TotalTotalresourceresource

22 22 55 55 44 44 44 44 11 11 11 11

Parallel Method – Example (2)Parallel Method – Example (2)

Period : 11 (& 12)

Period 11: E is eligibleLoad E (slack = -2)

IDID 11 22 33 44 55 66 77 88 99 1010 1111 1212 1313 1414

AA 22 22

BB 22 22 22 22 22 22

CC 22 22 22 22

DD 11 11

EE 11 11

FF 11 11 11 11

GG XX XX 11 11

TotalTotalresourceresource

22 22 55 55 44 44 44 44 11 11 11 11

Parallel Method – Example (2)Parallel Method – Example (2)

Period : 13 (&14)

Period 13: Load G

IDID 11 22 33 44 55 66 77 88 99 1010 1111 1212 1313 1414

AA 22 22

BB 22 22 22 22 22 22

CC 22 22 22 22

DD 11 11

EE 11 11

FF 11 11 11 11

GG 11 11

TotalTotalresourceresource

22 22 55 55 44 44 44 44 11 11 11 11

Impacts of Impacts of Resource Constraint SchedulingResource Constraint Scheduling

Reduces slackReduces slack Increases the number of critical or near critical Increases the number of critical or near critical

activitiesactivities

May break the sequential activities and May break the sequential activities and leave the network with a set of disjointed leave the network with a set of disjointed critical activitiescritical activities

Resource usageResource usage

need to maximize % usage of resources need to maximize % usage of resources i.e. reduce idle periods between tasksi.e. reduce idle periods between tasks

need to balance costs against early need to balance costs against early completion datecompletion date

need to allow for contingencyneed to allow for contingency

Being specificBeing specific

Allocating resources and smoothing resource Allocating resources and smoothing resource histograms is relatively straightforward where all histograms is relatively straightforward where all resources can be considered equivalentresources can be considered equivalent Eg. Laborers in building projectEg. Laborers in building project

But, seldom for software projectBut, seldom for software projectFactor in allocating individualsFactor in allocating individuals AvailabilityAvailability CriticalityCriticality RiskRisk TrainingTraining Team buildingTeam building

Publishing resourcesPublishing resources

Cost ScheduleCost Schedule

Staff CostStaff Cost

OverheadsOverheads

Usage ChargesUsage Charges

Cost Schedule (2)Cost Schedule (2)BelindaBelinda Rp250/hRp250/h

TomTom Rp175/hRp175/h

DaisyDaisy Rp225/hRp225/h

GavinGavin Rp150/hRp150/h

PurdyPurdy Rp150/hRp150/h

JustinJustin Rp150/hRp150/h

SpencerSpencer Rp150/hRp150/h

AmandaAmanda Rp300/hRp300/h

resource_analyst_3.mpp

Rp0.00

Rp5,000.00

Rp10,000.00

Rp15,000.00

Rp20,000.00

Rp25,000.00

Rp30,000.0005

/04/

2004

12/0

4/20

04

19/0

4/20

04

26/0

4/20

04

03/0

5/20

04

10/0

5/20

04

17/0

5/20

04

24/0

5/20

04

31/0

5/20

04

07/0

6/20

04

14/0

6/20

04

21/0

6/20

04

28/0

6/20

04

05/0

7/20

04

12/0

7/20

04

19/0

7/20

04

26/0

7/20

04

02/0

8/20

04

09/0

8/20

04

16/0

8/20

04

23/0

8/20

04

30/0

8/20

04

06/0

9/20

04

13/0

9/20

04

Weeks

Cos

t

Total Cost

Sequence of project schedulingSequence of project scheduling