福岡DDD勉強会 vol.1
スケジュール
19:30-19:40 自己紹介
19:40-20:00 DDD概略(@yuuto)
20:00-22:00 未定!
スケジュール
19:30-19:40 自己紹介
19:40-20:00 DDD概略(@yuuto)
20:00-22:00 未定!
自己紹介
・名前
・普段やってること
・今日何を期待してきたか
・DDDについてひとこと
スケジュール
19:30-19:40 自己紹介
19:40-20:00 DDD概略(@yuuto)
20:00-22:00 未定!
DDD?
ドメイン駆動設計
(Domain Driven Design)
http://www.amazon.co.jp/dp/4798121967
DDD?
ドメイン駆動設計
(Domain Driven Design)
複雑なシステムは
ドメインモデルベースで
設計するべき
http://www.amazon.co.jp/dp/4798121967
ドメイン?
・ソフトウェアが対象とする業務や業態
・現実世界そのもの
・ドメインを抽象化
→ドメインモデル
・抽象化=モデリング
ソフトウェアが対象とするビジネス業態を適
切に抽象化したドメインモデルをベースに会
議・設計・開発・運用を行う
DDDをざっくり言うと・・・
設計(モデリング)
• モデル
o 図ではない。概念。
• 代表的な表現は2つ
o 図
 空間的、視覚的
 UML, フローチャートetc
o 文章
 文法、意味
設計(モデリング)
• モデル
o 図ではない。概念。
• 代表的な表現は2つ
o 図
 空間的、視覚的
 UML, フローチャートetc
o 文章
 文法、意味
プロジェクトの理想
・ドメインモデルが全く過不足無く、適切な
抽象度で設計されている。
・ドメインエキスパート、アナリスト、開発
者間でソフトウェアの設計、概念(モデル)
が完全に共有されている。
プロジェクトの理想
・ドメインモデルが全く過不足無く、適切な
抽象度で設計されている。
→全ての基板、土台、安定性の要
・ドメインエキスパート、アナリスト、開発
者間でソフトウェアの設計、概念(モデル)
が完全に共有されている。
プロジェクトの理想
・ドメインモデルが全く過不足無く、適切な
抽象度で設計されている。
→全ての基板、土台、安定性の要
・ドメインエキスパート、アナリスト、開発
者間でソフトウェアの設計、概念(モデル)
が完全に共有されている。
→agile(機敏さ)、ビジネスの変化への追随
共有の難しさ
・ドメインエキスパート、アナリスト、開発
者
・興味対象の範囲、レイヤが異なる
→使用する用語がマッチしない
→共有しにくい
・ウォーターフォールの場合は一方通行
ドメインエキスパート→アナリスト→開
共有の難しさ
3つの障壁
・個人言語(人と人、人とドキュメント)
・現実(具象)と言葉(抽象)
・人とコード
共有の難しさ
共有できてないと・・・
・コミュニケーションロス
・仕様漏れ
・バグ
・デグレ
・デスマ
ユビキタス言語
・プロジェクトメンバ全員が共有する言語を
作る
・ユビキタス言語とドメインモデルは同調さ
せる
DDDの肝
・ドメインモデル
・ユビキタス言語
DDDの肝
・ドメインモデル
→人とコード
・ユビキタス言語
→人と人
ドメインに対する知識の共有・学習の効率化
おわり
スケジュール
19:30-19:40 自己紹介
19:40-20:00 DDD概略(@yuuto)
20:00-22:00 未定!

福岡DDD勉強会vol.1