SadManです
では、具体的な回答
> 実際の世界では、品物が一点づつ返却されることだけではないと思います。
> 「1回の預かりで受け取った複数の品物を同時に返却する」、
> 「複数の預かりで別々に受け取った複数の品物を同時に返却する」、
> など様々なパターンがありそうです。
> 「現実世界」を忠実に表現すると、返却は複数の品物を持つ
> 1(返却)対多(品物)の構造となります。
>
> ところが、実際のシステム運用の場面では、
> 「個別の品物(預かり伝票など)に返却の印をつけるだけにしたい」、
> という要求だったとします。
> (要求に依存しますので、1対1となるように勝手に設定します。)
> 「システム」では1(品物)対1(返却)の構造となります。
> #SadManさんのご指摘の通りで、単なる状態の変更ですね。
>
> つまり、「現実世界」と「システム」で乖離が発生することになります。
乖離するならばモデルが間違っています
返却状態が品物に1:1だと分析されたならば
そうモデリングするべきなのですね
返却という行動から複数の品物を返す場合があるとしても
返却されるのは品物の状態なので返却行動は品物を経由して
個別の状態を遷移させると正しくモデル化されなければなりません
これはわたしがまさに言わんとした業務視点の落とし穴に思います
SadMan