SlideShare une entreprise Scribd logo
1  sur  44
ドメイン駆動開発
勉強会 ①
ドメイン駆動開発とはなんぞや…?
目次
ドメイン駆動開発とは
ドメイン駆動開発の目的
ドメインレイヤーの考え方
case study: boundary Upload
今日のまとめ
免責事項
あくまでも菊池の過去経験・学習濃度による解釈が混じっ
ているので エリック・エヴァンス の意図と違う解釈が入っ
ているかも知れません
※ それに気付いたら免許皆伝
DDDをかじったことのあるひとからすると物足りない内容
になっています
ドメイン駆動開発とは
世の中で話題のドメイン駆動開発(以下、DDD)
そもそも「駆動開発」ってなんやねん?
DDDが意味するところはなんなのか?
DDDの文脈で語るときに意識したい
いくつかのことを
紐解いていきます
駆動開発って?
駆動開発って?
世の中に溢れる様々な駆動開発
BDD
TDD
MDD
YDD
DDD
(ドメイン駆動開発)
駆動開発って?
世の中に溢れる様々な駆動開発
BDD
(振る舞い駆動開発)
TDD
(テスト駆動開発)
MDD
(モデル駆動開発)
YDD
(嫁駆動開発)
DDD
(ドメイン駆動開発)
駆動開発って?
動力源・力の加えるポイント・起点を明示した開発手法
ex: 「スキーマファースト ≒ スキーマ駆動開発」
● TDD: テストを起点に開発をする
● YDD: 嫁の要望を動力源に開発をする
● MDD: しっかりDSLで設計してから開発をする
● DDD: ソフトウェア化する対象を抽出して開発する
DDDが意味するところは
なんなのか?
DDDが意味するところはなんなのか?
ドメイン = [ソフトウェアにする対象] を起点にした開発手法
ライクルの「ソフトウェアにする対象」ってなんだろう
か?
DDDが意味するところはなんなのか?
[ソフトウェアにする対象]
例: 配送システム
「人がものを運ぶ」その過程をソフトウェアにしたい
DDDが意味するところはなんなのか?
[ソフトウェアにする対象]
例: 配送システム
「人がものを運ぶ」その過程をソフトウェアにしたい
→ DDDの出発地点
DDDが意味するところはなんなのか?
[ソフトウェアにする対象]
例: 配送システム
「人がものを運ぶ」その過程をソフトウェアにしたい
「配達員が貨物を倉庫からお客様へ運ぶ」管理のソフトウェア
→ ユビキタス言語・コンテキストの整理
DDDが意味するところはなんなのか?
[ソフトウェアにする対象]
例: 配送システム
「人がものを運ぶ」その過程をソフトウェアにしたい
「配達員が貨物を倉庫からお客様へ運ぶ」管理のソフトウェア
「配達員は配送車で移動をして複数の貨物を運搬する」
「貨物は配送IDがふられて重量が配達価格になる」
「倉庫は多くの貨物が格納されており配達員が常駐している」
→ ドメインモデリング
DDDが意味するところはなんなのか?
[ソフトウェアにする対象]
例: 配送システム
「人がものを運ぶ」その過程をソフトウェアにしたい
「配達員が貨物を倉庫からお客様へ運ぶ」管理のソフトウェア
「配達員は配送車で移動をして複数の貨物を運搬する」
「貨物は配送IDがふられて重量が配達価格になる」
「倉庫は多くの貨物が格納されており配達員が常駐している」
この過程を起点して改善するのがDDDであるべき形
DDDの文脈で語るときに
意識したいこと
DDDの文脈で語るときに意識したいこと
Entity
ValuObject
domain / model
「あれ?僕の知っているDDDってこんな感じだった気がする…」
って人いないですか?
リポジトリ
集約
ファクトリー
クリーンアーキテクチャ
レイヤードアーキテクチャ
DDDの文脈で語るときに意識したいこと
Entity
ValuObject
domain / model
すべて間違ってないけど本質ではない
リポジトリ
集約
ファクトリー
クリーンアーキテクチャ
レイヤードアーキテクチャ
DDDの文脈で語るときに意識したいこと
すべて間違ってないけど本質ではない
エリック・エヴァンス本でも語られている
コードの書き方・設計手法は「戦術的DDD(軽量DDD)」
と言ってドメインモデリング(設計)後のコードをどうやって
現実の形に近づけるのか?に対する一つの回答
コードはキレイになるがDDDの真骨頂ではない
ドメイン駆動開発の目的
DDDの真の目的とはなんでしょう?
最終的にきれいなコードを生み出すことなのか
開発コストを下げる取り組み設置なのか
技術負債に向き合うための仕組みづくりか
DDDの真の目的とは
DDDの真の目的とは
「戦術的な側面も明文化されているから最終的
にきれいなコードを生み出すことなので
は?」
「テスタブルになりそうで設計良くするから開
発コストを下げる取り組みがしたいので
は?」
「そもそも事業に近いドメインを整理して技術
負債に向き合うための仕組みづくりかもね」
ぜーーんぶ 違う!!
真の目的は
ソフトウェア化する対象の
問題を解決すること!!
脳裏に焼き付けてください
ソフトウェア化する対象の
問題を解決すること!!
DDDの真の目的とは
ソフトウェアにしたい対象を定めて
ユビキタス言語・コンテキストを整理して
丁寧にドメインモデリングを行ったのも
ソフトウェア化する対象の問題を解決することが本丸
ドメインモデリングもそれに即して以下の定義がある
「問題解決のために、物事の特定の側面を抽象化したもの」
DDDの真の目的とは
ソフトウェアにしたい対象を定めて
ユビキタス言語・コンテキストを整理して
丁寧にドメインモデリングを行ったのも
ソフトウェア化する対象の問題を解決することが本丸
ドメインモデリングもそれに即して以下の定義がある
「問題解決のために、物事の特定の側面を抽象化したもの」
つまり、対象の問題に関係ない情報は全て無駄
DDDの真の目的とは
配達員は以下の就業規定・福利厚生があるとして
● 走行距離に応じて休養を取る必要がある
● 配達数に応じてインセンティブ報酬でボーナスが与えられる
● 子どもがいるなら誕生日休暇が付与される
○ 休んだら5000円の特別報酬がもらえる
「配達員が貨物を倉庫からお客様へ運ぶ」管理の
ソフトウェアというコンテキストでは全て無駄
ソフトウェア化する対象の
問題を解決すること!!
ドメインレイヤーの考え方
DDDという抽象度の高い手法
ビジネスロジックを守る取り組みのイメージ
その戦術というところを垣間見る
問題解決を行うための心がけ
問題解決を行うための心がけ
ソフトウェア化する対象 = ドメイン の問題解決を行う
それを阻害する一番の要因はなんだろうか
[問題解決の一番の障害]
問題解決を行うための心がけ
ソフトウェア化する対象 = ドメイン の問題解決を行う
それを阻害する一番の要因はなんだろうか
[問題解決の一番の障害]
● ドメインモデルが正しく表現されない
○ ユビキタス言語・コンテキストの不一致
○ 技術的な関心事がドメインモデルに混ざる
問題解決を行うための心がけ
ソフトウェア化する対象 = ドメイン の問題解決を行う
それを阻害する一番の要因はなんだろうか
[問題解決の一番の障害]
● ドメインモデルが正しく表現されない
○ ユビキタス言語・コンテキストの不一致
○ 技術的な関心事がドメインモデルに混ざる
一番厄介で見落としやすい観点
問題解決を行うための心がけ
そもそもソフトウェアエンジニアは「技術を用いて問題解決をする」
どうしても方法論として技術のコンテキストが入り込みやすい
● 認証認可
● 暗号化・秘匿化
● 遅延実行
上記の考え方が入り込むのは問題ないが特定技術に寄った考え方を
ドメインモデルにもたせてはいけない
むずかしい…
問題解決を行うための心がけ
大事なことは
「ビジネスの関心」と「技術の関心」をうまく分離して
「ビジネスの関心」をドメインモデルに閉じ込めること
● ドメイン層はstruct / classの置き場所ではない
● ドメイン層は「ビジネスの関心」を表現する場所である
表現力を上げるための戦術的DDD
- Entity / ValueObject / Aggregate / Service
今日のまとめ
今日の内容をおさらいして
DDDのファーストステップを踏み出そう
駆動開発って?
動力源・力の加えるポイント・起点を明示した開発手法
ex: 「スキーマファースト ≒ スキーマ駆動開発」
● TDD: テストを起点に開発をする
● YDD: 嫁の要望を動力源に開発をする
● MDD: しっかりDSLで設計してから開発をする
● DDD: ソフトウェア化する対象を抽出して開発する
DDDが意味するところはなんなのか?
ドメイン = [ソフトウェアにする対象] を起点にした開発手法
● ソフトウェアにする対象を定める
● ユビキタス言語・コンテキストを整理する
● ドメインモデリングを行う
DDDの文脈で語るときに意識したいこと
コードの書き方・設計手法は「戦術的DDD(軽量DDD)」
で技術的関心としてフォーカスされがちだけど
DDDの本質・真骨頂ではない
DDDの真の目的とは
ソフトウェアにしたい対象を定めて
ユビキタス言語・コンテキストを整理して
丁寧にドメインモデリングを行ったのも
ソフトウェア化する対象の問題を解決することが本丸
ドメインモデリングもそれに即して以下の定義がある
「問題解決のために、物事の特定の側面を抽象化したもの」
つまり、対象の問題に関係ない情報は全て無駄

