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
数字で表すシリーズ 〜開発規模(工数⇔期間)の見積もり編②〜 / practice of es...
Search
Yu Kawanami
September 26, 2024
Technology
0
17
数字で表すシリーズ 〜開発規模(工数⇔期間)の見積もり編②〜 / practice of estimate part2
Yu Kawanami
September 26, 2024
Tweet
Share
More Decks by Yu Kawanami
See All by Yu Kawanami
数字で表すシリーズ 〜開発規模(工数⇔期間)の見積もり編①〜 / practice of estimate part1
kawanamiyuu
0
49
開発チームの自走力を育む「イテレーションマネージャー」という取り組み / iteration manager
kawanamiyuu
1
1.3k
スタートアップで 1 度は崩壊しかけたチームがこれからチームになっていくための第一歩 / re-startup team
kawanamiyuu
2
800
PHP でもアーキテクチャテストしたい! / #phperkaigi / PHPerKaigi 2021
kawanamiyuu
6
4.1k
3 つの “はじめて” から始まった OSS 活動。のその先で / OSS LT会 #osscontributelt / turning point of joy as a developer
kawanamiyuu
0
710
腕力と瞬発力(新年の抱負 超LT会- vol.2 #ultral)/ New Year’s Resolution 2021
kawanamiyuu
2
370
ArchUnit で始める Java アプリケーションアーキテクチャの自動テスト / 自動化大好きエンジニアLT会 / LT for Engineers who love Automation
kawanamiyuu
0
810
マイクロサービスアーキテクチャをあきらめないための、モノリスで始めるアーキテクチャテスト / #jjug_ccc_b #ccc_b8 / JJUG CCC 2020 Fall
kawanamiyuu
5
3.4k
Contribution to OSS
kawanamiyuu
0
98
Other Decks in Technology
See All in Technology
スプリントゴールにチームの状態も設定する背景とその効果 / Team state in sprint goals why and impact
kakehashi
2
100
グローバル展開を見据えたサービスにおける機械翻訳プラクティス / dp-ai-translating
cyberagentdevelopers
PRO
1
150
30万人が利用するチャットをFirebase Realtime DatabaseからActionCableへ移行する方法
ryosk7
5
350
最速最小からはじめるデータプロダクト / Data Product MVP
amaotone
5
740
サイバーエージェントにおける生成AIのリスキリング施策の取り組み / cyber-ai-reskilling
cyberagentdevelopers
PRO
2
200
よくわからんサービスについての問い合わせが来たときの強い味方 Amazon Q について
kazzpapa3
0
220
新R25、乃木坂46 Mobileなどのファンビジネスを支えるマルチテナンシーなプラットフォームの全体像 / cam-multi-cloud
cyberagentdevelopers
PRO
1
130
Vueで Webコンポーネントを作って Reactで使う / 20241030-cloudsign-vuefes_after_night
bengo4com
4
2.5k
Shift-from-React-to-Vue
calm1205
3
1.3k
チームを主語にしてみる / Making "Team" the Subject
ar_tama
4
310
WINTICKETアプリで実現した高可用性と高速リリースを支えるエコシステム / winticket-eco-system
cyberagentdevelopers
PRO
1
190
話題のGraphRAG、その可能性と課題を理解する
hide212131
4
1.5k
Featured
See All Featured
The Invisible Side of Design
smashingmag
297
50k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
43
6.6k
We Have a Design System, Now What?
morganepeng
50
7.2k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Fireside Chat
paigeccino
32
3k
Practical Orchestrator
shlominoach
186
10k
For a Future-Friendly Web
brad_frost
175
9.4k
Making the Leap to Tech Lead
cromwellryan
132
8.9k
Learning to Love Humans: Emotional Interface Design
aarron
272
40k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
26
2.1k
Raft: Consensus for Rubyists
vanstee
136
6.6k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
3
370
Transcript
数字で表すシリーズ 〜開発規模(工数⇔期間)の見積もり編②〜 2024/09/25 BABYJOB 開発部 LT会 @kawanamiyuu
前回のおさらい 2
前回のおさらい • 開発規模を数字で表すことができれば、定性的な営みにみえる “エン ジニアリング活動” を、観測可能な仕事として、”ビジネス活動” に接 続できる • 「工数」と「期間」の関係は以下の式で表すことができる
「期間(ヶ月)」=「工数(人月)」÷「人数」÷「開発稼働率(%)」 (例) 開発稼働率が 60 % の 4 人チームで、工数が 7.2 人月の開発の完了にかかる期間は 「7.2 人月 ÷ 4 人 ÷ 0.6 = 3 ヶ月」 3
前回のおさらい • 開発規模を数字で表すことができれば、定性的な営みにみえる “エン ジニアリング活動” を、観測可能な仕事として、”ビジネス活動” に接 続できる • 「工数」と「期間」の関係は以下の計算式で表すことができる
「期間(ヶ月)」=「工数(人月)」÷「人数」÷「開発稼働率(%)」 (例) 開発稼働率が 60 % の 4 人チームで、工数が 7.2 人月の開発の完了にかかる期間は 「7.2 人月 ÷ 4 人 ÷ 0.6 = 3 ヶ月」 4
前回のおさらい • 開発規模を数字で表すことができれば、定性的な営みにみえる “エン ジニアリング活動” を、観測可能な仕事として、”ビジネス活動” に接 続できる • 「工数」と「期間」の関係は以下の計算式で表すことができる??
「期間(ヶ月)」=「工数(人月)」÷「人数」÷「開発稼働率(%)」 (例) 開発稼働率が 60 % の 4 人チームで、工数が 7.2 人月の開発の完了にかかる期間は 「7.2 人月 ÷ 4 人 ÷ 0.6 = 3 ヶ月」 5
今回のテーマ 6
「バッファ」 7
「バッファ」とは ※ ChatGPT に聞いてみた 8
「バッファ」とは ※ ChatGPT に聞いてみた 9
「バッファ」を加味した開発規模の計算式 「期間(ヶ月)」 =「工数(人月)」÷「人数」÷「開発稼働率(%)」 ✕「バッファ」・・・(1 以上の実数) (例) 開発稼働率が 60 % の
4 人チームで、工数が 7.2 人月の開発の完了にかかる期間を求めたい。 時間バッファ係数を 1.5 とすると 「7.2 人月 ÷ 4 人 ÷ 0.6 ✕ 1.5 = 4.5 ヶ月」 10
ところで、 「バッファ」の値って どうやって決めるの? 11
「バッファ」の値の決め方 • 経験則(勘)で “えいや” で決める! • 12
「バッファ」の値の決め方 • 経験則(勘)で “えいや” で決める! • 最終的には決めの問題?? • 定量的に考えてみよう! (先の計算式から導出してみよう)
13
「バッファ」の導出 〜「バッファ」の定量的意味〜 14
「バッファ」の導出 工数と期間の関係式 「 期間(ヶ月)」 =「 工数(人月)」÷「人数」÷「開発稼働率(%)」 ✕「バッファ」 は、 15
「バッファ」の導出 工数と期間の関係式 「 期間(ヶ月)」 =「 工数(人月)」÷「人数」÷「開発稼働率(%)」 ✕「バッファ」 は、見積もり工数から、実際の開発期間を予想する式なので 16
「バッファ」の導出 以下のように表現できる。 「実績期間(ヶ月)」 =「見積工数(人月)」÷「人数」÷「開発稼働率(%)」 ✕「バッファ」 17
「バッファ」の導出 以下のように表現できる。 「実績期間(ヶ月)」 =「見積工数(人月)」÷「人数」÷「開発稼働率(%)」 ✕「バッファ」 この左辺と右辺を整理すると、 18
「バッファ」の導出 以下のように変形できる。 「人数」✕「実績期間(ヶ月)」✕「開発稼働率(%)」 =「見積工数(人月)」 ✕「バッファ」 19
「バッファ」の導出 以下のように変形できる。 「人数」✕「実績期間(ヶ月)」✕「開発稼働率(%)」 =「見積工数(人月)」 ✕「バッファ」 この左辺は実績工数を意味するので、 20
「バッファ」の導出 以下のようになり、 「実績工数(人月)」 =「見積工数(人月)」 ✕「バッファ」 最終的に... 21
「バッファ」の導出 「バッファ」 =「実績工数(人月)」÷「見積工数(人月)」 と表すことができる。 22
「バッファ」の正体 23
「バッファ」の正体 「バッファ」とは “実績工数と見積工数のズレの大きさ”。 平たくいうと「見積工数に対して、実績工数が何倍大きくな ると予想されるか」を意味する。 ※少し数式遊びをしたようにみえるが、直感にも合致する。 24
「バッファ」の正体 ここで発生する疑問... 結局、「実績工数」がわからないと、「バッファ」はわから ないのでは? 25 *計算式に 2 つの未知数がある 「期間(ヶ月)」・・・未知数 =「工数(人月)」÷「人数」÷「開発稼働率(%)」
✕「バッファ」・・・未知数
次回、 (見積もり編の) 最終回。 「バッファ」と 「バーンアップチャート」と 「プロジェクトマネジメント」 26