SlideShare une entreprise Scribd logo
1  sur  20
Télécharger pour lire hors ligne
ドメイン駆動設計
ユーザー、モデル、エンジニアの
新たな関係
PHPメンターズセミナー
in PHPカンファレンス
Oct.3, 2015
杉本 啓
twitter: @sugimoto_kei
http://www.fusions.co.jp
自己紹介
• 会計事務所系コンサルティング会社(アクセンチュア/アンダーセン)出身。
• 生産管理/会計系基幹システム構築 (スクラッチ開発, SAP R/3等)
~ 会計・経営管理領域の制度設計・業務改革
~ パッケージソフト(連結会計)開発など。
• 2003年独立、経営管理基盤ソフトウェア「fusion_place」の開発販売・導入支援。
http://www.fusions.co.jp
• 現役 Java プログラマ。OOPラブ × XPラブ × DOAラブ。
• 全然アップデートしていないブログあり。
http://hot-heart-cool-mind.seesaa.net/
• 「IT勉強宴会」で時々おしゃべり & いつも Drink!
http://www.benkyoenkai.org/
<日経BP谷島さんによる紹介記事>
http://business.nikkeibp.co.jp/article/campanella/20141016/272649/
1. ドメイン駆動設計とは
2. ドメイン駆動設計の3つの原則
3. 3つの原則からみたDDD本の構成
4. ドメインとドメインモデル
5. ドメインモデルとは何か
6. ドメインに浸潤するドメインモデル
7. DDDの2つの「ひねり」
8. DDDとDOAの同型性
9. DDDとオブジェクト指向
10. DDDの適用領域
11. DDDの拡張可能性
12. ドメイン・エンジニアリング ~DDDの射程~
目次
「ドメイン駆動設計」とは
・・・根本的には、DDDを駆動している原則は次の3つだけです。
コアドメインに集中すること。
ドメインの実践者とソフトウェアの実践者による創造的な共同
作業を通じて、モデルを探求すること。
明示的な境界づけられたコンテキストの内部で、
ユビキタス言語を語ること。
DDD本(※)「日本語版への序文」by エリック・エヴァンス
(※)エリック・エヴァンス, 2011年,「エリック・エヴァンスのドメイン駆動設計」翔泳社、以下同
ドメイン駆動設計の3つの原則
ユビキタス
言語
モデル駆動
設計
(※)DDD本 表表紙と裏表紙のパターン関連図
適用範囲の選択
に関する原則
適用範囲での設計のあり方
に関する原則
コアドメイン
本日は、主に下側の2つの原則について考察します。
3つの原則のうち、2つ(ユビキタス言語とモデル駆動設計)は、原著発刊時
に書かれたパターン関連図(※)で中核に位置付けられている。
「コアドメイン」は、中核には位置付けられていなかったが、本文を読むと、
当初から重視されていたことがわかる。
3つの原則からみたDDD本の構成
第1部 ドメインモデルを機能させる ⇒ユビキタス言語とモデル駆動の紹介
第2部 モデル駆動設計の構成要素 ⇒モデルと実装の結び付け方
第3部 より深い洞察に向かうリファクタリング ⇒モデルを洗練させる方法
第4部 戦略的設計 ⇒コアドメインへの集中の強調と、集中のための具体的手法
DDD本の構成
第2部の位置づけが難しい。
第2部を中心に読むと:
オブジェクト指向の適用パターン本に見える。
その割には、内容に新味がない(2003年の原著発刊時点でも)。
とはいえ、多くの現場で出来ていないのは確かなので、啓蒙的効果はある。
でも、それでは、ユビキタス言語とモデル駆動を強調する意味がわからない...
ドメイン・ドメインモデル・モデル駆動・ユビキタス言語の意味を、
あらためて、考えてみましょう。
《質問》
ドメインモデルはドメインのモデルなのでしょうか?
ドメインとドメインモデル
例: ソースコード管理システム
ドメイン
(問題領域)
ソース
コード
管理
Subversion
Git
「コミット」の意味
「コミット」という言葉は、ドメインモデルの一部のはずですが...
 「コミット」の定義はドメインにではなく、ツールに依存する。
 ソースコード管理システムが世に現れて初めて「コミット」という言葉