Contenu connexe

Tendances

ソフトウェア開発のやり方の改善
ソフトウェア開発のやり方の改善ソフトウェア開発のやり方の改善
ソフトウェア開発のやり方の改善増田 亨
 
ドメイン駆動設計入門
ドメイン駆動設計入門ドメイン駆動設計入門
ドメイン駆動設計入門Takuya Kitamura
 
データベース設計徹底指南
データベース設計徹底指南データベース設計徹底指南
データベース設計徹底指南Mikiya Okuno
 
ドメインオブジェクトの見つけ方・作り方・育て方
ドメインオブジェクトの見つけ方・作り方・育て方ドメインオブジェクトの見つけ方・作り方・育て方
ドメインオブジェクトの見つけ方・作り方・育て方増田 亨
 
レガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチ
レガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチレガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチ
レガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチ増田 亨
 
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Springドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring増田 亨
 
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)A AOKI
 
【BS11】毎年訪れる .NET のメジャーバージョンアップに備えるために取り組めること
【BS11】毎年訪れる .NET のメジャーバージョンアップに備えるために取り組めること 【BS11】毎年訪れる .NET のメジャーバージョンアップに備えるために取り組めること
【BS11】毎年訪れる .NET のメジャーバージョンアップに備えるために取り組めること 日本マイクロソフト株式会社
 
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
DDDのモデリングとは何なのか、 そしてどうコードに落とすのかDDDのモデリングとは何なのか、 そしてどうコードに落とすのか
DDDのモデリングとは何なのか、 そしてどうコードに落とすのかKoichiro Matsuoka
 
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話Koichiro Matsuoka
 
