Expand description
EARS requirement classification and the ISO/IEC 25010 quality vocabulary (FEAT-049).
EARS (Easy Approach to Requirements Syntax) gives a requirement a shape that can be tested:
one behaviour, one trigger, no compound sentences. This module classifies text — it never
rejects it. Stored requirements keep whatever the author wrote; doctor reports what doesn’t
conform. That is deliberate: a write that fails because of prose style would push people to
stop recording requirements at all, and the pattern is derived on demand so stored data can
never disagree with the classifier.
What is deliberately NOT checked: compound responses (“SHALL validate and reject”). A regex for that fires on legitimate single behaviours, and a check people learn to ignore is worse than no check.
Enums§
- Pattern
- The five EARS patterns.
Constants§
- ISO25010
- The nine ISO/IEC 25010 (2023) quality characteristics.
Functions§
- classify
- Classify a requirement.
Nonemeans it does not conform — a warning, never an error. - normalize_
iso - Canonical spelling of a quality tag, ignoring case, spacing and hyphens.
Nonefor a tag outside the standard — reported, never rejected, because a hard failure here would break a board load over a typo.