が「リポジトリへの変更登録」という意味で使われ始めた。
セントラルリポジトリへの
変更登録
(登録時に競合があり得る)
ローカルリポジトリへの
変更登録
(登録ににの競合はあり得ないが、別途、
push などでリポジトリ間同期必要)
ツール
(解決領域)
ドメインモデルとは何か(1/2)
ドメインモデルは:
こちらではなく... ...こちらではないでしょうか。
問題領域(ドメイン)のモデル。 解決領域(ツール)のモデル。
但し、ソフトの内部構造ではなく、
ユーザも理解すべき、情報処理のモデル。
あらかじめ存在する、分析対象。 ソリューションの開発に際して、
意図的に設計する対象。
ドメイン・エキスパートが
知っている。
ドメイン・エキスパートの知見を踏
まえながら、我々エンジニアも考え
る。
ドメインモデルは、ソリューションのモデル。
そしてエンジニアリングの結果、生まれるものである。
ドメインモデルとは何か(2/2)
DDD本では、船舶/コンテナが登場するモデルと、
船荷証券等が登場するモデルの差異を、深さの違いと捉えているが、
モデル化の対象が異なると考えた方が適切。
事業における、
具体的な活動。
事業活動を制御する
管理/統制活動。
モデル化対象
船舶
コンテナ
本船・次航
(vessel voyage)
船荷証券(B/L)
DDD本での例
(p. 191-192)
【参考】
DOAでの呼称例(※)
事業過程
管理過程
「浅いモデル」
情報とその動き
ヒト・モノ・カネ
とその動き
「深いモデル」
(※) 佐藤正美, 2005年,「データベース設計論-T字形ER」, ソフト・リサーチ・センター、p.34-35
ドメインモデルは事業活動自体のモデルではなく、事業活動を支える情報処理
のモデル。両者は必ずしも一致しない。
《
問
題
領
域
》
《
解
決
領
域
》
事業活動の
モデル
ドメイン
モデル
モデル
相互依存
ドメインに浸潤するドメインモデル
情報処理(解決領域)のモデルであるドメインモデルが、ドメイン(問題領
域)のモデルであるかのように見られがちなのは、多くのドメインが、ドメイ
ンモデルにより浸潤されているから。
ドメイン 浸潤しているドメインモデル
会計 複式簿記 本来的には帳簿記録を組織化するためのひとつ
の手法・パターンに過ぎない。
貿易 船荷証券 貿易慣行の中で確立され、法制度化された、取
引に関する事務処理パターン。
鉄道運行 ダイヤ 運行スケジュールを線引きするために工夫され
た手書き図(ダイヤグラム)。これも事業活動
をサポートするための情報処理パターン。
モデリング UML モデリング自体は図的表記がなくとも可。UML
でなくとも可。
ドメインモデルは情報処理のモデルだから、
コンピュータの登場以前に成立/普及している場合もある。
これらは容易に、ドメインそのものと混同されてしまう。
二元的モデルと三元的モデル
OOA※で一般的な
モデル観
(DDD本 p.46)
分析モデル 設計モデル
問題領域/分析対象(=与件) 解決領域/設計対象
ドメインモデル
の導入
事業活動の
モデル
プログラム構造
のモデル
ドメイン
モデル
DDDの
モデル観
(私見)
事業活動の
モデル
プログラム構造
のモデル
ドメイン
モデル
ドメインモデル=ユビキタス言語
(単一のモデル)
DDDのモデル観は一周回って二元的モデルに戻っているが、
境界線の位置が一般的なOOAとは異なっている。(私見)
※ オブジェクト指向分析
DDDの2つの「ひねり」
DDDの
「ひねり」
2つの「ひねり」によって、DDDは、エンジニアリングの対象領域を広げつつ、
エンジニアリング活動内部の分裂を防止しようとしている(私見)。
事業活動のモデルと
ドメインモデルの切り離し
ドメインモデルと
プログラム構造の統合
「ユビキタス言語」
「モデル駆動アプローチ」
ドメインモデルを、ユーザ所
有物から共同所有物に転化す
る。
ドメインモデルとソースコー
ドの乖離によるドメインモデ
ルの形骸化を防ぐ。
DDDでは、以下の2つの「ひねり」を通じて「境界線の引き替え」を行って
いる。
DDDとDOAの同型性
DDDの
「ひねり」
DDDとDOA、根本的な発想は共通で、
実装に適用するパラダイム※とアプローチが異なる。
事業活動のモデルと
ドメインモデルの切り離し
ドメインモデルと
プログラム構造の統合
当然の認識
佐藤正美:事業過程/管理過程
渡辺幸三:データモデルは帳簿組織
DSLによるドメインモデル
記述に基づく
自動生成/動的制御で対応
(モダンな)DOAでは...
DOAは、ソフトウェア開発というより業務システム開発の現場で育ってきたた
め、2つの「ひねり」は、むしろ当然の前提(当然過ぎて議論に上りにくい)。
※ 分析や設計に適用する枠組み・文法
DDDとオブジェクト指向
ユビキタス
言語
モデル駆動
設計
コア
ドメイン
エンティティ
値オブジェクト
サービス
…
原則レイヤのパターン群
実践レイヤのパターン群
オブジェクト指向には、
依存していない。
オブジェクト指向に
依存している部分が相当ある。
特に、ユビキタス言語の文法を
提示している第2章のパターン
群。
DDD本は、実践レイヤのパラダイムとしてオブジェクト指向を採用しているが、
DDDの原則自体はオブジェクト指向から独立している。
DDDは全体としてパターン言語を形成している。この言語は、「原則」レイ
ヤと「実践」レイヤに分かつことが出来る。
DDDの適用領域
DDD本は、エヴァンス氏の経験から生まれた。その経験は以下のようなプロ
ジェクトを通じて培われたものである(DDD本「エピローグ」)。
1. 商用のPCB(プリント基板)設計用ソフトウェア
2. 複数の金融機関が利用するローンソフトウェア
3. 大手国際輸送会社の輸送業務システム
4. 商用の在庫管理ソフトウェア
いずれも、継続的開発が当然で、汎用性や柔軟性を重視した設計が
見合う(コスト合理性がある)ケース。
3カ月で稼働/納品して後は最小限のメンテしかされないソフトではない。
4つのうち3つが商用パッケージソフトウェア。
残りひとつ(3)は、開発した企業の戦略的優位性の中核にあるようなソフト。
DDDの拡張可能性
DDDの原則はそのままに、プラクティス(実践手法)を入れ替えることで、
DDD自体を拡張できると思われる。
ユビキタス
言語
モデル駆動
コア
ドメイン
オブジェクト指向 リレーショナルモデル 多次元データモデル
DDD本の
DDD
(モダンな)DOA
( ≒超高速開発※2)
DDD on
fusion_place
…
…
汎用言語 DSL(※1) DSL
(※1) DSL=ドメイン特化言語
(※2) 「超高速開発」は、開発が速くなることに価値を見出した呼称ですが、DDDの文脈ではむしろ、設計/開発の
フォーカスをドメインモデルの(再)設計に移すことに価値を求めることが可能と思われます。
中核パラダイム
記述言語水準
開発アプローチ
ドメイン・エンジニアリング
~ DDDの射程 ~
ドメインモデルを設計対象とするなら、我々は、ユーザとともに業務や取引の
方式を設計することも出来る。システム設計はもっとクリエイティブになる。
ドメイン ドメインモデルパターン
販売/生産管理 ・MRPを代替/補完する「在庫推移監視方式」。 (※)
会計/経営管理
・複式簿記の拡張形としての「増減複式簿記」。
・複雑化する管理会計/財務報告に適した「二層帳簿モデル」。
・変化する経営環境に追随する「環境適応型予算管理モデル」。
DDDの「原則」は、
DDD本が示している「実践」より、はるかに広く遠い射程を
持っているのではないでしょうか。
http://hot-heart-cool-mind.seesaa.net/article/393131426.html
http://hot-heart-cool-mind.seesaa.net/article/393131365.html
http://www.fusions.co.jp/mail-magazine/mm-003/
(※) 渡辺幸三, 2002年,「生産管理・原価管理のためのデータモデリング」, 日本実業出版社、p.188
終わり

