Table 2: Average feasibility and hit ratio percentages for each project for each weight ratio variation.
Weight
Ratios
Average Feasibility Rate (%) | Hit Ratio (%)
1 2 3 4 5 6 7
1:1 100 | 100 99.1 | 30.0 97.9 | 50.0 96.6 | 30.0 89.0 | 0.0 88.2 | 0.0 85.0 | 0.0
9:1 100 | 100 99.6 | 50.0 97.8 | 40.0 95.6 | 30.0 88.8 | 0.0 87.3 | 0.0 83.8 | 0.0
1:9 100 | 100 98.0 | 90.0 96.0 | 80.0 95.0 | 70.0 90.0 | 0.0 89.0 | 0.0 87.0 | 0.0
100% in the first project but as the complexity
increases, a progressive decrease is observed
reaching as low as 30% in the fourth project. A
possible explanation for the behaviour of the
algorithm is that it encounters more difficulties when
trying to satisfy the constraints since, intuitively, the
fewer the number of available developers, the more
likely that assignment conflicts will arise. With
regards to projects 5 to 7, the algorithm experiences
some difficulties in finding optimal solutions,
despite being able to frequently generate feasible
solutions (within 80%-90% of the time). This can
suggest that the large increase in the complexity and
size of software projects causes difficulties in the
evolution of the algorithm and consequently to the
generation of optimal solutions.
5 CONCLUDING REMARKS
The results obtained from various executions of the
algorithm indicated that PSO is a promising
approach for software project scheduling and team
staffing, which performs sufficiently well in the
majority of the projects examined in this paper. The
average feasibility ratio of the solutions generated is
more than 83% proving that most of the particles in
a swarm reside in feasible search space area.
However, some difficulties were encountered in the
cases with larger-sized and more complex software
projects, where the number of tasks, the type of
dependencies and the number of available
developers were shown to influence the ability of the
algorithm to produce optimal solutions. Specifically
in certain instances, the existence of “needless” gaps
in project schedules was observed, despite satisfying
all constraints. In order to increase the quality of
solutions, an adjustment can be made to the
objective functions so that they can more adequately
handle gaps or by introducing new objective
functions that could assist the swarm during its
evolution. Furthermore, due to the obvious
conflicting nature of the present objective functions,
an implementation of a multi-objective version of
the algorithm may perhaps be able to produce better
results. These abovementioned adjustments are
scheduled for future work along with
experimentation with real software projects, which is
currently in process with the collaboration of local
software SMEs for the provision of data.
REFERENCES
Alba, E. and Chicano, J. F., 2007. Software project
management with GAs. Inform. Sciences, 177(11), pp.
2380-2401.
Barreto, A., Barros, M. d. O. and Werner, C. M. L., 2008.
Staffing a software project: A constraint satisfaction
and optimization-based approach. Comput. Oper. Res.,
35(10), pp. 3073-3089.
Callegari, D. A. and Bastos, R. M., 2009. A multi-criteria
resource selection method for software projects using
fuzzy logic. In 11th International Conference on
Enterprise Information Systems. Milan, Italy, 6-10
May 2009. Berlin, Germany: Springer-Verlag.
Chang, C. K., et al., 2008. Time-line based model for
software project scheduling with genetic algorithms.
Inform. Software Tech., 50(11), pp. 1142-1154.
Eberhart, R. and Kennedy, J., 1995. A new optimizer
using particle swarm theory. In 6th International
Symposium on Micro Machine and Human Science.
Nagoya, Japan, 4-6 October 1995. Piscataway, NJ,
USA: IEEE Industry Applications Society.
Poli R., Kennedy J., Blackwell T., 2007. Particle swarm
optimization: an overview. Swarm Intelligence, 1(1),
pp. 33–57.
Ren, J., Harman, M. and Di Penta, M., 2011. Cooperative
co-evolutionary optimization of software project staff
assignments and job scheduling. In International
Symposium on Search Based Software Engineering.
Szeged, Hungary, 10-12 September 2011. Berlin,
Germany: Springer-Verlag.
Standish Group, 2009. Standish Group CHAOS Report.
Boston, MA, USA: Standish Group International, Inc.
Stylianou, C and Andreou, S. A. 2011. Intelligent
Software Project Scheduling and Team Staffing with
Genetic Algorithms. In 7th IFIP Conference on
Artificial Intelligence Applications and Innovations,
Corfu, Greece, 15-18 September 2011, Berlin,
Germany: Springer-Verlag.
AnInvestigationofOptimalProjectSchedulingandTeamStaffinginSoftwareDevelopmentusingParticleSwarm
Optimization
171