Skip to main content

A Hybridized Approach for Prioritizing Software Requirements Based on K-Means and Evolutionary Algorithms

  • Chapter
  • First Online:
Book cover Computational Intelligence Applications in Modeling and Control

Part of the book series: Studies in Computational Intelligence ((SCI,volume 575))

Abstract

One of the major challenges facing requirements prioritization techniques is accuracy. The issue here is lack of robust algorithms capable of avoiding a mismatch between ranked requirements and stakeholder’s linguistic ratings. This problem has led many software developers in building systems that eventually fall short of user’s requirements. In this chapter, we propose a new approach for prioritizing software requirements that reflect high correlations between the prioritized requirements and stakeholders’ linguistic valuations. Specifically, we develop a hybridized algorithm which uses preference weights of requirements obtained from the stakeholder’s linguistic ratings. Our approach was validated with a dataset known as RALIC which comprises of requirements with relative weights of stakeholders.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 129.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 169.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 169.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Ahl, V.: An experimental comparison of five prioritization methods-investigating ease of use, accuracy and scalability. Master’s thesis, School of Engineering, Blekinge Institute of Technology, Sweden (2005)

    Google Scholar 

  2. Al-Sultan, K.S.: A Tabu search approach to the clustering problem. Pattern Recogn. 28(9), 1443–1451 (1995)

    Article  Google Scholar 

  3. Aritra, C., Bose, S., Das, S.: Automatic Clustering Based on Invasive Weed Optimization Algorithm: Swarm, Evolutionary, and Memetic Computing, pp. 105–112. Springer, Berlin (2011)

    Google Scholar 

  4. Babar, M., Ramzan, M., and Ghayyur, S.: Challenges and future trends in software requirements prioritization. In: Computer Networks and Information Technology (ICCNIT), pp. 319–324, IEEE (2011)

    Google Scholar 

  5. Berander, P., Svahnberg, M.: Evaluating two ways of calculating priorities in requirements hierarchies—An experiment on hierarchical cumulative voting. J. Syst. Softw. 82(5), 836–850 (2009)

    Article  Google Scholar 

  6. Chang, D., Xian, D., Chang, W.: A genetic algorithm with gene rearrangement for K-means clustering. Pattern Recogn. 42, 1210–1222 (2009)

    Article  Google Scholar 

  7. Ching-Yi, C., and Fun, Y.: Particle swarm optimization algorithm and its application to clustering analysis. In IEEE International Conference on Networking, Sensing and Control (2004)

    Google Scholar 

  8. Das, S., Abraham, A., Konar, A.: Automatic clustering using an improved differential evolution algorithm. IEEE Trans. Syst. Man Cybern. Part A Syst. Hum. 38(1), 218–237 (2008)

    Article  Google Scholar 

  9. Das, S., Abraham, A., and Konar, A.: Automatic hard clustering using improved differential evolution algorithm. In: Studies in Computational Intelligence, pp. 137–174 (2009)

    Google Scholar 

  10. Demsar, J.: Statistical comparison of classifiers over multiple data sets. J. Mach. Learn. Res. 7, 1–30 (2006)

    MATH  MathSciNet  Google Scholar 

  11. Greer, D., Ruhe, G.: Software release planning: an evolutionary and iterative approach. Inf. Softw. Technol. 46(4), 243–253 (2004)

    Article  Google Scholar 

  12. Hatamlou, A., Abdullah, S., and Hatamlou, M.: Data clustering using big bang-big crunch algorithm. In: Communications in Computer and Information Science, pp. 383–388 (2011)

    Google Scholar 

  13. Jain, A.: Data clustering: 50 years beyond K-means. Pattern Recogn. Lett. 31(8), 651–666 (2010)

    Article  Google Scholar 

  14. Kao, Y., Zahara, E., Kao, I.: A hybridized approach to data clustering. Expert Syst. Appl. 34(3), 1754–1762 (2008)

    Article  Google Scholar 

  15. Karlsson, L., Thelin, T., Regnell, B., Berander, P., Wohlin, C.: Pair-wise comparisons versus planning game partitioning-experiments on requirements prioritization techniques. Empirical Softw. Eng. 12(1), 3–33 (2006)

    Article  Google Scholar 

  16. Karlsson, J., Olsson, S., Ryan, K.: Improved practical support for large scale requirements prioritizing. J. Requirements Eng. 2, 51–67 (1997)

    Article  Google Scholar 

  17. Karlsson, J., Wohlin, C., Regnell, B.: An evaluation of methods for prioritizing software requirements. Inf. Softw. Technol. 39(14), 939–947 (1998)

    Article  Google Scholar 

  18. Kassel, N.W., Malloy, B.A.: An approach to automate requirements elicitation and specification. In: Proceeding of the 7th IASTED International Conference on Software Engineering and Applications. Marina Del Rey, CA, USA (2003)

    Google Scholar 

  19. Kennedy, J., Eberhart, R.: Particle swarm optimization. In: Proceedings of IEEE International Conference on Neural Networks (1995)

    Google Scholar 

  20. Kobayashi, M., Maekawa, M.: Need-based requirements change management. In: Proceeding of Eighth Annual IEEE International Conference and Workshop on the Engineering of Computer Based Systems, pp. 171–178 (2001)

    Google Scholar 

  21. Krishna, K., Narasimha, M.: Genetic K-means algorithm. IEEE Trans. Syst. Man Cyber. Part B (Cyber.) 29(3), 433–439 (1999)

    Article  Google Scholar 

  22. Lim, S.L., Finkelstein, A.: takeRare: using social networks and collaborative filtering for large-scale requirements elicitation. Softw. Eng. IEEE Trans. 38(3), 707–735 (2012)

    Article  Google Scholar 

  23. Maulik, U., Bandyopadhyay, S.: Genetic algorithm-based clustering technique. Pattern Recogn. 33(9), 1455–1465 (2000)

    Article  Google Scholar 

  24. Moisiadis, F.: The fundamentals of prioritizing requirements. In: Proceedings of Systems Engineering Test and Evaluation Conference (SETE 2002) (2002)

    Google Scholar 

  25. Perini, A., Susi, A., Avesani, P.: A Machine Learning Approach to Software Requirements Prioritization. IEEE Trans. Software Eng. 39(4), 445–460 (2013)

    Article  Google Scholar 

  26. Qin, A.K., Suganthan, P.N.: Kernel neural gas algorithms with application to cluster analysis. In: Proceedings-International Conference on Pattern Recognition (2004)

    Google Scholar 

  27. Ramzan, M., Jaffar, A., Shahid, A.: Value based intelligent requirement prioritization (VIRP): expert driven fuzzy logic based prioritization technique. Int. J. Innovative Comput. 7(3), 1017–1038 (2011)

    Google Scholar 

  28. Selim, S., Alsultan, K.: A simulated annealing algorithm for the clustering problem. Pattern Recogn. 24(10), 1003–1008 (1991)

    Article  MathSciNet  Google Scholar 

  29. Sung, C.S., Jin, H.W.: A tabu-search-based heuristic for clustering. Pattern Recogn. 33(5), 849–858 (2000)

    Article  Google Scholar 

  30. Storn, R., Price, K.: Differential Evolution—A Simple and Efficient Adaptive Scheme for Global Optimization over Continuous Spaces, TR-95-012. Int. Comput. Sci. Inst., Berkeley (1995)

    Google Scholar 

  31. Tonella, P., Susi, A., Palma, F.: Interactive requirements prioritization using a genetic algorithm. Inf. Softw. Technol. 55(2013), 173–187 (2012)

    Google Scholar 

  32. Thakurta, R.: A framework for prioritization of quality requirements for inclusion in a software project. Softw. Qual. J. 21, 573–597 (2012)

    Article  Google Scholar 

Download references

Acknowledgment

The authors appreciate the efforts of the Ministry of Science, Technology and Innovation Malaysia (MOSTI) under Vot 4S062 and Universiti Teknologi Malaysia (UTM) for supporting this research.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ali Selamat .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this chapter

Cite this chapter

Achimugu, P., Selamat, A. (2015). A Hybridized Approach for Prioritizing Software Requirements Based on K-Means and Evolutionary Algorithms. In: Azar, A., Vaidyanathan, S. (eds) Computational Intelligence Applications in Modeling and Control. Studies in Computational Intelligence, vol 575. Springer, Cham. https://doi.org/10.1007/978-3-319-11017-2_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-11017-2_4

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-11016-5

  • Online ISBN: 978-3-319-11017-2

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics