Algorithmic Solution for Effective Selection of Elicitation Techniques

The process of software development involves many significant knowledge-intensive areas. To execute a software project successfully, Requirement elicitation (RE) plays a critical role and need to be focused. RE is a process to establish information about the end user’s requirements clearly. Normally, the requirement engineer and organization policies affect the selection of the usual requirement elicitation technique. Furthermore, there is no concrete rule or direction available on an effective selection of elicitation techniques for a new or existing software project. In this paper, we proposed an algorithm for effective selection of elicitation technique, as the first step; we developed a matrix of different parameters and populated the matrix with the list of consolidated parameters along with possible values, suggested by various practitioners and researchers, for different elicitation techniques. Parameters are broadly categorized into three categories Project, Stakeholders and Requirement Engineer. As a second step, we designed an algorithm based on the mapping matrix which takes situational values as input and suggests a suitable and effective elicitation technique. For validation, we executed an algorithm for various examples and found better results. We can add new parameters and categories to the matrix for selection of elicitation technique without any inconvenience.

[1]  Klaus Pohl,et al.  Requirements Engineering - Fundamentals, Principles, and Techniques , 2010 .

[2]  Aziz Deraman,et al.  A framework for software requirement ambiguity avoidance , 2019 .

[3]  Izak Benbasat,et al.  A framework for the comparative evaluation of knowledge acquisition tools and techniques , 1990, Knowl. Acquis..

[4]  M.J. Bickerton,et al.  The classification of requirements engineering methods , 1993, [1993] Proceedings of the IEEE International Symposium on Requirements Engineering.

[5]  Akshi Kumar,et al.  Ontology based framework for detecting ambiguities in software requirements specification , 2016, 2016 3rd International Conference on Computing for Sustainable Global Development (INDIACom).

[6]  Devesh C. Jinwala,et al.  Resolving Ambiguities in Natural Language Software Requirements: A Comprehensive Survey , 2015, SOEN.

[7]  S. Lauesen Software Requirements Styles and Techniques , 2001 .

[8]  Venkataraman Ramesh,et al.  Improving information requirements determination: a cognitive perspective , 2002, Inf. Manag..

[9]  Behrouz Homayoun Far,et al.  A methodology for the selection of requirements engineering techniques , 2008, Software & Systems Modeling.

[10]  Neil A. M. Maiden,et al.  ACRE: selecting methods for requirements acquisition , 1996, Softw. Eng. J..

[11]  Mehrdad Sabetzadeh,et al.  Requirement boilerplates: Transition from manually-enforced to automatically-verifiable natural language patterns , 2014, 2014 IEEE 4th International Workshop on Requirements Patterns (RePa).

[12]  Alan M. Davis,et al.  Elicitation technique selection: how do experts do it? , 2003, Proceedings. 11th IEEE International Requirements Engineering Conference, 2003..

[13]  Natalia Juristo Juzgado,et al.  Systematizing requirements elicitation technique selection , 2014, Inf. Softw. Technol..

[14]  James D. Arthur,et al.  An Objectives-Driven Process for Selecting Methods to Support Requirements Engineering Activities , 2005, 29th Annual IEEE/NASA Software Engineering Workshop.

[15]  Alan M. Davis,et al.  Requirements elicitation and elicitation technique selection: model for two knowledge-intensive software development processes , 2003, 36th Annual Hawaii International Conference on System Sciences, 2003. Proceedings of the.

[16]  Alain Abran,et al.  Guide to the Software Engineering Body of Knowledge : 2004 Version , 2005 .

[17]  Marcos R. S. Borges,et al.  Athena: A collaborative approach to requirements elicitation , 2009, Comput. Ind..

[18]  Joseph A. Goguen,et al.  Techniques for requirements elicitation , 1993, [1993] Proceedings of the IEEE International Symposium on Requirements Engineering.

[19]  René Witte,et al.  Ontology-Based Classification of Non-functional Requirements in Software Specifications: A New Corpus and SVM-Based Classifier , 2013, 2013 IEEE 37th Annual Computer Software and Applications Conference.

[20]  Daniel M. Berry,et al.  The Design of SREE - A Prototype Potential Ambiguity Finder for Requirements Specifications and Lessons Learned , 2013, REFSQ.

[21]  Sumaira Kausar,et al.  Guidelines for the selection of elicitation techniques , 2010, 2010 6th International Conference on Emerging Technologies (ICET).

[22]  Geoffrey Mayoka Kituyi,et al.  A theoretical framework for requirements engineering and process improvement in small and medium software companies , 2015, Bus. Process. Manag. J..

[23]  Santosh Singh Rathore,et al.  A Methodology for the Selection of Requirement Elicitation Techniques , 2017, ArXiv.

[24]  Mehrdad Sabetzadeh,et al.  Automated Checking of Conformance to Requirements Templates Using Natural Language Processing , 2015, IEEE Transactions on Software Engineering.

[25]  Alan M. Davis,et al.  A Tale of Two Ontologies: The Basis for Systems Analysis Technique Selection , 2003, AMCIS.

[26]  Didar Zowghi,et al.  Requirements Elicitation: A Survey of Techniques, Approaches, and Tools , 2005 .

[27]  Zheying Zhang Effective Requirements Development-A Comparison of Requirements Elicitation techniques , 2007 .

[28]  Alan M. Davis,et al.  Requirements Researchers: Do We Practice What We Preach? , 2002, Requirements Engineering.

[29]  Yan Tang,et al.  Requirement Engineering Techniques Selection and Modeling An Expert System Based Approach , 2009, 2009 International Conference on Machine Learning and Applications.

[30]  Capers Jones,et al.  Patterns of software system failure and success , 1996 .

[31]  Jantima Polpinij An ontology-based text processing approach for simplifying ambiguity of requirement specifications , 2009, 2009 IEEE Asia-Pacific Services Computing Conference (APSCC).