DDDの前提
DDDの前提
DDDは「ビジネスにおけるソフトウェア開発」ぐらい広い領域の話をしている
The Clean Architectureと並列に出されることもあるけど、扱っている世界の広さがぜんぜん違う
DDDの中にアーキテクチャの話をもあるけど、それはDDDの世界の一部分に過ぎない
「DDD==アーキテクチャ」だと思っていると、最初から意味わからん状態になる
Domain Expertと、エンジニアやアーキテクトは別人という前提がある
だいたいのリアル世界ではそう
ドメインエキスパートが依頼してエンジニアが実装するが、
ドメインエキスパートに質問をして、実装して、その実装物を見せて、、というのはあまりうまく行かないよね
なので、DDDを使おう、になる
DDDではメンタルモデルを全員が共有する
非エンジニアにもかなりこの考え方に寄り添って貰う必要がある
https://gyazo.com/dfb11e83557195425dc1f38e42db1552
DDD とは以下のような特徴を持つ開発手法である。 ref
分析モデルと設計モデル (と実装モデル) を統一し、単独のモデルを分析から実装までに用いる (「モデル駆動設計」)
モデルの記述までしか行わず実装をしないモデラーを廃し、ソフトウェアの実装者とモデラーを融合させる (「実践的モデラ」)
ソフトウェア開発者と対象分野のエキスパート (ドメインエキスパート) が継続的に協力し、設計について理解を深め合う (「ユビキタス言語」、より深い洞察へ向かうリファクタリング、戦略的蒸留)
0063 号 巻頭言
DDDの背景を知るのに良い