Contenu connexe

Tendances

Python 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそうPython 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそうRyuji Tsutsui
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなKentaro Matsui
 
イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)Yoshitaka Kawashima
 
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルドBuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルドAkihiro Suda
 
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture世界一わかりやすいClean Architecture
世界一わかりやすいClean ArchitectureAtsushi Nakamura
 
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)NTT DATA Technology & Innovation
 
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織Takafumi ONAKA
 
ドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったことドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったこと増田 亨
 
やはりお前らのMVCは間違っている
やはりお前らのMVCは間違っているやはりお前らのMVCは間違っている
やはりお前らのMVCは間違っているKoichi Tanaka
 
PostgreSQLアンチパターン
PostgreSQLアンチパターンPostgreSQLアンチパターン
PostgreSQLアンチパターンSoudai Sone
 
コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」Masahito Zembutsu
 
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)NTT DATA Technology & Innovation
 
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)Mikiya Okuno
 
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)Yoshitaka Kawashima
 
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)mosa siru
 
マルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのことマルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのことAmazon Web Services Japan
 
それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?Yoshitaka Kawashima
 
ドメイン駆動設計の実践例 - 経営管理基盤 fusion_place -
ドメイン駆動設計の実践例 - 経営管理基盤 fusion_place - ドメイン駆動設計の実践例 - 経営管理基盤 fusion_place -
ドメイン駆動設計の実践例 - 経営管理基盤 fusion_place - 啓 杉本
 
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話Koichiro Matsuoka
 
ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方増田 亨
 

