Understanding User Stories: Computational Linguistics in Agile Requirements Engineering
Files
Publication date
2017-11-30
Editors
Advisors
DOI
Document Type
Dissertation
Metadata
Show full item recordCollections
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.