Skip to main content
Log in

Modeling and Selection of Interdependent Software Requirements Using Fuzzy Graphs

  • Published:
International Journal of Fuzzy Systems Aims and scope Submit manuscript

Abstract

Software requirement selection is to find an optimal set of requirements that gives the highest value for a release of software while keeping the cost within the budget. However, value-related dependencies among software requirements may impact the value of an optimal set. Moreover, value-related dependencies can be of varying strengths. Hence, it is important to consider both the existence and the strengths of value-related dependencies during a requirement selection. The existing selection models, however, either assume that software requirements are independent or they ignore strengths of requirement dependencies. This paper presents a cost-value optimization model that considers the impacts of value-related requirement dependencies on the value of selected requirements (optimal set). We have exploited algebraic structure of fuzzy graphs for modeling value-related requirement dependencies and their strengths. Validity and practicality of the work are verified through carrying out several simulations and studying a real world software project.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10

Similar content being viewed by others

Abbreviations

NRP:

Next release problem

BKP:

Binary knapsack problem

AV:

Accumulated value

EV:

Estimated value

CV:

Customer value

SDP:

Selection deficiency problem

OV:

Overall value

GORS:

Graph-oriented requirement selection

FRIG:

Fuzzy requirement interdependency graph

LOI:

Level of interdependency

RAN:

Radio access network

PMR:

Performance management traffic recording

PMS:

Precious messaging system

R :

Set of requirements

\(r_i\) :

Requirement \(r_i \in R\)

\(v_i\) :

Estimated value of \(r_i\)

\(c_i\) :

Estimated cost of \(r_i\)

b :

Available budget

\(x_i\) :

Selection variable (\(ri_2 \in R\) is selected or not)

D :

Set of explicit value-related dependencies

O :

Optimal set

\({{\tilde{O}}}\) :

Set of excluded requirements

G :

A fuzzy requirement interdependency graph

\(\mu\) :

Fuzzy membership function of requirements

\(\rho\) :

Fuzzy membership function of dependencies

\(\wedge\) :

Fuzzy AND operator

\(I_i\) :

Impact of excluded requirements on \(r_i\)

\(\vee\) :

Fuzzy OR operator

\(\eta\) :

Pearl’s measure of causal strength