Tendances (20)

Python 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそうPython 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそう
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
 
イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)
 
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルドBuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
 
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
 
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
 
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
 
ドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったことドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったこと
 
やはりお前らのMVCは間違っている
やはりお前らのMVCは間違っているやはりお前らのMVCは間違っている
やはりお前らのMVCは間違っている
 
PostgreSQLアンチパターン
PostgreSQLアンチパターンPostgreSQLアンチパターン
PostgreSQLアンチパターン
 
コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」
 
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
 
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
 
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)
 
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)
 
マルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのことマルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのこと
 
それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?
 
ドメイン駆動設計の実践例 - 経営管理基盤 fusion_place -
ドメイン駆動設計の実践例 - 経営管理基盤 fusion_place - ドメイン駆動設計の実践例 - 経営管理基盤 fusion_place -
ドメイン駆動設計の実践例 - 経営管理基盤 fusion_place -
 
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
 
ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方
 

Similaire à ドメイン駆動設計 ~ユーザー、モデル、エンジニアの新たな関係~

ドメイン駆動設計 at DDD.rb #5
ドメイン駆動設計 at DDD.rb #5ドメイン駆動設計 at DDD.rb #5
ドメイン駆動設計 at DDD.rb #5啓 杉本
 
財管一致について~財務会計と管理会計の関係性~
財管一致について~財務会計と管理会計の関係性~財管一致について~財務会計と管理会計の関係性~
財管一致について~財務会計と管理会計の関係性~啓 杉本
 
ドメイン特化プラットフォームによる業務システム開発体制の変革
ドメイン特化プラットフォームによる業務システム開発体制の変革ドメイン特化プラットフォームによる業務システム開発体制の変革
ドメイン特化プラットフォームによる業務システム開発体制の変革啓 杉本
 
6製品1サービスの開発にPortfolio for JIRAを使ってみた
6製品1サービスの開発にPortfolio for JIRAを使ってみた6製品1サービスの開発にPortfolio for JIRAを使ってみた
6製品1サービスの開発にPortfolio for JIRAを使ってみたHiroshi Ohnuki
 
Ossを使ったazureでのdev ops
Ossを使ったazureでのdev opsOssを使ったazureでのdev ops
Ossを使ったazureでのdev ops裕貴 荒井
 
ElasticBeanstalkで作るPHP実行環境
ElasticBeanstalkで作るPHP実行環境ElasticBeanstalkで作るPHP実行環境
ElasticBeanstalkで作るPHP実行環境Naoyuki Funatsu
 
Azure DevOps × スクラム で実現するプロダクト開発のポイント #dotnetlab #jazug
Azure DevOps × スクラム で実現するプロダクト開発のポイント #dotnetlab #jazugAzure DevOps × スクラム で実現するプロダクト開発のポイント #dotnetlab #jazug
Azure DevOps × スクラム で実現するプロダクト開発のポイント #dotnetlab #jazug満徳 関
 
