USDMとは何か
USDMとは故清水吉男氏が仕様の矛盾、抜け漏れを検出するために編み出した要求仕様の記述方法で以下の特徴を持つ。
- 要求と仕様を分けて、仕様の元となる要求を明確化する。
- 要求に理由をつけて根拠を明確にする。
- ざっくりした要求を明確な分割基準に基づいて分割して漏れをなくす。
- 要求階層の最下層に仕様をつける事を徹底して、要求〜下位要求〜仕様の関係を明確にする。
詳しくは参考文献を参照の事。
USDMのクラス図とオブジェクト図
クラス図とオブジェクト図を示す。言うまでもなくオブジェクト図は人間が認知できるメンタルモデルと等価である。
要求仕様は階層化された要求と最下層の要求に紐づいた仕様で構成されている事がわかる。これからある仕様が提示されると大元の要求を手繰り寄せれることが理解できる(そもそも、やりたい事とその理由はなんだっけ問題)。
クラス図
オブジェクト図
まとめ
USDMのモデリングする事によって、要求仕様がどのような概念で構築されているか?を理解できた。
自然言語解析技術と組み合わせれば、強力な仕様作成/検証ツールが構築できる可能性を秘めている事を実感できる。
そこまでしなくても日々の開発業務で、ある仕様が提示されれば大元の要求はなんだったのか考える癖がつくかも?しれない。
参考文献
[USDM 小冊子基礎編] (https://affordd.jp/tech_documents/affordd-t2-usdmtext-basic_1.3.pdf)
[[改訂第2版] [入門+実践]要求を仕様化する技術・表現する技術 -仕様が書けていますか?] (https://www.amazon.co.jp/dp/4774142573)
[「派生開発」を成功させるプロセス改善の技術と極意] (https://www.amazon.co.jp/dp/4774132497)
[プロセスデザインアプローチ 誰も教えてくれない「プロジェクトマネジメント」] (https://www.amazon.co.jp/dp/B076X1N99V)
[オブジェクト指向方法序説基盤編 - ジェームズ-マーチン] (https://www.amazon.co.jp/dp/4810185923/)
[モデルとプロセスをめぐる冒険 - 橋本 隆成] (https://www.amazon.co.jp/dp/4798110558/)