Software Project Management
Hanchate and Bichkar
Software Project Management by 3DBGAEVA Dinesh B. Hanchate (1) and Rajankumar S. Bichkar (2) (1) Department of Computer Engineering. Vidyapratishthan’s College Of Engineering. Baramati. Pune (India) E-mail:
[email protected] (2) Department of Electronics. G. H. Raisoni College of Engineering & Management. Wagholi. Pune (India) E-mail:
[email protected]
ABSTRACT
Pe Tr rt P ia D l F
The Earn Value Analysis (EVA) with factors like EV (Earned Value), CV (Cost Variance), BV (Budget Variance), SV (Schedule variance) are useful in any project management. This paper shows how EVA can be useful for Software Project Management (SPM) for making rescheduling, target scheduling of software project and in Software Cost Estimation (SCE). We propose Software Project Management (SPM) using 3DBGAEVA (3 Dimension Breeder Genetic Algorithm Earn Value Analysis) approach. It is used to optimize the scheduling by some objectives and constraints given by EVA and Software Project Scheduling Problems (SPSP). Various results with different crossover, selection and mutation with real valued chromosome are studied for getting different costing and schedule by proposed 3DBGAEVA approach. The skill development principles by training and learning method are also used to get an effective schedule and reschedule.
eX
Keywords: COCOMO-II, Project Scheduling, Skill Development, Software Cost Estimation, 3DBGAEVA.
1- INTRODUCTION 1-1 PERSONNEL APPROACH
FACTORS,
COCOMO-II AND
PROPOSED
According to COCOMO intermediate model [1], we have 17 cost drivers also called as effort multipliers. These effort multiplier‘s values are dependent on not only the SDLC phases but also on 4Ps [2]. Out of 17 multipliers, the personal factor multipliers are 5 to 6 in number (Depending upon the COCOMO models. One of the project effort multipliers i.e. TEAM is really useful to do the adjustment in the efforts required to change according to the quality of the Full time Software Professional (FSP). Nearly, 30% effort multipliers do effect directly and indirectly on the cost of projects. Quality people certainly make difference in effort multipliers for the projects and that to from 10% to 50%. If we want to use normal scale FSPs, we require to put the employee on the bench mark. If we change the EMF to upward direction i.e. from normal to very excellent then effort multiplier comes down to 0.75 factors. Ultimately, we require less time. It is exactly reverse when we go downwards i.e. nominal to very low. It means effort multiplier goes up to 1.60 or more than that requires nearly double duration to complete
3
Int. J. of Software Engineering, IJSE Vol.9 No.2 July 2016
the task and project in hand. So, we want to emphases here that not only number of members in the team, but also, quality of team members makes a difference in the project cost and duration. These adjustment factors are nearly 30% to 40% dependent on live project resource i.e. human being. We use this useful resource for our project to make it successful. Some of the multipliers like language experience are dependent on the experience of the FSP. Every personnel factor and other one TEAM multiplier are dependent upon the experience, capability and continuity of the knowledgeable person i.e. programmer, system architect, coder, manager etc. Ultimately, the cost of the project moves according to the effort multiplier of personal factors of COCOMO model. The COCOMO effort multipliers of personal factors, types of skills and their proficiency and speed are interrelated with each other. Hence, all these factors as employee properties are used to find the optimum solution using our approach i.e. 3DBGAEVA.
Pe Tr rt P ia D l F
Personnel factors have the strongest effect on effort required to develop software as compared to other cost drivers. These ratings are most likely to change during the course of a project reflecting the gaining of experience or rotation of people on and of the project [3] [4]. Personnel factors rank the development teams’ capability and experience but exclude the individual aspect.
1-2 BRIDDER (ARTIFICIAL) GENETIC ALGORITHME
eX
The personal factors, COCOMO-II and proposed approach are interrelated to each other and is the objective of this paper in which locus in GA plays an important in chromosome dimension in proposed approach, 3D chromosome gives the 3 dimensions i.e. Time, Months and Employee (as shown in Fig. 1). This breeder genetic algorithm (Mhlenbein and Schlierkamp-Voosen, 1993; Mhlenbein and Schlierkamp-Voosen 1994) or the breedN strategy is based on quantitative genetics [5]. It assumes an imaginary breeder who performs a selection of the best N strings in a population and breeds among them. Mhlenbein (1994) comments that GA is based on natural selection and breeder GA is based on artificial selection. Another popular reproduction strategy is the parallel genetic algorithm (Mhlenbein et al. 1988; Mhlenbein 1991), used for employs parallelism. In parallel GA, a number of populations evolve in parallel but independently, and migration occurs among the populations intermittently. A combination of the breeder GA and parallel GA is known as the distributed breeder genetic algorithm (Mhlenbein and Schlierkamp-Voosen 1993). In a comparison between parallel GA and breeder GA, Mhlenbein (1993) states that parallel GA models evolution which self-organizes but breeder GA models rational controlled evaluation. We used the mathematical framework (applied before the Breeder Genetic Algorithm (BGA) [6]) which was designed according to the theories and methods used in the science of livestock breeding.
4
Software Project Management
Hanchate and Bichkar
1-3 DAG MODEL There are number of variations in the generic DAG model. More important variations are preemptive scheduling vs. no preemptive scheduling, parallel tasks vs. non-parallel tasks and DAG with conditional branches vs. DAG without conditional branches. In preemptive scheduling, an execution of a task may be interrupted so that an unfinished portion of the task can be reallocated to different employees (Chen and Lai1988b; Gonzales and Sahni 1978; Horvath 1977; Rayward-Smith 1987). We have used preemptive scheduling in our proposed approach. This paper addresses some issues, these are
SPM [12] and skill Management [7]. Significance of 3 dimensional Brider GA [8] i.e. 3DBGA approach. Effect of different crossovers [9], mutations, selection on the solutions.
eX
Pe Tr rt P ia D l F
The paper is arranged as follows Section 1 is related with the introduction part of EMF, BGA and DAG (Direct Acyclic Graph). Section 2 gives the idea about TPG and how it has to be used as input. Section 3 discusses about the Problem Definition [10]. Section 4 gives the brief idea about how EVA is useful for proposed approach. Section 5 emphasizes on topological order and it’s important in finding the critical path. Section 6 gives the structural representation of fields to be used in the chromosome. Section 7 imparts data to be used for proposed approach such as various skill proficiencies. Section 8 describes the operations of proposed 3DBGAEVA approach with algorithm Section 9 gives the research variables and their heuristics used in the paper. Section 10 lights the importance of the training and it’s alternatives for the schedule. Section 11 gives idea of how one should calculate the fitness. Section 12 gives the results and its discussion for example project taken. Section 13 represents the solution. Section 14 gives the approach of parallel training and its result. Section 15 gives the brief scenario of result of different type of crossover.
2- TPG The TPG shown in the Fig. 1 is used for the maintaining the topological order and correct sequence of tasks in the project. The tasks precedence must be maintained by topological order or sequence. The topological order and
5
Int. J. of Software Engineering, IJSE Vol.9 No.2 July 2016
eX Pe Tr rt P ia D l F
concurrent task completion must be maintained to get the minimum duration and cost without an overrun.
Fig. 1. Task Precedence Graph (TPG): precedence relation between nodes i.e. task. This TPG is used as input for proposed approach
3- THE PROBLEM DEFINITION
A complete project can be represented by a Directed Acyclic Graph (DAG). G(V, ED), where V is a set of v nodes and ED is a set of ed directed edges. A node V in the DAG [10] represents a task assigned to employees according to the TPG.
The edge (ni, nj) in the DAG corresponds to the transition from node
ni to nj which indicates task ni is to be done before the task nj. This precedence relation is shown in Fig. 1. The weight of node is taken as cost of the node and it is D(n i). The D(ni) indicates the duration for completion of task ni. The source node of an edge is called the parent or precedence node while the sink node is called the child or decedent node. A node with no parent is called an entry point, starting node of software project and a node with no child is called an exit point of the software project. Hereafter, the terms node and task are used interchangeably. The notations summarized and used throughout the paper are given in Table 3 [11] [12] [13]. The precedence constraints of a DAG dictate that a node cannot start execution before it gathers all of the sub activities from its parent nodes.
If task ni is assigned to some employees, then ST(ni)and FT(ni) denote the start-time and finish-time of task ni, respectively.
Let ETM [E, T, D] is 3-D array, where T, E, D are three dimensions of
6
Software Project Management
Hanchate and Bichkar
this ETM array. T, E and D arerespectively Task, Employee and Duration. (But, we have taken M as unit of months for duration D in our approach) Let E=1: e, T=1: t, D=1: d and G= 1: g, where t, e, d, and g be the number of tasks, employees, durations & generations, respectively. Let DU(T, E) be an employee E devotion for completion of task T (% of work done by employee E for the task T) and converted to task duration D. Let ETMI [ E, T, M, I] be 4-D array of schedules forIth individual in generation G.
The communication cost between two employees assigned to the same task is used in direct cost (DC) in managerial adjustment [14].equations when they are part of a sentence, as in
Pe Tr rt P ia D l F
Algorithm1: Steps for Software project scheduling using 3DBGAEVA approach
eX
1) Development of WBS (Work Break Down Structure) a) Selection of each software task to be done. b) Selection of employees as per the requirement of task and the project. c) Calculation of each task duration by COCOMO-II model d) Costing of Each Task. 2) Development of Network Diagram along with TPG a) Deciding the precedence and dependence of every task. b) Deciding the parallel tasks [15]. c) Do repeat above steps for all the tasks. 3) Computation of total Duration DU. a) Sorting the tasks in Topological order [16]. b) Doing the left to right traversal for the Longest Path. c) Doing the right to left traversal for the Shortest Path. d) Doing the Constrained Optimization by 3DBGAEVA proposed approach to get the optimal path. The 3DBGAEVA is given in detail from next section onward with some algorithms and procedures. 4) Resource Allocation (Allocation of skilled and experienced employee) a) Taking into account the respective experience of employee. b) Calculate the each devotion DU by COCOMO-II model from the effort provided in configuration to convert in D. c) Calculate the 3DBGAEVA Duration D of each task T and get this duration nearer to COCOMO-II. 5) Earned Value Analysis: This analysis gives the CPI (Cost Performance Index) and SPI (Schedule Performance Index) parameters to make the project and schedule costing
7
Int. J. of Software Engineering, IJSE Vol.9 No.2 July 2016
difference to adjust the planning. 6) Check whether, all the hard and some soft constraints with CPI and SPI are met. if not then i) revisit the plan and repeat the above steps until all the hard constraints are met and/ ii) Nearly all soft constraints are satisfied. 7) End.
4- EVA (EARN VALUE ANALYSIS)
𝐶𝑉 = 𝐵𝐶𝑊𝑃 − 𝐴𝐶𝑊𝑃
Pe Tr rt P ia D l F
Since, EVA plays an important role in progress of the project with respect to time and cost [17]. After every week, month, year, EVA gives the expenditure did by the team at the cost of money in hand at the Budgeted Cost of Work Scheduled (BCWS). This can be observed from Fig. 2. BCWS is the sum of the budgets for all work scheduled to be achieved within a given time period. We can also see the extra money given to the project at Actual Cost of Work Performed (ACWP). The ACWP shows the costs incurred for work already done on a task. (1)
(2)
𝑆𝑃𝐼 = 𝐸𝑉/𝑃𝑉
eX
BCWP is also called as EV or expenditure on line project and money in hand at proposed baseline. ACWP is also shown in the project as money is added and needed after preplan of the projectto the baseline. In our approach, PV is taken as equivalent to proposed 3DBGAEVA schedule duration and EV is taken as COCOMO-II duration for the schedule.
𝐵𝑉 = 𝐵𝐶𝑊𝑆 − 𝐴𝐶𝑊𝑃
(3)
𝑆𝑉 = 𝐵𝐶𝑊𝑃 − 𝐵𝐶𝑊𝑆
(4)
The EVA graph in Fig. 2 shows the different ideas and directions to the PM. It gives how much project is behind and ahead of the defined schedule. It also imparts the SV and CV which are the indices for the performance of the complete project. It gives performance of the employee, time required to complete the tasks depending upon the scope of the project. Making the rescheduling of project till the completion of project is the main advantage of EVA.
8
Hanchate and Bichkar
Pe Tr rt P ia D l F
Software Project Management
Fig.2. Earn Value Analysis- showing SV, CV, cost, schedule, time, overspent and delay in the project under consideration.
ORDER
AND
ITS
USE
IN
PROPOSED
eX
5- TOPOLOGICAL APPROACH
Parallel use of employees as resources can be done as allocation for a task in one time slot as shown in the Fig. 3 and Fig. 4. Every employee has to give the % of devotion when it is allocated to task. These devotions may be defined as 0, 1, 2, 3 and 4 i.e. 0%, 25%, 50%, 75% and 100% respectively. This is also described by authors in [11] and [12]. If we do more granularity of devotion it becomes very small for less duration of task to be accomplished. But, when the project is very large, task duration is of course is also large. So, instead of increasing or updating the number of devotions or % of devotion, it will be better to keep the capacity unchanged for the large project duration DU and the capacity of employee is increased per devotion.So that, each sub schedule is the level as different node of Tasks to Employees allocation in parallel for topological sorted order. Traversing of graph is done by marking the levels to each node, by deleting the zero fan-in node.We make another sorted and leveled graph by adding in the list of topological sorter. This approach will not make the schedule complicated. As the project becomes large, the time slot changes from week to months, months to quarter and quarters to year in parallel. The dependency level changes in the same way and manner i.e. from week-wise to year-wise.
9
Pe Tr rt P ia D l F
Int. J. of Software Engineering, IJSE Vol.9 No.2 July 2016
Fig. 3. Illustration of Relation and derivation between, TPG, Topological sort, level, number of parallel lines, shortest, longest path and time slot and capacity of employee.
eX
6- FIELD DESCRIPTION AND STRUCTURE OF CHROMOSOME
3 DIMENSION
The field description and structure has been given in the Fig. 4 to show what type of encoding and decoding are used in the proposed approach. It is three dimensional structure of chromosome. Every chromosome has the employee, task and time unit as variables. These are not only dimensions but also, representation of chromosome in proposed approach. First circle in Fig.4 shows the diagrammatic representation of an individual in the population and Nth circle gives last individual in the population.
7- DATA FOR PROPOSED APPROACH The data in Table 1 and Table 2 is taken as input to our problem as these table show the properties of employee and task with CD (COCOMO-II Duration in months), respectively. Every task is required to complete within given effort with the head count calculated by COCOMO-II. The skills required to finish the tasks are also given in Table 2. Table 1 also shows the initial employee experience Ex.
10
Hanchate and Bichkar
Pe Tr rt P ia D l F
Software Project Management
Fig. 4. Field description and structure of individual used for 3DBGA approach
eX
Table 1. Input- Employee Description, Ei=Employee Id, Sal=Salary, Mh= Max Hours, Ex=Experience, Sp0=Learning Speed At Starting Of The Project. EI [18] 1
Sal
MH
Ex
Sp0
6000
150
4.8
1.5
2
5300
100
4.7
1.3
3
4800
100
4.6
1.3
4
5000
75
4.7
0.9
5
5000
50
4.6
1.1
6
5800
125
4.8
1.4
7
5800
100
4.8
1.5
8
5000
100
4.5
1
9
4600
75
4.3
1.2
10
5300
50
4.6
1.3
11
Int. J. of Software Engineering, IJSE Vol.9 No.2 July 2016
Table 2. Input -: Task Description, TID=Task Id, Ef=Effort, SD=Soft Deadline, HD=Hard Deadline, TS= Team Size (It Is Also Called As Mh I.E. Maximum Head Count), P= Penalty, DM=Duration In Months, DH=Duration In Hours. Ef 0 1
SD 0 8
HD 4 12
P 1000 1000
TS 2 2
DM 1.9 2.4
DH 304 384
3
1
12
15
2000
3
2.8
448
4 5 6 7 8 9 10 11 12 13
0 1 1 0 0 0 1 1 0 1
0 0 0 0 24 0 0 0 0 0
0 0 0 0 32 0 0 0 0 0
0 0 0 0 2000 0 0 0 0 0
3 3 3 2 2 2 2 2 2 3
1.9 2.5 2.4 2 2.2 1.9 2.4 2.4 1.9 2.8
304 406 384 323 355 304 384 384 304 448
14
1
40
52
3000
1
2.4
384
15
1
52
60
5000
3
3
480
Pe Tr rt P ia D l F
TID 1 2
Skills 1, 3 2, 3, 5 1, 2, 4, 5 1, 2 1, 3 3, 4 2, 4, 5 2, 3 2, 4 4, 5 1, 3, 5 2, 4 2, 3, 4 1, 2, 3, 5 2, 3, 4, 5
Table 3. Notation and Meaning Used.
eX
Notation ACWPE ASP ASP0
Meaning Actual Cost Work Performed Average Skill Proficiency Initial ASP (Average Skill Proficiency)
BCWPE BCWS BV CV DC
EV or budgeted cost performer Budget cost work Schedule Budget Variance Cost Variance Direct Cost
DU
Employee’s Devotion
EC
Employee Count
EF
Employee Fitness
ET
Employee Training
ETM
3 Dimension Scheduling array
ETMI
4-D scheduling array with chromosome
Ex
Employee Experience
FSP FT
Functional Skill Proficiency Final Time
L(t)
Learning speed of time unit t.
LDU
Learning duration
12
Software Project Management
Hanchate and Bichkar
Maximum duration
MM
Man Months
PM
Person Months
PTP
Personal Trait Proficiency
RFSP
Relative FSP
RPTP
Relative PTP
RTSP
Relative TSP
S
Skill
SLOC
Standard line of code
SN
Skill Number
ST
Starting Time
TEF
Total EF, Productivity
TPG
Task Precedence Graph
TS TSP
Team Size Technical Skill Proficiency
TT TU
Pe Tr rt P ia D l F
MDU
Total Training Time Unit
eX
The respective skills and their notations are given in Table 4. The tasks in the project require some of these skills. This has been given in the Table 5. Unless until any employee doesn’t possess these skills required for that task, project manager cannot assign the task to the employee. Table 4. Skill Notation And Skills
Skill Notation TSP1 TSP2 TSP3 TSP4 TSP5 FSP1 FSP2 FSP3 FSP4 FSP5 PTP1 PTP2 PTP3 PTP4 PTP5
Skills Communication Planning Organizing Managing Analyzing Programming Graphical Design Speaking language Leisure Hobbies Sociable Competent Patient Meticulous Dependable
13
Int. J. of Software Engineering, IJSE Vol.9 No.2 July 2016
Table 5. Tasks And Required Skills For Each Tasks Are Given. We Can Assign Amount Of Scale From 0 To 5 As Initial These Proficiency Level Required For The Task to Complete The Project. (These Skills Are Mentioned In Table 4). Required technical, functional and personality skills [22] T1
TSP1
TSP2
TSP3
--
TSP5
FSP1
FSP2
--
FSP4
--
PTP1
PTP2
--
PTP4
--
--
PTP1
PTP2
--
PTP4
--
--
T2
--
--
TSP3
--
TSP5
FSP1
FSP2
--
-FSP4
T3
TSP1
--
TSP3
--
TSP5
FSP1
FSP2
--
FSP4
T4
--
--
TSP3
--
TSP5
FSP1
--
--
T5
TSP1
--
--
TSP4
TSP5
FSP1
--
--
T6
TSP1
--
--
TSP4
TSP5
FSP1
--
--
T7
--
TSP2
--
TSP4
TSP5
--
--
T8
TSP1
TSP2
--
--
TSP5
--
T9
--
TSP2
TSP3
--
TSP5
T10
TSP1
TSP2
TSP3
--
--
--
--
TSP3
TSP4
T12
TSP1
--
TSP3
TSP4
--
--
--
--
--
PTP1
--
--
--
--
FSP5
--
--
PTP3
--
--
FSP5
--
--
PTP3
--
PTP5
FSP3
--
FSP5
--
--
PTP3
--
PTP5
--
FSP3
--
--
--
--
PTP3
PTP4
PTP5
--
--
FSP3
--
--
--
--
PTP3
PTP4
PTP5
--
FSP2
FSP3
--
--
--
--
PTP3
PTP4
PTP5
Pe Tr rt P ia D l F
T11
PTP1
-FSP4 -FSP4 -FSP4
--
--
FSP2
FSP3
--
--
--
FSP3
T13
--
--
--
TSP4
TSP5
FSP1
--
--
T14
TSP1
TSP2
--
TSP4
--
FSP1
--
--
T15
TSP1
TSP2
--
--
--
FSP1
--
--
-FSP4 -FSP4
-FSP4 -FSP4 -FSP4
--
--
PTP2
--
PTP4
--
FSP5
--
PTP2
--
PTP4
--
FSP5
PTP1
PTP2
--
--
--
--
PTP1
PTP2
--
--
--
--
PTP1
PTP2
--
--
--
7-1 SKILLS AND CLASSIFICATION
eX
Skills can be divided into three types [19] [20] [21]: Technical (work) Content, Self Management and Personal Trait.
7-2 SKILL PROFICIENCY LEVEL OF AN EMPLOYEE Proficiency level value is taken as input scale according to the Table 6. Table 6. Input -: Proficiency Value Depending on The Level M. This Scale Is Used To Assign A Rating To An Employee For An Each Skill Required To Complete The Task. if Employee knows little about skill
0 to 1
if ESE< skilled than most people
1 to 2
if ESE= skilled as most people
2 to 3
if ESE> 45% most people
3 to 4
if ESE>> most people
4 to 5
The initial proficiency level of every employee is taken in the Table 7 and Table 8 taken as per the scale shown in Table 6 [10].
14
Software Project Management
Hanchate and Bichkar
7-3 TECHNICAL (WORK-SPECIFIC) SKILLS These are related to the specific job. These skills are not easily applied in other situations. These skills are to be technical and specialized. Table 7. Employees Initial Proficiency Level For TSP And FSP, Input: Taken as Organizational Skills (Assumed Data) TSP1
TSP2
TSP3
TSP4
TSP5
FSP1
FSP2
1
4.5
5
0
5
4.8
4.2
0
2
0
0
3.5
0
4.8
2.1
5
3
4.3
4
3.5
0
4.8
4
1
4
0
4.7
0
0
0
3
1
5
4.5
4
3.8
0
5
0
1
Pe Tr rt P ia D l F
EMP
6
0
4.5
4.3
4
0
3
0.5
7
4.5
4.8
5
0
0
4.5
2
8
0
0
0
4.5
4.6
3
5
9
0
0
3.9
4.8
0
2
3
10
4.7
4
0
3
4
3
1
7-4 FUNCTIONAL SKILLS (WORK-CONTENT)
eX
It requires specialized training to learn a particular procedure, process, or subject matter (e.g. programming in C++, graphic design, speaking any language like Hindi). To begin identifying employee’s work-content skills, it is needed to think of all theemployee studied topics, hobbies or leisure activities, past and current jobs, and subject areas about which he/she knows a great deal. While work content skills may not be easily transferable to other work settings, they can help other to identify favorite subjects that could be incorporated into your future career (e.g., learning other computer programs). These are acquired abilities and talents that are developed and refined by experience, education, and practice (e.g. problem solving, managing, public speaking, teaching, writing, researching). These skills are transferable and can be applied to a variety of jobs and careers [7].
7-5 PERSONALITY TRAITS (SELF-MANAGEMENT SKILLS) It can be thought of as personality or character traits, usually acquired early in life as you learned to adapt to your environment, get along with others, and manage your daily life (e.g. sociable, competent, patient, meticulous, honest, dependable). These skills are highly transferable to your work life and are essential to success on the job. The proficiency related to this is denoted by
15
Int. J. of Software Engineering, IJSE Vol.9 No.2 July 2016
PTP i.e. Personal Trait Proficiency. Table 8 shows initial functional and personal trait proficiency level of every employee. Table 8. Employees Initial Proficiency Level For FSP and PTP,Input: Taken as (Assumed Data) Organizational Skills FSP3
FSP4
FSP5
PTP1
PTP2
PTP3
PTP4
PTP5
1
1
0
0.4
0
3
0.5
3
2.6
2
2
4
0.8
1.05
4
2.75
2
3.2
3
2
4.3
0.4
0
1
2.75
2.15
2.6
4
2
1
5
1.5
4
1
0.5
2.5
5
1.6
3
0
2.25
4.2
0
3
2.5
6
0.8
1
4.5
1.5
3.6
2.55
2.5
3
7
0
8
4
9
1.4
10
5
Pe Tr rt P ia D l F
EMP
5
3
4.5
3.4
5
2.5
1.5
0.5
0.6
1.5
3.9
2
4
2.6
0.2
5
1
1.5
0
2.5
3.2
2
1
4.1
2.5
3
2.5
2.5
8- OPERATIONS IN 3DBGAEVA
eX
8-1 INITIALIZATION OF POPULATION
We have precisely made the defined structure of chromosome as per the problems requirement (shown in Figure 4 and 5). Field description of real values of variable time, capacity of employee and chromosome are set. The minimum time and capacity of employee are fixed to lower and upper bond. The optimistic and pessimistic values are set to lower and upper bond (LB and UB) for task duration, in turn the boundary values of both variables are made hard constraint. In other words, we have fixed the range of employee capacity and task duration before going into GA evaluation.
8-2 LINEAR FITTNESS SCALING 𝑓(𝑥𝑖 ) = 𝑎𝑓(𝑥𝑖 ) + 𝑏
(5)
where a is multiplier and b is adjustment factor [8]. Linear fitness scaling is done according to the above equation. Fitness is adjusted by multiplier factor a and adjustment factor b, so that fitness value doesn’t deviate from it’s maxima.
16
Software Project Management
Hanchate and Bichkar
8-3. ROULETTE WHEEL SELECTION The Stochastic universal sampling (Roulette wheel Selection) is carried out and used as per the following equation [14]. 𝐹(𝑥𝑖 ) =
𝑓(𝑥𝑖 ) 𝑁
𝑖𝑛𝑑 𝑓 (𝑥 ) ∑𝑖=1 𝑖
(6)
Fitness of any individual is based and dependent on the individual fitness and overall summation of all the individuals. It is implemented by obtaining a cumulative sum of fitness and generating equally spaced numbers between 0 to sum of all the fitness in pool.
9- RESEARCH VARIABLES, OBJECTIVES, CONSTRAINTS AND HEURISTICS
Pe Tr rt P ia D l F
9-1 GETTING THE VALUE OF GENE WITHIN THE CAPACITY OF EMPLOYEE Following equation gives the capacity of employee with (s)he works in the team. 𝐶𝐸 = EC [E, Limit] (7) 𝑊ℎ𝑒𝑒 𝐸𝐶 𝑖𝑠 𝑒𝑚𝑝𝑙𝑜𝑦𝑒𝑒 𝑐𝑎𝑝𝑎𝑐𝑖𝑡𝑦 𝑎𝑟𝑟𝑎𝑦 𝑓𝑜𝑟 𝑒𝑣𝑒𝑟𝑦 𝑒𝑚𝑝𝑙𝑜𝑦𝑒𝑒 𝐸 𝑤𝑖𝑡ℎ 𝑖𝑡 ′ 𝑠 𝐿𝑖𝑚𝑖𝑡 𝑎𝑠 𝑎𝑛 𝑈𝐵.
eX
Where, E = 1: e, e= Number of employees in the project. Here, restriction on the devotion of an employee is done by putting the Upper Bond (UB) as the upper limit. If someone want to have overloading with some percentage, one can assign the value of UB as UB = 𝐶𝐸 + OP × 𝐶𝐸
(8)
Where OP is overloading percentage. The time unit for proposed approach is taken as hours for the sake of calculation. One can take time unit as hour, week, month, quarter and year as per the size of the project. Algorithm 2: 3DBGAEVA proposed approach // 3D chromosome structure is defined as ETM [E, T, M] where E =1:e; T = 1:t; M = 1:m. (Pls, Refer Section-II) // MAXGEN, GGAP, FieldDR, 3DBGAC and CC are maximum no. of generations, generation gap, field description according to Figure 4 and Figure 6, cost obtained by proposed approach and cost calculated by COCOMOII, respectively. //Objective function ObjVSel returns fitness value of all individuals in ObjVSel array. 1. ObjVSel = ETMI (ETM[e, t, m] , id)
17
Int. J. of Software Engineering, IJSE Vol.9 No.2 July 2016
// I= 1: id, id is number individuals in one generation //Input parameters are chromosomes and size of chromosome // Algorithm returns fitness value of individuals.
Pe Tr rt P ia D l F
While {𝑔𝑒𝑛 ≤ MAXGEN& 3𝐷𝐵𝐺𝐴𝐶 ≤ CC & 𝑆𝑃𝐼 ≥ 1} do 𝑎. RankedFitness = ranking(ObjVSel) //Ranking according to fitness b. NextChromosomes = select(′Types of selection′, id, ObjVSel , GGAP) // Stochastic universal is taken for selection (Section 8.3) and GGAP is set to 0.9 to get 10% multiple elitism with Brider GA in single population. 𝑐. NextChromosomes = Recombin(Types of Crossover′, NextChromosomes, Pc) //Recombination by various crossover methods (Shown in Table 11) are done by keeping value of crossover rate, Pc=0.5 to: 0.9. 𝑑. NextChromosomes = mutbga(NextChromosomes, FieldDR ) // e. [id, Nv] = Size (NextChromosomes) // f. ObjVSel = 3DBGA(NextChromosomes, id) // Doing mutation of real valued chromosome according to the Figure 5; 𝑔. 𝑖𝑑 = Reinsertion(id, NextChromosomes) //Reinsertion of new chromosome in the next pool of generation; ℎ. 𝑔𝑒𝑛 = 𝑔𝑒𝑛 + 1
9-2 MAKING FACTOR ZERO
eX
//Before assigning any working hours to employee for the task in the time unit, all //assignments are made zero as per algorithm 3.
9-3 KEEPING VALUES OF TASK DURATION IN BETWEEN UB AND LB The algorithm 4 [16] gives the random devotion value in between LB and UB as mentioned in the Fig. 5 of chromosome structure. Here in this algorithm, 24hrs is taken as fixed value and represents compulsory hours to be worked in one month time unit i.e.LB. 24hrs is for 3 days (as 1 day is of 8 hours) to every employee.
18
Software Project Management
Hanchate and Bichkar
9-4 BREEDING G.A. AND REPAIRING GENES
Pe Tr rt P ia D l F
The algorithm 5 does the assignment if the task is in the TPG and in the topological sequenced order. It uses gene repairing technique [17].
eX
9-5 MAINTAINING HEAD COUNT
Randomly, the skilled employee E is chosen for the task T and the team of employees is formed in which every employee has skills required for the task T. The Head Count (HC) is maintained by comparing with COCOMO-II HC calculated [12] [23] (in the Table 2 of task properties). Head count is maintained to get the approximately same effort in the proposed algorithm 6.
19
Int. J. of Software Engineering, IJSE Vol.9 No.2 July 2016
9-6 ELIMINATING TASK
10-
Pe Tr rt P ia D l F
If Employee proficiency after month (Time Unit) is beyond the upper limit 4.5 and if devotion of employee E to the task T in month M in generation G and if further training for that employee E for skill S is not required and if total hours worked per month is going beyond Monthly Capacity of Employee, MCE as an UB then eliminate the task from the assignment. MC E is monthly CE(as we have taken time unit as hours and month). Skilled employees assigned to the specified tasks are taken and others are eliminated from the tasks assignment.
TRAINING OF EMPLOYEE
eX
10-1 NEED OF TRAINING AND THEIR ALTERNATIVES Training to the employees for increasing their proficiency is badly needed for the skills which they didn't work in the professional life [24] [25]. Adding the employee in the project during the project, it costs more for any industry. If we decide to give the training in between the assignment of employees for the tasks, that gives context switching problem for PM. If PM do more context switching, employee cannot concentrate more on tasks rather they will do the classical mistakes [28] which in further increases the problem in the projects. These classical mistakes always cost organization. The example of error and it’srate calculation are given in Appendix.
10-2 ALTERNATIVES OF TRAINING
Giving training to employee at the beginning of the project.
Giving training to employee whenever they are free or waiting for resources or waiting to complete the tasks [29]. Giving training to the trainer in the team so that he/she can train to all in team members.
We may apply both the principles. We have results of the 1 st one which tells us to give the training in group for a particular time slot or depending upon
20
Software Project Management
Hanchate and Bichkar
employee’s capacity of learning speed. First alternative is followed to find the schedule so that, we can keep the following both principles alive.
One is, at the most 25 to 30 % time as project's training period should be taken. Second one is reducing the communication gap by adding all the employees at the same time to start with their own skill levels M (Initial Skill level is M0 i.e. ASP0) and join the team work after achieving sufficient skill proficiency and having experience more than 4.5 scale.
10-3 MODELING OF TRAINING EMPLOYEE The Total Hourly Training of an employee E is TTH for the skill 𝑆𝑘 for particular task 𝑇𝑝 after some hours H and can be calculated as 1
∑ℎ𝐻=0
𝑇𝐻[𝐻, 𝑆𝑘 ] (9)
Pe Tr rt P ia D l F
𝑇𝑇𝐻[𝐸, 𝐻, 𝑇𝑝 , 𝑆𝑘 ] =
𝑇𝑈
where TH is Training hours. Total Learning Duration TLDU after some hours H of employee E for the skill 𝑆𝑘 for the task 𝑇𝑝 to be trained is taken as 𝑇𝐿𝐷𝑈[𝐸, 𝐻, 𝑇𝑝 ] = ∑ 𝑇 𝑇𝐻[𝐸, 𝐻, 𝑇𝑝 , 𝑆𝑘 ]
(10)
𝑇𝑝 𝜖𝑇𝑆𝑘
eX
where𝑇𝑆𝑘 is set of tasks for employee E to be trained for skill 𝑆𝑘 .Then initial average skill Proficiency level 𝑀0 is calculated by 𝑀0 =
𝐹𝑆𝑃0 +𝑃𝑇𝑃0 +𝑇𝑆𝑃0 3
(11)
where 0 in above equation indicates starting point of the project, 𝐹𝑆𝑃0 , 𝑃𝑇𝑃0 , 𝑇𝑆𝑃0 are respectively an initial functional Skill Proficiency, an Initial Personnel Trait (Self-Management) proficiency and initial Technical Skill Proficiency. M, average skill proficiency level of employee E, after some hours H i.e after𝜏 . 𝜏is the duration from starting of learning of task 𝑇𝑝 up to the some hours h. 𝑀[𝐸, 𝑇𝑝 , 𝜏] = 𝑚𝑖𝑛(𝑀0 + 𝐿(𝜏) ∗ 𝑇𝐿𝐷𝑈, 5)
(12)
where, L(𝜏)⇒ Employees learning Speed at Time 𝜏. An Employee experience at 𝜏 is given by 𝐸𝑥[𝐸, 𝑇𝑝 , 𝜏] = max ( 𝑀[𝐸, 𝜏] + (
𝐿(𝜏) 𝑇𝑈
∗ 𝑓𝑟𝑎𝑐𝑡𝑇𝑖𝑚𝑒),5)
(13)
where TU is time unit as an UB and is of 160 hrs/month. Proficiency and
21
Int. J. of Software Engineering, IJSE Vol.9 No.2 July 2016
experience are changing after every time unit as the learning speed and skills are also changing with respect to time.
11- CALCULATING FITNESS BY EMPLOYEE SKILLS, SPEED AND EXPERIENCE Relative personal trait Proficiency of Employee, RPTP, is given by 𝑓𝑜𝑟
𝐸=1⋯𝑒
⏞ 𝑃𝑇𝑃[𝐸, 𝑆, 𝜏) 𝑅𝑃𝑇𝑃[𝐸, 𝜏] = ∏ 5
(14)
𝑆𝜀𝑆𝑃𝑆𝑃
Pe Tr rt P ia D l F
Relative functional skill proficiency, RFSP, is given by 𝑓𝑜𝑟
𝐸=1⋯𝑒
⏞ 𝐹𝑆𝑃[𝐸, 𝑆, 𝜏) 𝑅𝐹𝑆𝑃[𝐸, 𝜏] = ∏ 5
(15)
𝑆𝜀𝑆𝐹𝑆𝑃
Relative technical skill proficiency, RTSP, is given by 𝒇𝒐𝒓 𝑬=𝟏⋯𝒆
⏞ 𝑻𝑺𝑷[𝑬, 𝑺, 𝝉) 𝑹𝑻𝑺𝑷[𝑬, 𝝉] = ∏ 𝟓
(16)
eX
𝑺𝜺𝑺𝑻𝑺𝑷
where, 𝑆𝑃𝑆𝑃 , 𝑆𝐹𝑆𝑃 , 𝑆𝜀𝑆𝑇𝑆𝑃 are the set of skills required for task 𝑇𝑝 . An Average Skill Proficiency, ASP for employee E at 𝜏, is given by Es
𝑹𝑻𝑺𝑷[𝑬, 𝝉] + 𝑹𝑭𝑺𝑷[𝑬, 𝝉] + 𝑹𝑷𝑻𝑷[𝑬, 𝝉] 𝑨𝑺𝑷[𝑬, 𝝉] = ( ) ⏟ 𝟑 𝒇𝒐𝒓 𝑬=𝟏⋯𝒆
Relative experience for each employee E for task T, RETE, is given by
𝑹𝑬𝑻𝑬[𝑬, 𝑻𝒑 , 𝝉] = ⏟ 𝒇𝒐𝒓
𝑬𝑻𝑬[𝑬, 𝑻𝒑 , 𝝉] 𝟓
(17)
𝑬=𝟏⋯𝒆
Productivity𝜚(𝑖. 𝑒. 𝐹𝐸[𝐸, 𝑇, 𝜏])of an employee E for a task T (the overall fitness of employee E for this task T) 𝑓𝑜𝑟 𝐸=1⋯𝑒 ⏞ 𝐴𝑆𝑃[𝐸, 𝜏] + 𝑅𝐸𝑇𝐸[𝐸, 𝑇, 𝜏] 𝐹𝐸[𝐸, 𝑇, 𝜏] = (18) 2
22
Software Project Management
Hanchate and Bichkar
Total Employee fitness TEF for the task T after Time unit 𝜏 i.e. effort is taken as 𝑒 𝐸𝑓𝑓𝑜𝑟𝑡[𝑇𝑝 ] = Σ𝐸=1 𝐹𝐸[𝐸, 𝑇, 𝜏] (19) Where E ϵ Es𝑇𝑝 | Employee E posses skills s ϵ
S
required for Task 𝑇𝑝 .
A total effort calculation for the project is given by
𝒕
(20)
𝑬𝒇𝒇𝒐𝒓𝒕 = ∑ 𝑬𝒇𝒇𝒐𝒓𝒕[𝑻𝒑 ]
12-
Pe Tr rt P ia D l F
𝑻𝒑 =𝟎
RESULTS AND DISCUSSIONS
eX
The Fig. 5 shows the Gantt chart. It shows how we get the results in terms of duration for every task, employee assignment to the task, task precedence, floating time and total project duration. It also shows the (ni) and FT(ni) i.e. starting and finishing time of every task with their thresholds. It gives idea to PM how one can do the work parallel with proposed approach shown in Fig. 3 and Fig. 4. For our examples it
Fig. 5. This gantt chart shows the critical path, 3dbga task duration, assignment of employee to the tasks and TPG
23
Int. J. of Software Engineering, IJSE Vol.9 No.2 July 2016
takes nearly 8 months to complete the project. Project can be started from the January and end at 1st Week of September.
Pe Tr rt P ia D l F
Fig. 6 gives the relation between Population Size PS and fitness of the chromosome in the population. The variable PS, fitness are certainly related with each other, which also relates to the normal factor of COCOMO-II drivers. All these EMF will be at the value of 1.0. We keep all the quality EMF at normal values and level, the cost and time proposed, calculated, predicted and guessed gives the combination and cohesion of normal EMFs. Normal means all the cost drivers values are 1.0.
eX
Fig. 6. Step wise execution of Population size Vs Mean and Best Fitness for 10E15T i.e. 10 Employees and 15 Tasks example.
On other hand, Table 9 and Fig 7 gives idea about how the fitness gets improved as we go from lower generation numbers GN to higher GN. Table 9. Generation (step wise execution) and Fitness (Best and Mean) GN
Best:
Mean:
50
404903
697327
100
406555
709582
150
339732
689506
200
414109
773765
250
375688
693445
300
352329
704699
350
338191
666926
400
381624
758163
450
386677
763394
500
348271
752934
24
Hanchate and Bichkar
Pe Tr rt P ia D l F
Software Project Management
Fig. 7. Step wise execution of Generations Vs Mean and Best Fitness
eX
The graphs in Fig.6 and Fig.7 also show the trend line. This trend line goes down as population and size of pool both increase in size. As we progress to the more and more population size, we get the more and more fitter individuals. Same way, it is applicable to the number of individuals in populations and fitness. But, we have got best result for population size 30. Fig.8 and Fig.9 show the normal time and cost as per the EMF quality factor. Normal cost and normal time give task duration and it’s costing at Normal EMF quality factor. We get the crash time when we use the quality FSPs but the cost will have to go down but the quality people and other quality factors increases the cost of project too. The graph shows only the cost which depends on the time of the task. We have not considered other costs at Budgeted at cost (BAC).
Fig. 8. Crash and Normal Time
25
Int. J. of Software Engineering, IJSE Vol.9 No.2 July 2016
eX
Pe Tr rt P ia D l F
Fig. 9. Crash and Normal Cost
Fig. 10. Cost Slope achieved for given input
Generally, more quality oriented EMFs and concerned factorsresults in less time but took more cost. The EMF values went down up to the level of 0.86 approximate value. Fig.8 shows the crash and normal time achieved by proposed approach. The Fig.9 shows the normal and as well crash cost of the resulted project. The Fig. 10 gives the cost slope for the project achieved in our example project. The graph in Fig. 11 gives ratio of expenditure to be made and cost to be expedited when the time is short and the time is used with normal EMF value.
26
Software Project Management
Hanchate and Bichkar
Fig. 11. 3DBGA duration on Horizontal line1, CD on Horizontal line2, OD on Horizontal line3, PD on Horizontal line4.
Pe Tr rt P ia D l F
Fig.11 also shows the COCOM0-II calculated duration CD, Optimistic duration calculated as per the formula used in authors’ paper in [11, 12, 17]. The proposed 3DBGAEVA duration is obtained and shown on horizontal line 1. Other durations like CD, OD and PD shows that the obtained duration 3DBGAEVA is within the range of CD and OD. Table 10. Comparative Charts of All Durations, y= 3DBGAD, CRT=Crash Time, z = 3DBGAD+ Topological sorting order T1
T2
E1
150
E2
0
T3
190
T4
T5
T7
T9
T6
0
0
188
0
0
0
0
144
0
143
100
150
157
0
0
0
0
0
0
164
0
144
0
0
0
131
E5
150
0
144
0
137
0
150
150
E6
0
0
0
144
0
125
0
0
E7
0
0
0
0
164
0
53
0
E8
0
0
144
0
0
0
0
0
E9
147
0
0
0
0
0
53
0
E4
eX
0
144
E3
0
0
0
144
0
0
56
0
0
Y
447
498
589
432
489
324
356
431
CD
304
384
448
304
406
384
323
355
OD
395.2
499.2
582.4
395.2
527.8
499.2
419.9
461.5
PD
486.4
614.4
716.8
486.4
649.6
614.4
516.8
568
304
384
448
304
406
384
323
355
395.2
499.2
582.4
395.2
527.8
499.2
419.9
461.5
150
0
308
0
0
287
0
0
E10
CRT NDUR Z
27
Int. J. of Software Engineering, IJSE Vol.9 No.2 July 2016
Table 11. Comparative Charts of All Durations, here ND is NDUR T11
E1
0
0
E2
150
E3
T12
T13
T14
T15
THW
TMS
59
0
150
225
0
962
6.01
0
0
149
0
114
0
950
5.94
0
0
0
151
0
123
0
575
3.59
E4
0
0
151
0
0
0
150
740
4.63
E5
150
0
0
0
0
0
0
881
5.51
E6
84
150
42
0
125
0
0
670
4.19
E7
0
150
0
0
0
0
0
367
2.29
E8
83
70
0
40
149
0
150
636
3.98
E9
0
34
54
0
0
0
0
288
1.8
E10
0
0
54
0
0
0
201
455
2.84
467
CD
304
OD
395
PD
486
CRT
304
ND
395
Z
300
404
360
340
424
462
501
6524
40.8
384
384
304
448
384
480
5596
35
499
499
395
582
499
624
7274
45.5
614
614
486
717
614
768
8953
56
384
384
304
448
384
480
5596
35
499
499
395
582
499
624
7274
45.5
0
0
209
0
225
201
1680
10.5
eX
Y
T8
Pe Tr rt P ia D l F
T10
All the costs are (shown in the Table 12 and 13) obtained.Crash cost and 3DBGAC proposed cost are also obtained and mentioned in Table 12 and 13. The cost slope throughout the project indicates there is no sudden requirement of cost to be used for cover up an overrun or for deviating from the baseline in Fig. 9. Table 12. All The Cost And Comparative Charts of All Costs, CC= COCOMO-II Cost, CS= Cost Slop, x=3DBGAC, CR=Crash,NR=Normal T1
T2
T3
T4
T5
T7
T9
T6
E1
5625
7125
0
0
7050
0
0
0
E2
0
0
0
4770
0
4736.8
3312.5
4968.7
E3
0
4320
4710
0
0
0
0
0
E4
0
5125
0
4500
0
0
0
4093.7
E5
4687.5
0
4500
0
4281.2
0
4687.5
4687.5
E6
0
0
0
5220
0
4531.2
0
0
28
Software Project Management
Hanchate and Bichkar
E7
0
0
0
0
5945
0
1921.2
0
E8
0
0
4500
0
0
0
0
0
E9
4226.2
0
0
0
0
0
1523.7
0
0
0
4770
0
0
1855
0
0
11445
13750
E10
16570
18480
14490
17276
11123
9994
12624
14717
9986.4
13337
12614
10611
11662
CR
13992
17674
20604
13981
18672
17660
14855
16326
NR
12982
16399
19132
12982
17338
16399
13794
15160
304
384
448
304
406
384
323
355
395.2
499.2
582.4
395.2
527.8
499.2
419.9
461.5
153.41
153.41
153.3
153.3
153.3
153.3
153.3
153.3
CRT NDUR CS
Pe Tr rt P ia D l F
14539
CC
X
Table 13. All the Cost and Comparative Charts of all Costs T10
T11
T8
T12
T13
T14
T15
0
2212.5
0
5625
8437.5
0
0
0
4935.6
0
3776.2
0
0
0
4530
0
3690
0
0
4718.8
0
0
0
4687.5
0
0
0
0
0
0
5437.5
1522.5
0
4531.2
0
0
5437.5
0
0
0
0
0
2593.8
2187.5
0
1250
4656.2
0
4687.5
0
977.5
1552.5
0
0
0
0
0
E2
4968.7
E3
0
E4
0
E5
4687.5
E6
3045
E7 E8 E9
eX
E1
0
E10
0
0
1788.7
0
0
0
6658.125
X
15295
14040
11795
10716
14813
15904
16033.13
CC
9986.4
12614
12614
9986.4
14717
12614
15768
CR
13981
17660
17660
13981
20604
17660
22075.2
NR
12982
16399
16399
12982
19132
16399
20498.4
CRT
304
384
384
304
448
384
480
NDUR
395.2
499.2
499.2
395.2
582.4
499.2
624
CS
153.3
153.3
153.3
153.3
153.3
153.3
153.3
29
Int. J. of Software Engineering, IJSE Vol.9 No.2 July 2016
13-
PARALLEL TRAINING AND RESULT
Table 14 shows the parallel training of the employee during the project where assignment of the employee for the training period is decided depending upon the experience and proficiency level. Table 14 also shows which employee is assigned for how much periods for which skills. The first criteria of schedule satisfies that skill must be achieved during the project tenure by getting trained to achieve the certain proficiency level so that employee can enter in the project and can join the project as early as possible with L max< M > 2.0 at least (For the clarity of this equation, you may refer Appendix), where M is the initial proficiency level and it has to be greater than 2.0 to enter into the project. LF, LS, EF, ES indicates late finish, late start, early finish and early start respectively.
T2
110
66
1
2
E2
87
51
E3
29
49
1
3
E4
26
36
E5
46
42
E1
T3
T4
T5
T7
T8
Hrs
M
WD
Sk
0
0
24
0
0
200
1.3
28.9
3
4
1
2
1
4
94
72
49
38
42
433
2.8
62.7
1,2,4
79
37
84
35
31
344
2.3
49.8
4
4
1
3
4
3
50
54
50
70
71
357
2.3
51.7
1,3.4,5
33
45
27
28
40
261
1.7
37.8
4
eX
T1
Pe Tr rt P ia D l F
Table 14. Parallel Training of employee for getting the defined skills employee in slot wise: Hrs=Hours, M=Months, WD= Working Days, Sk=skills, LF of training = LS of assignment ( LFT = LSA), EF of Training = ES of Assignment ( EFT=ESA).
5
5
1
121
122
25
0
0
377
2.5
54.6
1,5
229
1.5
33.1
4,5
442
2.9
64
1.2.3
1
5
63
46 5
4
4
5
0
33
47
0
0
86
63
1
3
2
1
3
2
3
3
2
1
2
3
2
3
82
31
85
87
61
53
43
1
5
2
2
1
2
2
E9
37
43
53
64
38
54
44
333
2.2
48.2
1,2,5
E10
48
45
42
50
44
28
40
297
2
43
3
442
2.9
64
*
*
200
1.3
28.9
*
*
E6
E7
E8
LFT
LSA
EFT
ESA
EF
30
Software Project Management
Hanchate and Bichkar
14- STUDY WITH DIFFERENT CROSSOVER TYPE, STEP WISE POPULATION AND GENERATION SIZE Different algorithms of crossover types are given in the Appendix. Some other algorithms are with authors. The purpose of the same is to see the effect of crossover types and the rate at which the global maxima is met. The comparative Table of the all crossover type showing the mean and best fitness is given to see the behavior of crossover types. Various crossover types are studied with the Stochastic Universal Sampling (It is also called as Roulette wheel Selection [8]). Line recombination with mutation feature is used where it does recombination between old and new individual. Breeder GA gives chance to do the mutation itself with real value.We have studied various crossover types described in the Table 15 with different rates. The different crossover gives different conclusion as there is an increase in the rates of Pc, we got fitter individuals in less time.
Pe Tr rt P ia D l F
Table 15. Crossover types and their fitness Comparisons SP=Single Point, DP=Double Point, MP=Multi Point, Sf= Shuffle, SfRS= Sf, with Reduced surrogate Crossover Types SP
eX
DP
DPRS
MP
Sf
SfRS
Rate
Best fitness
Mean Fitness
0.6
374458.27
2417561.7
0.7
372250.33
2294938.5
0.8
349217.2
1790992.7
0.9
377133.2
2396817.5
0.6
372327.07
2129594.2
0.7
370461.6
2550481.1
0.8
355417.07
2188001.6
0.9
405583.07
1992069.8
0.7
343486.67
2227864
0.8
338799.4
2390740.1
0.9
373282.6
2071912.6
0.6
374639.87
1626956.9
0.7
382527.33
1639499.7
0.8
355739.73
1744175.8
0.9
357122.27
2204178.7
0.6
374472.33
2431324.5
0.7
368785.67
2467456.8
0.8
350974.53
2131650.4
0.9
343933.67
2387558.6
0.6
336290.27
1226297
0.7
377050.33
1906397.4
0.8
364765.8
1697197.7
0.9
357171.93
2230795.1
31
Int. J. of Software Engineering, IJSE Vol.9 No.2 July 2016
15-
CONCLUSION AND OUR CONTRIBUTION
REFERENCES
Pe Tr rt P ia D l F
The 3DBGAEVA approach gives good solution than the only 3DBGA. As the elimination of the employee and tasks are done in the early stage of the proposed approach, we get the solution within 1 hour. Carl et. al. stress on the granularity of time unit and TPG. Our approach emphasizes on the change in the devotion value and making somewhat restricting to the employee to do the work in large unit time. The schedule gives an idea of concurrency control in the preemptive type of task execution. The condition to stop the algorithm is not only effort achievement by all the tasks but also, combinatorial role of EVA also. Software project estimation techniques are significant and useful for developers and project managers. The detail regarding the theory, our contribution, proofs, evidences and related Tables and Figures are with authors. Proposed approach is towards the Micro-GA where we get the solution within 10 individual pool size, too. Comparatively, our approach is flexible and easy to represent it. Every time, we can make the schedule and reschedule it and can be used for the next schedule as target schedule also.
B. Boehm, Software Engineering economics. New Jersey: Prentice Hall PTR, 1981.
[2]
R. S. Pressman, Software Engineering: A practitioners Approach. New York: McGraw-Hill, Inc., 1992.
[3]
D. Wells and L. Williams, “Extreme Programming and Agile Methods XP/Agile Universe 2002: Second XP Uni-verse and First Agile Universe Conference Chicago, IL, USA, August 4-7, 2002.Proceedings.” Lecture Notes in Computer Science, Springer, 2002.
[4]
B. W. Boehm, C. Abts, A. W. Brown, S. Chulani, B. K. Clark, E. Horowitz, R. Madachy, D. J. Reifer, and B. Steece, Software Cost Estimation with COCOMO II. Prentice Hall, 2000.
[5]
H. Mhlenbein and D. Schlierkamp-Voosen, “Predictive models for the breeder genetic algorithm in continuous parameter optimization," EVOLUTIONARY COMPUTATION, vol. 1, pp. 25-49, 1993.
[6]
H. Mhlenbein and D. Schlierkamp-Voosen, “Optimal interaction of mutation and crossover in the breeder genetic algorithm," tech. rep., PROCEEDINGS OF THE FIFTH INTERNATIONAL CONFERENCE ON GENETIC ALGO-RITHMS, 1993.
[7]
A. Rosen, Effective IT Project Management: Using Teams to Get Projects Completed on Time and Under Budg-et, BookVistas (New Delhi, DEL, India), PHI, 2008.
[8]
D. Goldberg, Genetic Algorithm in Search, Optimization and Machine
eX
[1]
32
Software Project Management
Hanchate and Bichkar
Learning. Addison-Wesley, 1989. [9]
T. Gwiazda, Crossover for single-objective numerical optimization problems of Genetic algorithms reference, Tomasz Dominik Gwiazda, vol. 1., 2006.
[10] H. B. Dave and Parag Himanshu Dave, Design and Analysis of Algorithms. Pearson Education, 2008. [11] D. B. Hanchate and R. S. Bichkar, “SPS by combination of crossover types and changeable mutation SGA," International journal of computer Applications, vol. 94, May 2014. [12] R. S. Bichkar and Dinesh.B.Hanchate, “Software project scheduling by AGA," International journal of computer Applications, vol. 96, June 2014.
Pe Tr rt P ia D l F
[13] T.DeMarco and T. P. Lister, Productive Projects and Teams. 2nd ed. New York: Dorset House publishing., 1999. [14] F. ALECU, “Management of software development projects," Economics of Knowledge, vol. 33, 2011. [15] R. M., Bob Hughes and Mike Cotterell, Software Project Management (SEI). BookVistas (New Delhi, DEL, In-dia): Tata McGraw-Hill Education Pvt. Ltd, April 2011.
eX
[16] J. R. Lee, “DAGs and Topological Ordering”, Open lecture, Simons Institute Berkeley, CA (8-Dec-2014). [17] D. B. Hanchate and R. S. Bichkar, “Software project contacts by GRGA scheduling and EVM," International Journal of Computer Applications, vol. 97, pp. 1-26, July 2014. [18] C. K. Chang, H. Jiang, Y. Di, D. Zhu, and Y. Ge, “Time-line based model for software project scheduling with genetic algorithms," Information & Software Technology, vol. 50, no. 11, pp. 1142-1154, 2008. [19] Nectarjoy, “Skill development,” http://www.nectarjoy.com/skill development.php. 2013. [20] W. O. E. Fisher, “Contributors in Management and Administration Skills for the Mental Health Professional”, pp. 17-18, London: Academic Press, 1999. [21] T. H. Pear, “skill, Journal of Personnel Research,” pp. 478-498, 1927. [22] J. P. Lewis, A Hands-on Guide to bringing projects in Time and on budget. New Delhi: Tata McGraw-Hill Educa-tion Private Limited, 1973. [23] N.
M.
Systems,
“Design
complexity
and
productivity,"
2009.
33
Int. J. of Software Engineering, IJSE Vol.9 No.2 July 2016
http://www.numetrics.com, Mr. Ronald E. Collett, Mr. William E. Guthrie, Mr. Brian Fuller, Mr. Jerry Rau and Dr. Pavel Barseghyan and accesse in 20th june 2009. [24] S. Mohapatra, P. P. Shapira, and S. Mohapatra, Modeling the Supply Chain by J. Shapiro: A Book Review, Journal of Business Logistics, 24 (1), 2003. [25] A. Subhash Bhatnagar, IIM, “Indian software industry," tech. rep., PROCEEDINGS OF THE FIFTH INTERNA-TIONAL CONFER-ENCE ON GENETIC ALGORITHMS, 2006. [26] T. Malek, U. Bielefeld, F. F. Soziologie, L. Hilkermeier, and T. Darmstadt, “The european commission as a learning organization?: Theoretical considerations and empirical ideas," 2001.
Pe Tr rt P ia D l F
[27] C. Argyris, Knowledge for Action: A guide to overcoming barriers to organizational change. 1993. [28] L. M. Lucas, “The development of an integrated approach to organizational learning "1999. \Learning
curve,"
http://www.math24.net/learning-curve.html,
eX
[29] math24, 2010.
34