Requirements elicitation: Towards the unknown unknowns

Requirements elicitation research is reviewed using a framework categorising the relative `knowness' of requirements specification and Common Ground discourse theory. The main contribution of this survey is to review requirements elicitation from the perspective of this framework and propose a road map of research to tackle outstanding elicitation problems involving tacit knowledge. Elicitation techniques (interviews, scenarios, prototypes, etc.) are investigated, followed by representations, models and support tools. The survey results suggest that elicitation techniques appear to be relatively mature, although new areas of creative requirements are emerging. Representations and models are also well established although there is potential for more sophisticated modelling of domain knowledge. While model-checking tools continue to become more elaborate, more growth is apparent in NL tools such as text mining and IR which help to categorize and disambiguate requirements. Social collaboration support is a relatively new area that facilitates categorisation, prioritisation and matching collections of requirements for product line versions. A road map for future requirements elicitation research is proposed investigating the prospects for techniques, models and tools in green-field domains where few solutions exist, contrasted with brown-field domains where collections of requirements and products already exist. The paper concludes with remarks on the possibility of elicitation tackling the most difficult question of `unknown unknown' requirements.

[1]  John Mylopoulos,et al.  From object-oriented to goal-oriented requirements analysis , 1999, CACM.

[2]  Herbert H. Clark,et al.  Grounding in communication , 1991, Perspectives on socially shared cognition.

[3]  Alistair G. Sutcliffe,et al.  Assessing the usability and efficiency of Design Rationale , 1997, INTERACT.

[4]  Anthony Finkelstein,et al.  Ieee Transactions on Software Engineering, Manuscript Id Stakerare: Using Social Networks and Collaborative Filtering for Large-scale Requirements Elicitation , 2022 .

[5]  Yuanyuan Zhang,et al.  A search based approach to fairness analysis in requirement assignments to aid negotiation, mediation and decision making , 2009, Requirements Engineering.

[6]  Neil A. M. Maiden,et al.  Exploring how to use scenarios to discover requirements , 2009, Requirements Engineering.

