Skip to main content
Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Uploaded by
増田 亨
PDF, PPTX
8,915 views
現場で役立つシステム設計の原則
DDD Alliance での発表内容。イベント参加者に事前記入してもらった質問や意見への私からの回答
Software
◦
Related topics:
Object-Oriented Concepts
•
Read more
More Related Content
PDF
ドメイン駆動設計のための Spring の上手な使い方
by
増田 亨
55 slides
139.6K views
PDF
ドメイン駆動設計 基本を理解する
by
増田 亨
134 slides
119K views
PDF
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
by
Koichiro Matsuoka
153 slides
8.4K views
PDF
マイクロサービスバックエンドAPIのためのRESTとgRPC
by
disc99_
58 slides
20.4K views
PDF
マイクロサービス化に向けて
by
HIRA
50 slides
2.1K views
PDF
ドメインオブジェクトの見つけ方・作り方・育て方
by
増田 亨
95 slides
32.7K views
PPTX
境界付けられたコンテキスト 概念編 (ドメイン駆動設計用語解説シリーズ)
by
Koichiro Matsuoka
20 slides
2.3K views
PDF
ドメイン駆動設計入門
by
増田 亨
53 slides
28.9K views
ドメイン駆動設計のための Spring の上手な使い方
by
増田 亨
55 slides
139.6K views
ドメイン駆動設計 基本を理解する
by
増田 亨
134 slides
119K views
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
by
Koichiro Matsuoka
153 slides
8.4K views
マイクロサービスバックエンドAPIのためのRESTとgRPC
by
disc99_
58 slides
20.4K views
マイクロサービス化に向けて
by
HIRA
50 slides
2.1K views
ドメインオブジェクトの見つけ方・作り方・育て方
by
増田 亨
95 slides
32.7K views
境界付けられたコンテキスト 概念編 (ドメイン駆動設計用語解説シリーズ)
by
Koichiro Matsuoka
20 slides
2.3K views
ドメイン駆動設計入門
by
増田 亨
53 slides
28.9K views
What's hot
PDF
マイクロサービス 4つの分割アプローチ
by
増田 亨
60 slides
44.8K views
PDF
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
by
A AOKI
127 slides
26.1K views
PDF
ドメイン駆動設計 コアドメインを語り合ってみよう
by
増田 亨
24 slides
2.7K views
PDF
ドメイン駆動設計 ( DDD ) をやってみよう
by
増田 亨
45 slides
51.8K views
PDF
ドメイン駆動で開発する ラフスケッチから実装まで
by
増田 亨
103 slides
16.2K views
PDF
クラウド環境下におけるAPIリトライ設計
by
Kouji YAMADA
19 slides
4.5K views
PDF
ドメイン駆動設計サンプルコードの徹底解説
by
増田 亨
41 slides
22.2K views
PDF
DDDはオブジェクト指向を利用してどのようにメンテナブルなコードを書くか
by
Koichiro Matsuoka
130 slides
24.4K views
PDF
新たなgitのブランチモデル「Git Feature Flow」!Git Flow,Git Hub Flow,Git Lab Flowを超えれるか?
by
naoki koyama
50 slides
104.6K views
PDF
ドメイン駆動設計とは何か 【入門編】
by
増田 亨
40 slides
13.6K views
PDF
3分でわかるAzureでのService Principal
by
Toru Makabe
14 slides
31.7K views
PDF
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
by
増田 亨
83 slides
31.1K views
PDF
マイクロサービスに至る歴史とこれから - XP祭り2021
by
Yusuke Suzuki
76 slides
24.5K views
PDF
ドメイン駆動設計 本格入門
by
増田 亨
139 slides
46.9K views
PDF
ドメイン駆動設計 の 実践 Part3 DDD
by
増田 亨
23 slides
9.2K views
PDF
AWSでDockerを扱うためのベストプラクティス
by
Amazon Web Services Japan
38 slides
25.6K views
PPTX
ドメイン駆動設計の学習曲線とブレークポイント
by
増田 亨
39 slides
8.4K views
PDF
ドメインオブジェクトの設計ガイドライン
by
増田 亨
10 slides
3.9K views
PDF
実践に向けたドメイン駆動設計のエッセンス
by
増田 亨
99 slides
26.3K views
PDF
テスト文字列に「うんこ」と入れるな
by
Kentaro Matsui
16 slides
287.8K views
マイクロサービス 4つの分割アプローチ
by
増田 亨
60 slides
44.8K views
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
by
A AOKI
127 slides
26.1K views
ドメイン駆動設計 コアドメインを語り合ってみよう
by
増田 亨
24 slides
2.7K views
ドメイン駆動設計 ( DDD ) をやってみよう
by
増田 亨
45 slides
51.8K views
ドメイン駆動で開発する ラフスケッチから実装まで
by
増田 亨
103 slides
16.2K views
クラウド環境下におけるAPIリトライ設計
by
Kouji YAMADA
19 slides
4.5K views
ドメイン駆動設計サンプルコードの徹底解説
by
増田 亨
41 slides
22.2K views
DDDはオブジェクト指向を利用してどのようにメンテナブルなコードを書くか
by
Koichiro Matsuoka
130 slides
24.4K views
新たなgitのブランチモデル「Git Feature Flow」!Git Flow,Git Hub Flow,Git Lab Flowを超えれるか?
by
naoki koyama
50 slides
104.6K views
ドメイン駆動設計とは何か 【入門編】
by
増田 亨
40 slides
13.6K views
3分でわかるAzureでのService Principal
by
Toru Makabe
14 slides
31.7K views
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
by
増田 亨
83 slides
31.1K views
マイクロサービスに至る歴史とこれから - XP祭り2021
by
Yusuke Suzuki
76 slides
24.5K views
ドメイン駆動設計 本格入門
by
増田 亨
139 slides
46.9K views
ドメイン駆動設計 の 実践 Part3 DDD
by
増田 亨
23 slides
9.2K views
AWSでDockerを扱うためのベストプラクティス
by
Amazon Web Services Japan
38 slides
25.6K views
ドメイン駆動設計の学習曲線とブレークポイント
by
増田 亨
39 slides
8.4K views
ドメインオブジェクトの設計ガイドライン
by
増田 亨
10 slides
3.9K views
実践に向けたドメイン駆動設計のエッセンス
by
増田 亨
99 slides
26.3K views
テスト文字列に「うんこ」と入れるな
by
Kentaro Matsui
16 slides
287.8K views
Similar to 現場で役立つシステム設計の原則
PDF
現場で役立つシステム設計の原則
by
増田 亨
21 slides
6.7K views
PPTX
Relationship betweenddd and mvc
by
Takao Tetsuro
37 slides
237 views
PDF
QCon Tokyo 2013
by
増田 亨
37 slides
4.2K views
PDF
DDD 20121106 SEA Forum November
by
増田 亨
74 slides
4.3K views
PDF
設計/ドメイン設計(1) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第23回】
by
Tomoharu ASAMI
49 slides
85 views
PDF
設計 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第18回】
by
Tomoharu ASAMI
35 slides
105 views
PDF
オブジェクト指向の設計と実装の学び方のコツ
by
増田 亨
76 slides
105.9K views
PDF
リッチなドメインモデル 名前探し
by
増田 亨
29 slides
14.8K views
PDF
クラウドアプリケーションのための オブジェクト指向分析設計講座 (1)
by
Tomoharu ASAMI
36 slides
379 views
PDF
Frameworks We Live By: Design by day-to-day framework development: Multi-para...
by
Atsuhiro Kubo
57 slides
5K views
PPTX
20100324 勉強会資料(ドメイン駆動)
by
Masayuki Kanou
43 slides
837 views
PDF
オブジェクト指向による変更容易性の高いソフトウェア設計技法
by
fujiiryosuke1
16 slides
119 views
PDF
アジャイル開発の始め方
by
ESM SEC
54 slides
6.4K views
PDF
作業分野 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第10回】
by
Tomoharu ASAMI
35 slides
223 views
PDF
開発プロセス 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第2回】
by
Tomoharu ASAMI
41 slides
496 views
PDF
ドメイン駆動設計という仕事の流儀
by
増田 亨
53 slides
16.6K views
PDF
Program design and project design. 2017-11 Takumi Dojyo.
by
Hagimoto Junzo
17 slides
434 views
PDF
SCENARIOS, STORIES, USE CASES 10章
by
Yuichiro Saito
30 slides
661 views
PDF
デザインパターンの解説とソフトウェア開発における活用のためのプレゼンテーション資料
by
Takumi Yokoyama
13 slides
64 views
PDF
プログラムの大海に溺れないために
by
Zenji Kanzaki
53 slides
3K views
現場で役立つシステム設計の原則
by
増田 亨
21 slides
6.7K views
Relationship betweenddd and mvc
by
Takao Tetsuro
37 slides
237 views
QCon Tokyo 2013
by
増田 亨
37 slides
4.2K views
DDD 20121106 SEA Forum November
by
増田 亨
74 slides
4.3K views
設計/ドメイン設計(1) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第23回】
by
Tomoharu ASAMI
49 slides
85 views
設計 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第18回】
by
Tomoharu ASAMI
35 slides
105 views
オブジェクト指向の設計と実装の学び方のコツ
by
増田 亨
76 slides
105.9K views
リッチなドメインモデル 名前探し
by
増田 亨
29 slides
14.8K views
クラウドアプリケーションのための オブジェクト指向分析設計講座 (1)
by
Tomoharu ASAMI
36 slides
379 views
Frameworks We Live By: Design by day-to-day framework development: Multi-para...
by
Atsuhiro Kubo
57 slides
5K views
20100324 勉強会資料(ドメイン駆動)
by
Masayuki Kanou
43 slides
837 views
オブジェクト指向による変更容易性の高いソフトウェア設計技法
by
fujiiryosuke1
16 slides
119 views
アジャイル開発の始め方
by
ESM SEC
54 slides
6.4K views
作業分野 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第10回】
by
Tomoharu ASAMI
35 slides
223 views
開発プロセス 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第2回】
by
Tomoharu ASAMI
41 slides
496 views
ドメイン駆動設計という仕事の流儀
by
増田 亨
53 slides
16.6K views
Program design and project design. 2017-11 Takumi Dojyo.
by
Hagimoto Junzo
17 slides
434 views
SCENARIOS, STORIES, USE CASES 10章
by
Yuichiro Saito
30 slides
661 views
デザインパターンの解説とソフトウェア開発における活用のためのプレゼンテーション資料
by
Takumi Yokoyama
13 slides
64 views
プログラムの大海に溺れないために
by
Zenji Kanzaki
53 slides
3K views
More from 増田 亨
PDF
正しいものを正しく作る塾-設計コース
by
増田 亨
9 slides
10.3K views
PDF
ソフトウェア開発のやり方の改善
by
増田 亨
26 slides
7.2K views
PDF
事業活動モデル・システム機能モデル・ビジネスロジックの記述
by
増田 亨
7 slides
1.7K views
PDF
ドメイン駆動設計に15年取り組んでわかったこと
by
増田 亨
21 slides
11.7K views
PDF
オブジェクト指向プログラミングの現在・過去・未来
by
増田 亨
39 slides
7.1K views
PDF
オブジェクト指向プログラミング入門 -- Java object-oriented programming primer
by
増田 亨
43 slides
14.4K views
PDF
ドメイン駆動設計という設計スタイル
by
増田 亨
63 slides
17.7K views
PDF
プロダクトづくりのためのソフトウェア設計スタイル
by
増田 亨
29 slides
4.7K views
PDF
ソフトウェア設計の学び方を考える
by
増田 亨
39 slides
25.4K views
PDF
レガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチ
by
増田 亨
38 slides
3.8K views
PDF
ドメイン駆動設計の正しい歩き方
by
増田 亨
61 slides
26.1K views
PDF
ビジネスルールの複雑さに立ち向かう
by
増田 亨
53 slides
12.6K views
PDF
ソフトウェアの核心にある複雑さに立ち向かう
by
増田 亨
65 slides
11.1K views
PDF
DDD sample code explained in Java
by
増田 亨
24 slides
22.4K views
PDF
アジャイルなソフトウェア設計を目指して
by
増田 亨
94 slides
12.3K views
PDF
世界でいちばんわかりやすいドメイン駆動設計
by
増田 亨
44 slides
15.5K views
PDF
ドメイン駆動設計をゲーム開発に活かす
by
増田 亨
45 slides
5.2K views
PDF
SoR 2.0 summary
by
増田 亨
8 slides
1.4K views
PDF
毎日が越境だ!
by
増田 亨
51 slides
10.6K views
PDF
SoR 2.0 基幹システムの再定義と再構築
by
増田 亨
58 slides
9.4K views
正しいものを正しく作る塾-設計コース
by
増田 亨
9 slides
10.3K views
ソフトウェア開発のやり方の改善
by
増田 亨
26 slides
7.2K views
事業活動モデル・システム機能モデル・ビジネスロジックの記述
by
増田 亨
7 slides
1.7K views
ドメイン駆動設計に15年取り組んでわかったこと
by
増田 亨
21 slides
11.7K views
オブジェクト指向プログラミングの現在・過去・未来
by
増田 亨
39 slides
7.1K views
オブジェクト指向プログラミング入門 -- Java object-oriented programming primer
by
増田 亨
43 slides
14.4K views
ドメイン駆動設計という設計スタイル
by
増田 亨
63 slides
17.7K views
プロダクトづくりのためのソフトウェア設計スタイル
by
増田 亨
29 slides
4.7K views
ソフトウェア設計の学び方を考える
by
増田 亨
39 slides
25.4K views
レガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチ
by
増田 亨
38 slides
3.8K views
ドメイン駆動設計の正しい歩き方
by
増田 亨
61 slides
26.1K views
ビジネスルールの複雑さに立ち向かう
by
増田 亨
53 slides
12.6K views
ソフトウェアの核心にある複雑さに立ち向かう
by
増田 亨
65 slides
11.1K views
DDD sample code explained in Java
by
増田 亨
24 slides
22.4K views
アジャイルなソフトウェア設計を目指して
by
増田 亨
94 slides
12.3K views
世界でいちばんわかりやすいドメイン駆動設計
by
増田 亨
44 slides
15.5K views
ドメイン駆動設計をゲーム開発に活かす
by
増田 亨
45 slides
5.2K views
SoR 2.0 summary
by
増田 亨
8 slides
1.4K views
毎日が越境だ!
by
増田 亨
51 slides
10.6K views
SoR 2.0 基幹システムの再定義と再構築
by
増田 亨
58 slides
9.4K views
現場で役立つシステム設計の原則
1.
現場で役立つ システム設計の原則 ~変更を楽で安全にするオブジェクト指向の実践技法 DDD Alliance 2017年8月30日 増田 亨
2.
よせられた質問やコメント(抜粋) • テストについて、もっと書いてほしかった • ドメイン駆動設計の
Entity/Aggregate/Factoryは? • サービスの固有名詞はユビキタス言語になりえるか? • プレゼンテーション層の文言をドメインモデルに? • メッセージの国際化 • update文を使わない理由 • すべてのカラムがNot Nullは、非現実的では? • Rest APIは分割のし過ぎ? • 受託開発でドメインエキスパートと会話できるケースが少ない
3.
いくつかの回答 • テストコード • 自分はめったに書かない(ミニフレームワーク開発の時くらい) •
実データ、実画面での動作確認はこまめにやっている • 経験的な品質保証 • プログラムの構造による品質保証 • プログラムの記述のわかりやすさによる品質保証 • Entity, Aggregate, Repository, Factory, … • DDD本の解説書の意図はなかった(橋渡しは意識した) • 手続き型の発想で解釈をしている人も多いので、書き方が難しい
4.
いくつかの回答 • サービス名の固有名詞はユビキタス言語の一部になるか? • コードの意図の説明に有効ならそのまま使う •
語呂合わせ的な名前であれば、それを説明する言葉に置き換える • 文字列表現はプレゼンテーション層の関心事では? • ドメイン層に持ってきたほうが、説明が明確になることが多い • Bean Validationのmessage属性(エラーの説明) • 状態の区分名( 未読、既読、保留など) • オブジェクトの文字列表現は、オブジェクトの重要なふるまい • 例えば、LocalDate.parse(“2017-08-30”), LocalDate#toString() • メッセージの国際化 • 今の自分たちには必要ない • 後から messages.propertiesに外だししても、それほどたいへんではない (構造的な変更ではないので不安定にならない)
5.
いくつかの回答 • SQL update文 •
集合の考え方として update は違和感がある • delete / insert は実装が簡単 (対象がなくても、追記できる) • すべてのカラムが Not Null は非現実的? • 実際にやっている • 特に困っていない • SQL のスキル+ IDE サポート • Rest API は分割のし過ぎでは? • 意味のある最小単位の発見が、プログラムを安定させる • 修正や拡張を(安定した)最小単位の組み合わせ方の変更にしたい
6.
いくつかの回答 • 受託開発の現場で、ドメインエキスパートとの会話は現実的に は難しい • サービス会社の内製でもたいへん •
エキスパート(経験者)とかいない場合も多い • 一般に話を聞きたいエキスパートほど忙しい • 説明が上手とは限らない • 開発者が積極的に学ぶ • それも開発の仕事の一部 • 画面、データ、マニュアル、ガイドブック、… • 触りたくなるソフトウェアを早く提供して、フィードバックをもらう • まちがい/見落としを早く発見する
7.
本の内容について、あなたの実践状況はいかがでしょうか? 合計:121 人 20.7 52.0 24.0 3.3 同じようなことを既に実践している 今後、実践していく予定 今後、実践してみたいがうちの現場では無理そう。。。 実践できそうもない
8.
導入の悩み • 徐々に実践しているが、なかなか効果が見えてこない • 全体を組み立てたサンプルコードが欲しい •
新規でないと難しいのでは? • まわりの理解・協力が得るのが難しい/時間がかかる • 意思統一が難しい • 既存のアーキテクチャ/フレームワークとの違いが大きすぎる • データベース中心の開発チーム • 自分のスキル不足、理解不足 • スケジュール、予算 サンプルコード: github : isolating-the-domain
9.
私がこころがけていること • 小さな実験を習慣にする • 失敗することも多い •
失敗するから実験 • 失敗体験は財産 • やりすぎてみる • 境界値を具体的に知る最善の方法 • 境界値(と思っていたこと)を超えた時に何が起きるか確かめる • 最初は(安全な)sandbox 環境で思う存分 • ある程度の見通しがたったら production コードで慎重に
10.
私がこころがけていること • 時間はかかる • 小分けにして •
少しずつ • とにもかくにも自分がすこしずつ変わる • 自分の変化をコードで測定する • 自分が書くコードに起きる変化 • 他人のコードを自分が読むときの変化 • 自分のコードを他人が読んだときの変化 • 現場で頼られる存在を目指す • 公式の役職・役割ではなく、現場の実質的なリーダー • 頼られるほど、裁量範囲が広くなる
11.
どこまで自分の裁量でできそうですか? • 変数名の変更 • 段落に分ける •
説明用変数の導入 • メソッドに抽出 • クラスに抽出 • 値オブジェクト • コレクションオブジェクト • 区分オブジェクト • パッケージの名前変更 • パッケージ構造の変更 • アーキテクチャ/フレームワークの変更 • 設計スタイルの変更