An empirical comparative evaluation of requirements engineering methods

Requirements Engineering (RE) is a relatively young discipline, and still many advances have been achieved during the last decades. In particular, numerous RE approaches are proposed in the literature with the aim of understanding a certain problem (e.g. information systems development) and establishing a knowledge base that is shared between domain experts and developers (i.e. a requirements specification). However, there is a growing concern for empirical validations that assess RE proposals and statements. This paper is related to the assessment of the quality of functional requirements specifications, using the Method Evaluation Model (MEM) as a theoretical framework. The MEM distinguishes the actual efficacy and the perceived efficacy of a method. In order to assess the actual efficacy or RE methods, the conceptual model quality framework by Lindland et al. can be applied; in this paper, we focus on the completeness and granularity of requirements models and extend this framework by defining four new metrics (e.g. degree of functional encapsulations completeness with respect to a reference model, number of functional fragmentation errors). In order to assess the perceived efficacy, conventional questionnaires can be used. A laboratory experiment with master students has been carried out, in order to compare (using the proposed metrics) two RE methods; namely, Use Cases and Communication Analysis. With respect to actual efficacy, results indicate greater model quality (in terms of completeness and granularity) when Communication Analysis guidelines are followed. With respect to perceived efficacy, we found that Use Cases was perceived to be slightly easier to use than Communication Analysis. However, Communication Analysis was perceived to be more useful in terms of determining the proper business processes granularity. The paper discusses these results and highlights some key issues for future research in this area.

[1]  Daniel L. Moody,et al.  Theoretical and practical issues in evaluating the quality of conceptual models: current state and future directions , 2005, Data Knowl. Eng..

[2]  Keith Phalp,et al.  Replicating the CREWS Use Case Authoring Guidelines Experiment , 2000, Empirical Software Engineering.

[3]  Barry Boehm,et al.  Some experience with automated aids to the design of large-scale reliable software , 1975 .

[4]  T. William Olle Information Systems Methodologies , 1990 .

[5]  Magne Jørgensen,et al.  Quality and Understandability of Use Case Models , 2001, ECOOP.

[6]  Neil A. M. Maiden,et al.  Guiding use case authoring: results of an empirical study , 1999, Proceedings IEEE International Symposium on Requirements Engineering (Cat. No.PR00188).

[7]  Jan Mendling,et al.  Modularity in Process Models: Review and Effects , 2008, BPM.

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

[9]  Alistair Cockburn,et al.  Structuring Use Cases with Goals , 2000 .

[10]  Cláudia Maria Lima Werner,et al.  Um Modelo Integrado de Requisitos com Casos de Uso , 2007, CIbSE.

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

[12]  Alistair Cockburn,et al.  Writing Effective Use Cases , 2000 .

[13]  Keng Siau,et al.  Evaluation of information modeling methods-a review , 1998, Proceedings of the Thirty-First Hawaii International Conference on System Sciences.

[14]  Daniel L. Moody,et al.  Evaluating the quality of information models: empirical testing of a conceptual model quality framework , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[15]  János Demetrovics,et al.  Information System Design: Techniques and Software Support - Response , 1986, IFIP Congress.

[16]  Tok Wang Ling,et al.  Conceptual Modeling – ER ’98 , 1998, Lecture Notes in Computer Science.

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

[18]  Roel Wieringa,et al.  The methodological soundness of requirements engineering papers: a conceptual framework and two case studies , 2006, Requirements Engineering.

[19]  Michael Jackson,et al.  Four dark corners of requirements engineering , 1997, TSEM.

[20]  Arne Sølvberg,et al.  Understanding quality in conceptual modeling , 1994, IEEE Software.

[21]  John Krogstie,et al.  Towards a Deeper Understanding of Quality in Requirements Engineering , 1995, CAiSE.

[22]  Klaus Pohl,et al.  The three dimensions of requirements engineering: a framework and its applications , 1994, Inf. Syst..

[23]  Per Runeson,et al.  Using Students as Experiment Subjects – An Analysis on Graduate and Freshmen Student Data , 2003 .

[24]  Oscar Pastor,et al.  Conceptual Alignment of Software Production Methods , 2007 .

[25]  Daniel L. Moody,et al.  The method evaluation model: a theoretical model for validating information systems design methods , 2003, ECIS.