[7]  Martin S. Feather,et al.  Requirements monitoring in dynamic environments , 1995, Proceedings of 1995 IEEE International Symposium on Requirements Engineering (RE'95).

[8]  Neil A. M. Maiden,et al.  The Mobile Scenario Presenter: A Tool for in situ Requirements Discovery with Scenarios , 2007, 15th IEEE International Requirements Engineering Conference (RE 2007).

[9]  Neil A. M. Maiden,et al.  Can Requirements Be Creative? Experiences with an Enhanced Air Space Management System , 2007, 29th International Conference on Software Engineering (ICSE'07).

[10]  Luisa Mich,et al.  The effectiveness of an optimized EPMcreate as a creativity enhancement technique for Web site requirements elicitation , 2011, Requirements Engineering.

[11]  Karin K. Breitman,et al.  Ontology as a requirements engineering product , 2003, Proceedings. 11th IEEE International Requirements Engineering Conference, 2003..

[12]  Saeki Motoshi,et al.  Using Domain Ontology as Domain Knowledge for Requirements Elicitation , 2006 .

[13]  David B. Martin,et al.  Patterns of cooperative interaction: linking ethnomethodology and design , 2004, INTR.

[14]  Ian Sommerville,et al.  Requirements Engineering: Processes and Techniques , 1998 .

[15]  Shailey Minocha,et al.  Supporting Scenario-Based Requirements Engineering , 1998, IEEE Trans. Software Eng..

[16]  Alistair G. Sutcliffe,et al.  Investigating the Role of 'Soft Issues' in the RE Process , 2008, 2008 16th IEEE International Requirements Engineering Conference.

[17]  Eric Yu,et al.  Social Modeling for Requirements Engineering: An Introduction , 2011, Social Modeling for Requirements Engineering.

[18]  Daniel L. Moody,et al.  The “Physics” of Notations: Toward a Scientific Basis for Constructing Visual Notations in Software Engineering , 2009, IEEE Transactions on Software Engineering.

[19]  Julio Cesar Sampaio do Prado Leite,et al.  A Scenario Construction Process , 2000, Requirements Engineering.

[20]  James Lockerbie,et al.  Using /'* in Requirements Projects: Some Experiences and Lessons , 2011, Social Modeling for Requirements Engineering.

[21]  Natalia Juristo Juzgado,et al.  Effectiveness of Requirements Elicitation Techniques: Empirical Results Derived from a Systematic Review , 2006, 14th IEEE International Requirements Engineering Conference (RE'06).

[22]  Daniela E. Damian,et al.  How interaction between roles shapes the communication structure in requirements-driven collaboration , 2011, 2011 IEEE 19th International Requirements Engineering Conference.

[23]  Philippe Massonet,et al.  Goal-oriented requirements animation , 2004, Proceedings. 12th IEEE International Requirements Engineering Conference, 2004..

[24]  Axel van Lamsweerde,et al.  Handling Obstacles in Goal-Oriented Requirements Engineering , 2000, IEEE Trans. Software Eng..

[25]  Jane Cleland-Huang,et al.  Enhancing Stakeholder Profiles to Improve Recommendations in Online Requirements Elicitation , 2009, 2009 17th IEEE International Requirements Engineering Conference.

[26]  Peter Sawyer,et al.  A Flexible Framework To Experiment With Ontology Learning Techniques , 2007, SGAI Conf..

[27]  Irit Hadar,et al.  The role of domain knowledge in requirements elicitation via interviews: an exploratory study , 2012, Requirements Engineering.

[28]  Luisa Mich,et al.  Requirements for tools for ambiguity identification and measurement in natural language requirements specifications , 2008, Requirements Engineering.

[29]  John Mylopoulos,et al.  Goal-oriented requirements analysis and reasoning in the Tropos methodology , 2005, Eng. Appl. Artif. Intell..

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

[31]  Alan M. Davis,et al.  A Unified Model of Requirements Elicitation , 2004, J. Manag. Inf. Syst..

[32]  John Mylopoulos,et al.  Awareness requirements for adaptive systems , 2011, SEAMS '11.

[33]  Lin Ma,et al.  Unpacking Tacit Knowledge for Requirements Engineering , 2013, Managing Requirements Knowledge.

[34]  Alessia Knauss On the usage of context for requirements elicitation: End-user involvement in IT ecosystems , 2012, 2012 20th IEEE International Requirements Engineering Conference (RE).

[35]  Alistair Sutcliffe,et al.  User-Centred Requirements Engineering , 2002 .

[36]  John Mylopoulos,et al.  Revisiting the Core Ontology and Problem in Requirements Engineering , 2008, 2008 16th IEEE International Requirements Engineering Conference.

[37]  Peter Sawyer,et al.  On the Effectiveness of Abstraction Identification in Requirements Engineering , 2010, 2010 18th IEEE International Requirements Engineering Conference.

[38]  Annie I. Antón,et al.  The use of goals to surface requirements for evolving systems , 1998, Proceedings of the 20th International Conference on Software Engineering.

[39]  Alistair G. Sutcliffe,et al.  Scenario advisor tool for requirements engineering , 2005, Requirements Engineering.

[40]  Daniel M. Berry,et al.  AbstFinder, A Prototype Natural Language Text Abstraction Finder for Use in Requirements Elicitation , 1997, Automated Software Engineering.

[41]  David B. Martin,et al.  Patterns of cooperative interaction: Linking ethnomethodology and design , 2004, TCHI.

[42]  Nelly Bencomo,et al.  Requirements-Aware Systems: A Research Agenda for RE for Self-adaptive Systems , 2010, 2010 18th IEEE International Requirements Engineering Conference.

[43]  Tim Menzies,et al.  A Broad, Quantitative Model for Making Early Requirements Decisions , 2008, IEEE Software.

[44]  Marjo Kauppinen,et al.  Integrating analysis of customers' processes into roadmapping: The value-creation perspective , 2011, 2011 IEEE 19th International Requirements Engineering Conference.

[45]  Jorge J. Gómez-Sanz,et al.  Understanding the human context in requirements elicitation , 2010, Requirements Engineering.

[46]  Alistair G. Sutcliffe,et al.  The domain theory - patterns for knowledge and software reuse , 2002 .

[47]  Yvonne Rogers,et al.  Contravision: exploring users' reactions to futuristic technology , 2010, CHI.

[48]  Erik Hollnagel,et al.  Cognitive reliability and error analysis method : CREAM , 1998 .

[49]  Nelly Bencomo,et al.  RELAX: a language to address uncertainty in self-adaptive systems requirement , 2010, Requirements Engineering.

[50]  Jane Cleland-Huang,et al.  Using Data Mining and Recommender Systems to Facilitate Large-Scale, Open, and Inclusive Requirements Elicitation Processes , 2008, 2008 16th IEEE International Requirements Engineering Conference.

[51]  Francis Chantree,et al.  Identifying Nocuous Ambiguities in Natural Language Requirements , 2006, 14th IEEE International Requirements Engineering Conference (RE'06).

[52]  Jane Cleland-Huang,et al.  Towards automated requirements prioritization and triage , 2009, Requirements Engineering.

[53]  Ilona Wilmont,et al.  Interview Patterns for Requirements Elicitation , 2011, REFSQ.

[54]  Nancy G. Leveson Intent Specifications: An Approach to Building Human-Centered Specifications , 2000, IEEE Trans. Software Eng..

[55]  Eric S. K. Yu,et al.  Finding Solutions in Goal Models: An Interactive Backward Reasoning Approach , 2010, ER.

[56]  Eric S. K. Yu,et al.  Trust Trade-off Analysis for Security Requirements Engineering , 2009, 2009 17th IEEE International Requirements Engineering Conference.

[57]  Isabel Ramos,et al.  Is emotion relevant to requirements engineering? , 2005, Requirements Engineering.

[58]  Stephen Fickas,et al.  PC-RE: a method for personal and contextual requirements engineering with some experience , 2006, Requirements Engineering.

[59]  Mark Rouncefield,et al.  Fieldwork for Design - Theory and Practice , 2007, Computer Supported Cooperative Work.

[60]  John Mylopoulos,et al.  Representing and reasoning about preferences in requirements engineering , 2011, Requirements Engineering.

[61]  Nelly Bencomo,et al.  A Goal-Based Modeling Approach to Develop Requirements of an Adaptive System with Environmental Uncertainty , 2009, MoDELS.

[62]  Suzanne Robertson,et al.  Mastering the Requirements Process , 1999 .

[63]  Carlo Ghezzi,et al.  Reasoning on Non-Functional Requirements for Integrated Services , 2009, 2009 17th IEEE International Requirements Engineering Conference.

[64]  Bob J. Wielinga Reflections on 25+ years of knowledge acquisition , 2013, Int. J. Hum. Comput. Stud..

[65]  Peter Sawyer,et al.  A flexible framework to experiment with ontology learning techniques , 2008, Knowl. Based Syst..

[66]  Richard M. Young,et al.  Options and Criteria: Elements of design space analysis , 1991 .

[67]  Gerhard Fischer,et al.  Extending boundaries with meta-design and cultures of participation , 2010, NordiCHI.

[68]  Eric Knauss,et al.  Structured and unobtrusive observation of anonymous users and their context for requirements elicitation , 2011, 2011 IEEE 19th International Requirements Engineering Conference.

[69]  Philippe Massonet,et al.  GRAIL/KAOS: An Environment for Goal-Driven Requirements Engineering , 1997, Proceedings of the (19th) International Conference on Software Engineering.

[70]  Eric Dubois,et al.  Scenario-Based Techniques for Supporting the Elaboration and the Validation of Formal Requirements , 1998, Requirements Engineering.

[71]  Robert D. Macredie,et al.  Effective Communication in Requirements Elicitation: A Comparison of Methodologies , 2002, Requirements Engineering.

[72]  Gordon S. Blair,et al.  GridStix: supporting flood prediction using embedded hardware and next generation grid middleware , 2006, 2006 International Symposium on a World of Wireless, Mobile and Multimedia Networks(WoWMoM'06).

[73]  Tobie Kerridge,et al.  Anatomy of a failure: how we knew when our design went wrong, and what we learned from it , 2009, CHI.

[74]  Alan F. Newell,et al.  The use of theatre in requirements gathering and usability studies , 2006, Interact. Comput..

[75]  Aniket Kittur,et al.  Crowdsourcing user studies with Mechanical Turk , 2008, CHI.

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

[77]  Alistair G. Sutcliffe,et al.  Validating functional system requirements with scenarios , 2002, Proceedings IEEE Joint International Conference on Requirements Engineering.

[78]  Nick Hammond,et al.  Argumentation-based design rationale: what use at what cost? , 1994, Int. J. Hum. Comput. Stud..

[79]  Alex Voss,et al.  'Repairing' the Machine: A Case Study of the Evaluation of Computer-Aided Detection Tools in Breast Screening , 2003, ECSCW.

[80]  Alistair G. Sutcliffe,et al.  Scenario-based assessment of nonfunctional requirements , 2005, IEEE Transactions on Software Engineering.

[81]  Neil A. M. Maiden,et al.  ISRE: immersive scenario-based requirements engineering with virtual prototypes , 2005, Requirements Engineering.

[82]  Neil Maiden,et al.  Scenarios, Stories, Use Cases: Through the Systems Development Life-Cycle , 2004 .

[83]  Eric S. K. Yu,et al.  Social Modeling and i* , 2009, Conceptual Modeling: Foundations and Applications.

[84]  Alistair G. Sutcliffe,et al.  Experience with user-centred requirements engineering , 2011, Requirements Engineering.

[85]  Klaus Pohl,et al.  Requirements Elicitation and Validation with Real World Scenes , 1998, IEEE Trans. Software Eng..

[86]  Awais Rashid,et al.  UDesignIt: Towards social media for community-driven design , 2012, 2012 34th International Conference on Software Engineering (ICSE).

[87]  Michael A. Jackson,et al.  Problem Frames - Analysing and Structuring Software Development Problems , 2000 .

[88]  Neil A. M. Maiden,et al.  Power and politics in requirements engineering: embracing the dark side? , 2012, Requirements Engineering.

[89]  Axel van Lamsweerde,et al.  Requirements Engineering: From System Goals to UML Models to Software Specifications , 2009 .

[90]  Bashar Nuseibeh,et al.  Requirements engineering: a roadmap , 2000, ICSE '00.

[91]  John Mylopoulos,et al.  Towards requirements-driven information systems engineering: the Tropos project , 2002, Inf. Syst..

[92]  Thomas P. Moran,et al.  Questions, Options, and Criteria: Elements of Design Space Analysis , 1991, Hum. Comput. Interact..

[93]  Tim Menzies,et al.  Converging on the optimal attainment of requirements , 2002, Proceedings IEEE Joint International Conference on Requirements Engineering.

[94]  Sean A. Munson,et al.  Advancing the Design of Technology-Mediated Social Participation Systems , 2010, Computer.

[95]  Bashar Nuseibeh,et al.  Speculative requirements: Automatic detection of uncertainty in natural language requirements , 2012, 2012 20th IEEE International Requirements Engineering Conference (RE).

[96]  Gerald M. Weinberg,et al.  Exploring Requirements: Quality Before Design , 1989 .

[97]  Allison Druin,et al.  Technology probes: inspiring design for and with families , 2003, CHI '03.