Abstract

User stories are a widely adopted requirements notation in agile development. Yet, user stories are too often poorly written in practice and exhibit inherent quality defects. Triggered by this observation, we propose the Quality User Story (QUS) framework, a set of 13 quality criteria that user story writers should strive to conform to. Based on QUS, we present the Automatic Quality User Story Artisan (AQUSA) software tool. Relying on natural language processing (NLP) techniques, AQUSA detects quality defects and suggest possible remedies. We describe the architecture of AQUSA, its implementation, and we report on an evaluation that analyzes 1023 user stories obtained from 18 software companies. Our tool does not yet reach the ambitious 100 % recall that Daniel Berry and colleagues require NLP tools for RE to achieve. However, we obtain promising results and we identify some improvements that will substantially improve recall and precision.

Highlights

  • User stories are a concise notation for expressing requirements that is increasingly employed in agile requirements engineering [7] and in agile development

  • We describe the architecture of Automatic Quality User Story Artisan (AQUSA), its implementation, and we report on an evaluation that analyzes 1023 user stories obtained from 18 software companies

  • We presented a holistic approach for ensuring the quality of agile requirements expressed as user stories

Read more

Summary

Introduction

User stories are a concise notation for expressing requirements that is increasingly employed in agile requirements engineering [7] and in agile development. We build on the QUS framework and present a comprehensive, tool-supported approach to assessing and enhancing user story quality. Our previous paper [35] proposed the QUS framework for improving user story quality and introduced the concept of the Automated Quality User Story Artisan (AQUSA) tool. Note that we deviate from Cohn’s terminology as presented in the introduction, using the well known means end [48] relationship instead of the ad hoc goal reason Observe that this conceptual model includes only aggregation relationships. Because of this difficulty in conceptualizing, we choose to use aggregation relationships because it implies a weaker ontological commitment

Format
Well-formed
Atomic
Minimal
Conceptually sound
Problem-oriented
Unambiguous
Full sentence
Estimatable
Quality of a set of user stories
Unique and conflict-free
Uniform
Independent
Architecture and technology
User story base and enhancer
Analyzer: atomic
Analyzer: minimal
Analyzer: unique
Analyzer: uniform
Results
14: IntegrationComp
Threats to validity
FN: unknown ends indicator
FN: add slash and greater than
FP: symbols and starting text
FP: abbreviations and translations
Expected results
User stories
Quality of requirements
Natural language processing for RE
Conclusion and future research
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call