Skip to main content
Log in

A systematic approach for solving the wicked problem of software release planning

  • Focus
  • Published:
Soft Computing Aims and scope Submit manuscript

Abstract

Release planning is known to be a cognitively and computationally difficult problem. Different kinds of uncertainties make it hard to formulate and solve the problem. Our solution approach called EVOLVE+ mitigates these difficulties by (i) an evolutionary problem solving method combining rigorous solution methods to solve the actual formalization of the problem combined with the interactive involvement of the human experts in this process, (ii) provision of a portfolio of diversified and qualified solutions at each iteration of the solution process, and (iii) the application of a multi-criteria decision aid method (ELECTRE IS) to assist the selection of the final solution from a set of qualified solutions. At the final stage of the process, an outranking relation is established among the qualified candidate solutions to address existing soft constraints or objectives. A case study is provided to illustrate and initially evaluate the given approach. The proposed method and results are not limited to software release planning, but can be adapted to a wider class of wicked planning problems.

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.

Similar content being viewed by others

References

  • Bagnall AJ, Rayward-Smith VJ, Whittley IM (2001) The Next Release Problem. Inform Softw Technol 43(14):883–890

    Article  Google Scholar 

  • Boetticher GD (2001) An assessment of metric contribution in the construction of a neural network-based effort estimator. In: Proceedings 2nd International workshop on soft computing applied to software engineering, CASE 2001, February 8–9 Enschede

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

    Article  Google Scholar 

  • Canfora G, Cerulo L, Troiano L (2004) An experience of fuzzy linear regression applied to effort estimation. In: Proceedings 16th international conference on software engineering and knowledge engineering, pp 57–61

  • Carlsson C, Turban E (2002) Directions for the next decade. Decis Support Syst 33:105–110

    Article  Google Scholar 

  • CMMI Product Team, Capability Maturity Model Integration (CMMI®) (2002) Version 1.1 staged representation. Carnegie Mellon University, Pittsburgh, PA

  • Denne M, Cleland-Huang MJ (2004) The incremental funding method: data driven software development. IEEE Softw 21(3):39–47

    Article  Google Scholar 

  • Du G, Richter MM, Ruhe G (2006) An explanation oriented dialogue approach and its application to wicked planning problems. J Comput Inform 25:1001–1027

    Google Scholar 

  • Figueira J, Mousseau V, Roy B (2005) ELECTRE methods. In: Figueira J, Greco S, Ehrgott M (eds) Multiple criteria decision analysis: state of the art surveys. Springer, New York, pp 133–162

    Chapter  Google Scholar 

  • Goldberg DE (1989) Genetic algorithms in search, optimization and machine learning. Kluwer, Boston

    MATH  Google Scholar 

  • Greer D (2004) Decision support for planning software evolution with risk management. In: Proceedings of the 16th international conference on software engineering and knowledge engineering, Banff, pp 503–508

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

    Article  Google Scholar 

  • Harman M, Jones BF (2001) Search-based software engineering. Inform Softw Technol 43:833–839

    Article  Google Scholar 

  • Hodgkinson AC, Garratt PW (1999) A neurofuzzy cost estimator. In: Proceedings 3rd international conference software engineering and applications (SAE), pp 401–406

  • Huang X, Ho D, Ren J, Capretz LF (2006) A soft computing framework for software effort estimation. Soft Comput—A Fusion Found Methodol Appl 10:170–177

    Google Scholar 

  • Jung HW (1998) Optimizing value and cost in requirements analysis. IEEE Soft 74–78

  • Karlsson J, Ryan K (1997) A cost-value approach for prioritizing requirements. IEEE Softw 14(5):67–74

    Article  Google Scholar 

  • Mitchell M (1999) Evolutionary computation. In: Wilson RA, Keil FC (eds) The MIT encyclopedia of the cognitive sciences. MIT, Cambridge, pp 293–295

  • Ngo-The A, Ruhe G (2005) Decision support in requirements engineering. In: Aurum A, Wohlin C (eds) Engineering and managing software requirements. Springer, Berlin, pp 267–286

    Chapter  Google Scholar 

  • Ngo-The A, Ruhe G, Shen W (2004) Release planning under Fuzzy Effort Constraints. In: Proceedings of the third IEEE international conference on cognitive informatics (ICCI’04), pp 168–175

  • Pedrycz W (2002) Computational intelligence as an emerging paradigm of software engineering. In: Proceedings of the 14th international conference on software engineering and knowledge engineering (SEKE’2002), Ischia, Italy, pp 7–14

  • Penny DA (2002) An Estimation-based management framework for enhancive maintenance in commercial software products. In: Proceedings of international conference on software maintenance (ICSM’2002), pp 122–130

  • Rittel H, Webber M (1984) Planning problems are wicked problems. In: Cross N (ed) Developments in design methodology. Wiley, Chichester, pp 135–144

    Google Scholar 

  • Roy B (1990) Decision-aid and decision-making. Eur J Oper Res 45:324–331

    Article  Google Scholar 

  • Ruhe G, Ngo-The A (2004) Hybrid intelligence in software release planning. Int J Hybrid Intell Syst 1:99–110

    Google Scholar 

  • Saaty TL (1980) The analytic hierarchy process, planning, priority setting, resource allocation. McGraw-Hill, New York

    MATH  Google Scholar 

  • Saliu O, Ruhe G (2005) Supporting software release planning decisions for evolving systems. In: Proceedings of the 29th IEEE/NASA software engineering workshop, Greenbelt, MD, pp 14–24

  • Sim SE, Perry DE, Easterbrook SM, Aranda J (2006) Case studies for software engineers, Tutorial ICSE 2006, May 21, Shanghai, available at http://www.cs.toronto.edu/~sme/case-studies/case_study_tutorial_slides.pdf

  • Software Engineering with Computational Intelligence (2003) [Khostgoftaar TM (ed)] Kluwer Dordreckt

  • van den Akker JM, Brinkkemper S, Diepen G, Versendaal J (2005) Flexible release planning using integer linear programming. In: Proceedings of the 11th international workshop on requirements engineering for software quality (REFSQ’05), 13–14 June 2005, Porto, Portugal, Essener Informatik Beitrage, Band 10

  • van-Gurp J, Bosch J, Svahnberg M (2000) Managing variability in software product lines. In: Proceedings of LAC2000, Amsterdam

  • Ziy H, Richardson DJ, Klösch R (1996) The uncertainty principle in software engineering. Technical Report UCI-TR-96–33, University of California, Irvine

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Guenther Ruhe.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Ngo-The, A., Ruhe, G. A systematic approach for solving the wicked problem of software release planning. Soft Comput 12, 95–108 (2008). https://doi.org/10.1007/s00500-007-0219-2

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00500-007-0219-2

Keywords

Navigation