References

  1. Bagnall, A.J., RaywardSmith, V.J., Whittley, I.M.: The next release problem. Inf. Softw. Technol. 43(14), 883–890 (2001)

    Article  Google Scholar 

  2. Dahlstedt, A.G., Persson, A.: Requirements interdependencies—moulding the state of research into a research agenda. In: Ninth International Workshop on Requirements Engineering: Foundation for Software Quality (REFSQ 2003), pp. 71–80 (2003)

  3. Barney, S., Aurum, A., Wohlin, C.: A product management challenge: creating software product value through requirements selection. J. Syst. Architect. 54(6), 576–593 (2008)

    Article  Google Scholar 

  4. Ruhe, G.: Product Release Planning: Methods, Tools and Applications. Taylor & Francis, New York (2010)

    Book  Google Scholar 

  5. Achimugu, P., Selamat, A., Ibrahim, R., Mahrin, M.N.: A systematic literature review of software requirements prioritization research. Inf. Softw. Technol. 56(6), 568–585 (2014)

    Article  Google Scholar 

  6. Kukreja, N., Payyavula, S.S., Boehm, B., Padmanabhuni, S.: Value-based requirements prioritization: usage experiences. Proc. Comput. Sci. 16, 806–813 (2013)

    Article  Google Scholar 

  7. FogelstroìĹm, N., Numminen, E., Barney, S.: Using portfolio theory to support requirements selection decisions. In: Fourth International Workshop on Software Product Management (IWSPM), Sept 2010, pp. 49–52 (2010)

  8. Mougouei, D., Powers, D.M.W., Moeini, A.: An integer linear programming model for binary knapsack problem with dependent item values. In: Proceedings of the AI 2017: Advances in Artificial Intelligence: 30th Australasian Joint Conference, Melbourne, VIC, Australia, August 19–20, 2017, pp. 144–154. Springer International Publishing (2017)

  9. Karlsson, J., Ryan, K.: A costvalue approach for prioritizing requirements. IEEE Softw. 14(5), 67–74 (1997)

    Article  Google Scholar 

  10. Jung, H.-W.: Optimizing value and cost in requirements analysis. IEEE Softw. 15(4), 74–78 (1998)

    Article  MathSciNet  Google Scholar 

  11. Harman, M., Krinke, J., MedinaBulo, I., PalomoLozano, F., Ren, J., Yoo, S.: Exact scalable sensitivity analysis for the next release problem. ACM Trans. Softw. Eng. Methodol. 23(2), 19:1–19:31 (2014). doi:10.1145/2537853

    Article  Google Scholar 

  12. Carlshamre, P.: Release planning in market-driven software product development: provoking an understanding. Requir. Eng. 7(3), 139–151 (2002)

    Article  Google Scholar 

  13. van den Akker, M., Brinkkemper, S., van Diepen, G., Versendaal, J.: Flexible release planning using integer linear programming. REFSQ’05 (2005)

  14. Mougouei, D.: Factoring requirement dependencies in software requirement selection using graphs and integer programming. In: Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering, series ASE 2016. ACM, New York, NY, USA, pp. 884–887 (2016)

  15. Dahlstedt, Ã.G., Persson, A.: Requirements interdependencies: state of the art and future challenges. In: Aurum, A., Wohlin, C. (eds.) Engineering and Managing Software Requirements. Springer, Berlin (2005)

    Google Scholar 

  16. Karlsson, J., Olsson, S., Ryan, K.: Improved practical support for largescale requirements prioritising. Requir. Eng. 2(1), 51–60 (1997)

    Article  Google Scholar 

  17. Robinson, W.N., Pawlowski, S.D., Volkov, V.: Requirements interaction management. ACM Comput. Surv. 35(2), 132190 (2003)

    Article  Google Scholar 

  18. Mougouei, D., Powers, D.M.W., Moeini, A.: Dependency-aware software release planning. In: Proceedings of the 39th International Conference on Software Engineering Companion, series ICSE-C’17. IEEE Press, Piscataway, NJ, USA, pp. 198–200 (2017)

  19. Wang, J., Li, J., Wang, Q., Zhang, H., Wang, H.: A simulation approach for impact analysis of requirement volatility considering dependency change. In: Regnell, B., Damian, D. (eds.) Requirements Engineering: Foundation for Software Quality, vol. 7195, pp. 59–76. Springer, Berlin (2012)

    Chapter  Google Scholar 

  20. Brasil, M.M.A., Silva, T.G.N.d, Freitas, F.G.d, Souza, J.T.d, Cortés, M.I.: Enterprise information systems. In: Zhang, R., Zhang, J., Zhang, Z., Filipe, J., Cordeiro, J. (eds.) A Multiobjective Optimization Approach to the Software Release Planning with Undefined Number of Releases and Interdependent Requirements, vol. 102, pp. 300–314. Springer, Berlin (2012)

    Google Scholar 

  21. Zhang, Y., Harman, M., Mansouri, S.A.: The multi-objective next release problem. In: Proceedings of the 9th Annual Conference on Genetic and Evolutionary Computation. ACM, New York, NY, USA, pp. 1129–1137 (2007)

  22. Finkelstein, A., Harman, M., Mansouri, S.A., Ren, J., Zhang, Y.: A search based approach to fairness analysis in requirement assignments to aid negotiation, mediation and decision making. Requir. Eng. 14(4), 231–245 (2009)

    Article  Google Scholar 

  23. del Sagrado, J., del Aguila, I.M., Orellana, F.J.: Ant colony optimization for the next release problem: a comparative study. In: Second International Symposium on Search Based Software Engineering (SSBSE). IEEE 2010, pp. 67–76 (2010)

  24. Li, L., Harman, M., Wu, F., Zhang, Y.: The value of exact analysis in requirements selection. IEEE Trans. Softw. Eng. 43(6), 580–596 (2017)

    Google Scholar 

  25. Veerapen, N., Ochoa, G., Harman, M., Burke, E.K.: An integer linear programming approach to the single and bi-objective next release problem. Inf. Softw. Technol. 65, 1–13 (2015)

    Article  Google Scholar 

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

    Article  Google Scholar 

  27. Ruhe, G., Greer, D.: Quantitative studies in software release planning under risk and resource constraints. In: Proceedings of the 2003 International Symposium on Empirical Software Engineering, Sept 2003, pp. 262–270 (2003)

  28. van Valkenhoef, G., Tervonen, T., de Brock, B., Postmus, D.: Quantitative release planning in extreme programming. Inf. Softw. Technol. 53(11), 1227–1235 (2011)

    Article  Google Scholar 

  29. Zhang, Y., Harman, M.: Search based optimization of requirements interaction management. In: Second International Symposium on Search Based Software Engineering (SSBSE). IEEE 2010, pp. 47–56 (2010)

  30. Saliu, M.O., Ruhe, G.: Bi-objective release planning for evolving software systems. In: Proceedings of the the 6th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering. ACM, pp. 105–114 (2007)

  31. Akker, J. Van Den, Brinkkemper, S., Diepen, G., Versendaal, J.: Determination of the next release of a software product: an approach using integer linear programming. In: Proceeding of the 11th International Workshop on Requirements Engineering: Foundation for Software Quality REFSQâĂŹ05. Citeseer (2005).

  32. Ngo-The, A., Ruhe, G.: Optimized resource allocation for software release planning. IEEE Trans. Softw. Eng. 35(1), 109–123 (2009)

    Article  Google Scholar 

  33. Chen, W.-N., Zhang, J.: Ant colony optimization for software project scheduling and staffing with an event-based scheduler. IEEE Trans. Softw. Eng. 39(1), 1–17 (2013)

    Article  Google Scholar 

  34. Xuan, J., Jiang, H., Ren, Z., Luo, Z.: Solving the large scale next release problem with a backbone-based multilevel algorithm. IEEE Trans. Softw. Eng. 38(5), 1195–1212 (2012)

    Article  Google Scholar 

  35. van den Akker, M., Brinkkemper, S., Diepen, G., Versendaal, J.: Software product release planning through optimization and what-if analysis. Inf. Softw. Technol. 50(1), 101–111 (2008)

    Article  Google Scholar 

  36. Li, C., van den Akker, M., Brinkkemper, S., Diepen, G.: An integrated approach for requirement selection and scheduling in software release planning. Requir. Eng. 15(4), 375–396 (2010)

    Article  Google Scholar 

  37. Kalampakas, A., Spartalis, S., Iliadis, L., Pimenidis, E.: Fuzzy graphs: algebraic structure and syntactic recognition. Artif. Intell. Rev. 42(3), 479–490 (2014)

    Article  Google Scholar 

  38. Zimmermann, H.-J.: Fuzzy relations and fuzzy graphs. In: Fuzzy Set Theory and Its Applications, pp. 71–91. Springer (2001)

  39. Rosenfeld, A.: Fuzzy graphs. Fuzzy Sets Appl. 77, 95 (1975)

    MATH  Google Scholar 

  40. Mordeson, J.N.: Fuzzy mathematics. In:Davis, L.S. (ed.) Foundations of Image Understanding. Springer US, no. 628, pp. 95–125 (2001)

  41. Korte, B., Vygen, J.: Combinatorial Optimization: Theory and Algorithms. Springer, Berlin (2006)

    MATH  Google Scholar 

  42. Carlshamre, P., Sandahl, K., Lindvall, M., Regnell, B., Natt och Dag, J.: An industrial survey of requirements interdependencies in software product release planning. In: Proceedings of Fifth IEEE International Symposium on Requirements Engineering, 2001, pp. 84–91 (2001)

  43. Lust, T., Teghem, J.: The multiobjective multidimensional knapsack problem: a survey and a new approach. Int. Trans. Oper. Res. 19(4), 495–520 (2012)

    Article  MathSciNet  MATH  Google Scholar 

  44. Ruhe, G., Eberlein, A., Pfahl, D.: Trade-off analysis for requirements selection. Int. J. Softw. Eng. Knowl. Eng. 13(04), 345–366 (2003)

    Article  Google Scholar 

  45. Sagrado, J.D., Aguila, I.M.D., Orellana, F.J.: Multi-objective ant colony optimization for requirements selection. Empir. Softw. Eng., 20(3), 577–610 (2015)

    Article  Google Scholar 

  46. Zhang, Y., Harman, M., Lim, S.L.: Empirical evaluation of search based requirements interaction management. Inf. Softw. Technol. 55(1), 126 – 152 (2013) (special section: Best papers from the 2nd International Symposium on Search Based Software Engineering 2010)

  47. NgoThe, A., Saliu, M.: Fuzzy structural dependency constraints in software release planning. In: The 14th IEEE International Conference on Fuzzy Systems, 2005. FUZZ’05, May 2005, pp. 442–447 (2005)

  48. Mathew, S., Sunitha, M.: Strongest strong cycles and theta fuzzy graphs. IEEE Trans. Fuzzy Syst. 21(6), 10961104 (2013)

    Article  Google Scholar 

  49. Mordeson, J.N., Nair, P.S.: Applications of fuzzy graphs. In: Mordeson, J.N., Nair, P.S. (eds.) Fuzzy Graphs and Fuzzy Hypergraphs. PhysicaVerlag HD, no. 46, pp. 83–133 (2000)

  50. Zadeh, L.A.: Fyzzy sets. Inf. Comput. 8, 338353 (1965)

    Google Scholar 

  51. Klir, G.J., Folger, T.A.: Fuzzy Sets, Uncertainty, and Information. Prentice-Hall Inc., Upper Saddle River (1987)

    MATH  Google Scholar 

  52. Karlsson, J., Ryan, K.: Supporting the selection of software requirements. In: Proceedings of the 8th International Workshop on Software Specification and Design, 1996, Mar 1996, pp. 146–149 (1996)

  53. Law, A.M., Kelton, W.D.: Simulation Modeling and Analysis, 2nd edn. McGraw-Hill Higher Education, New York (1997)

    MATH  Google Scholar 

  54. Random (Java Platform SE 7). http://docs.oracle.com/javase/7/docs/api/java/util/Random.html

  55. Halpern, J.Y., Hitchcock, C.: Graded causation and defaults. Br. J. Philos. Sci. 66(2), 413–457 (2015). http://bjps.oxfordjournals.org/content/66/2/413.abstract

  56. do Nascimento Ferreira, T., Araújo, A.A., Neto, A.D.B., de Souza, J.T.: Incorporating user preferences in ant colony optimization for the next release problem. Appl. Soft Comput. 49, 1283–1296 (2016)

    Article  Google Scholar 

  57. Mougouei, D., Powers, D.M.: Dependency-aware software release planning through mining user preferences. arXiv preprint arXiv: 1702.05592 (2017)

  58. Racheva, Z., Daneva, M., Sikkel, K., Buglione, L.: Business value is not only dollars—results from case study research on agile software projects. In: Babar, M.A., Vierimaa, M., Oivo, M. (eds.) Product Focused Software Process Improvement, Series Lecture Notes in Computer Science, Springer, Berlin, no. 6156, pp. 131–145 (2010)

  59. Sprenger, J.: Foundations for a probabilistic theory of causal strength (2016)

  60. Pearl, J.: Causality. Cambridge University Press, Cambridge (2009)

    Book  MATH  Google Scholar 

  61. Janzing, D., Balduzzi, D., Grosse-Wentrup, M., Schölkopf, B., et al.: Quantifying causal influences. Ann. Stat. 41(5), 2324–2358 (2013)

    Article  MathSciNet  MATH  Google Scholar 

  62. Eells, E.: Probabilistic causality, vol. 1. Cambridge University Press, Cambridge (1991)

    Book  MATH  Google Scholar 

  63. Leung, C.W.-K., Chan, S.C.-F., Chung, F.-L., Ngai, G.: A probabilistic rating inference framework for mining user preferences from reviews. World Wide Web 14(2), 187–215 (2011)

    Article  Google Scholar 

  64. Holland, S., Ester, M., Kießling, W.: Preference mining: a novel approach on mining user preferences for personalized applications. In: European Conference on Principles of Data Mining and Knowledge Discovery. Springer, pp. 204–216 (2003)

  65. Sayyad, A.S., Menzies, T., Ammar, H.: On the value of user preferences in search-based software engineering: a case study in software product lines. In: 2013 35th International Conference on Software Engineering (ICSE). IEEE, 2013, pp. 492–501 (2013)

  66. Wu, C.-F.J.: Jackknife, bootstrap and other resampling methods in regression analysis. Ann. Stat., 1261–1295 (1986)

  67. Macke, J.H., Berens, P., Ecker, A.S., Tolias, A.S., Bethge, M.: Generating spike trains with specified correlation coefficients. Neural Comput. 21(2), 397–423 (2009)

    Article  MathSciNet  MATH  Google Scholar 

Download references

Funding

This research is supported by Australian Government Research Training Program Scholarship-International. Funding was provided by Flinders University.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Davoud Mougouei.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Mougouei, D., Powers, D.M.W. Modeling and Selection of Interdependent Software Requirements Using Fuzzy Graphs. Int. J. Fuzzy Syst. 19, 1812–1828 (2017). https://doi.org/10.1007/s40815-017-0364-4

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s40815-017-0364-4

Keywords

Navigation