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
33
数字で表すシリーズ 〜開発規模(工数⇔期間)の見積もり編①〜 / practice of estimate part1
Yu Kawanami
August 28, 2024
Tweet
Share
More Decks by Yu Kawanami
See All by Yu Kawanami
開発チームの自走力を育む「イテレーションマネージャー」という取り組み / iteration manager
kawanamiyuu
1
1.2k
スタートアップで 1 度は崩壊しかけたチームがこれからチームになっていくための第一歩 / re-startup team
kawanamiyuu
2
770
PHP でもアーキテクチャテストしたい! / #phperkaigi / PHPerKaigi 2021
kawanamiyuu
6
4k
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
800
マイクロサービスアーキテクチャをあきらめないための、モノリスで始めるアーキテクチャテスト / #jjug_ccc_b #ccc_b8 / JJUG CCC 2020 Fall
kawanamiyuu
5
3.4k
Contribution to OSS
kawanamiyuu
0
94
Introduction to OSS
kawanamiyuu
1
150
Other Decks in Technology
See All in Technology
20240906_JAWS_Yamanashi_#1_leap_beyond_the_AWS_all_certifications
tsumita
1
280
「自動テストのプラクティスを効果的に学ぶためのカードゲーム」 ( #sqip2024 )
teyamagu
PRO
1
160
SORACOMで実現するIoTのマルチクラウド対応 - IoTでのクリーンアーキテクチャの実現 -
kenichirokimura
0
360
なにもしてないのにNew Relicのデータ転送量が増えていたときに確認したこと
tk3fftk
2
200
より快適なエラーログ監視を目指して
leveragestech
4
1.3k
Autonomous Database Serverless 技術詳細 / adb-s_technical_detail_jp
oracle4engineer
PRO
15
40k
サーバレスでモバイルアプリ開発! NTTコム「ビジネスdアプリ」のアーキテクチャ / The architecture of business d app
nttcom
12
230
Javaにおける関数型プログラミンへの取り組み
skrb
7
310
Creative UIs with Compose: DroidKaigi 2024
chrishorner
1
230
DroidKaigi 2024 たすけて!ViewModel
mhidaka
5
570
PdMはどのように全てのスピードを上げられるか ~ 非連続進化のための具体的な取り組み ~
sansantech
PRO
2
520
Evolving DevOps Teams and Flexible Organizational Culture
kakehashi
1
260
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
36
7k
How to name files
jennybc
75
98k
How to Ace a Technical Interview
jacobian
275
23k
Imperfection Machines: The Place of Print at Facebook
scottboms
263
13k
What's in a price? How to price your products and services
michaelherold
242
11k
Raft: Consensus for Rubyists
vanstee
135
6.5k
Unsuck your backbone
ammeep
667
57k
GraphQLとの向き合い方2022年版
quramy
43
13k
Product Roadmaps are Hard
iamctodd
PRO
48
10k
Thoughts on Productivity
jonyablonski
66
4.2k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
8.9k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
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