[26]  Juhani Iivari,et al.  A Sociocybernetic Framework for the Feature Analysis of Information Systems Design Methodologies , 1983, CRIS.

[27]  Alan M. Davis,et al.  Identifying and measuring quality in a software requirements specification , 1993, [1993] Proceedings First International Software Metrics Symposium.

[28]  Roelf J. Wieringa,et al.  Evaluating the structure of research papers: A case study , 2004 .

[29]  Sjaak Brinkkemper,et al.  Conceptual Modelling in Information Systems Engineering , 2007 .

[30]  Reinhard Schütte,et al.  The Guidelines of Modeling - An Approach to Enhance the Quality in Information Models , 1998, ER.

[31]  R. Langlois Modularity in technology and organization , 2002 .

[32]  Nelly Condori-Fernández,et al.  Evaluating the Completeness and Granularity of Functional Requirements Specifications: A Controlled Experiment , 2009, 2009 17th IEEE International Requirements Engineering Conference.

[33]  Oscar Pastor,et al.  Unity criteria for Business Process Modelling , 2009, 2009 Third International Conference on Research Challenges in Information Science.

[34]  Larry L. Constantine,et al.  Software for Use - A Practical Guide to the Models and Methods of Usage-Centered Design , 1999 .

[35]  Ivar Jacobson,et al.  Object Oriented Development in an Industrial Environment , 1987, OOPSLA.

[36]  Roel Wieringa,et al.  Requirements Engineering: Frameworks for Understanding , 1996 .

[37]  Daryl Kulak,et al.  Use cases: requirements in context , 2000, SOEN.

[38]  T. M. Rajkumar,et al.  Comparison of analysis techniques for information requirement determination , 1988, CACM.

[39]  Natalia Juristo Juzgado,et al.  Basics of Software Engineering Experimentation , 2010, Springer US.

[40]  Walter F. Tichy,et al.  Status of Empirical Research in Software Engineering , 2006, Empirical Software Engineering Issues.

[41]  Guttorm Sindre,et al.  Evaluating the Quality of Process Models: Empirical Testing of a Quality Framework , 2002, ER.

[42]  J. L. Contreras,et al.  "Technology of Object-Oriented Languages and Systems , 2001 .

[43]  Oscar Pastor,et al.  Towards a Communicational Perspective for Enterprise Information Systems Modelling , 2008, PoEM.

[44]  Graeme G. Shanks,et al.  What Makes a Good Data Model? Evaluating the Quality of Entity Relationship Models , 1994, ER.

[45]  Gunnar Övergaard,et al.  Use Cases: Patterns and Blueprints , 2004 .

[46]  Colette Rolland,et al.  Guiding the Construction of Textual Use Case Specifications , 1998, Data Knowl. Eng..

[47]  Reinhard Schütte,et al.  Architectures for Evaluating the Quality of Information Models - a Meta and an Object Level Comparison , 1999, ER.

[48]  Ivar Jacobson,et al.  Object-oriented development in an industrial environment , 1987, OOPSLA '87.

[49]  Keith Phalp,et al.  Comparing Use Case Writing Guidelines , 2001 .

[50]  N. Rescher Methodological Pragmatism: A Systems-Theoretic Approach to the Theory of Knowledge , 1977 .

[51]  Henri Briand,et al.  A use case driven requirements engineering process , 1997, Requirements Engineering.

[52]  John Krogstie,et al.  Process models representing knowledge for action: a revised quality framework , 2006, Eur. J. Inf. Syst..

[53]  Fred D. Davis,et al.  User Acceptance of Computer Technology: A Comparison of Two Theoretical Models , 1989 .

[54]  Keith Phalp,et al.  Improving the quality of use case descriptions: empirical assessment of writing guidelines , 2007, Software Quality Journal.

[55]  Claes Wohlin,et al.  Experimentation in software engineering: an introduction , 2000 .

[56]  Victor R. Basili,et al.  The TAME Project: Towards Improvement-Oriented Software Environments , 1988, IEEE Trans. Software Eng..

[57]  Craig Larman,et al.  Applying UML and patterns , 1997 .

[58]  Marta López,et al.  Updating a Systematic Review about Selection of Software Requirements Elicitation Techniques , 2008, WER.

[59]  Graeme G. Shanks,et al.  Quality in Conceptual Modelling: Linking Theory and Practice , 1997, PACIS.