Suche senden
Hochladen
社内 DDD 勉強会 #5
•
Als PPTX, PDF herunterladen
•
0 gefällt mir
•
810 views
shingo suzuki
Folgen
社内で行った DDD 勉強会のスライドです
Weniger lesen
Mehr lesen
Software
Melden
Teilen
Melden
Teilen
1 von 27
Jetzt herunterladen
Empfohlen
社内で行った DDD 勉強会の第3回です。 DDD 本の第3部の話になります。
社内 DDD 勉強会 #4
社内 DDD 勉強会 #4
shingo suzuki
社内で行った DDD 勉強会の第3回です。 DDD 本の第7章の話になります。
社内 DDD 勉強会 #3
社内 DDD 勉強会 #3
shingo suzuki
社内勉強会の資料。DDD 本の第2部あたりの話
社内 DDD 勉強会 #2
社内 DDD 勉強会 #2
shingo suzuki
SRA社内での勉強会資料
社内 DDD 勉強会第1回
社内 DDD 勉強会第1回
shingo suzuki
ドメインロジックに集中する。ソフトウェアの中核課題は、ドメインオブジェクトの分析設計。モデル、要件定義、仕様記述という分析活動を実践するための3つの技法(DDD,RDRA,ICONIX)を簡単に紹介。
ドメイン駆動設計 分析しながら設計する
ドメイン駆動設計 分析しながら設計する
増田 亨
ドメイン駆動設計の実践力に転機が訪れる時。 チームがオブジェクト指向を体で覚えた時。 チームがインクリメンタルな設計を体で覚えた時。 チームでオブジェクト指向とインクリメンタルな設計を体で覚えるための指針。 QCon Tokyo 2016
ドメイン駆動設計の学習曲線とブレークポイント
ドメイン駆動設計の学習曲線とブレークポイント
増田 亨
ドメイン駆動設計に戦略的に取り組むための基本パターン「コアドメイン」について、4つの現場のインタビュー結果と、それをもとに、みんなで語り合ってみるワークショップ
ドメイン駆動設計 コアドメインを語り合ってみよう
ドメイン駆動設計 コアドメインを語り合ってみよう
増田 亨
ドメインロジックに焦点をあてる。 それが、ドメイン駆動設計の基本。 ドメイン駆動設計の考え方とやり方の説明と、実践基盤としての Spring Framework/Spring Boot を使った事例の紹介。
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
増田 亨
Empfohlen
社内で行った DDD 勉強会の第3回です。 DDD 本の第3部の話になります。
社内 DDD 勉強会 #4
社内 DDD 勉強会 #4
shingo suzuki
社内で行った DDD 勉強会の第3回です。 DDD 本の第7章の話になります。
社内 DDD 勉強会 #3
社内 DDD 勉強会 #3
shingo suzuki
社内勉強会の資料。DDD 本の第2部あたりの話
社内 DDD 勉強会 #2
社内 DDD 勉強会 #2
shingo suzuki
SRA社内での勉強会資料
社内 DDD 勉強会第1回
社内 DDD 勉強会第1回
shingo suzuki
ドメインロジックに集中する。ソフトウェアの中核課題は、ドメインオブジェクトの分析設計。モデル、要件定義、仕様記述という分析活動を実践するための3つの技法(DDD,RDRA,ICONIX)を簡単に紹介。
ドメイン駆動設計 分析しながら設計する
ドメイン駆動設計 分析しながら設計する
増田 亨
ドメイン駆動設計の実践力に転機が訪れる時。 チームがオブジェクト指向を体で覚えた時。 チームがインクリメンタルな設計を体で覚えた時。 チームでオブジェクト指向とインクリメンタルな設計を体で覚えるための指針。 QCon Tokyo 2016
ドメイン駆動設計の学習曲線とブレークポイント
ドメイン駆動設計の学習曲線とブレークポイント
増田 亨
ドメイン駆動設計に戦略的に取り組むための基本パターン「コアドメイン」について、4つの現場のインタビュー結果と、それをもとに、みんなで語り合ってみるワークショップ
ドメイン駆動設計 コアドメインを語り合ってみよう
ドメイン駆動設計 コアドメインを語り合ってみよう
増田 亨
ドメインロジックに焦点をあてる。 それが、ドメイン駆動設計の基本。 ドメイン駆動設計の考え方とやり方の説明と、実践基盤としての Spring Framework/Spring Boot を使った事例の紹介。
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
増田 亨
「ドメイン駆動設計」の第4部の概要と理解の手がかり。現場での実践経験から。
3週連続DDDその3 ドメイン駆動設計 戦略的設計
3週連続DDDその3 ドメイン駆動設計 戦略的設計
増田 亨
20100324 勉強会資料(ドメイン駆動)
20100324 勉強会資料(ドメイン駆動)
Masayuki Kanou
MaruLaboの浅海ゼミでの講座のスライドです。 https://www.marulabo.net/docs/asami24/ 作業分野「設計」についてアーキテクチャ設計、コンポーネント設計、ドメイン設計、UX/UI設計の順に 取り上げています。 前回、今回、次回の3回にわたってドメイン設計について説明しています。 ドメイン・モデルの設計では、対象のビジネス領域のモデルであるドメイン・オブジェクトとドメイン・オブジェクト を操作するメカニズムの2つの切り口があります。 今回はドメイン・オブジェクトの設計について説明しました。 次回はドメイン・コンポーネント設計、ドメイン・オブジェクト設計をふまえてドメイン設計の実現について説明する予定です。
設計/ドメイン設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第24回】
設計/ドメイン設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第24回】
Tomoharu ASAMI
関西DDD.java ドメイン駆動設計の原則、全17章の要点、実践してみて学んだこと
「ドメイン駆動設計」の複雑さに立ち向かう
「ドメイン駆動設計」の複雑さに立ち向かう
増田 亨
ドメイン駆動設計の捉え方 20150718
ドメイン駆動設計の捉え方 20150718
Mao Ohnishi
前半は、ドメイン駆動設計を特徴づける4つのポイントを、後半は、エヴァンス本の構成を俯瞰しながら、解説してみました。 gunma.web #30 での発表資料。
ドメイン駆動設計とは何か 【入門編】
ドメイン駆動設計とは何か 【入門編】
増田 亨
アジャイル札幌 ドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解する
増田 亨
ドメインロジックの実装方法とドメイン駆動設計
ドメインロジックの実装方法とドメイン駆動設計
Tadayoshi Sato
JJUG CCC 2016 Fall にて発表した資料です。
【JJUG CCC 2016 Fall 公開版】ドメイン駆動設計とscala 〜既存プロジェクトへの適用〜
【JJUG CCC 2016 Fall 公開版】ドメイン駆動設計とscala 〜既存プロジェクトへの適用〜
Fumiyasu Sumiya
ドメイン駆動設計で、モデリングをどうやっているか、それをどう実装に結びつけているかの事例紹介。 RDRA+ICONXをベースに、より機敏なやり方への挑戦。実践的なオブジェクト指向設計。
ドメイン駆動で開発する ラフスケッチから実装まで
ドメイン駆動で開発する ラフスケッチから実装まで
増田 亨
20130202 ドメイン駆動設計読書会at名古屋のお誘い
20130202 ドメイン駆動設計読書会at名古屋のお誘い
Ryo RKTM
20130202 ドメイン駆動設計読書会at名古屋のお誘い β
20130202 ドメイン駆動設計読書会at名古屋のお誘い β
Ryo RKTM
DeNAでは、メインのシステム基盤をオンプレミスからpublicクラウドへと全面移行する決定をしました。創業時より数々のサービスをオンプレミスで提供し、高品質・低コストの大規模なインフラをつくりあげてきたDeNAですが、なぜ今回クラウドへの舵を切ったのか。 本セッションでは、その背景には何があったのか、どのように低コストを維持する目処を立て、移行の決断をしたのかをお話します。オートスケールやスポットインスタンスの利用の工夫など、オンプレミスからクラウドへのシフトを考えている方だけでなく、現在クラウドを利用されている方にもお楽しみいただけるように話します。
DeNAのインフラ戦略 〜クラウドジャーニーの舞台裏〜 [DeNA TechCon 2019]
DeNAのインフラ戦略 〜クラウドジャーニーの舞台裏〜 [DeNA TechCon 2019]
DeNA
MaruLaboの浅海ゼミでの講座のスライドです。 https://www.marulabo.net/docs/asami26/ 作業分野「設計」についてアーキテクチャ設計、コンポーネント設計、ドメイン設計、UX/UI設計の順に 取り上げています。 今回はドメイン設計の4回目です。 前回ドメイン・オブジェクト設計について取り上げましたが、ドメイン・オブジェクトの実現のために少し深掘りの内容を解説しました。 ドメイン・エンティティの種別、ドメイン・エンティティとドメイン・バリューの関係について説明しています。
設計/ドメイン設計(4) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第26回】
設計/ドメイン設計(4) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第26回】
Tomoharu ASAMI
学生LT発表コンテンツ
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
Atsushi Nakamura
ドメイン駆動設計の考え方、3原則、基本テクニック 1章から7章
3週連続DDDその1 ドメイン駆動設計の基本を理解する
3週連続DDDその1 ドメイン駆動設計の基本を理解する
増田 亨
de:code 2016のセッションで使用した資料です。
始めよう! ドメイン駆動設計&マイクロサービス開発 ~C# と Azure Service Fabric で最高の DDD 開発を~
始めよう! ドメイン駆動設計&マイクロサービス開発 ~C# と Azure Service Fabric で最高の DDD 開発を~
貴志 上坂
ドメイン駆動設計 モデリング/実装ガイド https://little-hands.booth.pm/items/1835632 発売記念に、本書の1,2章の内容を中心にDDDの概要について解説する勉強会です。
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
Koichiro Matsuoka
2015/12/16 Sansan DDD 勉強会#2
2015-12-16 某S社、出直しDDDってるってよ
2015-12-16 某S社、出直しDDDってるってよ
kumake
今、ドメイン駆動設計は世界的にかつてない盛り上がりを見せています。来年2016年1月には、ドメイン駆動設計の提唱者で書籍『ドメイン駆動設計』の著者であるEric Evans氏や書籍『実践ドメイン駆動設計』の著者であるVaughn Vernon氏を始めとする、そうそうたる発表者らによるドメイン駆動設計のカンファレンス「Domain-Driven Design Europe」が開催されます。しかし、この盛り上がりに対して、ドメイン駆動設計の中心的課題といえるドメインモデルの設計に関する議論は(少なくとも日本では)深まっているようには見えません。ドメイン駆動設計の重要な原則である「モデル駆動設計」は問題ドメインの概念に根ざした分析、設計、実装における単一のモデルの開発を目指すものですが、それは具体的にはどのようにすればよいのか、自信を持って答えられる人はいるのでしょうか。 Domain-Driven Design Europeの発表者の一人としてJim Coplienの名があります。Eric Evans氏による書籍『ドメイン駆動設計』(2003年)に先駆けること5年、日本ではソフトウェアパターンやアジャイルのリーダーとして知られるJim Coplien氏は実用書として『マルチパラダイムデザイン』(1998年)を世に出しました。『マルチパラダイムデザイン』はそのようなドメイン駆動設計の不明点に明確に答える数少ない書籍であり、ドメイン駆動設計のフォロワーのみならず、すべてのソフトウェア開発者に読んでほしい奥義の書とさえいえるものです。 このセッションでは、マルチパラダイムデザインの観点から、分析、設計、実装とドメインモデルの関係について考察を行います。そして、マルチパラダイムデザインを適用した具体的なドメインモデルの設計手法として、フレームワーク開発による設計を提案します。
Frameworks We Live By: Design by day-to-day framework development: Multi-para...
Frameworks We Live By: Design by day-to-day framework development: Multi-para...
Atsuhiro Kubo
社内システムパフォーマンス勉強会の第8回 詳解システム・パフォーマンス 10 章 ネットワーク
システムパフォーマンス勉強会#8
システムパフォーマンス勉強会#8
shingo suzuki
社内システムパフォーマンス勉強会の第6回 詳解システム・パフォーマンス 7 章 メモリ
システムパフォーマンス勉強会#6
システムパフォーマンス勉強会#6
shingo suzuki
Weitere ähnliche Inhalte
Ähnlich wie 社内 DDD 勉強会 #5
「ドメイン駆動設計」の第4部の概要と理解の手がかり。現場での実践経験から。
3週連続DDDその3 ドメイン駆動設計 戦略的設計
3週連続DDDその3 ドメイン駆動設計 戦略的設計
増田 亨
20100324 勉強会資料(ドメイン駆動)
20100324 勉強会資料(ドメイン駆動)
Masayuki Kanou
MaruLaboの浅海ゼミでの講座のスライドです。 https://www.marulabo.net/docs/asami24/ 作業分野「設計」についてアーキテクチャ設計、コンポーネント設計、ドメイン設計、UX/UI設計の順に 取り上げています。 前回、今回、次回の3回にわたってドメイン設計について説明しています。 ドメイン・モデルの設計では、対象のビジネス領域のモデルであるドメイン・オブジェクトとドメイン・オブジェクト を操作するメカニズムの2つの切り口があります。 今回はドメイン・オブジェクトの設計について説明しました。 次回はドメイン・コンポーネント設計、ドメイン・オブジェクト設計をふまえてドメイン設計の実現について説明する予定です。
設計/ドメイン設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第24回】
設計/ドメイン設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第24回】
Tomoharu ASAMI
関西DDD.java ドメイン駆動設計の原則、全17章の要点、実践してみて学んだこと
「ドメイン駆動設計」の複雑さに立ち向かう
「ドメイン駆動設計」の複雑さに立ち向かう
増田 亨
ドメイン駆動設計の捉え方 20150718
ドメイン駆動設計の捉え方 20150718
Mao Ohnishi
前半は、ドメイン駆動設計を特徴づける4つのポイントを、後半は、エヴァンス本の構成を俯瞰しながら、解説してみました。 gunma.web #30 での発表資料。
ドメイン駆動設計とは何か 【入門編】
ドメイン駆動設計とは何か 【入門編】
増田 亨
アジャイル札幌 ドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解する
増田 亨
ドメインロジックの実装方法とドメイン駆動設計
ドメインロジックの実装方法とドメイン駆動設計
Tadayoshi Sato
JJUG CCC 2016 Fall にて発表した資料です。
【JJUG CCC 2016 Fall 公開版】ドメイン駆動設計とscala 〜既存プロジェクトへの適用〜
【JJUG CCC 2016 Fall 公開版】ドメイン駆動設計とscala 〜既存プロジェクトへの適用〜
Fumiyasu Sumiya
ドメイン駆動設計で、モデリングをどうやっているか、それをどう実装に結びつけているかの事例紹介。 RDRA+ICONXをベースに、より機敏なやり方への挑戦。実践的なオブジェクト指向設計。
ドメイン駆動で開発する ラフスケッチから実装まで
ドメイン駆動で開発する ラフスケッチから実装まで
増田 亨
20130202 ドメイン駆動設計読書会at名古屋のお誘い
20130202 ドメイン駆動設計読書会at名古屋のお誘い
Ryo RKTM
20130202 ドメイン駆動設計読書会at名古屋のお誘い β
20130202 ドメイン駆動設計読書会at名古屋のお誘い β
Ryo RKTM
DeNAでは、メインのシステム基盤をオンプレミスからpublicクラウドへと全面移行する決定をしました。創業時より数々のサービスをオンプレミスで提供し、高品質・低コストの大規模なインフラをつくりあげてきたDeNAですが、なぜ今回クラウドへの舵を切ったのか。 本セッションでは、その背景には何があったのか、どのように低コストを維持する目処を立て、移行の決断をしたのかをお話します。オートスケールやスポットインスタンスの利用の工夫など、オンプレミスからクラウドへのシフトを考えている方だけでなく、現在クラウドを利用されている方にもお楽しみいただけるように話します。
DeNAのインフラ戦略 〜クラウドジャーニーの舞台裏〜 [DeNA TechCon 2019]
DeNAのインフラ戦略 〜クラウドジャーニーの舞台裏〜 [DeNA TechCon 2019]
DeNA
MaruLaboの浅海ゼミでの講座のスライドです。 https://www.marulabo.net/docs/asami26/ 作業分野「設計」についてアーキテクチャ設計、コンポーネント設計、ドメイン設計、UX/UI設計の順に 取り上げています。 今回はドメイン設計の4回目です。 前回ドメイン・オブジェクト設計について取り上げましたが、ドメイン・オブジェクトの実現のために少し深掘りの内容を解説しました。 ドメイン・エンティティの種別、ドメイン・エンティティとドメイン・バリューの関係について説明しています。
設計/ドメイン設計(4) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第26回】
設計/ドメイン設計(4) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第26回】
Tomoharu ASAMI
学生LT発表コンテンツ
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
Atsushi Nakamura
ドメイン駆動設計の考え方、3原則、基本テクニック 1章から7章
3週連続DDDその1 ドメイン駆動設計の基本を理解する
3週連続DDDその1 ドメイン駆動設計の基本を理解する
増田 亨
de:code 2016のセッションで使用した資料です。
始めよう! ドメイン駆動設計&マイクロサービス開発 ~C# と Azure Service Fabric で最高の DDD 開発を~
始めよう! ドメイン駆動設計&マイクロサービス開発 ~C# と Azure Service Fabric で最高の DDD 開発を~
貴志 上坂
ドメイン駆動設計 モデリング/実装ガイド https://little-hands.booth.pm/items/1835632 発売記念に、本書の1,2章の内容を中心にDDDの概要について解説する勉強会です。
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
Koichiro Matsuoka
2015/12/16 Sansan DDD 勉強会#2
2015-12-16 某S社、出直しDDDってるってよ
2015-12-16 某S社、出直しDDDってるってよ
kumake
今、ドメイン駆動設計は世界的にかつてない盛り上がりを見せています。来年2016年1月には、ドメイン駆動設計の提唱者で書籍『ドメイン駆動設計』の著者であるEric Evans氏や書籍『実践ドメイン駆動設計』の著者であるVaughn Vernon氏を始めとする、そうそうたる発表者らによるドメイン駆動設計のカンファレンス「Domain-Driven Design Europe」が開催されます。しかし、この盛り上がりに対して、ドメイン駆動設計の中心的課題といえるドメインモデルの設計に関する議論は(少なくとも日本では)深まっているようには見えません。ドメイン駆動設計の重要な原則である「モデル駆動設計」は問題ドメインの概念に根ざした分析、設計、実装における単一のモデルの開発を目指すものですが、それは具体的にはどのようにすればよいのか、自信を持って答えられる人はいるのでしょうか。 Domain-Driven Design Europeの発表者の一人としてJim Coplienの名があります。Eric Evans氏による書籍『ドメイン駆動設計』(2003年)に先駆けること5年、日本ではソフトウェアパターンやアジャイルのリーダーとして知られるJim Coplien氏は実用書として『マルチパラダイムデザイン』(1998年)を世に出しました。『マルチパラダイムデザイン』はそのようなドメイン駆動設計の不明点に明確に答える数少ない書籍であり、ドメイン駆動設計のフォロワーのみならず、すべてのソフトウェア開発者に読んでほしい奥義の書とさえいえるものです。 このセッションでは、マルチパラダイムデザインの観点から、分析、設計、実装とドメインモデルの関係について考察を行います。そして、マルチパラダイムデザインを適用した具体的なドメインモデルの設計手法として、フレームワーク開発による設計を提案します。
Frameworks We Live By: Design by day-to-day framework development: Multi-para...
Frameworks We Live By: Design by day-to-day framework development: Multi-para...
Atsuhiro Kubo
Ähnlich wie 社内 DDD 勉強会 #5
(20)
3週連続DDDその3 ドメイン駆動設計 戦略的設計
3週連続DDDその3 ドメイン駆動設計 戦略的設計
20100324 勉強会資料(ドメイン駆動)
20100324 勉強会資料(ドメイン駆動)
設計/ドメイン設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第24回】
設計/ドメイン設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第24回】
「ドメイン駆動設計」の複雑さに立ち向かう
「ドメイン駆動設計」の複雑さに立ち向かう
ドメイン駆動設計の捉え方 20150718
ドメイン駆動設計の捉え方 20150718
ドメイン駆動設計とは何か 【入門編】
ドメイン駆動設計とは何か 【入門編】
ドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解する
ドメインロジックの実装方法とドメイン駆動設計
ドメインロジックの実装方法とドメイン駆動設計
【JJUG CCC 2016 Fall 公開版】ドメイン駆動設計とscala 〜既存プロジェクトへの適用〜
【JJUG CCC 2016 Fall 公開版】ドメイン駆動設計とscala 〜既存プロジェクトへの適用〜
ドメイン駆動で開発する ラフスケッチから実装まで
ドメイン駆動で開発する ラフスケッチから実装まで
20130202 ドメイン駆動設計読書会at名古屋のお誘い
20130202 ドメイン駆動設計読書会at名古屋のお誘い
20130202 ドメイン駆動設計読書会at名古屋のお誘い β
20130202 ドメイン駆動設計読書会at名古屋のお誘い β
DeNAのインフラ戦略 〜クラウドジャーニーの舞台裏〜 [DeNA TechCon 2019]
DeNAのインフラ戦略 〜クラウドジャーニーの舞台裏〜 [DeNA TechCon 2019]
設計/ドメイン設計(4) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第26回】
設計/ドメイン設計(4) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第26回】
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
3週連続DDDその1 ドメイン駆動設計の基本を理解する
3週連続DDDその1 ドメイン駆動設計の基本を理解する
始めよう! ドメイン駆動設計&マイクロサービス開発 ~C# と Azure Service Fabric で最高の DDD 開発を~
始めよう! ドメイン駆動設計&マイクロサービス開発 ~C# と Azure Service Fabric で最高の DDD 開発を~
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
2015-12-16 某S社、出直しDDDってるってよ
2015-12-16 某S社、出直しDDDってるってよ
Frameworks We Live By: Design by day-to-day framework development: Multi-para...
Frameworks We Live By: Design by day-to-day framework development: Multi-para...
Mehr von shingo suzuki
社内システムパフォーマンス勉強会の第8回 詳解システム・パフォーマンス 10 章 ネットワーク
システムパフォーマンス勉強会#8
システムパフォーマンス勉強会#8
shingo suzuki
社内システムパフォーマンス勉強会の第6回 詳解システム・パフォーマンス 7 章 メモリ
システムパフォーマンス勉強会#6
システムパフォーマンス勉強会#6
shingo suzuki
社内でおこなった機械学習勉強会の資料 詳解ディープラーニングの 4.5 高度なテクニック
社内機械学習勉強会 #5
社内機械学習勉強会 #5
shingo suzuki
社内システムパフォーマンス勉強会の第5回 詳解システム・パフォーマンス 6 章 CPUの話
システムパフォーマンス勉強会#5
システムパフォーマンス勉強会#5
shingo suzuki
社内で行ったシステムパフォーマンス勉強会の第4回(誤字修正版)
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4
shingo suzuki
社内で行ったシステムパフォーマンス勉強会の第4回。
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4
shingo suzuki
社内で行ったシステムパフォーマンス勉強会の資料
システムパフォーマンス勉強会#1
システムパフォーマンス勉強会#1
shingo suzuki
社内システムパフォーマンス勉強会資料 #0
システムパフォーマンス勉強会 #0
システムパフォーマンス勉強会 #0
shingo suzuki
会社で行ったドメイン駆動設計勉強会について、部会で報告したときの資料
ドメイン駆動設計勉強会発表
ドメイン駆動設計勉強会発表
shingo suzuki
Google I/O 2016 に参加したときの発表資料
Google I/O 2016 報告会
Google I/O 2016 報告会
shingo suzuki
社内勉強会のスライド
SPIN で
SPIN で
shingo suzuki
Mehr von shingo suzuki
(11)
システムパフォーマンス勉強会#8
システムパフォーマンス勉強会#8
システムパフォーマンス勉強会#6
システムパフォーマンス勉強会#6
社内機械学習勉強会 #5
社内機械学習勉強会 #5
システムパフォーマンス勉強会#5
システムパフォーマンス勉強会#5
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#1
システムパフォーマンス勉強会#1
システムパフォーマンス勉強会 #0
システムパフォーマンス勉強会 #0
ドメイン駆動設計勉強会発表
ドメイン駆動設計勉強会発表
Google I/O 2016 報告会
Google I/O 2016 報告会
SPIN で
SPIN で
社内 DDD 勉強会 #5
1.
DDD勉強会 #5 SRA 産業第1事業部 鈴木真吾 @giantneco
2.
注意事項 • 発表資料は後で SlideShare
にあげます
3.
今回の範囲 • 第1部 ドメインモデルを機能させる •
第2部 モデル駆動設計の構成要素 • 第3部 より深い洞察へ向かうリファクタリング • 第4部 戦略的設計 • 蒸留 • コンテキスト • 大規模な構造
4.
今回の内容 • 戦略的な設計 • 複雑なプロジェクトにどう対処するか? •
巨大なモデル • 巨大なチーム • テクニック • ドメインを蒸留する • 境界づけられたコンテキストでモデルを分割する • 大規模な構造を設計する
5.
ドメインの「蒸留」 ドメインから「コア」となる部分を見つける • コアドメイン • アプリケーションの目的を最もよく表現しているサブドメイン •
優先順位高、このドメインに一番注力するべき • 支援サブドメイン • アプリケーション固有であるが、補助的なもの • 優先順位中、必要であるがコアドメインより優先度は低くする • 汎用サブドメイン • アプリケーション固有でないドメイン • 優先順位低、既製品や外部への委託も検討
6.
会計処理ソフトのドメイン レポートサブドメイン (支援) 簿記サブドメイン (コア) 印刷サブドメイン (汎用) グラフサブドメイン (汎用)
7.
コアとなるドメインを切り出す • コアドメインであること強調する • コアドメインの説明と責務を記述したドキュメントを置いておく •
コアであることを示すフラグを立てておく • 本質的でないものを分離する • アルゴリズムなどは別個の軽量なフレームワークに分離する • ドメイン内でも補助的なモデルがあれ隔離する • 抽象化して関係を減らす • コアドメインでは重要な関係・相互作用だけのこす • 詳細な実装はサブドメイン側のモジュールに移動する
8.
境界づけられたコンテキスト • 巨大な単一のモデルは扱いづらい • 調整にかかるオーバーヘッドが大きくなりすぎる •
ある機能についてはモデルが要求を満たしていないかもしれない • モデルが複数あるとどのコンテキストで適用するべきか不明瞭 そこで • 明確に境界を設けたコンテキストをつくる • ドメインモデルはある一つのコンテキストに属するようにする
9.
もしモデルを分割しないとしたら • 戦略として、こまめにマージを行いモデルの分離を防ぐ必要が ある • 大きく乖離した後のマージは難しくなる •
プロジェクトでは以下の活動が必要になる • マージテクニック • 自動化されたビルド・デプロイ • 自動化されたテストスイート • 変更が統合されない期間に対して妥当な短さの上限を設定するルール • 決まってないプロジェクトは多い気がする
10.
コンテキストでモデルを分割する • コンテキスト境界は次の視点で決める • チーム編成 •
アプリケーション特有の機能 • コードベースetcの物理的な観点 • サブドメインに一致しているとよい • コンテキスト境界を定めたら、コンテ キストマップを作成する • コンテキスト同士の関係を記述するもの • 簡単な図で十分 変換処理、API呼 び出しなど
11.
会計処理ソフトのコンテキストマップの例 レポートサブドメイン (支援) 簿記サブドメイン (コア) 印刷サブドメイン (汎用) グラフサブドメイン (汎用) 簿記コンテキスト レポートコンテキスト グラフコンテキスト 印刷コンテキスト
12.
会計処理ソフトのコンテキストマップの例の別解 レポートサブドメイン (支援) 簿記サブドメイン (コア) 印刷サブドメイン (汎用) グラフサブドメイン (汎用) 簿記コンテキスト(サーバ) レポートコンテキスト グラフコンテキスト 印刷コンテキスト 簿記コンテキスト(クライアント)
13.
コンテキスト間の関係パターン ベストプラクティスではない。 プロジェクトがどのような状況にあるか、のパターン集 • 大きな泥だんご • 共有カーネル •
顧客/供給者 • 順応者 • 腐敗防止層 • 別々の道 • 公開ホストサービス • 公表された言語
14.
大きな泥だんご • “大きな泥だんご”システムは、通常、長期間開発されたもので あり、多様な部品からなる異なる個々人が開発して構成された ものである。体系立てられたアーキテクチャやプログラミング 研修を学んでいない人々によって構築されたシステムは、しば しばこのようなシステムになる。(wikipediaから引用) • もっとも普及しているパターン •
たいていの場合、巨大なひとつのコンテキストしか存在しない • レガシーなシステムなど • こういうパターンに出会ってしまったら、ドメインモデリング は諦めて隔離する
15.
共有カーネル • 一部のモデルを複数のコンテ キスト共有するパターン • このパターンでは •
2つのチームで共有するドメイ ンモデルのサブセットを合意す る • 頻繁に統合する
16.
顧客/供給者 • 上流・下流に分かれている場合 • 下流は上流に依存する •
上流は下流に依存されない • このパターンでは: • 2つのチーム間に明確な顧客/供給 者の関係を確立する • 計画には下流のチームが上流の チームに対して顧客としての役割 を果たすようにすること • 下流の要件に必要となる作業につ いて顧客・供給者で交渉する 供給者 顧客
17.
順応者 • 顧客/供給者の関係に近いが、上流側に 下流チームの要求にこたえる動機がな い • この場合 •
上流チームのモデルに隷従する。下 流側でモデルを作らない • 上流のモデルを使用し、下流側では モデルを立てない 上流 下流
18.
腐敗防止層 • 他の巨大なシステムと接続する必要があ る場合 • レガシーなシステム •
大きな泥だんご • この場合: • 隔離するレイヤを作成する 素晴らしい設計 ひどいシステム 腐敗防止層 アダプター ファサードなど
19.
公開ホストサービス • あるコンテキストが多くの外部から共有される • ひとつひとつの関係ごとに変換処理を用意するのはコストが高い •
この場合 • プロトコルを公開して共有して利用できるようにする • プロトコルを公開し、サブシステムと統合する必要がある人が使用で きるようにする
20.
公表された言語 • 公開ホストサービスに近いが、既存のドメインモデル間の直接 的な変換では適切でない • 既存のモデルが複雑すぎたり、逆に過度に分割されている •
この場合 • 必要なドメインの情報をコミュニケーションにおける共通の媒体とし て表現できる、明確にドキュメント化された共有言語を使用する • XML や JSON、ある特定の DSL なども
21.
大規模な構造を設計する • 大規模な構造を設計する原則 • 反復的な開発 •
システムのメタファを共有する • 責務を持ったレイヤに分割する • 知識レベルと業務レベルを分離する
22.
反復的な開発 • ウォーターフォールモデルは避けた方がよい • 反復的に開発して、設計と実装をともに進化させる •
場合によっては途中で全く別の種類の構造に変更する • 設計とモデルに関する意思決定を制約しすぎない
23.
システムのメタファを共有する • システムを説明するのに役に立つメタファがあれば設計に採用 する • メタファを中心に設計し、ユビキタス言語に取り入れる •
ただし • メタファは不正確なものなので、常に障害にそなえる • 素朴な=ドメインモデルそのものをメタファにしない
24.
責務を持ったレイヤに分割する • 概念上の依存関係を調べること • ドメインに自然なレイヤが設定出来たらそれに責務を割り当て る •
ドメインオブジェクト・集約・モジュールの責務がレイヤに与 えられた責務の範囲に収まるようにする
25.
責務を持ったレイヤの例 経路偏向ポリシー経路選択サービス 顧客 経路仕様 輸送日程 貨物 運送工程 意思決定支援 業務 能力 • 意思決定支援レイヤ • 計画作成と意思 決定 •
業務レイヤ • 企業の活動 • 能力レイヤ • 業務を行うため のリソース
26.
知識レベルと業務レベルの分離 • 業務レベルオブジェクトに対して、知識レ ベルのオブジェクトを作成する • 知識レベルのオブジェクトは、業務レ ベルのオブジェクトがどう振る舞うべ きかを記述する •
例) • 「従業員」の「給与」は従業員自体で なく、「従業員のタイプ」で決定され る • 「従業員」とは別に「従業員のタイ プ」クラスを作る 物事 何らかの知識 物事のタイプ 知識レベル 業務レベル 振る舞いの ストラテジ
27.
まとめ • ドメインをリファクタリングしてコアとなるドメインを探す • コンテキストを作り、巨大なモデルを分割する •
大規模なプロジェクトでもよく分割されたモデルを目指す
Jetzt herunterladen