Analysis of Techniques for Documenting User Requirements

A number of approaches were proposed in past years to document user requirements. Choosing the most suitable one is difficult, and frequently based on ad-hoc decision. In order to assist the way requirements engineers choose, an evaluation is necessary. The purpose of this paper is to analyze methods and languages used for user requirements documentation considering a number of criteria. This analysis was performed after extensive literature research and action research at companies that develop software-intensive systems. The objective is not to show how to find the best technique, the one that will perfectly suit all software projects. Instead, our purpose is to propose a critical view on a number of chosen techniques that might be useful for practitioners when choosing which technique to use on a specific project. The assumption is that stakeholders can benefit from knowing which techniques fit better a number of pre-determined evaluation criteria.

[1]  Jeffrey Parsons,et al.  How UML is used , 2006, CACM.

[2]  Alexander Verbraeck,et al.  User requirements modeling and analysis of software-intensive systems , 2011, J. Syst. Softw..

[3]  Peter Gorm Larsen,et al.  Applying Formal Specification in Industry , 1996, IEEE Softw..

[4]  Franz Lehner,et al.  Requirements Engineering as a Success Factor in Software Projects , 2001, IEEE Softw..

[5]  William N. Robinson,et al.  Requirements interaction management , 2003, CSUR.

[6]  Bente Anda,et al.  Experiences from introducing UML-based development in a large safety-critical project , 2006, Empirical Software Engineering.

[7]  Claes Wohlin,et al.  Engineering and Managing Software Requirements , 2005 .

[8]  Stefania Gnesi,et al.  FME 2003: Formal Methods: International Symposium of Formal Methods Europe, Pisa, Italy, September 8-14, 2003. Proceedings , 2003, Lecture Notes in Computer Science.

[9]  Patrick Heymans,et al.  Visual syntax does matter: improving the cognitive effectiveness of the i* visual notation , 2010, Requirements Engineering.

[10]  Jean-Raymond Abrial,et al.  Formal Methods: Theory Becoming Practice , 2007, J. Univers. Comput. Sci..

[11]  Michiel van Genuchten,et al.  Why is Software Late? An Empirical Study of Reasons For Delay in Software Development , 1991, IEEE Trans. Software Eng..

[12]  Roger S. Pressman,et al.  Software Engineering: A Practitioner's Approach , 1982 .

[13]  Ivar Jacobson,et al.  Object-Oriented Software Engineering , 1991, TOOLS.

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

[15]  James F. Davis The affordable application of formal methods to software engineering , 2005 .

[16]  Ivar Jacobson,et al.  Object-oriented software engineering - a use case driven approach , 1993, TOOLS.

[17]  Donald Sannella,et al.  Toward Component-Oriented Formal Software Development: An Algebraic Approach , 2002, RISSEF.

[18]  Ian Sommerville,et al.  Viewpoints for requirements elicitation: a practical approach , 1998, Proceedings of IEEE International Symposium on Requirements Engineering: RE '98.

[19]  Marta Indulska,et al.  How do practitioners use conceptual modeling in practice? , 2006, Data Knowl. Eng..

[20]  Manfred Broy,et al.  Componentware - State of the Art 2003 Background Paper for the Understanding Components Workshop of the CUE Initiative at the Univerita Ca' Foscari di Venezia Venice, October 7th-9th 2003 , 2003 .

[21]  Jos L. M. Vrancken,et al.  Evaluation of UML in Practice - Experiences in a Traffic Management Systems Company , 2009, ICEIS.

[22]  Ivar Jacobson,et al.  Use cases – Yesterday, today, and tomorrow , 2004, Software & Systems Modeling.

[23]  John Swarbrooke,et al.  Case Study 18 – Las Vegas, Nevada, USA , 2007 .

[24]  Steve M. Easterbrook,et al.  Using ViewPoints for inconsistency management , 1996, Softw. Eng. J..

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

[26]  Brian Henderson-Sellers,et al.  UML – the Good, the Bad or the Ugly? Perspectives from a panel of experts , 2005, Software & Systems Modeling.

[27]  Anthony J. H. Simons,et al.  Use cases considered harmful , 1999, Proceedings Technology of Object-Oriented Languages and Systems. TOOLS 29 (Cat. No.PR00275).

[28]  Mabo Ito,et al.  1.6.2 Formalizing a Structured Natural Language Requirements Specification Notation , 2002 .