cloudpack監視・運用保守のなかで生まれた自社開発の取り組みと知見
cloudpack監視・運用保守のなかで生まれた自社開発の取り組みと知見cloudpack監視・運用保守のなかで生まれた自社開発の取り組みと知見
cloudpack監視・運用保守のなかで生まれた自社開発の取り組みと知見shuichi takahashi
 
Salesforce DUG meetup09 summer15
Salesforce DUG meetup09 summer15Salesforce DUG meetup09 summer15
Salesforce DUG meetup09 summer15Ikou Sanuki
 
yokyo-unv.
yokyo-unv.yokyo-unv.
yokyo-unv.hirano
 
connpass特徴と開発の流れ
connpass特徴と開発の流れconnpass特徴と開発の流れ
connpass特徴と開発の流れIkeda Yosuke
 
ヤフー発のメッセージキュー 「Pulsar」のご紹介@jjug ccc 20171118
ヤフー発のメッセージキュー 「Pulsar」のご紹介@jjug ccc 20171118ヤフー発のメッセージキュー 「Pulsar」のご紹介@jjug ccc 20171118
ヤフー発のメッセージキュー 「Pulsar」のご紹介@jjug ccc 20171118Nozomi Kurihara
 
20130302 わんくま勉強会大阪 tfsを使ってみよう
20130302 わんくま勉強会大阪 tfsを使ってみよう20130302 わんくま勉強会大阪 tfsを使ってみよう
20130302 わんくま勉強会大阪 tfsを使ってみようTakuya Kawabe
 
SAP HANAは 単なるインメモリーデータベースじゃなくて (賢い)アプリの開発・実行プラットフォーム
SAP HANAは 単なるインメモリーデータベースじゃなくて (賢い)アプリの開発・実行プラットフォームSAP HANAは 単なるインメモリーデータベースじゃなくて (賢い)アプリの開発・実行プラットフォーム
SAP HANAは 単なるインメモリーデータベースじゃなくて (賢い)アプリの開発・実行プラットフォームMakoto Sugishita
 
お店のディスプレイ広告効果をインスタグラムで効果測定する-
お店のディスプレイ広告効果をインスタグラムで効果測定する-お店のディスプレイ広告効果をインスタグラムで効果測定する-
お店のディスプレイ広告効果をインスタグラムで効果測定する-tomomi kawakami
 
【#osh2014】これからのつながる開発環境とその秘訣 (仮)
【#osh2014】これからのつながる開発環境とその秘訣 (仮)【#osh2014】これからのつながる開発環境とその秘訣 (仮)
【#osh2014】これからのつながる開発環境とその秘訣 (仮)智治 長沢
 
20140717 awssummit2014-cloud-operation
20140717 awssummit2014-cloud-operation20140717 awssummit2014-cloud-operation
20140717 awssummit2014-cloud-operationYasuhiro Araki, Ph.D
 
CakePHP × 国産! baserCMS3の深化と今後の拡がり
CakePHP × 国産! baserCMS3の深化と今後の拡がりCakePHP × 国産! baserCMS3の深化と今後の拡がり
CakePHP × 国産! baserCMS3の深化と今後の拡がりDaisuke Abe
 

Similaire à ドメイン駆動設計 ~ユーザー、モデル、エンジニアの新たな関係~ (20)

ドメイン駆動設計 at DDD.rb #5
ドメイン駆動設計 at DDD.rb #5ドメイン駆動設計 at DDD.rb #5
ドメイン駆動設計 at DDD.rb #5
 
財管一致について~財務会計と管理会計の関係性~
財管一致について~財務会計と管理会計の関係性~財管一致について~財務会計と管理会計の関係性~
財管一致について~財務会計と管理会計の関係性~
 
ドメイン特化プラットフォームによる業務システム開発体制の変革
ドメイン特化プラットフォームによる業務システム開発体制の変革ドメイン特化プラットフォームによる業務システム開発体制の変革
ドメイン特化プラットフォームによる業務システム開発体制の変革
 
6製品1サービスの開発にPortfolio for JIRAを使ってみた
6製品1サービスの開発にPortfolio for JIRAを使ってみた6製品1サービスの開発にPortfolio for JIRAを使ってみた
6製品1サービスの開発にPortfolio for JIRAを使ってみた
 