ドメイン駆動設計 失敗したことと成功したこと
ドメイン駆動設計 失敗したことと成功したことドメイン駆動設計 失敗したことと成功したこと
ドメイン駆動設計 失敗したことと成功したことBIGLOBE Inc.
 
ドメイン駆動設計 本格入門
ドメイン駆動設計 本格入門ドメイン駆動設計 本格入門
ドメイン駆動設計 本格入門増田 亨
 
オブジェクト指向プログラミング入門 -- Java object-oriented programming primer
オブジェクト指向プログラミング入門 -- Java object-oriented programming primerオブジェクト指向プログラミング入門 -- Java object-oriented programming primer
オブジェクト指向プログラミング入門 -- Java object-oriented programming primer増田 亨
 
DDDを実践できるエンジニアを育成するための取り組みについて
DDDを実践できるエンジニアを育成するための取り組みについてDDDを実践できるエンジニアを育成するための取り組みについて
DDDを実践できるエンジニアを育成するための取り組みについてBIGLOBE Inc.
 
こわくない Git
こわくない Gitこわくない Git
こわくない GitKota Saito
 
DockerとPodmanの比較
DockerとPodmanの比較DockerとPodmanの比較
DockerとPodmanの比較Akihiro Suda
 
概念モデリング再入門 + DDD
概念モデリング再入門 + DDD概念モデリング再入門 + DDD
概念モデリング再入門 + DDDHiroshima JUG
 
