Advanced

Improving requirements-test alignment by prescribing practices that mitigate communication gaps

Bjarnason, Elizabeth LU ; Sharp, Helen and Regnell, Björn LU (2019) In Empirical Software Engineering
Abstract
The communication of requirements within software development is vital for project success. Requirements engineering and testing are two processes that when aligned can enable the discovery of issues and misunderstandings earlier, rather than later, and avoid costly and time-consuming rework and delays. There are a number of practices that support requirements-test alignment. However, each organisation and project is different and there is no one-fits-all set of practices. The software process improvement method called Gap Finder is designed to increase requirements-tes t alignment. The method contains two parts: an assessment part and a prescriptive part. It detects potential communication gaps between people and between artefacts (the... (More)
The communication of requirements within software development is vital for project success. Requirements engineering and testing are two processes that when aligned can enable the discovery of issues and misunderstandings earlier, rather than later, and avoid costly and time-consuming rework and delays. There are a number of practices that support requirements-test alignment. However, each organisation and project is different and there is no one-fits-all set of practices. The software process improvement method called Gap Finder is designed to increase requirements-tes t alignment. The method contains two parts: an assessment part and a prescriptive part. It detects potential communication gaps between people and between artefacts (the assessment part), and identifies practices for mitigating these gaps (the prescriptive part). This paper presents the design and formative evaluation of the prescriptive part; an evaluation of the assessment part was published previously. The Gap Finder method was constructed using a design science research approach and is built on the Theory of Distances for Software Engineering, which in turn is grounded in empirical evidence from five case companies. The formative evaluation was performed through a case study in which Gap Finder was applied to an on-going development project. A qualitative and mixed-method approach
was taken in the evaluation, including ethnographically-informed observations. The results show that Gap Finder can detect relevant communication gaps and seven of the nine prescribed practices were deemed practically relevant for mitigating these gaps. The project team found the method to be useful and supported joint reflection and improvement of their requirements
communication. Our findings demonstrate that an empirically-based theory can be used to improve software development practices and provide a foundation for further research on factors that affect requirements communication. (Less)
Please use this url to cite or link to this publication:
author
organization
publishing date
type
Contribution to journal
publication status
epub
subject
keywords
Empirical Software Engineering, Software Process Improvement, Communication, Requirements Engineering, Testing, Software Engineering Theory
in
Empirical Software Engineering
pages
47 pages
publisher
Springer
external identifiers
  • scopus:85064209186
ISSN
1573-7616
DOI
10.1007/s10664-019-09698-6
language
English
LU publication?
yes
id
af4d43ce-1c9e-4797-a7ca-a1cb6d064c48
date added to LUP
2019-04-01 16:35:06
date last changed
2019-05-14 04:53:04
@article{af4d43ce-1c9e-4797-a7ca-a1cb6d064c48,
  abstract     = {The communication of requirements within software development is vital for project success. Requirements engineering and testing are two processes that when aligned can enable the discovery of issues and misunderstandings earlier, rather than later, and avoid costly and time-consuming rework and delays. There are a number of practices that support requirements-test alignment. However, each organisation and project is different and there is no one-fits-all set of practices. The software process improvement method called Gap Finder is designed to increase requirements-tes t alignment. The method contains two parts: an assessment part and a prescriptive part. It detects potential communication gaps between people and between artefacts (the assessment part), and identifies practices for mitigating these gaps (the prescriptive part). This paper presents the design and formative evaluation of the prescriptive part; an evaluation of the assessment part was published previously. The Gap Finder method was constructed using a design science research approach and is built on the Theory of Distances for Software Engineering, which in turn is grounded in empirical evidence from five case companies. The formative evaluation was performed through a case study in which Gap Finder was applied to an on-going development project. A qualitative and mixed-method approach<br/>was taken in the evaluation, including ethnographically-informed observations. The results show that Gap Finder can detect relevant communication gaps and seven of the nine prescribed practices were deemed practically relevant for mitigating these gaps. The project team found the method to be useful and supported joint reflection and improvement of their requirements<br/>communication. Our findings demonstrate that an empirically-based theory can be used to improve software development practices and provide a foundation for further research on factors that affect requirements communication.},
  author       = {Bjarnason, Elizabeth and Sharp, Helen and Regnell, Björn},
  issn         = {1573-7616},
  keyword      = {Empirical Software Engineering,Software Process Improvement,Communication,Requirements Engineering,Testing,Software Engineering Theory},
  language     = {eng},
  month        = {03},
  pages        = {47},
  publisher    = {Springer},
  series       = {Empirical Software Engineering},
  title        = {Improving requirements-test alignment by prescribing practices that mitigate communication gaps},
  url          = {http://dx.doi.org/10.1007/s10664-019-09698-6},
  year         = {2019},
}