あなたとわたしではなくて。
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モデル(派)と言ってるのかな。
どっちをイメージして、アーキテクチャを設計するかで変わる感じに見える。