スクラムはもうだめぽよ!新しい開発手法『パワープレイ』をお姉さんが教えてあげちゃう!
スクラムはもうだめぽよ!新しい開発手法『パワープレイ』をお姉さんが教えてあげちゃう!スクラムはもうだめぽよ!新しい開発手法『パワープレイ』をお姉さんが教えてあげちゃう!
スクラムはもうだめぽよ!新しい開発手法『パワープレイ』をお姉さんが教えてあげちゃう!Moto Arima
 
ドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解するドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解する増田 亨
 
リッチなドメインモデル 名前探し
リッチなドメインモデル 名前探しリッチなドメインモデル 名前探し
リッチなドメインモデル 名前探し増田 亨
 

Tendances (20)

ソフトウェア開発のやり方の改善
ソフトウェア開発のやり方の改善ソフトウェア開発のやり方の改善
ソフトウェア開発のやり方の改善
 
ドメイン駆動設計入門
ドメイン駆動設計入門ドメイン駆動設計入門
ドメイン駆動設計入門
 
データベース設計徹底指南
データベース設計徹底指南データベース設計徹底指南
データベース設計徹底指南
 
ドメインオブジェクトの見つけ方・作り方・育て方
ドメインオブジェクトの見つけ方・作り方・育て方ドメインオブジェクトの見つけ方・作り方・育て方
ドメインオブジェクトの見つけ方・作り方・育て方
 
レガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチ
レガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチレガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチ
レガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチ
 
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Springドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
 
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
 
【BS11】毎年訪れる .NET のメジャーバージョンアップに備えるために取り組めること
【BS11】毎年訪れる .NET のメジャーバージョンアップに備えるために取り組めること 【BS11】毎年訪れる .NET のメジャーバージョンアップに備えるために取り組めること
【BS11】毎年訪れる .NET のメジャーバージョンアップに備えるために取り組めること
 
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
DDDのモデリングとは何なのか、 そしてどうコードに落とすのかDDDのモデリングとは何なのか、 そしてどうコードに落とすのか
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
 
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
 
ドメイン駆動設計 失敗したことと成功したこと
ドメイン駆動設計 失敗したことと成功したことドメイン駆動設計 失敗したことと成功したこと
ドメイン駆動設計 失敗したことと成功したこと
 
ドメイン駆動設計 本格入門
ドメイン駆動設計 本格入門ドメイン駆動設計 本格入門
ドメイン駆動設計 本格入門
 
オブジェクト指向プログラミング入門 -- Java object-oriented programming primer
オブジェクト指向プログラミング入門 -- Java object-oriented programming primerオブジェクト指向プログラミング入門 -- Java object-oriented programming primer
オブジェクト指向プログラミング入門 -- Java object-oriented programming primer
 
DDDを実践できるエンジニアを育成するための取り組みについて
DDDを実践できるエンジニアを育成するための取り組みについてDDDを実践できるエンジニアを育成するための取り組みについて
DDDを実践できるエンジニアを育成するための取り組みについて
 
