Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
分析しながら設計する
2017年4月12日
システム設計 増田
DDD Alliance
ドメイン駆動設計
ドメイン駆動設計
Domain-Driven Design
ソフトウェアの核心にある
複雑さに立ち向う
Tackling Complexity in the Heart of Software
ドメインロジックに集中する
focus on domain logic
プレゼンテーション層
データソース層
アプリケーション層
画面の入出力
データベース操作
データの処理手順
ドメインロジックの断片化
ドメインロジックの断片
ドメインロジックの断片
ドメインロジックの断片
プレゼンテーション層
データソース層
アプリケーション層
ドメインロジックに集中する
ドメインモデル
ドメインロジックを
ここに集約する
ドメインオブジェクトの
ネットワーク
ドメインオブジェクト
分析しながら設計する
分析活動
設計活動
ドメインオブジェクトの分析
対象領域を学習し
ドメインロジックとして実装すべき
ビジネスルールを明らかにする活動
ドメインオブジェクトの設計
ビジネスルールを
プログラミング言語で...
分析しながら設計する
search a model
that works well as both analysis and design
分析しながら設計する
search a model that works well as both analysis and design
1章 知識をかみ砕く
2章 コミュニケーションと言語の使い方
3章 モデルと実装を結びつける
5章 ソフ...
分析してから設計する
情報収集
分析
設計
運用
実装
別担当者
伝言ゲーム
過去の決定の呪い
分析しながら設計する
情報収集
分析
設計
運用
実装
day-1 day-2 day-3 …
同じメンバーで
分析しながら設計
実際に動かして
情報収集
分析しながら設計する
三つの技法
リレーションシップ駆動
要件分析
ドメイン駆動設計
オブジェクト指向
分析から実装まで
DDD RDRA ICONIX
分析のアウトプット
分析整理
モデル
要件定義
仕様
情報収集
DDD
RDRA
ICONIX
ドラゴンクエスト
モデル
竜王を倒す
重要アイテムの獲得
中核のストーリー
要件定義 アレフガルドの地図 対象世界の地図
仕様 ダンジョンの探検と戦闘
詳細ルールの発見
パターンの習得
DDD
RDRA
ICONIX
分析設計:三つの技法
モデル ソフトウェアの核心に焦点をあてる
要件定義
全体像を把握する
関係性に注目する
仕様
ビジネスルールの特定
ドメインオブジェクトへの
責務の割り当て
DDD
RDRA
ICONIX
分析しながら設計する
DDD
コアドメインとドメインロジックに集中する
モデルを探求する
プログラミング言語で表現する
分析しながら設計する
RDRA
短期間でシステムの全体像をつかむ
構成要素の洗い出し
対象領域の明確化
要素間の関係で整合性と網羅性を確保
分析しながら設計する
ICONIX
分析と設計をつなぐ「予備設計」
ユースケース記述とロバストネス分析
ビジネスルールの洗い出しと詳細化
ドメインオブジェクトへの責務の割り当て
顧客
「書籍詳細」ページ
表示する
「レビューの記入」ページ
顧客...
分析しながら設計する
三つの技法
リレーションシップ駆動
要件分析
ドメイン駆動設計
オブジェクト指向
分析から実装まで
DDD RDRA ICONIX
Nächste SlideShare
Wird geladen in …5
×

ドメイン駆動設計 分析しながら設計する

4.154 Aufrufe

Veröffentlicht am

ドメインロジックに集中する。ソフトウェアの中核課題は、ドメインオブジェクトの分析設計。モデル、要件定義、仕様記述という分析活動を実践するための3つの技法(DDD,RDRA,ICONIX)を簡単に紹介。

Veröffentlicht in: Software
  • Hello! Get Your Professional Job-Winning Resume Here - Check our website! https://vk.cc/818RFv
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier

ドメイン駆動設計 分析しながら設計する

  1. 1. 分析しながら設計する 2017年4月12日 システム設計 増田 DDD Alliance ドメイン駆動設計
  2. 2. ドメイン駆動設計 Domain-Driven Design
  3. 3. ソフトウェアの核心にある 複雑さに立ち向う Tackling Complexity in the Heart of Software
  4. 4. ドメインロジックに集中する focus on domain logic
  5. 5. プレゼンテーション層 データソース層 アプリケーション層 画面の入出力 データベース操作 データの処理手順 ドメインロジックの断片化 ドメインロジックの断片 ドメインロジックの断片 ドメインロジックの断片
  6. 6. プレゼンテーション層 データソース層 アプリケーション層 ドメインロジックに集中する ドメインモデル ドメインロジックを ここに集約する ドメインオブジェクトの ネットワーク
  7. 7. ドメインオブジェクト 分析しながら設計する 分析活動 設計活動 ドメインオブジェクトの分析 対象領域を学習し ドメインロジックとして実装すべき ビジネスルールを明らかにする活動 ドメインオブジェクトの設計 ビジネスルールを プログラミング言語で 表現する活動
  8. 8. 分析しながら設計する search a model that works well as both analysis and design
  9. 9. 分析しながら設計する search a model that works well as both analysis and design 1章 知識をかみ砕く 2章 コミュニケーションと言語の使い方 3章 モデルと実装を結びつける 5章 ソフトウェアで表現されたモデル 9章 暗黙的な概念を明示的にする 13章 より深い洞察に向かうリファクタリング 15章 蒸留 16章 大規模な構造
  10. 10. 分析してから設計する 情報収集 分析 設計 運用 実装 別担当者 伝言ゲーム 過去の決定の呪い
  11. 11. 分析しながら設計する 情報収集 分析 設計 運用 実装 day-1 day-2 day-3 … 同じメンバーで 分析しながら設計 実際に動かして 情報収集
  12. 12. 分析しながら設計する 三つの技法 リレーションシップ駆動 要件分析 ドメイン駆動設計 オブジェクト指向 分析から実装まで DDD RDRA ICONIX
  13. 13. 分析のアウトプット 分析整理 モデル 要件定義 仕様 情報収集 DDD RDRA ICONIX
  14. 14. ドラゴンクエスト モデル 竜王を倒す 重要アイテムの獲得 中核のストーリー 要件定義 アレフガルドの地図 対象世界の地図 仕様 ダンジョンの探検と戦闘 詳細ルールの発見 パターンの習得 DDD RDRA ICONIX
  15. 15. 分析設計:三つの技法 モデル ソフトウェアの核心に焦点をあてる 要件定義 全体像を把握する 関係性に注目する 仕様 ビジネスルールの特定 ドメインオブジェクトへの 責務の割り当て DDD RDRA ICONIX
  16. 16. 分析しながら設計する DDD コアドメインとドメインロジックに集中する モデルを探求する プログラミング言語で表現する
  17. 17. 分析しながら設計する RDRA 短期間でシステムの全体像をつかむ 構成要素の洗い出し 対象領域の明確化 要素間の関係で整合性と網羅性を確保
  18. 18. 分析しながら設計する ICONIX 分析と設計をつなぐ「予備設計」 ユースケース記述とロバストネス分析 ビジネスルールの洗い出しと詳細化 ドメインオブジェクトへの責務の割り当て 顧客 「書籍詳細」ページ 表示する 「レビューの記入」ページ 顧客レビューを審査する 書籍評価は範囲内か? 表示する確認ページ 「レビューを書く」ボタンをクリック はい レビューを記入して「送信」をクリックする はい
  19. 19. 分析しながら設計する 三つの技法 リレーションシップ駆動 要件分析 ドメイン駆動設計 オブジェクト指向 分析から実装まで DDD RDRA ICONIX

×