• No results found

Time-line based model for software project scheduling

N/A
N/A
Protected

Academic year: 2021

Share "Time-line based model for software project scheduling"

Copied!
17
0
0

Loading.... (view fulltext now)

Full text

(1)

Time-line based model for

software project scheduling

with genetic algorithms

with genetic algorithms

Carl K. Chang, Hsin-yi Jiang, Yu Di, Dan Zhu, Yujia Ge

f f

Information and Software Technology(IST), 2008 2010. 3. 9

(2)

Contents

™

Introduction

™

O

i

f th

i

d l

™

Overview of the previous model

™

Specification of the new model

™

Experiments

™

Related work

™

Conclusion

(3)

Introduction

™

Task assignments are crucial to software development

Q lit

f th

i

t

tl i fl

th

j t

ƒ

Quality of the assignments greatly influences the projects

™

Most existing project management tools only provide

passive project tracking and reporting aids

passive project tracking and reporting aids

™

This research proposes GA-based project scheduling

approach

approach

ƒ

By extending their previous approach [Annals of SE, 2001]

• Enabling more fine-grained allocation using time-lines

– By breaking down development tasks into smaller time-sliced activities

• Considering dynamics of software projects

(4)

Overview of the previous model (1/2)

p

( / )

™

Representation of a project: a task precedence graph

ƒ

Example)

ƒ

Example)

T5 PM: 10 SR: 0,2 PM: 10 SR: 0,2 PM: 10 SR: 0,1 T0 T1 T2 T3 T4T4 T6 PM: 15 SR: 2,3 PM: 10 SR: 1,2 PM: 25 SR: 1,4 PM: 20 SR: 2,4 PM: person months SR: skills required

™

Representation of an employee: skills and salary

™

Objective function

ƒ

F= validity x (W

1

/Overload+W

2

/Cost+W

3

/Time)

• Validity is 1 if the assignment is valid, otherwise 0.

(5)

Overview of the previous model (2/2)

p

( / )

™

Problems of the previous approach

ƒ

Execution of tasks in an atomic way

ƒ

Execution of tasks in an atomic way

• Interruption of task execution is not allowed

– A new critical task can be executed during execution of other tasks

A i

t t t

ƒ

Assignment strategy

• It is not realistic to assume that adding more employees to a task always produce better schedule

It i i ti d di ti t – It increases communication and coordination cost

ƒ

Skills and experience

• Different levels of skills and experience are not supported

ƒ

Different scales for objectives

(6)

Specification of the new model (1/6)

p

( / )

™

Introduction of time-line

T

bl

dditi

d

l f

l

d i

t k

ti

ƒ

To enable addition and removal of employees during task execution

• By breaking down development tasks into smaller time-sliced activities

™

Revision of the employee model

™

Revision of the employee model

ƒ

Skill model

• The level of skill is measured as a number between 0 and 5

• A skill can be obtained during a project through training

– Proficiency p = min{p0 + u x trainingTime, 5}

» pp00: proficiency at the beginning, u: learning speedp y g g g p

ƒ

Experience model

• Considered effect from on-the-job training related to tasks

Experience e = min{e + u x taskTime 5} – Experience e = min{e0 + u x taskTime, 5}

ƒ

Productivity of an employee for a task t:

5

5

+

s

S(t) s t

p

e

2

(7)

Specification of the new model (2/6)

p

( / )

™

Assignment scheme in time-line based model

ƒ

Employee can partially participate in each time slot

(0% 25% 50% 75% 100%)

(8)

Specification of the new model (3/6)

p

( / )

™

Revision of the employee model (Cont’d)

C

ti

d l

di

t

ti

ki

ƒ

Compensation model according to overtime working

Payment= Salarynormalxh% (0≤h≤100)

Salarynormalx100% + Salaryovertimex(h-100)% (100<h≤hmax)

∞ (hmax<h)

• Purpose: integrating different objectives with one measure - cost

(9)

Specification of the new model (4/6)

p

( / )

™

Revision of the task model

D dli

i

ƒ

Deadline issues

• By imposing penalty when a task exceeds the deadline

– M is finished time of a task – M is finished time of a task

ƒ

Maximum headcount

• Setting the limit of the number of employees who can work together

ff i l f i k

effectively for a given task

– Using COCOMO equation related to the ordinary number of developers »

– In this study, the team size is simply doubled » max (1, round(2/3 x PM0.672))

(10)

Specification of the new model (5/6)

p

( / )

™

Procedure to decide the fitness of an assignment

Aft

ti

l ti

b

t ti

ƒ

After creating a new solution by mutation or crossover,

Initialize skill proficiency and task

experience for each employee Start All tasks finished? Time_Unit = 1 Fitness:=Payment +Penalty Yes

Apply heuristics to avoid infeasible assignments No Return fitness infeasible assignments Calculate payment Time_Unit =Time_Unit+1

