A multi-case study of agile requirements engineering and the use of test cases as requirements

08/22/2023
by   Elizabeth Bjarnason, et al.
0

Context: It is an enigma that agile projects can succeed 'without requirements' when weak requirements engineering is a known cause for project failures. While agile development projects often manage well without extensive requirements test cases are commonly viewed as requirements and detailed requirements are documented as test cases. Objective: We have investigated this agile practice of using test cases as requirements to understand how test cases can support the main requirements activities, and how this practice varies. Method: We performed an iterative case study at three companies and collected data through 14 interviews and two focus groups. Results: The use of test cases as requirements poses both benefits and challenges when eliciting, validating, verifying, and managing requirements, and when used as a documented agreement. We have identified five variants of the test-cases-as-requirements practice, namely de facto, behaviour-driven, story-test driven, stand-alone strict and stand-alone manual for which the application of the practice varies concerning the time frame of requirements documentation, the requirements format, the extent to which the test cases are a machine executable specification and the use of tools which provide specific support for the practice of using test cases as requirements. Conclusions: The findings provide empirical insight into how agile development projects manage and communicate requirements. The identified variants of the practice of using test cases as requirements can be used to perform in-depth investigations into agile requirements engineering. Practitioners can use the provided recommendations as a guide in designing and improving their agile requirements practices based on project characteristics such as number of stakeholders and rate of change.

READ FULL TEXT
research
08/12/2023

An Industrial Case Study on Test Cases as Requirements

It is a conundrum that agile projects can succeed 'without requirements'...
research
04/21/2020

Challenges and guidelines on designing test cases for test bots

Test bots are automated testing tools that autonomously and periodically...
research
02/02/2022

Automatic Creation of Acceptance Tests by Extracting Conditionals from Requirements: NLP Approach and Case Study

Acceptance testing is crucial to determine whether a system fulfills end...
research
06/03/2019

Empirical Analysis of Factors and their Effect on Test Flakiness - Practitioners' Perceptions

Developers always wish to ensure that their latest changes to the code b...
research
09/05/2022

Aspects of Modelling Requirements in Very-Large Agile Systems Engineering

Using models for requirements engineering (RE) is uncommon in systems en...
research
11/14/2017

A Comparative Case Study on the Impact of Test-Driven Development on Program Design and Test Coverage

Test-driven development (TDD) is a programming technique in which the te...
research
07/22/2022

Search-based Software Testing Driven by Automatically Generated and Manually Defined Fitness Functions

Search-based software testing (SBST) typically relies on fitness functio...

Please sign up or login with your details

Forgot password? Click here to reset