Ossを使ったazureでのdev ops
Ossを使ったazureでのdev opsOssを使ったazureでのdev ops
Ossを使ったazureでのdev ops
 
ElasticBeanstalkで作るPHP実行環境
ElasticBeanstalkで作るPHP実行環境ElasticBeanstalkで作るPHP実行環境
ElasticBeanstalkで作るPHP実行環境
 
Azure DevOps × スクラム で実現するプロダクト開発のポイント #dotnetlab #jazug
Azure DevOps × スクラム で実現するプロダクト開発のポイント #dotnetlab #jazugAzure DevOps × スクラム で実現するプロダクト開発のポイント #dotnetlab #jazug
Azure DevOps × スクラム で実現するプロダクト開発のポイント #dotnetlab #jazug
 
cloudpack監視・運用保守のなかで生まれた自社開発の取り組みと知見
cloudpack監視・運用保守のなかで生まれた自社開発の取り組みと知見cloudpack監視・運用保守のなかで生まれた自社開発の取り組みと知見
cloudpack監視・運用保守のなかで生まれた自社開発の取り組みと知見
 
20111014説明会資料(勉強会)
20111014説明会資料(勉強会)20111014説明会資料(勉強会)
20111014説明会資料(勉強会)
 
Salesforce DUG meetup09 summer15
Salesforce DUG meetup09 summer15Salesforce DUG meetup09 summer15
Salesforce DUG meetup09 summer15
 
yokyo-unv.
yokyo-unv.yokyo-unv.
yokyo-unv.
 
connpass特徴と開発の流れ
connpass特徴と開発の流れconnpass特徴と開発の流れ
connpass特徴と開発の流れ
 
ヤフー発のメッセージキュー 「Pulsar」のご紹介@jjug ccc 20171118
ヤフー発のメッセージキュー 「Pulsar」のご紹介@jjug ccc 20171118ヤフー発のメッセージキュー 「Pulsar」のご紹介@jjug ccc 20171118
ヤフー発のメッセージキュー 「Pulsar」のご紹介@jjug ccc 20171118
 
ヤフー発のメッセージキュー「Pulsar」のご紹介
ヤフー発のメッセージキュー「Pulsar」のご紹介ヤフー発のメッセージキュー「Pulsar」のご紹介
ヤフー発のメッセージキュー「Pulsar」のご紹介
 
20130302 わんくま勉強会大阪 tfsを使ってみよう
20130302 わんくま勉強会大阪 tfsを使ってみよう20130302 わんくま勉強会大阪 tfsを使ってみよう
20130302 わんくま勉強会大阪 tfsを使ってみよう
 
SAP HANAは 単なるインメモリーデータベースじゃなくて (賢い)アプリの開発・実行プラットフォーム
SAP HANAは 単なるインメモリーデータベースじゃなくて (賢い)アプリの開発・実行プラットフォームSAP HANAは 単なるインメモリーデータベースじゃなくて (賢い)アプリの開発・実行プラットフォーム
SAP HANAは 単なるインメモリーデータベースじゃなくて (賢い)アプリの開発・実行プラットフォーム
 
お店のディスプレイ広告効果をインスタグラムで効果測定する-
お店のディスプレイ広告効果をインスタグラムで効果測定する-お店のディスプレイ広告効果をインスタグラムで効果測定する-
お店のディスプレイ広告効果をインスタグラムで効果測定する-
 
【#osh2014】これからのつながる開発環境とその秘訣 (仮)
【#osh2014】これからのつながる開発環境とその秘訣 (仮)【#osh2014】これからのつながる開発環境とその秘訣 (仮)
【#osh2014】これからのつながる開発環境とその秘訣 (仮)
 
20140717 awssummit2014-cloud-operation
20140717 awssummit2014-cloud-operation20140717 awssummit2014-cloud-operation
20140717 awssummit2014-cloud-operation
 
CakePHP × 国産! baserCMS3の深化と今後の拡がり
CakePHP × 国産! baserCMS3の深化と今後の拡がりCakePHP × 国産! baserCMS3の深化と今後の拡がり
CakePHP × 国産! baserCMS3の深化と今後の拡がり
 

ドメイン駆動設計 ~ユーザー、モデル、エンジニアの新たな関係~