EARS Notation
https://ieeexplore.ieee.org/document/5328509 IEEE
ソフトウェア開発の要件定義や要求定義において、要求を文書化するための構文
構文とはいうもののDSLのような厳密さはなく、自然言語による要件を5つのシンプルなテンプレートで表現するアプローチ
ohbarye.icon Gherkinに似てる
Easy Approach to Requirements Syntaxの略
例
code:md
1. WHEN the setup script runs on Linux THEN it SHALL NOT produce warnings about missing macOS-specific tools or configurations
2. WHEN the setup script detects a devcontainer environment THEN it SHALL apply devcontainer-specific optimizations
構文タイプ
Ubiquitous(常在型)
いつでも無条件に成立するときの要件記述
Event-driven(契機型)
何かのイベントやトリガーが発生した場合に成立する要件記述
State-driven(状態型)
ある状態や条件下でのみ成立する要件記述
Optional(選択型)
選択的・例外的な場合にのみ成立する要件記述
Unwanted(不測型・例外型)
望ましくない、あるいは異常な状況が発生した場合に成立する要件記述