DDDとかの抽象度の高い話はなかなか分かりずらいという方もいると思うので、以下の書籍で扱っているビジネスパターンでのモデリングも併せて考えていきたいと思います。
私もまだ勉強不足というものあるし、チャレンジングな試みなので途中でヘタれるかもしれませんが、、、頑張りたいと思います。お付き合いいただければ幸いです
- 作者: Pavel Hruby,依田智夫,溝口真理子,依田光江
- 出版社/メーカー: 日経BPソフトプレス
- 発売日: 2007/08/13
- メディア: 単行本
- クリック: 7回
- この商品を含むブログ (14件) を見る
登場人物
とりあえず、今回は登場人物だけ把握しましょう。
まず、本書で主軸に掲げているREAとはなんでしょうか。
REA = Resource, Event, Agentの略で、本書では経済リソース、経済イベント、経済エージェントと表現しています。実際には下図のように契約(Contract)とコミットメント(Commitment)も含まれます。これらの概念は、ほとんどのビジネスアプリケーションに登場するので、覚えておくとよいかもしれません。
経済リソースとは
経済リソースは希少なものであり、経済エージェントにとって役に立つものです。また、ビジネスアプリケーションのユーザーにとっては、計画、監視、制御したい対象です。
例えば、製品やサービス、お金、原料、労働力などを指します。
経済エージェントとは
経済エージェン卜とは、経済リソースを制御でき、他の個人や組織に制御を移転したり、他から管理を受けたりする個人もしくは組織のことです。
例えば、顧客やベンダー、従業員、企業などがあります。
経済イベントとは
経済イベントは、企業が制御する経済リソースの価値の増加または減少を表すものです。
例えば、商品の販売や購入など即時発生的なものや、レンタルや労働力の取得、サービスの提供など継続的に発生するものも含まれます。
コミットメン卜とは
コミットメン卜は、ある経済イベントを将来実行する、という経済エージェントの約束または義務です。
例えば、受注の明細品目は、商品を販売するというコミットメントを表しています。
契約とは
契約は、増加および減少コミットメントと規約の集まりです。
規約によって指定される条件に基づいて、契約はさらにコミットメントを作り出す可能性があります。したがって、コミットメントが履行されなかった場合にどうなるかを契約で指定することができます。
例えば、受注は”商品を売って代金を得る”というコミットメントを含まれた規約です。仮に商品や代金の支払が履行されなかった場合に、ペナルティの追加コミットメントを指定することができます。
次回のエントリ(まだ先になる)では、これらのモデル間の関係を見ていきたいと思います。