こわくない Git
こわくない Gitこわくない Git
こわくない Git
 
DockerとPodmanの比較
DockerとPodmanの比較DockerとPodmanの比較
DockerとPodmanの比較
 
概念モデリング再入門 + DDD
概念モデリング再入門 + DDD概念モデリング再入門 + DDD
概念モデリング再入門 + DDD
 
スクラムはもうだめぽよ!新しい開発手法『パワープレイ』をお姉さんが教えてあげちゃう!
スクラムはもうだめぽよ!新しい開発手法『パワープレイ』をお姉さんが教えてあげちゃう!スクラムはもうだめぽよ!新しい開発手法『パワープレイ』をお姉さんが教えてあげちゃう!
スクラムはもうだめぽよ!新しい開発手法『パワープレイ』をお姉さんが教えてあげちゃう!
 
ドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解するドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解する
 
リッチなドメインモデル 名前探し
リッチなドメインモデル 名前探しリッチなドメインモデル 名前探し
リッチなドメインモデル 名前探し
 

Similaire à ドメイン駆動開発 勉強会 ①

ドメイン駆動設計 思えば遠くにきたもんだ
ドメイン駆動設計 思えば遠くにきたもんだドメイン駆動設計 思えば遠くにきたもんだ
ドメイン駆動設計 思えば遠くにきたもんだ増田 亨
 
KyotoLT_Online_27.pdf
KyotoLT_Online_27.pdfKyotoLT_Online_27.pdf
KyotoLT_Online_27.pdfhiroya akita
 
要求開発×アジャイル開発×ドメイン駆動開発
要求開発×アジャイル開発×ドメイン駆動開発要求開発×アジャイル開発×ドメイン駆動開発
要求開発×アジャイル開発×ドメイン駆動開発Kent Ishizawa
 
【B-3】 社内ソーシャルメディア開発トライ&エラー ~おれたちの4tate~ 原島法子氏/岩永義弘氏
【B-3】 社内ソーシャルメディア開発トライ&エラー ~おれたちの4tate~ 原島法子氏/岩永義弘氏【B-3】 社内ソーシャルメディア開発トライ&エラー ~おれたちの4tate~ 原島法子氏/岩永義弘氏
【B-3】 社内ソーシャルメディア開発トライ&エラー ~おれたちの4tate~ 原島法子氏/岩永義弘氏Developers Summit
 
ドメイン駆動設計とは何か 【入門編】
ドメイン駆動設計とは何か 【入門編】ドメイン駆動設計とは何か 【入門編】
ドメイン駆動設計とは何か 【入門編】増田 亨
 
Rails on Dockerとの戦い
Rails on Dockerとの戦いRails on Dockerとの戦い
Rails on Dockerとの戦いYasutomo Uemori
 
20120216 Developers Summit 2012 【16-B-7】 LT「10年後も世界で通じるエンジニアであるために」
20120216 Developers Summit 2012 【16-B-7】 LT「10年後も世界で通じるエンジニアであるために」20120216 Developers Summit 2012 【16-B-7】 LT「10年後も世界で通じるエンジニアであるために」
20120216 Developers Summit 2012 【16-B-7】 LT「10年後も世界で通じるエンジニアであるために」Fujio Kojima
 
ソフトウェアの核心にある複雑さに立ち向かう
ソフトウェアの核心にある複雑さに立ち向かうソフトウェアの核心にある複雑さに立ち向かう
ソフトウェアの核心にある複雑さに立ち向かう増田 亨
 
テスト駆動開発の進化
テスト駆動開発の進化テスト駆動開発の進化
テスト駆動開発の進化Yukei Wachi
 
見る前に跳べ 〜ギークの工夫で社会を変えよう〜
見る前に跳べ 〜ギークの工夫で社会を変えよう〜見る前に跳べ 〜ギークの工夫で社会を変えよう〜
見る前に跳べ 〜ギークの工夫で社会を変えよう〜Takuya Oikawa
 