[29]  Erik Kamsties,et al.  Understanding Ambiguity in Requirements Engineering , 2005 .

[30]  R. B. Hurley,et al.  Decision Tables in Software Engineering , 1983 .

[31]  Richard Baskerville,et al.  Investigating Information Systems with Action Research , 1999, Commun. Assoc. Inf. Syst..

[32]  Jonathan P. Bowen,et al.  Seven More Myths of Formal Methods , 1995, IEEE Softw..

[33]  Viswanath Venkatesh,et al.  Technology Acceptance Model 3 and a Research Agenda on Interventions , 2008, Decis. Sci..

[34]  Krassie Petrova,et al.  Bridging the Research-Practice Gap in Requirements Engineering through Effective Teaching and Peer Learning , 2009, 2009 Sixth International Conference on Information Technology: New Generations.

[35]  Michiel van Genuchten,et al.  Why is Software Late , 1992 .

[36]  Alan Wassyng,et al.  Lessons Learned from a Successful Implementation of Formal Methods in an Industrial Project , 2003, FME.

[37]  Luisa Mich,et al.  Market research for requirements analysis using linguistic tools , 2004, Requirements Engineering.

[38]  Jocelyn Armarego,et al.  Requirements Engineering: a close look at industry needs and a model curricula , 2005, Australas. J. Inf. Syst..

[39]  Daniela E. Damian,et al.  An Industrial Case Study of Immediate Benefits of Requirements Engineering Process Improvement at the Australian Center for Unisys Software , 2004, Empirical Software Engineering.

[40]  William K. McHenry,et al.  The Russian's federation's Y2K policy: too little, too late? , 1999 .

[41]  Joseph Barjis,et al.  A Decision Framework for Selecting a Suitable Software Development Process , 2009, ICEIS.

[42]  Alan M. Davis,et al.  The Art of Requirements Triage , 2003, Computer.

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

[44]  Natalia Juristo Juzgado,et al.  Is the European Industry Moving toward Solving Requirements Engineering Problems? , 2002, IEEE Softw..

[45]  Rini van Solingen,et al.  Requirements Engineering: Dealing with the Complexity of Sociotechnical Systems Development , 2005 .

[46]  Suzanne Robertson,et al.  Mastering the Requirements Process (2nd Edition) , 2006 .

[47]  Frederick P. Brooks,et al.  No Silver Bullet: Essence and Accidents of Software Engineering , 1987 .

[48]  Ian Sommerville,et al.  Managing Process Inconsistency Using Viewpoints , 1999, IEEE Trans. Software Eng..

[49]  Manfred Broy,et al.  From "Formal Methods" to System Modeling , 2007, Formal Methods and Hybrid Real-Time Systems.

[50]  David Brown,et al.  Model-driven systems development , 2006, IEEE Engineering Management Review.

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

[52]  Eric S. K. Yu,et al.  Towards modelling and reasoning support for early-phase requirements engineering , 1997, Proceedings of ISRE '97: 3rd IEEE International Symposium on Requirements Engineering.

[53]  Kent L. Beck,et al.  Extreme programming explained - embrace change , 1990 .

[54]  Grady Booch,et al.  The Economics of Architecture-First , 2007, IEEE Software.

[55]  Seija Komi-Sirviö,et al.  Great Challenges and Opportunities of Distributed Software Development - An Industrial Survey , 2003, International Conference on Software Engineering and Knowledge Engineering.

[56]  RameshV.,et al.  Improving information requirements determination , 2002 .

[57]  Daniel M. Berry,et al.  The Inevitable Pain of Software Development: Why There Is No Silver Bullet , 2002, RISSEF.

[58]  Jim Woodcock,et al.  Formal Methods and Hybrid Real-Time Systems, Essays in Honor of Dines Bjørner and Chaochen Zhou on the Occasion of Their 70th Birthdays, Papers presented at a Symposium held in Macao, China, September 24-25, 2007 , 2007, Formal Methods and Hybrid Real-Time Systems.

[59]  Felix Naumann,et al.  Data fusion , 2009, CSUR.

[60]  T.C. Lethbridge,et al.  Guide to the Software Engineering Body of Knowledge (SWEBOK) and the Software Engineering Education Knowledge (SEEK) - a preliminary mapping , 2001, 10th International Workshop on Software Technology and Engineering Practice.

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