Abstract
In agile methods, software products are developed in several releases. In each release, a new set of requirements for development is proposed. Due to technical and non-technical problems, it is almost impossible to develop all the proposed requirements in the next release. The select of an optimal subset from among all the proposed requirements has become an important problem for the developer team. The aim of this problem is to select an optimal subset from among the requirements for product development in the next release so that it has the highest satisfaction to the clients and the lowest cost for the manufacturing company. Since this problem faces two conflicting objectives and several constraints, it is placed in the NP-hard problems category. In this paper, we intend to formulate this problem for the first time as a fuzzy multi-objective optimization problem. We intend to use an artificial chemical reaction optimization algorithm to solve this problem. In the implementation stage, we make use of five interactions between requirements as one of the constraints of the problem for the first time. Two randomized fuzzy synthetic datasets are used to do the experiments. The results of the proposed algorithm are evaluated using three criteria of multi-objective problems. The results and diagrams of the proposed algorithm are very reliable and can help the developer team to make a decision.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
Alrashoud M, Abhari A (2017) Planning for the next software release using adaptive network-based fuzzy inference system. Intell Decis Technol 11:153–165
Araújo AA, Paixao M, Yeltsin I, Dantas A, Souza J (2017) An architecture based on interactive optimization and machine learning applied to the next release problem. Autom Softw Eng 24:623–671
Bagnall AJ, Rayward-Smith VJ, Whittley IM (2001) The next release problem. Inf Softw Technol 43:883–890
Cai X, Cheng X, Fan Z, Goodman E, Wang L (2017) An adaptive memetic framework for multi-objective combinatorial optimization problems: studies on software next release and travelling salesman problems. Soft Comput 21:2215–2236
Chatterjee S, Maji B (2016) A new fuzzy rule based algorithm for estimating software faults in early phase of development. Soft Comput 20:4023–4035
Chaves-González JM, Pérez-Toledano MA (2015) Differential evolution with Pareto tournament for the multi-objective next release problem. Appl Math Comput 252:1–13
Chaves-González JM, Perez-Toledano MA, Navasa A (2015a) Software requirement optimization using a multiobjective swarm intelligence evolutionary algorithm. Knowl-Based Syst 83:105–115
Chaves-González JM, Pérez-Toledano MA, Navasa A (2015b) Teaching learning based optimization with Pareto tournament for the multiobjective software requirements selection. Eng Appl Artif Intell 43:89–101
Dam TL, Li K, Fournier-Viger P (2017) Chemical reaction optimization with unified tabu search for the vehicle routing problem. Soft Comput 21:6421–6433
De Souza JT, Maia CL, do Nascimento Ferreira T, Do Carmo RA, Brasil MM (2011) An ant colony optimization approach to the software release planning with dependent requirements. In: International symposium on search based software engineering, pp 142–157
Deb K (2001) Multi-objective optimization using evolutionary algorithms. Wiley, London
Deb K, Pratap A, Agarwal S, Meyarivan TA (2002) A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Trans Evol Comput 2:182–197
Del Sagrado J, Del Aguila IM, Orellana FJ (2015) Multi-objective ant colony optimization for requirements selection. Empir Softw Eng 20:577–610
Dhanajayan RC, Pillai SA (2017) SLMBC: spiral life cycle model-based Bayesian classification technique for efficient software fault prediction and classification. Soft Comput 21:403–415
Durillo JJ, Zhang Y, Alba E, Harman M, Nebro AJ (2011) A study of the bi-objective next release problem. Empir Softw Eng 16:29–60
Ebrahimnejad A, Karimnejad Z, Alrezaamiri H (2015) Particle swarm optimisation algorithm for solving shortest path problems with mixed fuzzy arc weights. Int J Appl Decis Sci 8:203–222
Ebrahimnejad A, Tavana M, Alrezaamiri H (2016) A novel artificial bee colony algorithm for shortest path problems with fuzzy arc weights. Measurement 93:48–56
Guo W, Chen M, Wang L, Wu Q (2017) Hyper multi-objective evolutionary algorithm for multi-objective optimization problems. Soft Comput 21:5883–5891
Jiang H, Zhang J, Xuan J, Ren Z, Hu Y (2010) A hybrid ACO algorithm for the next release problem. In: 2010 2nd international conference software engineering and data mining (SEDM), pp 166–171
Karlsson J (1996) Software requirements prioritizing in requirements engineering. Proc Second Int Conf 1996:110–116
Knowles J, Corne D (1999) The pareto archived evolution strategy: a new baseline algorithm for pareto multiobjective optimisation. In: Proceedings of the 1999 congress on evolutionary computation, 1999. CEC 99, pp 98–105
Lai X, Xie M, Tan KC, Yang B (2008) Ranking of customer requirements in a competitive environment. Comput Ind Eng 54:202–214
Lam AY, Li VO (2010) Chemical-reaction-inspired metaheuristic for optimization. IEEE Trans Evol Comput 14:381–399
Nayak SC, Misra BB, Behera HS (2015) Artificial chemical reaction optimization of neural networks for efficient prediction of stock market indices. Ain Shams Eng J 8:371–390
Pitangueira AM, Maciel RS, Barros M (2015) Software requirements selection and prioritization using SBSE approaches: a systematic review and mapping of the literature. J Syst Softw 103:267–280
Rada-Vilela J, Zhang M, Seah W (2011) Random asynchronous PSO. In: 2011 5th international conference on automation, robotics and applications (ICARA), pp 220–225
Rao PS, Banka H (2017) Novel chemical reaction optimization based unequal clustering and routing algorithms for wireless sensor networks. Wirel Netw 23:759–778
Sadiq M, Jain SK (2014) Applying fuzzy preference relation for requirements prioritization in goal oriented requirements elicitation process. Int J Syst Assur Eng Manag 5:711–723
Schütze O, Martín A, Lara A, Alvarado S, Salinas E, Coello CA (2016) The directed search method for multi-objective memetic algorithms. Comput Optim Appl 63:305–332
Shen XN, Han Y, Fu JZ (2017) Robustness measures and robust scheduling for multi-objective stochastic flexible job shop scheduling problems. Soft Comput 21:6531–6554
Thakurta R (2017) Understanding requirement prioritization artifacts: a systematic mapping study. Requir Eng 22:491–526
Turan HH (2017) Stochastic fuzzy multi-objective backbone selection and capacity allocation problem under tax-band pricing policy with different fuzzy operators. Soft Comput 21:4085–4110
Veerapen N, Ochoa G, Harman M, Burke EK (2015) An integer linear programming approach to the single and bi-objective next release problem. Inf Softw Technol 65:1–13
Wang K, Li X, Jia C, Yang S, Li M, Li Y (2017) Multiobjective optimization of the production process for ground granulated blast furnace slags. Soft Comput 4:1
Wessing S, Preuss M (2016) On multiobjective selection for multimodal optimization. Comput Optim Appl 63:875–902
Zhang Y, Harman M, Mansouri SA (2007) The multi-objective next release problem. In: Proceedings of the 9th annual conference on genetic and evolutionary computation, pp 1129–1137
Acknowledgements
The author would like to thank the anonymous reviewers and the editor for their insightful comments and suggestions.
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflict of interest
The authors declare that they have no conflict of interest.
Ethical approval
This article does not contain any studies with human participants or animals performed by any of the authors.
Additional information
Communicated by V. Loia.
Rights and permissions
About this article
Cite this article
Alrezaamiri, H., Ebrahimnejad, A. & Motameni, H. Software requirement optimization using a fuzzy artificial chemical reaction optimization algorithm. Soft Comput 23, 9979–9994 (2019). https://doi.org/10.1007/s00500-018-3553-7
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00500-018-3553-7