International Journal of Fuzzy Systems

, Volume 19, Issue 6, pp 1812–1828 | Cite as

Modeling and Selection of Interdependent Software Requirements Using Fuzzy Graphs

Article
  • 84 Downloads

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.

Keywords

Software Requirement Selection Dependency Fuzzy 

List of symbols

Acronyms

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

Notations

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

Notes

Funding

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

References

  1. 1.
    Bagnall, A.J., RaywardSmith, V.J., Whittley, I.M.: The next release problem. Inf. Softw. Technol. 43(14), 883–890 (2001)CrossRefGoogle Scholar
  2. 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)Google Scholar
  3. 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)CrossRefGoogle Scholar
  4. 4.
    Ruhe, G.: Product Release Planning: Methods, Tools and Applications. Taylor & Francis, New York (2010)CrossRefGoogle Scholar
  5. 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)CrossRefGoogle Scholar
  6. 6.
    Kukreja, N., Payyavula, S.S., Boehm, B., Padmanabhuni, S.: Value-based requirements prioritization: usage experiences. Proc. Comput. Sci. 16, 806–813 (2013)CrossRefGoogle Scholar
  7. 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)Google Scholar
  8. 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)Google Scholar
  9. 9.
    Karlsson, J., Ryan, K.: A costvalue approach for prioritizing requirements. IEEE Softw. 14(5), 67–74 (1997)CrossRefGoogle Scholar
  10. 10.
    Jung, H.-W.: Optimizing value and cost in requirements analysis. IEEE Softw. 15(4), 74–78 (1998)MathSciNetCrossRefGoogle Scholar
  11. 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 CrossRefGoogle Scholar
  12. 12.
    Carlshamre, P.: Release planning in market-driven software product development: provoking an understanding. Requir. Eng. 7(3), 139–151 (2002)CrossRefGoogle Scholar
  13. 13.
    van den Akker, M., Brinkkemper, S., van Diepen, G., Versendaal, J.: Flexible release planning using integer linear programming. REFSQ’05 (2005)Google Scholar
  14. 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)Google Scholar
  15. 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. 16.
    Karlsson, J., Olsson, S., Ryan, K.: Improved practical support for largescale requirements prioritising. Requir. Eng. 2(1), 51–60 (1997)CrossRefGoogle Scholar
  17. 17.
    Robinson, W.N., Pawlowski, S.D., Volkov, V.: Requirements interaction management. ACM Comput. Surv. 35(2), 132190 (2003)CrossRefGoogle Scholar
  18. 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)Google Scholar
  19. 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)CrossRefGoogle Scholar
  20. 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. 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)Google Scholar
  22. 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)CrossRefGoogle Scholar
  23. 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)Google Scholar
  24. 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. 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)CrossRefGoogle Scholar
  26. 26.
    Greer, D., Ruhe, G.: Software release planning: an evolutionary and iterative approach. Inf. Softw. Technol. 46(4), 243–253 (2004)CrossRefGoogle Scholar
  27. 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)Google Scholar
  28. 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)CrossRefGoogle Scholar
  29. 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)Google Scholar
  30. 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)Google Scholar
  31. 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).Google Scholar
  32. 32.
    Ngo-The, A., Ruhe, G.: Optimized resource allocation for software release planning. IEEE Trans. Softw. Eng. 35(1), 109–123 (2009)CrossRefGoogle Scholar
  33. 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)CrossRefGoogle Scholar
  34. 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)CrossRefGoogle Scholar
  35. 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)CrossRefGoogle Scholar
  36. 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)CrossRefGoogle Scholar
  37. 37.
    Kalampakas, A., Spartalis, S., Iliadis, L., Pimenidis, E.: Fuzzy graphs: algebraic structure and syntactic recognition. Artif. Intell. Rev. 42(3), 479–490 (2014)CrossRefGoogle Scholar
  38. 38.
    Zimmermann, H.-J.: Fuzzy relations and fuzzy graphs. In: Fuzzy Set Theory and Its Applications, pp. 71–91. Springer (2001)Google Scholar
  39. 39.
    Rosenfeld, A.: Fuzzy graphs. Fuzzy Sets Appl. 77, 95 (1975)MATHGoogle Scholar
  40. 40.
    Mordeson, J.N.: Fuzzy mathematics. In:Davis, L.S. (ed.) Foundations of Image Understanding. Springer US, no. 628, pp. 95–125 (2001)Google Scholar
  41. 41.
    Korte, B., Vygen, J.: Combinatorial Optimization: Theory and Algorithms. Springer, Berlin (2006)MATHGoogle Scholar
  42. 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)Google Scholar
  43. 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)MathSciNetCrossRefMATHGoogle Scholar
  44. 44.
    Ruhe, G., Eberlein, A., Pfahl, D.: Trade-off analysis for requirements selection. Int. J. Softw. Eng. Knowl. Eng. 13(04), 345–366 (2003)CrossRefGoogle Scholar
  45. 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)CrossRefGoogle Scholar
  46. 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)Google Scholar
  47. 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)Google Scholar
  48. 48.
    Mathew, S., Sunitha, M.: Strongest strong cycles and theta fuzzy graphs. IEEE Trans. Fuzzy Syst. 21(6), 10961104 (2013)CrossRefGoogle Scholar
  49. 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)Google Scholar
  50. 50.
    Zadeh, L.A.: Fyzzy sets. Inf. Comput. 8, 338353 (1965)Google Scholar
  51. 51.
    Klir, G.J., Folger, T.A.: Fuzzy Sets, Uncertainty, and Information. Prentice-Hall Inc., Upper Saddle River (1987)MATHGoogle Scholar
  52. 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)Google Scholar
  53. 53.
    Law, A.M., Kelton, W.D.: Simulation Modeling and Analysis, 2nd edn. McGraw-Hill Higher Education, New York (1997)MATHGoogle Scholar
  54. 54.
  55. 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. 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)CrossRefGoogle Scholar
  57. 57.
    Mougouei, D., Powers, D.M.: Dependency-aware software release planning through mining user preferences. arXiv preprint arXiv: 1702.05592 (2017)
  58. 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)Google Scholar
  59. 59.
    Sprenger, J.: Foundations for a probabilistic theory of causal strength (2016)Google Scholar
  60. 60.
    Pearl, J.: Causality. Cambridge University Press, Cambridge (2009)CrossRefMATHGoogle Scholar
  61. 61.
    Janzing, D., Balduzzi, D., Grosse-Wentrup, M., Schölkopf, B., et al.: Quantifying causal influences. Ann. Stat. 41(5), 2324–2358 (2013)MathSciNetCrossRefMATHGoogle Scholar
  62. 62.
    Eells, E.: Probabilistic causality, vol. 1. Cambridge University Press, Cambridge (1991)CrossRefMATHGoogle Scholar
  63. 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)CrossRefGoogle Scholar
  64. 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)Google Scholar
  65. 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)Google Scholar
  66. 66.
    Wu, C.-F.J.: Jackknife, bootstrap and other resampling methods in regression analysis. Ann. Stat., 1261–1295 (1986)Google Scholar
  67. 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)MathSciNetCrossRefMATHGoogle Scholar

Copyright information

© Taiwan Fuzzy Systems Association and Springer-Verlag GmbH Germany 2017

Authors and Affiliations

  1. 1.College of Science and EngineeringFlinders UniversityAdelaideAustralia

Personalised recommendations