Calculate the degree of completion for each task

Adj t kill fi i d t k

(11)

Specification of the new model (6/6)

p

( / )

™

Procedure to decide the fitness of an assignment (cont’d)

H

i ti

t

id i f

ibl

i

t

ƒ

Heuristics to avoid infeasible assignments

• 1. Eliminate employees assigned to finished tasks

• 2. Eliminate employees assigned to untimely tasks using task p y g y g dependencies

• 3. Eliminate unsuitable assignments according to skill matching

• 4 Eliminate unavailable employees4. Eliminate unavailable employees

• 5. Eliminate contractors from training tasks

• 6. Limit employee training

E l ith fi i th 4 5 t d t b t i d – Employees with proficiency more than 4.5 are not supposed to be trained

• 7. Adjust workloads of overly participating employees

– If they exceeds the maximum value of overtime (invalid)

(12)

Experiments (1/2)

p

( / )

™

Experimental design

E l t th fit

b

i

t ’

i

t

ƒ

Evaluate the fitness by comparing experts’ assignment

• An artificial project environment was created

– Consists of 15 tasks, 10 employees, and 5 skills

• Two experts with experience of more than 20-years joined this experiment

– Expert 1 tried to optimize schedulep p

(13)

Experiments (2/2)

p

( / )

™

Result

Cost (Fitness) Time spent

This approach 527104 (best:385818) 33 min. on average

Expert 1 546353 3 hours* on average

Expert 1 546353 3 hours on average

(including time to

understand the project)

Expert 2 559920

ƒ

Allocation from this approach showed better fitness than those

from the two experts

• Best cost can be treated as a lower bound of project cost, p j , and the assignment can be an useful reference to managers

(14)

Related work

This paper Duggan’s (2004) Ngo-The’s (2009) My approach

Minimize cost of a Optimize schedule Maximize business Generate practical Goal Minimize cost of a software project Optimize schedule and quality in

implementation Maximize business value in release planning Generate practical allocation with considering constraints Unit of allocation A time-sliced task A package in Impl. phasep p A time-sliced phase for each module A phase for each module Optimization

Algorithm algorithm(GA)Genetic GA programming)+ GAILP (integer linear Simulated annealing Productivity for

modules (b O id i O X O modules (by considering

skills for tasks)

Productivity for phases N/A O O Consideration of f j Effect of learning i Continuity of allocation, Sharing developers b software project characteristics Effect of learning,

Team size Team size X between teams, Team size, Expert allocation Guideline for

estimating productivity X X X O estimating productivity

Supporting co-work O O X O

(15)

Conclusion

™

Contribution

P

d GA b

d

h d li

h

ƒ

Proposed GA-based scheduling approach

• Supported more fine-grained optimization of allocation using time-lines

• Incorporated dynamic nature of software projectsp y p j

– Considered training and experience gained in the project

ƒ

Can guide project managers in scheduling software projects

™

F t

k

™

Future work

ƒ

Improving system dynamics modeling for software projects

ƒ

Improving representation of skills employees and tasks

ƒ

Improving representation of skills, employees, and tasks

ƒ

Dealing with various relationships of task dependency

(16)

Discussion

™

Pros

C

id i

ff t f l

i

i

h d li

ft

j t

ƒ

Considering effect of learning in scheduling software projects

ƒ

Enabling fine-grained optimization using time-lines

™

Cons

™

Cons

ƒ

Unrealistic situation may occur from using this approach

• “Working -> training -> working->…”

• Continuity of allocation is not supported

– Employees can be frequently exchanged among tasks

» Increase overhead due to understanding tasks and context changesIncrease overhead due to understanding tasks and context changes

ƒ

No consideration of skill improvement from on-the-job training

ƒ

In experiment,

• Unfair evaluation in the comparison with expert results

– Comparison is conducted using cost, but experts focused on the schedule

• No validation of practicality of allocation resultsp y

(17)

Q & A?

Q

References

Related documents

In regressing the data which are all found to be stationer, the VAR model hence continued to analyze the causalities of the variables. This study found that only GDP that caused

In medical education, the development of critical thinking skills is accomplished by providing clinical experience to even the novice learner through case- based learning,

Ineligible downfield on a pass: If an offensive lineman goes too far past the line of scrimmage before the quarterback throws the ball, he is an ineligible player downfield, and

As discussed earlier, most Web retrieval applications only use traditional neural network models in a way similar to those used in other information retrieval systems. The

In a few cases, the principal was not available during the assessment team’s visit. The study team addressed this in each case by meeting with the principal at a separate time

From the results of the study, it can be concluded that the organizational culture has a positive and statistically significant effect on the performance of employees of

Enterprise asset management is the business processes and enabling information systems that support management of an organization's assets, both physical assets,

The objectives of the three year study are to raise awareness of the existence of high levels of communication apprehension among at least one sixth of students and to develop