Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
福岡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 未定!
Upcoming SlideShare
Loading in …5
×

福岡DDD勉強会vol.1

1,643 views

Published on

Published in: Technology

福岡DDD勉強会vol.1

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

×