ふつうのプログラマの自分戦略
ふつうのプログラマの自分戦略ふつうのプログラマの自分戦略
ふつうのプログラマの自分戦略irof N
 
20151110 ドメイン駆動設計によるサービス開発
20151110 ドメイン駆動設計によるサービス開発20151110 ドメイン駆動設計によるサービス開発
20151110 ドメイン駆動設計によるサービス開発Mao Ohnishi
 
ドメイン駆動設計の学習曲線とブレークポイント
ドメイン駆動設計の学習曲線とブレークポイントドメイン駆動設計の学習曲線とブレークポイント
ドメイン駆動設計の学習曲線とブレークポイント増田 亨
 
ドメイン駆動設計を実践するプログラマーの悩み
ドメイン駆動設計を実践するプログラマーの悩みドメイン駆動設計を実践するプログラマーの悩み
ドメイン駆動設計を実践するプログラマーの悩みhaljik Seiji
 
Discordから バーチャルオフィス「Teamflow」 に乗り換えてみた 雑談を生む工夫
Discordから バーチャルオフィス「Teamflow」 に乗り換えてみた 雑談を生む工夫Discordから バーチャルオフィス「Teamflow」 に乗り換えてみた 雑談を生む工夫
Discordから バーチャルオフィス「Teamflow」 に乗り換えてみた 雑談を生む工夫Koichiro Matsuoka
 
Implementing Domain-Driven Design: Part 1
Implementing Domain-Driven Design: Part 1Implementing Domain-Driven Design: Part 1
Implementing Domain-Driven Design: Part 1Atsushi Kambara
 
PHPにおけるRIA事情と開発
PHPにおけるRIA事情と開発PHPにおけるRIA事情と開発
PHPにおけるRIA事情と開発konekto
 
Aws Dev Day2021 「ドメイン駆動設計のマイクロサービスへの活用とデベロッパーに求められるスキル」参考資料(松岡パート)
Aws Dev Day2021 「ドメイン駆動設計のマイクロサービスへの活用とデベロッパーに求められるスキル」参考資料(松岡パート)Aws Dev Day2021 「ドメイン駆動設計のマイクロサービスへの活用とデベロッパーに求められるスキル」参考資料(松岡パート)
Aws Dev Day2021 「ドメイン駆動設計のマイクロサービスへの活用とデベロッパーに求められるスキル」参考資料(松岡パート)Koichiro Matsuoka
 

Similaire à ドメイン駆動開発 勉強会 ① (20)

DDのはなし【勉強会資料】
DDのはなし【勉強会資料】 DDのはなし【勉強会資料】
DDのはなし【勉強会資料】
 
ドメイン駆動設計 思えば遠くにきたもんだ
ドメイン駆動設計 思えば遠くにきたもんだドメイン駆動設計 思えば遠くにきたもんだ
ドメイン駆動設計 思えば遠くにきたもんだ
 
KyotoLT_Online_27.pdf
KyotoLT_Online_27.pdfKyotoLT_Online_27.pdf
KyotoLT_Online_27.pdf
 
要求開発×アジャイル開発×ドメイン駆動開発
要求開発×アジャイル開発×ドメイン駆動開発要求開発×アジャイル開発×ドメイン駆動開発
要求開発×アジャイル開発×ドメイン駆動開発
 
【B-3】 社内ソーシャルメディア開発トライ&エラー ~おれたちの4tate~ 原島法子氏/岩永義弘氏
【B-3】 社内ソーシャルメディア開発トライ&エラー ~おれたちの4tate~ 原島法子氏/岩永義弘氏【B-3】 社内ソーシャルメディア開発トライ&エラー ~おれたちの4tate~ 原島法子氏/岩永義弘氏
【B-3】 社内ソーシャルメディア開発トライ&エラー ~おれたちの4tate~ 原島法子氏/岩永義弘氏
 
