ABSTRACT
All large-scale projects contain a degree of risk and uncertainty. Software projects are particularly vulnerable to overruns, due to the this uncertainty and the inherent difficulty of software project cost estimation. In this paper we introduce a search based approach to software project robustness. The approach is to formulate this problem as a multi objective Search Based Software Engineering problem, in which robustness and completion time are treated as two competing objectives. The paper presents the results of the application of this new approach to four large real-world software projects, using two different models of uncertainty.
- G. Antoniol, M.D. Penta, and M. Harman. Search-based techniques applied to optimization of project plannin for a massive maintenance project. In Proceedings of IEEE International Conference on Software Maintenance, pages 240--249, Budapest, Sept 2005. IEEE Computer Society Press. Google ScholarDigital Library
- G. Antoniol, M.D. Penta, M. Harman, and F. Qureshi. The effect of communication overhead on software maintenance project staffing: a search-based approach. In Proceedings of IEEE International Conference on Software Maintenance, pages 315--324, Paris FR, Oct. 2-5 2007. IEEE Computer Society Press.Google Scholar
- A. Barreto and M. de Barrosand L. Werner. Staffing a software project: A constraint satisfaction and optimization-based approach. Computers and Operations Research, 2008 (to appear). Google ScholarDigital Library
- A. Bertolino, E. Marchetti, and R. Mirandola. Performance measures for supporting project manager decisions. Software Process: Improvement and Practice, 12(2):141--164, 2007.Google ScholarCross Ref
- B.W. Boehm. Software Engineering Economics. Advances in Computing Science and Technology. Prentice Hall, 1981. Google ScholarDigital Library
- F. Chicano and E. Alba. Management of software projects with gas. In 6th Metaheuristics International Conference (MIC2005), Vienna, Austria, Aug. 2005.Google Scholar
- H.E., C.D., and R.P. The state of the art in evolutionary scheduling. Genetic Programming and Evolvable Machines, 2004 (to appear).Google Scholar
- E. Falkenauer. Genetic Algorithms and Grouping Problems. Wiley-Inter Science, Wiley -- NY, 1998. Google ScholarDigital Library
- A.G., C.A., D.L.G.A., and D.P.M. Assessing staffing needs for a software maintenance project through queuing simulation. IEEE Transactions on Software Engineering, 30(1):43--58, Jan 2004. Google ScholarDigital Library
- M. Harman. The current state and future of search based software engineering. In L. Briand and A. Wolf, editors, Future of Software Engineering 2007, Los Alamitos, California, USA, 2007. IEEE Computer Society Press. This volume. Google ScholarDigital Library
- P.I. and M.B. Software maintenance process analysis using discrete-event simulation. In European Conference on Software Maintenance and Reengineering, pages 192--195, Lisbon Portugal, March 2001. IEEE Society Press. Google ScholarDigital Library
- C.E. Jr, G.M.R., and J.D.S. Approximation algorithms for bin-packing. In Algorithm Design for Computer System Design, 1984.Google Scholar
- D.L. Job-shop scheduling with genetic algorithms. In International Conference on GAs, pages 136--140. Lawrence Erlbaum, 1985. Google ScholarDigital Library
- D.P.M., A.G., and H.M. The use of search-based optimization techniques to plan software projects: an approach and an empirical study. Technical report, RCOST -- Univ. of Sannio Italy, 2007. http://rcost.unisannio.it/mdipenta/searchBasedSta-ngTR.pdf.Google Scholar
- M.D. Penta, M. Harman, G. Antoniol, and F. Qureshi. The effect of communication overhead on software maintenance project staffing: a search-based approach. In Proceedings of IEEE International Conference on Software Maintenance, pages 315--324, Oct 2007.Google ScholarCross Ref
- R. Pressman. Software Engineering: A Practitioner's Approach. McGraw-Hill Book Company Europe, Maidenhead, Berkshire, England, UK., 3rd edition, 1992. European adaptation (1994). Adapted by Darrel Ince. ISBN 0-07-707936-1. Google ScholarDigital Library
- R. Ramaswamy. How to staff business critical maintenance projects. IEEE Software, 7(7):90--95, May 2000. Google ScholarDigital Library
- M.O. Saliu and G. Ruhe. Bi-objective release planning for evolving software. In ESEC / SIGSOFT FSE, pages 105--114, New York NY USA, 2007. ACM Press. Google ScholarDigital Library
- M.J. Shepperd and C. Schofield. Estimating software project effort using analogies. IEEE Transactions on Software Engineering, 23(11):736--743, 1997. Google ScholarDigital Library
- Y. Zhang, M. Harman, and S.A. Mansouri. The multi-objective next release problem. In GECCO '07: Proceedings of the 9th annual conference on Genetic and evolutionary computation, pages 1129--1137, New York NY USA, 2007. ACM Press. Google ScholarDigital Library
- E. Zitzler and L. Thiele. Multiobjective evolutionary algorithms: A comparative case study and the strength pareto approach. IEEE Transactions on Evolutionary Computation, 3(4):257--271, Nov. 1999. Google ScholarDigital Library
Index Terms
- Software project planning for robustness and completion time in the presence of uncertainty using multi objective search based software engineering
Recommendations
Software Development Management Planning
The lack of comprehensive planning prior to the initiation of a software development project is a very pervasive failing. This paper walks through a sample software development plan discussing the various areas that a software development manager should ...
High dimensional search-based software engineering: finding tradeoffs among 15 objectives for automating software refactoring using NSGA-III
GECCO '14: Proceedings of the 2014 Annual Conference on Genetic and Evolutionary ComputationThere is a growing need for scalable search-based software engineering approaches that address software engineering problems where a large number of objectives are to be optimized. Software refactoring is one of these problems where a refactoring ...
Toward an estimation of nadir objective vector using a hybrid of evolutionary and local search approaches
A nadir objective vector is constructed from the worst Pareto-optimal objective values in a multiobjective optimization problem and is an important entity to compute because of its significance in estimating the range of objective values in the Pareto-...
Comments