敏捷需求工程及以测试用例作为需求使用的多案例研究
软件工程
2023-08-24 v1
摘要
背景:当薄弱的需求工程是已知的项目失败原因时,敏捷项目竟能在“没有需求”的情况下成功,这是一个谜。虽然敏捷开发项目通常无需广泛的需求即可良好运作,但测试用例常被视为需求,且详细需求被记录为测试用例。目标:我们调查了这种将测试用例作为需求的敏捷实践,以理解测试用例如何支持主要需求活动,以及该实践如何变化。方法:我们在三家公司进行了迭代案例研究,并通过 14 次访谈和两个焦点小组收集数据。结果:将测试用例作为需求在获取、确认、验证和管理需求以及用作书面协议时既带来好处也带来挑战。我们确定了测试用例作为需求实践的五种变体,即事实型、行为驱动型、故事测试驱动型、独立严格型和独立手动型,这些变体在需求文档的时间框架、需求格式、测试用例作为机器可执行规范的程度以及为使用测试用例作为需求的实践提供特定支持的工具使用方面有所不同。结论:研究结果为敏捷开发项目如何管理和沟通需求提供了实证洞察。所识别的测试用例作为需求实践的变体可用于对敏捷需求工程进行深入调查。从业者可使用所提供的建议作为指南,基于项目特征(如利益相关者数量和变更率)来设计和改进其敏捷需求实践。
引用
@article{arxiv.2308.11747,
title = {A multi-case study of agile requirements engineering and the use of test cases as requirements},
author = {Elizabeth Bjarnason and Michael Unterkalmsteiner and Markus Borg and Emelie Engström},
journal= {arXiv preprint arXiv:2308.11747},
year = {2023}
}