ドメイン駆動設計とは何か 【入門編】
ドメイン駆動設計とは何か 【入門編】ドメイン駆動設計とは何か 【入門編】
ドメイン駆動設計とは何か 【入門編】
 
Developers circle vol1
Developers circle vol1Developers circle vol1
Developers circle vol1
 
Rails on Dockerとの戦い
Rails on Dockerとの戦いRails on Dockerとの戦い
Rails on Dockerとの戦い
 
20120216 Developers Summit 2012 【16-B-7】 LT「10年後も世界で通じるエンジニアであるために」
20120216 Developers Summit 2012 【16-B-7】 LT「10年後も世界で通じるエンジニアであるために」20120216 Developers Summit 2012 【16-B-7】 LT「10年後も世界で通じるエンジニアであるために」
20120216 Developers Summit 2012 【16-B-7】 LT「10年後も世界で通じるエンジニアであるために」
 
ソフトウェアの核心にある複雑さに立ち向かう
ソフトウェアの核心にある複雑さに立ち向かうソフトウェアの核心にある複雑さに立ち向かう
ソフトウェアの核心にある複雑さに立ち向かう
 
テスト駆動開発の進化
テスト駆動開発の進化テスト駆動開発の進化
テスト駆動開発の進化
 
見る前に跳べ 〜ギークの工夫で社会を変えよう〜
見る前に跳べ 〜ギークの工夫で社会を変えよう〜見る前に跳べ 〜ギークの工夫で社会を変えよう〜
見る前に跳べ 〜ギークの工夫で社会を変えよう〜
 
ふつうのプログラマの自分戦略
ふつうのプログラマの自分戦略ふつうのプログラマの自分戦略
ふつうのプログラマの自分戦略
 
20151110 ドメイン駆動設計によるサービス開発
20151110 ドメイン駆動設計によるサービス開発20151110 ドメイン駆動設計によるサービス開発
20151110 ドメイン駆動設計によるサービス開発
 
ドメイン駆動設計の学習曲線とブレークポイント
ドメイン駆動設計の学習曲線とブレークポイントドメイン駆動設計の学習曲線とブレークポイント
ドメイン駆動設計の学習曲線とブレークポイント
 
ドメイン駆動設計を実践するプログラマーの悩み
ドメイン駆動設計を実践するプログラマーの悩みドメイン駆動設計を実践するプログラマーの悩み
ドメイン駆動設計を実践するプログラマーの悩み
 
Discordから バーチャルオフィス「Teamflow」 に乗り換えてみた 雑談を生む工夫
Discordから バーチャルオフィス「Teamflow」 に乗り換えてみた 雑談を生む工夫Discordから バーチャルオフィス「Teamflow」 に乗り換えてみた 雑談を生む工夫
Discordから バーチャルオフィス「Teamflow」 に乗り換えてみた 雑談を生む工夫
 
Implementing Domain-Driven Design: Part 1
Implementing Domain-Driven Design: Part 1Implementing Domain-Driven Design: Part 1
Implementing Domain-Driven Design: Part 1
 
PHPにおけるRIA事情と開発
PHPにおけるRIA事情と開発PHPにおけるRIA事情と開発
PHPにおけるRIA事情と開発
 
Aws Dev Day2021 「ドメイン駆動設計のマイクロサービスへの活用とデベロッパーに求められるスキル」参考資料(松岡パート)
Aws Dev Day2021 「ドメイン駆動設計のマイクロサービスへの活用とデベロッパーに求められるスキル」参考資料(松岡パート)Aws Dev Day2021 「ドメイン駆動設計のマイクロサービスへの活用とデベロッパーに求められるスキル」参考資料(松岡パート)
Aws Dev Day2021 「ドメイン駆動設計のマイクロサービスへの活用とデベロッパーに求められるスキル」参考資料(松岡パート)
 

ドメイン駆動開発 勉強会 ①