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
August 28, 2024
Technology
0
120
数字で表すシリーズ 〜開発規模(工数⇔期間)の見積もり編①〜 / practice of estimate part1
Yu Kawanami
August 28, 2024
Tweet
Share
More Decks by Yu Kawanami
See All by Yu Kawanami
数字で表すシリーズ 〜開発規模(工数⇔期間)の見積もり編②〜 / practice of estimate part2
kawanamiyuu
0
91
開発チームの自走力を育む「イテレーションマネージャー」という取り組み / iteration manager
kawanamiyuu
1
1.5k
スタートアップで 1 度は崩壊しかけたチームがこれからチームになっていくための第一歩 / re-startup team
kawanamiyuu
2
910
PHP でもアーキテクチャテストしたい! / #phperkaigi / PHPerKaigi 2021
kawanamiyuu
6
4.8k
3 つの “はじめて” から始まった OSS 活動。のその先で / OSS LT会 #osscontributelt / turning point of joy as a developer
kawanamiyuu
0
760
腕力と瞬発力(新年の抱負 超LT会- vol.2 #ultral)/ New Year’s Resolution 2021
kawanamiyuu
2
420
ArchUnit で始める Java アプリケーションアーキテクチャの自動テスト / 自動化大好きエンジニアLT会 / LT for Engineers who love Automation
kawanamiyuu
0
880
マイクロサービスアーキテクチャをあきらめないための、モノリスで始めるアーキテクチャテスト / #jjug_ccc_b #ccc_b8 / JJUG CCC 2020 Fall
kawanamiyuu
5
3.7k
Contribution to OSS
kawanamiyuu
0
130
Other Decks in Technology
See All in Technology
大「個人開発サービス」時代に僕たちはどう生きるか
sotarok
19
9k
DDD集約とサービスコンテキスト境界との関係性
pandayumi
2
260
絶対に失敗できないキャンペーンページの高速かつ安全な開発、WINTICKET × microCMS の開発事例
microcms
0
390
Language Update: Java
skrb
2
260
Kubernetes における cgroup driver のしくみ: runwasi の bugfix より
z63d
2
170
Kubernetes における cgroup v2 でのOut-Of-Memory 問題の解決
pfn
PRO
0
460
研究開発と製品開発、両利きのロボティクス
youtalk
1
470
AI時代に非連続な成長を実現するエンジニアリング戦略
sansantech
PRO
3
1.1k
『FailNet~やらかし共有SNS~』エレベーターピッチ
yokomachi
1
200
【初心者向け】ローカルLLMの色々な動かし方まとめ
aratako
7
3.2k
250905 大吉祥寺.pm 2025 前夜祭 「プログラミングに出会って20年、『今』が1番楽しい」
msykd
PRO
1
450
MCPで変わる Amebaデザインシステム「Spindle」の開発
spindle
PRO
3
2.8k
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
910
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Music & Morning Musume
bryan
46
6.8k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.6k
Writing Fast Ruby
sferik
628
62k
Docker and Python
trallard
45
3.5k
How to Ace a Technical Interview
jacobian
279
23k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
Optimizing for Happiness
mojombo
379
70k
How to train your dragon (web standard)
notwaldorf
96
6.2k
Transcript
数字で表すシリーズ 〜開発規模(工数⇔期間)の見積もり編①〜 2024/08/28 BABYJOB 開発部 LT会 @kawanamiyuu
開発規模 • 工数(単位:人月) ◦ ※計算がしやすいので本発表内では “人月” で考えます ◦ ※1 人月
= 20 人日、1 人日 = 8 時間 • 期間(単位:ヶ月) 2
「工数」と「期間」の関係 「1 人月」とはざっくりいうと「1 人」で開発すると「1 ヶ 月」かかる仕事量のこと。 すなわち、 • 「工数(人月)」=「人数」×「期間(ヶ月)」 •
「期間(ヶ月)」=「工数(人月)」÷「人数」 という計算式が成り立つ。 3
「工数」と「期間」の関係 「1 人月」とはざっくりいうと「1 人」で開発すると「1 ヶ 月」かかる仕事量のこと。 すなわち、 • 「工数(人月)」=「人数」×「期間(ヶ月)」 •
「期間(ヶ月)」=「工数(人月)」÷「人数」 という計算式が成り立つ。とは限らない。 4
どういうことか? 5
「開発」だけが仕事ではない 1 日のうちずっと開発をしている(ができる)わけではな い。チャットに返信したり、MTG に出席したり、運用作業 をしたり... つまり、「実際に開発に使える時間がどれくらいか」を考慮 する必要がある。 6
「開発」だけが仕事ではない 1 日のうちずっと開発をしている(ができる)わけではな い。チャットに返信したり、MTG に出席したり、運用作業 をしたり... つまり、「実際に開発に使える時間がどれくらいか」を考慮 する必要がある。 →「開発稼働率」というパラメータを導入する。 7
「開発稼働率」とは? 8
開発稼働率とは 「実際に開発を行える時間の割合」 例えば、 • 1 日(8 時間)に開発を 6 時間行った場合、開発稼働率は「75 %」
• 1 ヶ月(20 人日)に開発を 12 人日行った場合、開発稼働率は「60 %」 9
開発稼働率を考慮した計算方法 10
「工数」の計算方法 「工数(人月)」 =「人数」×「期間(ヶ月)」×「開発稼働率(%)」 開発稼働率が 60 % の 4 人チームで、完了に 3
ヶ月かかる開 発の工数は「4 人 × 3 ヶ月 × 0.6 = 7.2 人月」 11
「期間」の計算方法 「期間(ヶ月)」 =「工数(人月)」÷「人数」÷「開発稼働率(%)」 開発稼働率が 60 % の 4 人チームで、工数が 7.2
人月の開発 の完了にかかる期間は「7.2 人月 ÷ 4 人 ÷ 0.6 = 3 ヶ月」 12
ところで、 「工数⇔期間」の変換ができると なにが嬉しいか? 13
開発規模を数字で表すことの意味 • 「工数」を見積もることができれば、スケジュール (「期間」)を立てることができる • 定性的に「期間」を予想できれば、定量的な「工数」に もあたりをつけることができる 14
開発規模を数字で表すことの意味 • 「工数」を見積もることができれば、スケジュール (「期間」)を立てることができる • 定性的に「期間」を予想できれば、定量的な「工数」に もあたりをつけることができる → 開発という営みを、観測可能な仕事として、ビジネス活動 に接続できる
15
まとめ 16
「工数」と「期間」の関係 「1 人月」とは開発稼働率が 100 % の人員が「1 人」で開 発すると「1 ヶ月」かかる仕事量のこと。 すなわち、
• 「工数(人月)」=「人数」×「期間(ヶ月)」×「開発稼働率(%)」 • 「期間(ヶ月)」=「工数(人月)」÷「人数」÷「開発稼働率(%)」 という計算式が成り立つ。 17
「工数」と「期間」の関係 「1 人月」とは開発稼働率が 100 % の人員が「1 人」で開 発すると「1 ヶ月」かかる仕事量のこと。 すなわち、
• 「工数(人月)」=「人数」×「期間(ヶ月)」×「開発稼働率(%)」 • 「期間(ヶ月)」=「工数(人月)」÷「人数」÷「開発稼働率(%)」 という計算式が成り立つ。とは、やはり限らない。 18
次回予告。 「バッファ」の正体 19