Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
TechBowl流ドメインモデリング_2025_02_28
Search
中村広樹
March 17, 2025
1
100
TechBowl流ドメインモデリング_2025_02_28
TechBowlでドメインモデリングをどのように行なっているかを勉強会で話した時の資料です。トーク9割だったかからスライドだけだとよくわからないかもです
中村広樹
March 17, 2025
Tweet
Share
Featured
See All Featured
How to Ace a Technical Interview
jacobian
276
23k
Designing for Performance
lara
608
69k
Documentation Writing (for coders)
carmenintech
71
4.7k
Designing Experiences People Love
moore
142
24k
The World Runs on Bad Software
bkeepers
PRO
68
11k
How STYLIGHT went responsive
nonsquared
100
5.5k
Fireside Chat
paigeccino
37
3.4k
Gamification - CAS2011
davidbonilla
81
5.3k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.4k
Music & Morning Musume
bryan
47
6.5k
Facilitating Awesome Meetings
lara
54
6.3k
Transcript
TechBowl流 ドメインモデルでの情報設計 中村 広樹 @coco_typing
導入 自己紹介 株式会社TechBowl プロダクトエンジニア 中村 広樹 (Hiroki Nakamura) 猫とゲームが好きです。 普段はVRでバーチャル出勤してます。
導入 ドメインモデルを作る目的 • 情報を整理し、関係者と共通認識を持つ • 設計の方向性をチームで共有し、実装をスムーズにする
ドメインモデルの作り方 事業の主役を見つける 目的やユースケースを整理 主要なエンティティ 値オブジェクト・集約を考える
ドメインモデルの作り方 情報整理で意識すること • ユビキタス言語を使う ◦ 新しいワードを勝手に作らない ◦ 知らないワードが聞こえたら確認 • 概念の関係性を意識
◦ 何に依存するか?どれくらい? • 生成や状態変更のルール ◦ 他概念との関係性の中で生まれる制約も意識 ◦ 状態遷移図を雑に話しながら書くのも有用
ドメインモデルの作り方 情報をまとめる道具を用意 チームで分かりやすい形になってれば形式はなんでもOK 様々なツールを模索しましたが、TechBowlではWhimsicalとい うツールに落ち着いています(2025/02現在)
ドメインモデルの作り方 関連するまとまりで概念を配置
ドメインモデルの作り方 概念についての説明 システム上での役割や他の概念との連携など リンクを貼ってわかりやすくするとGood 値オブジェクト 値の説明や制約を記載 ライフサイクル制約 生成・更新・削除ロジックの制約について記載 ここに書いたことをテスト項目として実装するの がGood
ライフサイクルイベント ライフサイクルをフックして発火する処理につい て記載
ドメインモデルの作り方 注意していること • インフラ層のことを考えすぎない ◦ 集約を考える上で、気づいたら思考がインフラ部分に染み出していることが ある ◦ 集約が大きくなりすぎてライフサイクル処理がボトルネックにならないよう に
• モデリング自体を一人でやらない ◦ 簡単だと思うモデルでも開発メンバーを巻き込むと新しい発見がある
ありがとうございます!