Affiliation:
1. Loyola University Chicago, Chicago, IL, USA
Abstract
There are seemingly many advantages to being able to identify, document, test, and trace single or "atomic" requirements during system development and maintenance. Ongoing work with Agile development has focused on "user stories" that can capture individual features for implementation. However, it is still difficult to evaluate the quality of such requirements and teaching their creation is difficult.
Based on a working definition of atomic requirement, this paper proposes a set of metrics for their evaluation. Ten metrics designed to measure atomic requirements are presented here: five used on individual requirements statements and five applied to a requirements document or set of requirement statements.
Example metrics for individual requirements include Requirement Atomic Completeness and Requirement Atomic Verifiability. Requirement Traceability is a proposed metric for a set of atomic requirements (such as a traditional requirements specification document.)
Further work is needed to make the suggested metrics more consistent and precise, including exploring the use of tools that may automate some of the measures. However, a first step is to refine the metrics themselves and ensure they adequately measure atomic requirement quality.
Hence this note shares the proposed metrics to encourage discussion and to recommend experimentation. The author is applying the metrics in software engineering courses doing team software development.
The goal is the eventual acceptance of a set of requirements metrics specifically designed to evaluate atomic requirements. Better metric definitions may lead to wider utilization of atomic requirements and improved requirements engineering in general.
Publisher
Association for Computing Machinery (ACM)