Submit Search
Upload
現場で役立つシステム設計の原則
•
12 likes
•
6,411 views
増田 亨
Follow
アジャイル札幌、DevLove仙台のジョイントイベントでお話させていただいた内容。
Read less
Read more
Software
Report
Share
Report
Share
1 of 21
Download now
Download to read offline
Recommended
ドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったこと
増田 亨
ドメイン駆動設計の要点は3つ。ビジネスルール・値オブジェクト・型
3週連続DDDその1 ドメイン駆動設計の基本を理解する
3週連続DDDその1 ドメイン駆動設計の基本を理解する
増田 亨
ドメイン駆動設計の考え方、3原則、基本テクニック 1章から7章
ドメイン駆動設計 複雑さに立ち向かう
ドメイン駆動設計 複雑さに立ち向かう
増田 亨
越境アジャイル勉強会 in 大阪の発表資料。ソフトウェア開発の複雑さ/不確実性に立ち向かうための考え方とやり方。ドメインとドメインロジックに集中する。モデルと実装を一致させる。オブジェクト指向+エクストリームプログラミング(XP)
「実践ドメイン駆動設計」社内読書会まとめ ~IDDD本難民に捧げる1章から7章~
「実践ドメイン駆動設計」社内読書会まとめ ~IDDD本難民に捧げる1章から7章~
A AOKI
Sansan DDD勉強会 #2の発表資料です。
毎日が越境だ!
毎日が越境だ!
増田 亨
エンジニアの学習と成長◆古い設計スタイルの呪縛を解く4つの合言葉◆「だいたいわかっている」の壁を突き抜ける5つの学習パターン
ドメインオブジェクトの設計ガイドライン
ドメインオブジェクトの設計ガイドライン
増田 亨
ドメイン駆動設計の内輪の勉強会用に作ったドメインオブジェクトの設計ガイドラインを公開します。
ドメイン駆動設計サンプルコードの徹底解説
ドメイン駆動設計サンプルコードの徹底解説
増田 亨
Java/Spring Boot/MyBatis/Thymeleafを使った、ドメイン駆動設計のサンプルコード。ビジネスルールに焦点を合わせ、計算モデルで複雑さを整理し、型指向のプログラミングで実装する、その具体例。
オブジェクト指向プログラミング入門 -- Java object-oriented programming primer
オブジェクト指向プログラミング入門 -- Java object-oriented programming primer
増田 亨
Javaで学ぶ、オブジェクト指向プログラミングの基礎知識。型とカプセル化が腹落ちすると、びっくりするくらいオブジェクト指向プログラミングがわかようになる/できるようになる
Recommended
ドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったこと
増田 亨
ドメイン駆動設計の要点は3つ。ビジネスルール・値オブジェクト・型
3週連続DDDその1 ドメイン駆動設計の基本を理解する
3週連続DDDその1 ドメイン駆動設計の基本を理解する
増田 亨
ドメイン駆動設計の考え方、3原則、基本テクニック 1章から7章
ドメイン駆動設計 複雑さに立ち向かう
ドメイン駆動設計 複雑さに立ち向かう
増田 亨
越境アジャイル勉強会 in 大阪の発表資料。ソフトウェア開発の複雑さ/不確実性に立ち向かうための考え方とやり方。ドメインとドメインロジックに集中する。モデルと実装を一致させる。オブジェクト指向+エクストリームプログラミング(XP)
「実践ドメイン駆動設計」社内読書会まとめ ~IDDD本難民に捧げる1章から7章~
「実践ドメイン駆動設計」社内読書会まとめ ~IDDD本難民に捧げる1章から7章~
A AOKI
Sansan DDD勉強会 #2の発表資料です。
毎日が越境だ!
毎日が越境だ!
増田 亨
エンジニアの学習と成長◆古い設計スタイルの呪縛を解く4つの合言葉◆「だいたいわかっている」の壁を突き抜ける5つの学習パターン
ドメインオブジェクトの設計ガイドライン
ドメインオブジェクトの設計ガイドライン
増田 亨
ドメイン駆動設計の内輪の勉強会用に作ったドメインオブジェクトの設計ガイドラインを公開します。
ドメイン駆動設計サンプルコードの徹底解説
ドメイン駆動設計サンプルコードの徹底解説
増田 亨
Java/Spring Boot/MyBatis/Thymeleafを使った、ドメイン駆動設計のサンプルコード。ビジネスルールに焦点を合わせ、計算モデルで複雑さを整理し、型指向のプログラミングで実装する、その具体例。
オブジェクト指向プログラミング入門 -- Java object-oriented programming primer
オブジェクト指向プログラミング入門 -- Java object-oriented programming primer
増田 亨
Javaで学ぶ、オブジェクト指向プログラミングの基礎知識。型とカプセル化が腹落ちすると、びっくりするくらいオブジェクト指向プログラミングがわかようになる/できるようになる
正しいものを正しく作る塾-設計コース
正しいものを正しく作る塾-設計コース
増田 亨
第2シーズンに向けて、設計コースの内容と進め方について、説明会の資料
オブジェクト指向プログラミングのためのモデリング入門
オブジェクト指向プログラミングのためのモデリング入門
増田 亨
オブジェクト指向では、モデリング(分析)、設計、実装は、切れ目のない一体の活動。初期の分析は初期の設計であり、初期の実装。毎日分析し、毎日設計し、毎日実装しながら、一歩一歩、モデルも実装も進化させていく。
ドメイン駆動設計 ( DDD ) をやってみよう
ドメイン駆動設計 ( DDD ) をやってみよう
増田 亨
ドメイン駆動設計 Domain-Driven Design ( DDD ) 準備 / スタートアップ / ブラッシュアップ / チャレンジ / 参考書籍 /
リーンなコードを書こう:実践的なオブジェクト指向設計
リーンなコードを書こう:実践的なオブジェクト指向設計
増田 亨
DevLove仙台 オブジェクト設計とリーン開発、その実践 変更しやすく、コードを改善する
ドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解する
増田 亨
アジャイル札幌 ドメイン駆動設計 基本を理解する
現場で役立つシステム設計の原則
現場で役立つシステム設計の原則
増田 亨
DDD Alliance での発表内容。イベント参加者に事前記入してもらった質問や意見への私からの回答
イミュータブルデータモデルの極意
イミュータブルデータモデルの極意
Yoshitaka Kawashima
2021/11/24 「イミュータブルでゆこう」イベントの資料です。 データをリソースとイベントに場合分けして考えようという至極単純な話を1時間ほどしました。
EventStormingワークショップ 〜かつてない図書館をモデリングしてみよう〜
EventStormingワークショップ 〜かつてない図書館をモデリングしてみよう〜
TIS Inc.
イベント「EventStormingワークショップ 〜かつてない図書館をモデリングしてみよう〜」 の説明資料です。 Big Picture Workshopのやり方を解説しています。
ドメイン駆動で開発する ラフスケッチから実装まで
ドメイン駆動で開発する ラフスケッチから実装まで
増田 亨
ドメイン駆動設計で、モデリングをどうやっているか、それをどう実装に結びつけているかの事例紹介。 RDRA+ICONXをベースに、より機敏なやり方への挑戦。実践的なオブジェクト指向設計。
リッチなドメインモデル 名前探し
リッチなドメインモデル 名前探し
増田 亨
java_ja java_ja_ddd 2013-3-22 発表。ドメイン駆動設計(DDD)の実践
DDD sample code explained in Java
DDD sample code explained in Java
増田 亨
2019-02-18 #jsug ドメイン駆動設計サンプルコード徹底解説
ドメイン駆動設計のための Spring の上手な使い方
ドメイン駆動設計のための Spring の上手な使い方
増田 亨
ドメイン駆動設計の4つの基本活動、Springのプログラミングモデル、ドメイン駆動設計のためのSpringの使い方
ドメイン駆動設計の学習曲線とブレークポイント
ドメイン駆動設計の学習曲線とブレークポイント
増田 亨
ドメイン駆動設計の実践力に転機が訪れる時。 チームがオブジェクト指向を体で覚えた時。 チームがインクリメンタルな設計を体で覚えた時。 チームでオブジェクト指向とインクリメンタルな設計を体で覚えるための指針。 QCon Tokyo 2016
プログラムの処方箋~健康なコードと病んだコード
プログラムの処方箋~健康なコードと病んだコード
Shigenori Sagawa
プログラミングのリファクタリング初歩に関する話題です。
実践的な設計って、なんだろう?
実践的な設計って、なんだろう?
増田 亨
Devlove 名古屋 2014-5-18 DDD, Object Oriented Design, ドメイン駆動設計 オブジェクト指向設計
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
A AOKI
Modeling Forum 2018 技術公演トラックで発表した内容となります。 VernonVaughn Vernon 氏が発表 した書籍「 実践ドメイン駆動設計(通称: IDDD )」の 流れに沿って、 DDD の基本からモデリング手法までを 幅広く紹介します。
ソフトウェア開発のやり方の改善
ソフトウェア開発のやり方の改善
増田 亨
要件定義・仕様化・実装の継ぎ目をなくす開発手法。 ビジネスロジックを軸に組み立てる。 値の種類(型)に注目してモジュール化する
ドメイン駆動設計のためのオブジェクト指向入門
ドメイン駆動設計のためのオブジェクト指向入門
増田 亨
関西DDD.java 勉強会 2016-3-5 (DDD Alliance 勉強会 2016-1-21 @東京の京都再演版)
ドメインロジックの実装方法とドメイン駆動設計
ドメインロジックの実装方法とドメイン駆動設計
Tadayoshi Sato
強いて言えば「集約どう実装するのかな、を考える」な話
強いて言えば「集約どう実装するのかな、を考える」な話
Yoshitaka Kawashima
アーキ部#13で使ったスライドです。 サンプルコードはこちらです。 https://github.com/kawasima/revisiting-domain-model
さくさく要件定義セミナー in 大阪
さくさく要件定義セミナー in 大阪
Zenji Kanzaki
RDRAの考え方を理解し、短時間でシステム地図を描くワークショップ資料です
ドメイン駆動設計の基礎知識:設計のスタイル、開発のスタイル
ドメイン駆動設計の基礎知識:設計のスタイル、開発のスタイル
増田 亨
ドメイン駆動設計の基礎知識として、プログラミングの基本単位としての「型」、型の生産者という設計スタイル、小さな実験を繰り返すという開発スタイルを簡単にまとめてみました。ちょっとディープな参考資料へのリンク付き。
More Related Content
What's hot
正しいものを正しく作る塾-設計コース
正しいものを正しく作る塾-設計コース
増田 亨
第2シーズンに向けて、設計コースの内容と進め方について、説明会の資料
オブジェクト指向プログラミングのためのモデリング入門
オブジェクト指向プログラミングのためのモデリング入門
増田 亨
オブジェクト指向では、モデリング(分析)、設計、実装は、切れ目のない一体の活動。初期の分析は初期の設計であり、初期の実装。毎日分析し、毎日設計し、毎日実装しながら、一歩一歩、モデルも実装も進化させていく。
ドメイン駆動設計 ( DDD ) をやってみよう
ドメイン駆動設計 ( DDD ) をやってみよう
増田 亨
ドメイン駆動設計 Domain-Driven Design ( DDD ) 準備 / スタートアップ / ブラッシュアップ / チャレンジ / 参考書籍 /
リーンなコードを書こう:実践的なオブジェクト指向設計
リーンなコードを書こう:実践的なオブジェクト指向設計
増田 亨
DevLove仙台 オブジェクト設計とリーン開発、その実践 変更しやすく、コードを改善する
ドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解する
増田 亨
アジャイル札幌 ドメイン駆動設計 基本を理解する
現場で役立つシステム設計の原則
現場で役立つシステム設計の原則
増田 亨
DDD Alliance での発表内容。イベント参加者に事前記入してもらった質問や意見への私からの回答
イミュータブルデータモデルの極意
イミュータブルデータモデルの極意
Yoshitaka Kawashima
2021/11/24 「イミュータブルでゆこう」イベントの資料です。 データをリソースとイベントに場合分けして考えようという至極単純な話を1時間ほどしました。
EventStormingワークショップ 〜かつてない図書館をモデリングしてみよう〜
EventStormingワークショップ 〜かつてない図書館をモデリングしてみよう〜
TIS Inc.
イベント「EventStormingワークショップ 〜かつてない図書館をモデリングしてみよう〜」 の説明資料です。 Big Picture Workshopのやり方を解説しています。
ドメイン駆動で開発する ラフスケッチから実装まで
ドメイン駆動で開発する ラフスケッチから実装まで
増田 亨
ドメイン駆動設計で、モデリングをどうやっているか、それをどう実装に結びつけているかの事例紹介。 RDRA+ICONXをベースに、より機敏なやり方への挑戦。実践的なオブジェクト指向設計。
リッチなドメインモデル 名前探し
リッチなドメインモデル 名前探し
増田 亨
java_ja java_ja_ddd 2013-3-22 発表。ドメイン駆動設計(DDD)の実践
DDD sample code explained in Java
DDD sample code explained in Java
増田 亨
2019-02-18 #jsug ドメイン駆動設計サンプルコード徹底解説
ドメイン駆動設計のための Spring の上手な使い方
ドメイン駆動設計のための Spring の上手な使い方
増田 亨
ドメイン駆動設計の4つの基本活動、Springのプログラミングモデル、ドメイン駆動設計のためのSpringの使い方
ドメイン駆動設計の学習曲線とブレークポイント
ドメイン駆動設計の学習曲線とブレークポイント
増田 亨
ドメイン駆動設計の実践力に転機が訪れる時。 チームがオブジェクト指向を体で覚えた時。 チームがインクリメンタルな設計を体で覚えた時。 チームでオブジェクト指向とインクリメンタルな設計を体で覚えるための指針。 QCon Tokyo 2016
プログラムの処方箋~健康なコードと病んだコード
プログラムの処方箋~健康なコードと病んだコード
Shigenori Sagawa
プログラミングのリファクタリング初歩に関する話題です。
実践的な設計って、なんだろう?
実践的な設計って、なんだろう?
増田 亨
Devlove 名古屋 2014-5-18 DDD, Object Oriented Design, ドメイン駆動設計 オブジェクト指向設計
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
A AOKI
Modeling Forum 2018 技術公演トラックで発表した内容となります。 VernonVaughn Vernon 氏が発表 した書籍「 実践ドメイン駆動設計(通称: IDDD )」の 流れに沿って、 DDD の基本からモデリング手法までを 幅広く紹介します。
ソフトウェア開発のやり方の改善
ソフトウェア開発のやり方の改善
増田 亨
要件定義・仕様化・実装の継ぎ目をなくす開発手法。 ビジネスロジックを軸に組み立てる。 値の種類(型)に注目してモジュール化する
ドメイン駆動設計のためのオブジェクト指向入門
ドメイン駆動設計のためのオブジェクト指向入門
増田 亨
関西DDD.java 勉強会 2016-3-5 (DDD Alliance 勉強会 2016-1-21 @東京の京都再演版)
ドメインロジックの実装方法とドメイン駆動設計
ドメインロジックの実装方法とドメイン駆動設計
Tadayoshi Sato
強いて言えば「集約どう実装するのかな、を考える」な話
強いて言えば「集約どう実装するのかな、を考える」な話
Yoshitaka Kawashima
アーキ部#13で使ったスライドです。 サンプルコードはこちらです。 https://github.com/kawasima/revisiting-domain-model
What's hot
(20)
正しいものを正しく作る塾-設計コース
正しいものを正しく作る塾-設計コース
オブジェクト指向プログラミングのためのモデリング入門
オブジェクト指向プログラミングのためのモデリング入門
ドメイン駆動設計 ( DDD ) をやってみよう
ドメイン駆動設計 ( DDD ) をやってみよう
リーンなコードを書こう:実践的なオブジェクト指向設計
リーンなコードを書こう:実践的なオブジェクト指向設計
ドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解する
現場で役立つシステム設計の原則
現場で役立つシステム設計の原則
イミュータブルデータモデルの極意
イミュータブルデータモデルの極意
EventStormingワークショップ 〜かつてない図書館をモデリングしてみよう〜
EventStormingワークショップ 〜かつてない図書館をモデリングしてみよう〜
ドメイン駆動で開発する ラフスケッチから実装まで
ドメイン駆動で開発する ラフスケッチから実装まで
リッチなドメインモデル 名前探し
リッチなドメインモデル 名前探し
DDD sample code explained in Java
DDD sample code explained in Java
ドメイン駆動設計のための Spring の上手な使い方
ドメイン駆動設計のための Spring の上手な使い方
ドメイン駆動設計の学習曲線とブレークポイント
ドメイン駆動設計の学習曲線とブレークポイント
プログラムの処方箋~健康なコードと病んだコード
プログラムの処方箋~健康なコードと病んだコード
実践的な設計って、なんだろう?
実践的な設計って、なんだろう?
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
ソフトウェア開発のやり方の改善
ソフトウェア開発のやり方の改善
ドメイン駆動設計のためのオブジェクト指向入門
ドメイン駆動設計のためのオブジェクト指向入門
ドメインロジックの実装方法とドメイン駆動設計
ドメインロジックの実装方法とドメイン駆動設計
強いて言えば「集約どう実装するのかな、を考える」な話
強いて言えば「集約どう実装するのかな、を考える」な話
Viewers also liked
さくさく要件定義セミナー in 大阪
さくさく要件定義セミナー in 大阪
Zenji Kanzaki
RDRAの考え方を理解し、短時間でシステム地図を描くワークショップ資料です
ドメイン駆動設計の基礎知識:設計のスタイル、開発のスタイル
ドメイン駆動設計の基礎知識:設計のスタイル、開発のスタイル
増田 亨
ドメイン駆動設計の基礎知識として、プログラミングの基本単位としての「型」、型の生産者という設計スタイル、小さな実験を繰り返すという開発スタイルを簡単にまとめてみました。ちょっとディープな参考資料へのリンク付き。
凡人の凡人による凡人のためのデザインパターン第一幕 Public
凡人の凡人による凡人のためのデザインパターン第一幕 Public
bonjin6770 Kurosawa
2016/06/25 でがらし会
20160526 依存関係逆転の原則
20160526 依存関係逆転の原則
bonjin6770 Kurosawa
#7 でがらし会
JSUG 20141127 「Spring Bootを用いたドメイン駆動設計」
JSUG 20141127 「Spring Bootを用いたドメイン駆動設計」
Junichiro Kazama
JSUGの勉強会で話をした際の資料です。
ドメイン駆動設計 の 実践 Part3 DDD
ドメイン駆動設計 の 実践 Part3 DDD
増田 亨
2011/6/20 redajp
越境する情シス:進化可能なアーキテクチャを手に入れる
越境する情シス:進化可能なアーキテクチャを手に入れる
増田 亨
レガシー化した既存システムを、どのように改善・発展させていくか。アーキテクチャの設計改善への取り組みの中間報告。
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
増田 亨
ドメインロジックに焦点をあてる。 それが、ドメイン駆動設計の基本。 ドメイン駆動設計の考え方とやり方の説明と、実践基盤としての Spring Framework/Spring Boot を使った事例の紹介。
Viewers also liked
(8)
さくさく要件定義セミナー in 大阪
さくさく要件定義セミナー in 大阪
ドメイン駆動設計の基礎知識:設計のスタイル、開発のスタイル
ドメイン駆動設計の基礎知識:設計のスタイル、開発のスタイル
凡人の凡人による凡人のためのデザインパターン第一幕 Public
凡人の凡人による凡人のためのデザインパターン第一幕 Public
20160526 依存関係逆転の原則
20160526 依存関係逆転の原則
JSUG 20141127 「Spring Bootを用いたドメイン駆動設計」
JSUG 20141127 「Spring Bootを用いたドメイン駆動設計」
ドメイン駆動設計 の 実践 Part3 DDD
ドメイン駆動設計 の 実践 Part3 DDD
越境する情シス:進化可能なアーキテクチャを手に入れる
越境する情シス:進化可能なアーキテクチャを手に入れる
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
Similar to 現場で役立つシステム設計の原則
20100324 勉強会資料(ドメイン駆動)
20100324 勉強会資料(ドメイン駆動)
Masayuki Kanou
Intalio japan special cloud workshop
Intalio japan special cloud workshop
Daisuke Sugai
チームで開発するための環境を整える
チームで開発するための環境を整える
onozaty
チームで開発するために整えておくべきと思うことを紹介します。 どんなアプリケーション、開発言語でも共通する基本的なことです。
「ドメイン駆動設計」の複雑さに立ち向かう
「ドメイン駆動設計」の複雑さに立ち向かう
増田 亨
関西DDD.java ドメイン駆動設計の原則、全17章の要点、実践してみて学んだこと
スマートフォンWebアプリ最適化”3つの極意”
スマートフォンWebアプリ最適化”3つの極意”
Koji Ishimoto
http://book.mycom.co.jp/special/tapapp/
中・大規模サイト作成業務フロー
中・大規模サイト作成業務フロー
senakamura
メンバーズグループ アジャイル開発への取り組み
メンバーズグループ アジャイル開発への取り組み
Hiroshi Tsukamoto
メンバーズグループのアジャイル開発への取り組みを簡単にまとめた資料です。
ドメイン駆動設計入門
ドメイン駆動設計入門
増田 亨
BPStudy #73 発表資料。
13 manual writing20130709
13 manual writing20130709
和也 高山
concrete5で社内システムのお話し
concrete5で社内システムのお話し
Tao Sasaki
Cloud Days Tokyo 2012 Fall でニフティクラウドブースでお話しした際の資料です。 都合により実際に使用したものから一部スライドを削っています。
社内 DDD 勉強会第1回
社内 DDD 勉強会第1回
shingo suzuki
SRA社内での勉強会資料
オブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツ
増田 亨
サービス開発における工程
サービス開発における工程
Hidetoshi Mori
about development method for service.
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
Daisuke Nishino
Open棟梁について - OSSコンソーシアム https://www.osscons.jp/dotNetDevelopmentInfrastructure/OpenTouryo/
アジャイルにモデリングは必要か
アジャイルにモデリングは必要か
Hiromasa Oka
2015/7/23開催のUMTPアジャイル開発事例セミナー「現場に学ぶ実践アジャイルモデリング」株式会社ゼンアーキテクツ 岡 大勝による講演資料です。【更新2版:一部図形を修正】
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
Atsushi Nakamura
学生LT発表コンテンツ
要求 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第12回】
要求 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第12回】
Tomoharu ASAMI
MaruLaboの浅海ゼミでの講座のスライドです。 https://www.marulabo.net/docs/asami12/ オブジェクト指向開発の要求モデリングについて説明します。
これって、ドメイン駆動設計?
これって、ドメイン駆動設計?
Michitaka Yumoto
エリックのDDD本を読んで30分で挫折した僕が考える、こーゆーことをやるのがドメイン駆動設計なるものなんじゃないの、という資料です。
DDD読書会@大阪(最終回)のLT資料「ドメイン駆動設計で気づいたこと~権利の概念とERP分析への適用」 #dddosaka
DDD読書会@大阪(最終回)のLT資料「ドメイン駆動設計で気づいたこと~権利の概念とERP分析への適用」 #dddosaka
akipii Oga
2014/9/21 ドメイン駆動設計LT会(DDD読書会@大阪の最終回) - ドメイン駆動設計(DDD)読書会@大阪 | Doorkeeper http://dddosaka.doorkeeper.jp/events/14611 【公開】第11回ドメイン駆動設計勉強会の発表資料「ドメイン駆動設計で気づいたこと~権利の概念とERP分析への適用」 #dddosaka: プログラマの思索 http://forza.cocolog-nifty.com/blog/2014/09/11erp-dddosaka-.html
機械学習応用システムのアーキテクチャ・デザイパターン(2020-07 ドラフトバージョン))
機械学習応用システムのアーキテクチャ・デザイパターン(2020-07 ドラフトバージョン))
HironoriTAKEUCHI1
JST未来社会 未来社会創造事業 機械学習を用いたシステムの高品質化・実用化を加速する”Engineerable AI”(eAI)プロセスパターンチーム による機械学習応用システムのアーキテクチャ・デザインパターンの整理
Similar to 現場で役立つシステム設計の原則
(20)
20100324 勉強会資料(ドメイン駆動)
20100324 勉強会資料(ドメイン駆動)
Intalio japan special cloud workshop
Intalio japan special cloud workshop
チームで開発するための環境を整える
チームで開発するための環境を整える
「ドメイン駆動設計」の複雑さに立ち向かう
「ドメイン駆動設計」の複雑さに立ち向かう
スマートフォンWebアプリ最適化”3つの極意”
スマートフォンWebアプリ最適化”3つの極意”
中・大規模サイト作成業務フロー
中・大規模サイト作成業務フロー
メンバーズグループ アジャイル開発への取り組み
メンバーズグループ アジャイル開発への取り組み
ドメイン駆動設計入門
ドメイン駆動設計入門
13 manual writing20130709
13 manual writing20130709
concrete5で社内システムのお話し
concrete5で社内システムのお話し
社内 DDD 勉強会第1回
社内 DDD 勉強会第1回
オブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツ
サービス開発における工程
サービス開発における工程
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
アジャイルにモデリングは必要か
アジャイルにモデリングは必要か
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
要求 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第12回】
要求 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第12回】
これって、ドメイン駆動設計?
これって、ドメイン駆動設計?
DDD読書会@大阪(最終回)のLT資料「ドメイン駆動設計で気づいたこと~権利の概念とERP分析への適用」 #dddosaka
DDD読書会@大阪(最終回)のLT資料「ドメイン駆動設計で気づいたこと~権利の概念とERP分析への適用」 #dddosaka
機械学習応用システムのアーキテクチャ・デザイパターン(2020-07 ドラフトバージョン))
機械学習応用システムのアーキテクチャ・デザイパターン(2020-07 ドラフトバージョン))
More from 増田 亨
事業活動モデル・システム機能モデル・ビジネスロジックの記述
事業活動モデル・システム機能モデル・ビジネスロジックの記述
増田 亨
CCSR開発手法のための、分析設計パターンの概略
オブジェクト指向プログラミングの現在・過去・未来
オブジェクト指向プログラミングの現在・過去・未来
増田 亨
1995年まで:イノベータとアーリーアダプターの時代; 1995-2005 : オブジェクト指向ブームと混乱の始まり; 2005-2015 : さらなる混乱と収束の兆し; 2015- ; 現在の状況とこれからの20年
ドメイン駆動設計 コアドメインを語り合ってみよう
ドメイン駆動設計 コアドメインを語り合ってみよう
増田 亨
ドメイン駆動設計に戦略的に取り組むための基本パターン「コアドメイン」について、4つの現場のインタビュー結果と、それをもとに、みんなで語り合ってみるワークショップ
ドメイン駆動設計という設計スタイル
ドメイン駆動設計という設計スタイル
増田 亨
設計スタイルの選択 ドメインロジックに焦点を合わせる 現場での実験結果と考察
プロダクトづくりのためのソフトウェア設計スタイル
プロダクトづくりのためのソフトウェア設計スタイル
増田 亨
正しいものを正しくつくる プロダクトづくりの不確実性と戦うためのソフトウェア設計 - 創発的な設計活動 - 柔軟なモジュール構造 - 20%に投資する
ソフトウェア設計の学び方を考える
ソフトウェア設計の学び方を考える
増田 亨
ソフトウェア設計の課題 ソフトウエア設計の品質 学習と成長 設計の初歩を学ぶ 中級者への道 上級者の挑戦
レガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチ
レガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチ
増田 亨
ドメイン駆動設計でなぜ作るのか? ドメイン駆動設計の考え方の核心 レガシーコードの改善にドメイン駆動設計が役に立つのか? ドメイン駆動設計でレガシーコードに立ち向かった8つのステップ 振り返りと展望
ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方
増田 亨
ドメイン駆動設計でなぜ作るのか? ドメイン駆動設計の考え方 ドメイン駆動設計を実践するための6つの問い 事例研究 ドメイン駆動設計を現場に導入する 体験的に学ぶ エヴァンス本をちゃんと読む
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
増田 亨
アプリケーションの分割のアプローチ ●4つのアプローチ - ビジネスファンクション - 動詞/ユースケース - 名詞/リソース - 境界づけられたコンテキスト ● トランザクションの分割 - パイプライン化 (VETRO) - コーディネート (Saga) - 状態更新の非同期化 ( Event History - State Materialize - Domain Specific Query )
ビジネスルールの複雑さに立ち向かう
ビジネスルールの複雑さに立ち向かう
増田 亨
ビジネスルールのソフトウェア表現、現実世界のビジネスルール、ドメインモデルの俯瞰と構造化、事業モデルの俯瞰と枠組み 4つの領域をいったりきたりする。 広げながら掘り下げる。 役に立つソフトウェアを開発するスキルを磨いていく。
ソフトウェアの核心にある複雑さに立ち向かう
ソフトウェアの核心にある複雑さに立ち向かう
増田 亨
ドメイン駆動設計でなぜつくるのか? 「核心にある複雑さ」とは何か? その複雑さにどう立ち向かうか?
ドメイン駆動設計 本格入門
ドメイン駆動設計 本格入門
増田 亨
ドメイン駆動設計の考え方、ドメイン駆動設計を理解する三つのキーワード、エヴァンス本のススメ、レガシーに立ち向かう、マイクロサービスとドメイン駆動設計
アジャイルなソフトウェア設計を目指して
アジャイルなソフトウェア設計を目指して
増田 亨
変更を楽に安全にする4つの根底技法の紹介。
世界でいちばんわかりやすいドメイン駆動設計
世界でいちばんわかりやすいドメイン駆動設計
増田 亨
エヴァンス本を読んだことがない人、ネット上の情報を聞きかじったことがある程度の人、そんな人たちを対象に、ドメイン駆動設計について、わかりやすく説明してみました。
ドメイン駆動設計をゲーム開発に活かす
ドメイン駆動設計をゲーム開発に活かす
増田 亨
ドメイン駆動設計の基礎知識の説明と、ゲーム開発への活かし方。
SoR 2.0 summary
SoR 2.0 summary
増田 亨
事業環境と事業活動の変化に、柔軟に、迅速に、低コストで対応するためのアプローチの検討
SoR 2.0 基幹システムの再定義と再構築
SoR 2.0 基幹システムの再定義と再構築
増田 亨
SoE, SoI の基盤となる次世代の SoR のあり方は何か? どこに着眼し、どういう方向を目指すか?
ドメイン駆動設計とは何か 【入門編】
ドメイン駆動設計とは何か 【入門編】
増田 亨
前半は、ドメイン駆動設計を特徴づける4つのポイントを、後半は、エヴァンス本の構成を俯瞰しながら、解説してみました。 gunma.web #30 での発表資料。
More from 増田 亨
(18)
事業活動モデル・システム機能モデル・ビジネスロジックの記述
事業活動モデル・システム機能モデル・ビジネスロジックの記述
オブジェクト指向プログラミングの現在・過去・未来
オブジェクト指向プログラミングの現在・過去・未来
ドメイン駆動設計 コアドメインを語り合ってみよう
ドメイン駆動設計 コアドメインを語り合ってみよう
ドメイン駆動設計という設計スタイル
ドメイン駆動設計という設計スタイル
プロダクトづくりのためのソフトウェア設計スタイル
プロダクトづくりのためのソフトウェア設計スタイル
ソフトウェア設計の学び方を考える
ソフトウェア設計の学び方を考える
レガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチ
レガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチ
ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
ビジネスルールの複雑さに立ち向かう
ビジネスルールの複雑さに立ち向かう
ソフトウェアの核心にある複雑さに立ち向かう
ソフトウェアの核心にある複雑さに立ち向かう
ドメイン駆動設計 本格入門
ドメイン駆動設計 本格入門
アジャイルなソフトウェア設計を目指して
アジャイルなソフトウェア設計を目指して
世界でいちばんわかりやすいドメイン駆動設計
世界でいちばんわかりやすいドメイン駆動設計
ドメイン駆動設計をゲーム開発に活かす
ドメイン駆動設計をゲーム開発に活かす
SoR 2.0 summary
SoR 2.0 summary
SoR 2.0 基幹システムの再定義と再構築
SoR 2.0 基幹システムの再定義と再構築
ドメイン駆動設計とは何か 【入門編】
ドメイン駆動設計とは何か 【入門編】
現場で役立つシステム設計の原則
1.
現場で役立つシステム設計の原則 ~変更を楽で安全にするオブジェクト指向の実践技法 増田 亨 2017年8月25日
2.
第1章 小さくまとめてわかりやすくする 第2章 場合分けのロジックを整理する 第3章
業務ロジックをわかりやすく整理する 第4章 ドメインモデルの考え方で設計する 第5章 アプリケーション機能を組み立てる 第6章 データベースの設計とドメインオブジェクト 第7章 画面とドメインオブジェクトの設計を連動させる 第8章 アプリケーション間の連携 第9章 オブジェクト指向の開発プロセス 第10章 オブジェクト指向設計の学び方と教え方
3.
本日の内容 書きたくなかった 書き忘れた うまく書けなかった Q&A / 意見交換
4.
書きたくなかった • 自分はやっていないこと • コードの具体例で示せないこと •
現場で役に立たない総論や抽象論 • 自分では「どうでも良い」「それは違う」と思っ ていることを「それもありです」と言うこと stream(), extends, private final, … JPA, Active Record, Lombok, … TDD, CI, Docker, … Java以外のプログラミング言語 スクリプト言語
5.
書き忘れた 神崎さんのRDRAへの言及 ドメイン駆動設計との関係 いくつかの実装パターン いくつかのドメインオブジェクト 現場への取り入れ方
6.
RDRA • 第4章 ドメインモデルの考え方で設計する –
全体と部分をいったりきたりしながら作っていく – 全体を俯瞰する道具 • RDRA/神崎さんと出会ってから、設計のアプロー チが変わった – リレーションシップ駆動の効果に目覚めた • 書くべきだった – RDRAの紹介 – 参考文献の提示
7.
ドメイン駆動設計との関係 • 第5章 アプリケーション機能を組み立てる 第6章
データベース設計とドメインオブジェクト – Entity, Repository, Aggregateの設計パターン • エバンス本の真価 – 第3部 深いモデルの探求(の実践ストーリー) – 第4部 戦略的設計(誰がやるのか)
8.
実装パターン • 第1章 小さくまとめてわかりやすくする –
Range オブジェクト ( from, to ) • 期間、範囲 • 上限が未指定/下限が未指定 • Range 間の演算 • 第2章 場合分けのロジックを整理する – Bean Validationによる if文の激減 – Spring MVC @Validated • バリデーショングループ
9.
覚えておくとよいドメインオブジェクト • Location パターン –
「場所」という関心事と判断/加工/計算ロジック • Category パターン – 「分類」という関心事と判断/加工/計算ロジック • Role パターン – 「権限」という関心事 – 「認可」という関心事 • できる/できない • 見える/見えない • その判断ロジック、導出ロジック
10.
現場への取り入れ方 • まずは自分から – 具体的に手を動かして –
少しずつ時間をかけて – 結果を形で見せる • コードの見た目(わかりやすさ) • 修正/拡張のスピード • 品質の安定性 • 唯一の正解とか最終回答とかはない – どんな答えも、もっと良いものがあるはず • 個人の裁量範囲は思っているより広い – 逸脱するとやばいポイントはあるが、そこを避ければだいたいはOK • やりすぎることで見えてくるものがある – 理想と現実の境目 – 「失敗体験」という財産
11.
うまく書けなかった 自分の頭の中では、もっと書けると思っていたこと
12.
4章 ドメインモデルの考え方で設計する • 業務の関心事の基本パターンを覚えておく – 自分が使っているいろいろな分析パターン –
コード例 • ドメインオブジェクトの設計を段階的に改善 – 集中のために切り捨てる – 切り捨てに保険をかける(安心して切り捨てる) – 小さな実験 – 違和感(なんか違う)へのこだわり – ブレークスルーと決断
13.
5章 アプリケーション機能を組み立てる • ドメインモデルと「入出力」の関心事の分離 – 分離できない時に起きがちな問題の具体例 –
うまく分離できた場合の効果の具体例 • Repository – すべてのオブジェクトはメモリ上に存在すると考える • データベースの永続化の隠蔽手段とは別のとらえ方 – 設計パターン • findBy( Identifier identifier ) • listOf( Criteria criteria ) • 検査メソッド : count(), isExist(), …
14.
6章 データベースの設計とドメインオブジェクト • OR マッピングのコード例
(4点セット) – UserRepository.java (インタフェース宣言) – UserDatasource.java (実装クラス) – UserMapper.java – UserMapper.xml • 事実の記録のテーブル設計の具体例 – 前後関係の記録 – 関連性(交差テーブル)の記録 – 任意項目の扱い(未記入、未定、先送り、… ) • 参照系のテーブル設計の具体例 – リビジョン管理と最新レコードの参照 – 残高更新 – 未読/未済 – 状態遷移の記録と現在の状態の参照
15.
7章 画面とドメインオブジェクトの設計を連動させる • 画面デザインの4原則 近接/整列/対比/反復 – 画面の具体例 –
HTML の具体例 – CSS クラス設計の具体例(コード例) • Semantic UI – ドメインオブジェクトとの連動のコード例 • Thymeleaf th:* 属性 – 画面の部品化の具体例 • Thymeleaf th:include/th:replace
16.
8章 アプリケーション間の連携 • コードの具体例 – @RestController –
JSON/XML と オブジェクトのマッピング例 • 非同期メッセージング – 困っていること – 解決の考え方 – 実装の具体例 • ドメイン駆動設計の4部(戦略的設計)への関 連づけ
17.
9章 オブジェクト指向の開発プロセス • コードの自己文書化の具体例 – ソースコードをドキュメントとして活用する工夫 •
SI(受託開発)ビジネスでの取り組み方 – 発注の立場 – 受注の立場 – 二次受け、三次受けの立場 • 役割分担制への取り組み – デザイナ – 品質保証部門 – 基盤チーム – 運用チーム …
18.
10章 オブジェクト指向の学び方と教え方 • オブジェクト指向の設計スキル向上のための コードレビューの重点ポイント – 導入期 –
広げていく段階 – 発展させる段階 • オブジェクト指向の基礎知識(?) – もとになったアイデアを知る(Simula 67) – 実現の仕組みを理解する( klass ポインタ ) – 設計スタイルの多様性と取捨選択 • いろいろな継承 • いろいろな多態 • いろいろなカプセル化
19.
現場への取り入れ方/根付かせ方 • 主体 – 個人/有志/チーム/組織 •
ペース配分(学習曲線) – 徐々に時間をかけて – ブレークスルー – 徐々に時間をかけて • 方向 – 変えずに幅を広げてみる – 別の角度から取り組んでみる • 質と量 – 質の違いを実感する – 量をこなして体で覚える
20.
どんな状況でも改善はできる どんなときでもあなたから改善を始められる どんなときでも今日から改善を始められる by Kent Beck,
Extreme Programming 少しずつ 時間をかけて
21.
Q & A 意見交換 第1章
小さくまとめてわかりやすくする 第2章 場合分けのロジックを整理する 第3章 業務ロジックをわかりやすく整理する 第4章 ドメインモデルの考え方で設計する 第5章 アプリケーション機能を組み立てる 第6章 データベースの設計とドメインオブジェクト 第7章 画面とドメインオブジェクトの設計を連動させる 第8章 アプリケーション間の連携 第9章 オブジェクト指向の開発プロセス 第10章 オブジェクト指向設計の学び方と教え方
Download now