CLRとは: Categories of Legitimate Reservation の略です。
ものの本によっては「賛成留保のカテゴリー」と訳されていて、わかったような分からないような感じになりますが、
エンティティやツリーの妥当性を検証して、ロジックについて良く理解できないところを理解しやすくする手法です。
簡単に言うと「ちょっと待った!それって本当?」のための方法で、間違ったことを元にして議論しないようにするために行ないます。
自分だけが理解できるツリーではチームで問題解決することが出来ないので、チームメンバーに分かりやすく伝えるためにも必要な作業です。
CLR1 明瞭性の検証 (UDEを含むエンティティ全般に必要な検証)
言葉や意味が明瞭か(意味が誰にでもちゃんと分かるか)
簡潔かつ明瞭で完全な文章になっているか?
CLR2 エンティティの存在
推測ではなく現実に存在している事実か?
2つ以上のものが合わさった複合文になっていないか
CLR3 因果関係についての検証
矢印の根本に記述されている原因は、矢印の先端に記述されている結果を生んでいるかどうか検証する
矢印のつながりが、意味的に遠くないか
直接的な因果関係があるか
CLR4 原因不十分
原因となるANDでつながってくるエンティティが他に無いか
CLR5 追加の原因
ANDではなく単独で原因となりうるエンティティが他に無いか
CLR6 原因と結果が逆
原因と結果が逆になっていないか。
◯ 火事になっている ー> 煙が出ている
X 煙が出ている ー> 火事になっている
CLR7 他の結果の存在の予見
エンティティから引き起こされる他の結果はないか