Upload
yunosuke-taga
View
550
Download
0
Embed Size (px)
Citation preview
福岡 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 未定!