Exact Analysis for Next Release Problem

In software engineering, determining the set of requirements to implement in the next release is a critical foundation for the success of a project. Inappropriately including or excluding requirements may result in products that fail to satisfy stakeholders' needs, and might cause loss of revenue. In the meantime, uncertainty is characterised by incomplete understanding. It is inevitable in the early phase of requirements engineering, and could lead to unsound requirement decisions. To ease the impact of uncertainty in the software development process, it is important to provide techniques that explicitly manage uncertainty in requirements analysis and optimisation. This proposed research aims to provide a decision support framework for analysing uncertainty in requirements selection and optimisation. The proposed research involves three stages. Firstly, a simulation optimisation technique is introduced to model requirements uncertainty in requirements optimisation. Then, an exact technique is designed to eliminate the algorithmic uncertainty. Lastly, a probabilistic uncertainty analysis is applied to help the decision maker to understand requirement uncertainty propagation and the characteristics of requirements in requirements selection process.

[1]  Yuanyuan Zhang,et al.  The multi-objective next release problem , 2007, GECCO '07.

[2]  Des Greer,et al.  Software release planning: an evolutionary and iterative approach , 2004, Inf. Softw. Technol..

[3]  Jianwen Chen,et al.  Dealing with Uncertainty: A Survey of Theories and Practices , 2013, IEEE Transactions on Knowledge and Data Engineering.

[4]  E. Schmidt Descubrir -y reducir- los costos reales de la atención de salud , 2011 .

[5]  Yuanyuan Zhang,et al.  Robust next release problem: handling uncertainty during optimization , 2014, GECCO.

[6]  Gabriele Bammer,et al.  Uncertainty and Risk: Multidisciplinary Perspectives , 2008 .

[7]  Y. Ronen Uncertainty Analysis , 1988 .

[8]  Victor J. Rayward-Smith,et al.  The next release problem , 2001, Inf. Softw. Technol..

[9]  Allen L. Soyster,et al.  Technical Note - Convex Programming with Set-Inclusive Constraints and Applications to Inexact Linear Programming , 1973, Oper. Res..

[10]  Z Zi,et al.  Sensitivity analysis approaches applied to systems biology models. , 2011, IET systems biology.

[11]  Mark Harman,et al.  Exact scalable sensitivity analysis for the next release problem , 2014, ACM Trans. Softw. Eng. Methodol..

[12]  S. Wagner,et al.  Global Sensitivity Analysis of Predictor Models in Software Engineering , 2007, Third International Workshop on Predictor Models in Software Engineering (PROMISE'07: ICSE Workshops 2007).

[13]  P. Festa A brief introduction to exact, approximation, and heuristic algorithms for solving hard combinatorial optimization problems , 2014, 2014 16th International Conference on Transparent Optical Networks (ICTON).

[14]  Eric E. Smith,et al.  Uncertainty analysis , 2001 .

[15]  Joachim Karlsson,et al.  A Cost-Value Approach for Prioritizing Requirements , 1997, IEEE Softw..

[16]  Shabnam Rasoulian,et al.  Uncertainty analysis and robust optimization of multiscale process systems with application to epitaxial thin film growth , 2014 .

[17]  Jingyuan Zhang,et al.  A Hybrid ACO algorithm for the Next Release Problem , 2010, The 2nd International Conference on Software Engineering and Data Mining.

[18]  Watts S. Humphrey,et al.  A discipline for software engineering , 2012, Series in software engineering.

[19]  Earl T. Barr,et al.  Uncertainty, risk, and information value in software requirements and architecture , 2014, ICSE.

[20]  Mark Harman,et al.  Search-based software engineering , 2001, Inf. Softw. Technol..

[21]  Shabnam Rasoulian,et al.  Distributional uncertainty analysis and robust optimization in spatially heterogeneous multiscale process systems , 2016 .

[22]  Emmanuel Letier,et al.  Simulating and optimising design decisions in quantitative goal models , 2011, 2011 IEEE 19th International Requirements Engineering Conference.

[23]  Debra J. Richardson,et al.  The Uncertainty Principle in Software Engineering Submitted to ICSE'97, 19th International Conference on Software Engineering , 1998 .

[24]  Mark Harman,et al.  An Integer Linear Programming approach to the single and bi-objective Next Release Problem , 2015, Inf. Softw. Technol..

[25]  Yuanyuan Zhang,et al.  An Empirical Study of Meta- and Hyper-Heuristic Search for Multi-Objective Release Planning , 2018, ACM Trans. Softw. Eng. Methodol..

[26]  Shapour Azarm,et al.  A multi-objective genetic algorithm for robust design optimization , 2005, GECCO '05.

[27]  Bernhard Sendhoff,et al.  Robust Optimization - A Comprehensive Survey , 2007 .

[28]  Shin Yoo,et al.  Search based data sensitivity analysis applied to requirement engineering , 2009, GECCO.

[29]  Y Zhang,et al.  Multi-Objective Search-based Requirements Selection and Optimisation , 2010 .

[30]  B. Flyvbjerg,et al.  Why Your IT Project May Be Riskier than You Think , 2011 .

[31]  Yuanyuan Zhang,et al.  “Fairness Analysis” in Requirements Assignments , 2008, 2008 16th IEEE International Requirements Engineering Conference.

[32]  Jerffeson Souza,et al.  A scenario-based robust model for the next release problem , 2013, GECCO '13.

[33]  Mark Harman,et al.  Search--based approaches to the component selection and prioritization problem , 2006, GECCO.

[34]  Indraneel Das,et al.  ROBUSTNESS OPTIMIZATION FOR CONSTRAINED NONLINEAR PROGRAMMING PROBLEMS , 2000 .

[35]  Daniela E. Damian,et al.  StakeSource2.0: using social networks of stakeholders to identify and prioritise requirements , 2011, 2011 33rd International Conference on Software Engineering (ICSE).

[36]  Constantine Caramanis,et al.  Theory and Applications of Robust Optimization , 2010, SIAM Rev..

[37]  Manolis Papadrakakis,et al.  Design optimization of steel structures considering uncertainties , 2005 .

[38]  Jon C. Helton,et al.  Survey of sampling-based methods for uncertainty and sensitivity analysis , 2006, Reliab. Eng. Syst. Saf..

[39]  Joachim Karlsson,et al.  Software requirements prioritizing , 1996, Proceedings of the Second International Conference on Requirements Engineering.

[40]  G. Bayraksan Monte Carlo sampling-based methods in stochastic programming , 2005 .

[41]  Yuanyuan Zhang,et al.  Search Based Requirements Optimisation: Existing Work and Challenges , 2008, REFSQ.