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
DDD導入にどう立ち向かう? 開発現場への適用方法あれこれ②
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
natacon
August 24, 2022
Programming
530
1
Share
DDD導入にどう立ち向かう? 開発現場への適用方法あれこれ②
2022/8/24 3社合同DDD勉強会
natacon
August 24, 2022
More Decks by natacon
See All by natacon
"個"の集まりに"チームというフィクション"をデザインしてみた ― 認知とつながりが変わると、アウトカムの捉え方も変わる ―
natacon
0
120
Backend LT フェーズ変化、プロダクトの成長に伴う技術的変遷
natacon
0
180
課題解決ではなく、価値創造を求めるVoicyの開発チームの組織設計と立ち上げの勘所
natacon
5
1.8k
契約による設計の「契約」とは何を指しているか
natacon
0
650
DDDにどう立ち向かう?リファクタリングのあれこれ
natacon
1
1.2k
DDD導入にどう立ち向かう? 開発現場への適用方法あれこれ①
natacon
1
420
Other Decks in Programming
See All in Programming
JAWS-UG横浜 #100 祝・第100回スペシャルAWS は VPC レスの時代へ
maroon1st
0
210
tRPCの概要と少しだけパフォーマンス
misoton665
2
260
My daily life on Ruby
a_matsuda
2
160
How We Practice Exploratory Testing in Iterative Development( #scrumniigata ) / 反復開発の中で、探索的テストをどう実施しているか
teyamagu
PRO
3
610
(Re)make Regexp in Ruby: Democratizing internals for the JIT
makenowjust
3
970
Making the RBS Parser Faster
soutaro
0
650
書き換えて学ぶTemporal #fukts
pirosikick
2
330
t *testing.T は どこからやってくるの?
otakakot
1
890
クラウドネイティブなエンジニアに向ける Raycastの魅力と実際の活用事例
nealle
2
230
いつか誰かが、と思っていた フロントエンド刷新5年間の実践知
kiichisugihara
1
250
AIベース静的検査器の偽陽性率を抑える工夫3選
orgachem
PRO
4
410
「話せることがない」を乗り越える 〜日常業務から登壇テーマをつくる思考法〜
shoheimitani
4
960
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Git: the NoSQL Database
bkeepers
PRO
432
67k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
200
Measuring & Analyzing Core Web Vitals
bluesmoon
9
820
Six Lessons from altMBA
skipperchong
29
4.2k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
110
Automating Front-end Workflow
addyosmani
1370
200k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
530
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
130
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.6k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.5k
Transcript
DDD導入にどう立ち向かう? 開発現場への適用方法あれこれ② 2022/08/24 株式会社Voicy 灘脇裕一 (@natacoon)
自己紹介 灘脇 裕一 Backend Engineer 機能開発チームリーダー スクラムマスター 2012.04 - HRTech
2020.07 - Voicy 本日はよろしくお願いします! @natacoon 好きなモノ: 服、ワイン、スプラトゥーン 株式会社Voicy
本日のアジェンダ どのタイミングでモデリングする? 1 2 だれとモデリングする? ①のスライド
Voicy
Voicy 声で人の視界を広げ、ワクワクする社会へ。 たのしい声。せつない声。くやしい声。うれしい声。 ここに来れば、パーソナリティは本音を語ることができ、リス ナーは本音を聞くことができる。 そんな、声のプラットフォームを築くことで、人の視界は広が り、ワクワクする社会が生まれていく。2016年の創業以来、私 たちのこの想いは変わることはありません。
そのために、これからもVoicyは進化し続けます。
Voicy プロダクト
前段 - もともとDDDは全くやっておらず、手続き的なコードが増えてきた - 以前はプロダクトに備えている機能はシンプルだったので、問題はなかった - が、徐々にプロダクト・開発組織も大きくなり始めたことにより、システムが実現しようと していることがコードから読み取りづらくなってきていた - 会社全体で概念レベルの理解がズレはじめていた
前段 今日の内容は モデリングをしていくために どういう流れで越境していっているか というお話です
だれとモデリングする?
だれとモデリングする? - Voicyは課題解決型ではなく、価値創造型の事業であるため、明確なステークホルダー、ド メインエキスパートがいない - プロダクトとして、どういう形であるべきかを自分たちで模索・定義しながら作る
だれとモデリングする? チームのはなし 職能横断型で、意思決定から実装までをチーム単体で動ける構成 PdM デザイ ナー iOS Android Backend Frontend
QA
だれとモデリングする? - 理想チームメンバー全員で行いたい - とはいえ、スプリントで使える時間は限られているので最低メンバーを決める - 意思決定に必要なメンバー PdM デザイ ナー
iOS Android Backend Frontend QA エンジニアは誰か1人いればOK (本音はエンジニアは2名以上が良いと思う)
だれとモデリングする? このメンバーで何する? PdM デザイ ナー Engineer
だれとモデリングする? ユーザーストーリーマッピング ユースケース ドメインモデル(概念レベル)
どのタイミングでモデリングする?
どのタイミングでモデリングする? 開発フローのはなし - 以前はウォーターフォール寄りの開発フローだった - 途中からスクラムを組む形に変え、組織体制見直しも行ってチーム編成・体制も変わってき た
どのタイミングでモデリングする? 自分たちのこれまでの進め方を理解する - PdM、デザイナーでFigmaの画面イメージ、遷移イメージで会話され始めることが多かった - この流れのままデザインベースで開発事項を決め、エンジニアに伝達する流れ - モデルを描くとすれば、この伝達するタイミング以降だった
どのタイミングでモデリングする? 描いてみてディスカッションしてみた - 最初からモデルベースで話をはじめたほうが良くない?(デザイナー発言) ・・・え、ほんとに?😲😲😲
どのタイミングでモデリングする? 仮説を立てる段階で、Figmaではなくモデルで考える →画面はモデルを表した一つの形に過ぎない
どのタイミングでモデリングする? 画面/遷移イメージ → モデル
どのタイミングでモデリングする? モデル → 画面/遷移イメージ
どのタイミングでモデリングする? - 画面ベースで構想が湧くチームもあれば、モデルベースのほうが適切なチームもある - チームによるので、一概にこれが正しいかではない
どのタイミングでモデリングする? イシューリスト ユーザーストーリー (大きめ) プロダクトバックログ スプリントバックログ ココ - 少しでも早めにやることで不確実性を狭める -
ユーザーストーリーを分割し、その範囲においてのモデルを考える活動を行う - 一定以内に予定する開発事項のモデリングを、先立ってスプリントゴールに組み込んでいく - →その後のリファインメントもやりやすくなる
まとめ - 事業の特性によりドメインエキスパートがいない場合は、モデルとユーザース トーリーなどを並行で考えることで、仮説を立てながらモデリングを行うこと でカバーする - 画面/遷移イメージから構想に入ったほうがやりやすいこともあるが、細かい挙 動に目が行きやすい。その場合はモデルベースで振る舞いを考える部分から始 めてみよう -
スプリントにモデリングを組み込むのむずかしい・・・
お知らせ Meetyでカジュアル面談をやってます! 転職関係ない話もウェルカムなのでお話しましょう URL: https://meety.net/matches/KjRwJrKGDbKO Voicy ダウンロードリンク