Conceptualizing Requirements Using User Stories and Use Cases: A Controlled Experiment

[Context and motivation] Notations for expressing requirements are often proposed without explicit consideration of their suitability for specific tasks. Consequently, practitioners may choose a sub-optimal notation, thereby affecting task performance. [Question/problem] We investigate the adequacy of two well-known notations: use cases and user stories, as a starting point for the manual derivation of a static conceptual model. In particular, we examine the completeness and correctness of the derived conceptual model. [Principal ideas/results] We conducted a two-factor, two-treatment controlled experiment with 118 subjects. The results indicate that for deriving conceptual models, user stories fit better than use cases. It seems that the repetitions in user stories and their conciseness contribute to these results. [Contribution] The paper calls for evaluating requirements notations in the context of various requirements engineering tasks and for providing evidence regarding the aspects that need to be taken into account when selecting a requirement notation.

[1]  Bernhard Hoisl,et al.  Comparing Three Notations for Defining Scenario-Based Model Tests: A Controlled Experiment , 2014, 2014 9th International Conference on the Quality of Information and Communications Technology.

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

[3]  H. B. Mann,et al.  On a Test of Whether one of Two Random Variables is Stochastically Larger than the Other , 1947 .

[4]  Shari Lawrence Pfleeger,et al.  Preliminary Guidelines for Empirical Research in Software Engineering , 2002, IEEE Trans. Software Eng..

[5]  Oscar Pastor,et al.  Requirements Engineering-Based Conceptual Modelling , 2002, Requirements Engineering.

[6]  Fabiano Dalpiaz Requirements data sets (user stories) , 2018 .

[7]  Isabelle Mirbel,et al.  Unifying and Extending User Story Models , 2014, CAiSE.

[8]  John Mylopoulos,et al.  Modeling Structured and Unstructured Processes: An Empirical Evaluation , 2016, ER.

[9]  Mehrdad Sabetzadeh,et al.  An Active Learning Approach for Improving the Accuracy of Automated Domain Model Extraction , 2019, ACM Trans. Softw. Eng. Methodol..

[10]  Lionel C. Briand,et al.  A systematic review of transformation approaches between user requirements and analysis models , 2011, Requirements Engineering.

[11]  Sjaak Brinkkemper,et al.  Detecting terminological ambiguity in user stories: Tool and experimentation , 2019, Inf. Softw. Technol..

[12]  Sjaak Brinkkemper,et al.  Improving agile requirements: the Quality User Story framework and tool , 2016, Requirements Engineering.

[13]  Robert J. Gaizauskas,et al.  CM-Builder: A Natural Language-Based CASE Tool for Object-Oriented Analysis , 2003, Automated Software Engineering.

[14]  Ivar Jacobson,et al.  The unified modeling language reference manual , 2010 .

[15]  Jan Mendling,et al.  Using business process models to better understand the dependencies among user stories , 2016, Inf. Softw. Technol..

[16]  Mike Cohn,et al.  User Stories Applied: For Agile Software Development , 2004 .

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

[18]  Claes Wohlin,et al.  Experimentation in Software Engineering , 2012, Springer Berlin Heidelberg.

[19]  Andreas L. Opdahl,et al.  Eliciting security requirements with misuse cases , 2004, Requirements Engineering.

[20]  Sjaak Brinkkemper,et al.  Extracting conceptual models from user stories with Visual Narrator , 2017, Requirements Engineering.

[21]  Lionel C. Briand,et al.  Modeling Security and Privacy Requirements: a Use Case-Driven Approach , 2018, Inf. Softw. Technol..

[22]  Mohamad Kassab An Empirical Study on the Requirements Engineering Practices for Agile Software Development , 2014, 2014 40th EUROMICRO Conference on Software Engineering and Advanced Applications.

[23]  John Mylopoulos,et al.  Specifying and analyzing early requirements in Tropos , 2004, Requirements Engineering.

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

[25]  L. Hedges Estimation of effect size from a series of independent experiments. , 1982 .

[26]  Manuel Kolp,et al.  Bridging User Story Sets with the Use Case Model , 2016, ER Workshops.

[27]  Martin Glinz,et al.  Problems and deficiencies of UML as a requirements specification language , 2000, Tenth International Workshop on Software Specification and Design. IWSSD-10 2000.

[28]  David Notkin,et al.  Editorial—looking back , 2013, TSEM.

[29]  Xavier Franch,et al.  Natural Language Processing for Requirements Engineering: The Best Is Yet to Come , 2018, IEEE Software.

[30]  Jan Mendling,et al.  Making sense of business process descriptions: An experimental comparison of graphical and textual notations , 2012, J. Syst. Softw..

[31]  Marco Torchiano,et al.  Assessing the Effect of Screen Mockups on the Comprehension of Functional Requirements , 2014, TSEM.

[32]  Lionel C. Briand,et al.  aToucan: An Automated Framework to Derive UML Analysis Models from Use Case Models , 2015, TSEM.

[33]  Jacob Cohen Statistical Power Analysis , 1992 .

[34]  Alistair Mavin,et al.  Easy Approach to Requirements Syntax (EARS) , 2009, 2009 17th IEEE International Requirements Engineering Conference.

[35]  Sjaak Brinkkemper,et al.  The Use and Effectiveness of User Stories in Practice , 2016, REFSQ.

[36]  Silvia Mara Abrahão,et al.  A systematic review of the use of requirements engineering techniques in model-driven development , 2010, MODELS'10.

[37]  Sara Jones,et al.  Model-Driven Requirements Engineering: Synchronising Models in an Air Traffic Management Case Study , 2004, CAiSE.

[38]  F. Wilcoxon Individual Comparisons by Ranking Methods , 1945 .

[39]  Philippe Kruchten,et al.  The Rational Unified Process: An Introduction , 1998 .

[40]  Stelvio Cimato,et al.  Engineering formal requirements: An analysis and testing method for Z documents , 1997, Ann. Softw. Eng..

[41]  Student,et al.  THE PROBABLE ERROR OF A MEAN , 1908 .

[42]  Lionel C. Briand,et al.  Facilitating the transition from use case models to analysis models: Approach and experiments , 2013, TSEM.

[43]  Craig Larman,et al.  Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development (3rd Edition) , 1997 .

[44]  Jennifer J. Richler,et al.  Effect size estimates: current use, calculations, and interpretation. , 2012, Journal of experimental psychology. General.