S2もそうですが、敷居を下げたいので何を読みなさいというのは避けたいと思っています。でも深く知ることはよいことなので背景になっている技術の参考文献をあげます。でも散在しているものの要点は日記から得られるようにしたい。
- ロバストネス
http://d.hatena.ne.jp/habuakihiro/20040622
http://www.ogis-ri.co.jp/otc/hiroba/technical/RobustnessAnalysis/RA1/index.html
(続編を書いてくれないとロバストネス分析の真意は伝わらない)。
のp.59
ロバストネス分析のベストプラクティス
・アクタはバウンダリオブジェクトだけと通信できる
・バウンダリオブジェクトはアクタとコントローラとだけと通信できる
・エンティティオブジェクトはコントローラとだけと通信できる
・コントローラはバウンダリオブジェクトとコントローラとだけと通信できる
ロバストネス分析のガイドライン
・一つのユースケースに対してコントローラは2-5個
・矢印はメッセージなく関連に過ぎない
・矢印がバウンダリオブジェクトからコントローラオブジェクトに向かっている場合、バウンダリオブジェクトはシグナルで、コントローラオブジェクトを実行する
ISBN4894713772:imageのp.70
ユーザ機能は、ユーザが使用する用語で表現できる最小の機能であり、<オブジェクト(object)><結果(result)><アクション(action)>という命令用テンプレートを使用します。
ETVX(E:事前条件T:タスクV:検証X:事後条件)テンプレートを使ってサービスやユーザ機能を定義しましょう。
余談だが両方ともはてなのキーワードになっていない。バストでいらっしゃる方には申し訳ない限りである。
今回の収穫として、思い(要求)を述べると要件としてくれることがわかったので少し(かなり)ラフに書いてみます。