Journal of Software, Vol 7, No 7 (2012), 1440-1450, Jul 2012
doi:10.4304/jsw.7.7.1440-1450

Simulation-based Feature Selection for Software Requirements Baseline

Rabeb Mizouni, Sanja Lazarova-Molnar

Abstract


Requirements baseline is the set of features intended to be delivered in a specific version of a software application under development. During this decade the constant growth of software products along with the evident pressure on time to market has made the selection of features a crucial step for a software project success. It is both a challenging and time consuming process that requires a substantial expertise from project managers. Prioritization of features is one of the means that help in making the choice. It is typically performed by grouping features into three priority levels: critical, important, and useful. Critical and important features are seen as “must have”, while useful features are qualified as “nice-to-have”. Paradoxically, the latter plays an important role in customer satisfaction and achieving the “wow” factor. A good selection of useful features identifies efficiently those features that can be delivered by the end of the project without any additional delay. So far, managers have little support in this process increasing the chances of making a poor selection. To answer this need, we propose a new modeling and simulation approach that takes into account feature priorities and calculates the probabilities of having useful features implemented within the timeframe of the project. It also incorporates uncertainties related to human resources availability providing a more realistic schedule and estimation.


Keywords


Requirements Baseline; Features Selection; Features Priority; Simulation; Proxel-based Simulation

References


 

[1] J. K. Pinto, Project Management, 2 ed., 2002.

[2] R. N. Charette. (2005). Why Software Fails? . Available: http://spectrum.ieee.org/computing/software/why-software-fails/

[3] N. F. Matta and R. N. Ashkenas, "Why good projects fail anyway," Harvard Business Review, vol. 81, pp. 109-116, 2003.

[4] P. J. Denning and R. D. Riehle, "The profession of IT Is software engineering engineering?," Communications of the ACM, vol. 52, pp. 24-26, 2009.
http://dx.doi.org/10.1145/1467247.1467257

[5] J. F. Wateridge, "Delivering successful IS/IT projects: eight key elements from success criteria to review via appropriate management, methodologies and teams," Brunel University, London, 2010.

[6] R. Leus, "The generation of stable project plans," 4OR: A Quarterly Journal of Operations Research, vol. 2, pp. 251-254, 2004.

[7] D. Leffingwell and D. Widrig, Managing Software Requirements : A Use Case Approach (2nd Edition): Addison wesley, 2003.

[8] K. E. wiergers. (1999) First Things First: Prioritizing Requirement. Software Development

[9] D. Port, et al., "Using Simulation to Investigate Requirements Prioritization Strategies," presented at the Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering, 2008.

[10] S. Lazarova-Molnar, "The Proxel-Based Method: Formalisation, Analysis and Applications," Ph.D. Ph.D., Faculty of Informatics, University of Magdeburg, Magdeburg, 2005.

[11] C. Isensee and G. Horton, "Proxel-Based Simulation of Project Schedules," 2004.

[12] W. Huang, et al., "Project Scheduling Problem for Software Development with Random Fuzzy Activity Duration Times," in Advances in Neural Networks – ISNN 2009. vol. 5552, W. Yu, et al., Eds., ed: Springer Berlin / Heidelberg, 2009, pp. 60-69.

[13] M. J. Sobel, et al., "Scheduling projects with stochastic activity duration to maximize expected net present value," European Journal of Operational Research, vol. 198, pp. 697-705, 2009.
http://dx.doi.org/10.1016/j.ejor.2008.10.004

[14] J. Navascu, et al., "A Hybrid Model for Dynamic Simulation of Custom Software Projects in a Multiproject Environment," presented at the Proceedings of the International Conference on Software Process: Trustworthy Software Development Processes, Vancouver, B. C., Canada, 2009.

[15] S. Lazarova-Molnar and R. Mizouni, "A Framework for Enhanced Project Schedule Design to Aid Project Manager’s Decision Making Processes," presented at the The 23rd European Modeling & Simulation Symposium, Rome, Italy, 2011.

[16] D. K. M. Mak and P. B. Kruchten, "NextMove: A Framework for Distributed Task Coordination," in Software Engineering Conference, 2007. ASWEC 2007. 18th Australian, 2007, pp. 399-408.

[17] A. Al-Emran, et al., "Application of re-estimation in re-planning of software product releases," presented at the Proceedings of the 2010 international conference on New modeling concepts for today's software processes: software process, 2010.

[18] N. F. N. G. Amandeep, et al., "Intelligent Support for Software Release Planning," in Product Focused Software Process Improvement. vol. 3009, F. Bomarius and H. Iida, Eds., ed: Springer Berlin / Heidelberg, 2004, pp. 248-262.

[19] S. Lazarova-Molnar and R. Mizouni, "Modeling Human Decision Behaviors for Accurate Prediction of Project Schedule Duration," in Enterprise and Organizational Modeling and Simulation. vol. 63, J. Barjis, Ed., ed: Springer Berlin Heidelberg, 2010, pp. 179-195.

[20] S. Lazarova-Molnar and R. Mizouni, "Floating Task: Introducing and Simulating a Higher Degree of Uncertainty in Project Schedules," presented at the IEEE Workshop on Collaborative Modeling and Simulation (CoMetS 2010), Greece, 2010.

[21] D. Firesmith, "Prioritizing Requirements," Journal of Techology, vol. 3, pp. 35-48, 2004.

[22] D. Dubois and H. Prade, "What are fuzzy rules and how to use them," Fuzzy sets and systems, vol. 84, pp. 169-185, 1996.
http://dx.doi.org/10.1016/0165-0114(96)00066-8

[23] T. P. Hong and J. B. Chen, "Processing individual fuzzy attributes for fuzzy rule induction," Fuzzy sets and systems, vol. 112, pp. 127-140, 2000.
http://dx.doi.org/10.1016/S0165-0114(98)00179-1

[24] D. R. Cox, "The analysis of non-Markovian stochastic processes by the inclusion of supplementary variables," Proceedings of the Cambridge Philosophical Society, vol. 51, pp. 433-441, 1955.
http://dx.doi.org/10.1017/S0305004100030437

[25] G. Horton, "A new paradigm for the numerical simulation of stochastic Petri nets with general firing times," Proceedings of the European Simulation Symposium, 2002.

[26] W. J. Stewart, Introduction to the Numerical Solution of Markov Chains.: Princeton University Press, 1994.

[27] F. J. Lin, et al., "Protocol verification using reachability analysis: the state space explosion problem and relief strategies," ACM SIGCOMM Computer Communication Review, vol. 17, pp. 126-135, 1987.
http://dx.doi.org/10.1145/55483.55496

[28] C. Isensee and G. Horton, "Approximation of Discrete Phase-Type Distributions," Proceedings of the 38th annual Symposium on Simulation, pp. 99-106, 2005.
http://dx.doi.org/10.1109/ANSS.2005.12


Full Text: PDF


Journal of Software (JSW, ISSN 1796-217X)

Copyright @ 2006-2013 by ACADEMY PUBLISHER – All rights reserved.