S_a_k_Uの日記みたいなDB

~サクゥーと呼ばないで~

UとI

あなたとわたしではなくて。
UIとDTO/DAOを、アクタ(ユーザとDBMS)に対するインターフェースと捉えて、U字型アーキテクチャをイメージしてみる。

+--------+        +--------+
| ユーザ |       |  DBMS  |←アクタ
+========+        +========+
|   UI   |        |DTO/DAO |←インターフェース(B)
+--------+--------+--------+
|       Domain Model       |←モデル(C+E)
+--------------------------+

モデルのレイヤーはひたすら機能要件を網羅する。
また、インターフェースのレイヤーには、システムとして動作する?利用可能とする?ための制約(機能外要件?)があって、その実現に奔走する。
というイメージ。
BCE分析だと()みたいな感じ。


I字型はこんな感じ。

+------------+ 
|   ユーザ   |
+============+
|     UI     |←インターフェース(B)
+------------+
|Domain Model|←モデル(C+E)
+------------+
|  DTO/DAO   |←インターフェース(B)
+============+
|    DBMS    |
+------------+


個人的には、新規であればU字型、既存でDBがあって改造しない場合はI字型という感じかな。


ここでの議論は、U字型をドメインモデル(派)、I字型をERモデル(派)と言ってるのかな。
どっちをイメージして、アーキテクチャを設計するかで変わる感じに見える。