Understanding User Stories: Computational Linguistics in Agile Requirements Engineering

Publication date

2017-11-30

Authors

Lucassen, GarmISNI 000000050602449X

Editors

Advisors

Supervisors

Brinkkemper, S.ISNI 0000000374861981
Dalpiaz, FabianoISNI 0000000419575525

DOI

Document Type

Dissertation
Open Access logo

License

Abstract

Contemporary movies like The Social Network would lead you to believe that multi-billion software companies such as Facebook are built on individual genius. In reality, complex software is created by teams of software professionals that each have their own personality profile and expertise: from highly technical software engineers to business-minded salespeople and artistic user experience experts. The challenge? The entire team needs to talk about and agree on what piece of the software puzzle to create next. To facilitate and capture discussion on new software to be built, 50% of software companies have adopted a lightweight requirements approach called user stories. Despite this recent and substantial transition by industry, academic studies on user stories were few and far between at the start of Garm Lucassen’s PhD research. With this in mind, his research investigates the topic of user stories from the inside out. In the first three chapters, Garm Lucassen seeks to answer why user stories are popular and how to help practitioners in creating high-quality user stories. Prompted by the discovery that 56% of user stories made by practitioners include preventable errors and that guidelines for user stories quality significantly increase practitioner’s productivity and work deliverable quality, Garm proposes the Quality User Story framework and accompanying natural language processing tool Automatic Quality User Story Artisan (https://aqusa.nl/). By taking advantage of the concise and well-structured nature of high-quality user stories, AQUSA detects a subset of QUS’ quality defects with 92% recall and 77% precision. Thanks to this state-of-the-art accuracy, This accuracy has prompted software companies and universities in the Netherlands, Switzerland, Portugal and the United States to adopt this new approach to user story quality in their day-to-day work and teaching. The next three chapters focus on how to help practitioners in fully achieving the title of the dissertation: “Understanding User Stories’”. The research shows that it is possible to take advantage of computational linguistics techniques to extract and visualize the most important concepts from a collection of user stories with up to 96% recall and precision. Initial application by practitioners has shown that the freely accessible Interactive Narrator tool (https://interactivenarrator.science.uu.nl/) supports quickly analyzing and discussing new software to be built.

Keywords

User Stories, Requirements Engineering, Natural Language Processing, Computational Linguistics, Agile

Citation

Lucassen, G G 2017, 'Understanding User Stories : Computational Linguistics in Agile Requirements Engineering', Universiteit Utrecht.