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
89
数字で表すシリーズ 〜開発規模(工数⇔期間)の見積もり編①〜 / 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
58
開発チームの自走力を育む「イテレーションマネージャー」という取り組み / iteration manager
kawanamiyuu
1
1.4k
スタートアップで 1 度は崩壊しかけたチームがこれからチームになっていくための第一歩 / re-startup team
kawanamiyuu
2
870
PHP でもアーキテクチャテストしたい! / #phperkaigi / PHPerKaigi 2021
kawanamiyuu
6
4.5k
3 つの “はじめて” から始まった OSS 活動。のその先で / OSS LT会 #osscontributelt / turning point of joy as a developer
kawanamiyuu
0
740
腕力と瞬発力(新年の抱負 超LT会- vol.2 #ultral)/ New Year’s Resolution 2021
kawanamiyuu
2
390
ArchUnit で始める Java アプリケーションアーキテクチャの自動テスト / 自動化大好きエンジニアLT会 / LT for Engineers who love Automation
kawanamiyuu
0
850
マイクロサービスアーキテクチャをあきらめないための、モノリスで始めるアーキテクチャテスト / #jjug_ccc_b #ccc_b8 / JJUG CCC 2020 Fall
kawanamiyuu
5
3.6k
Contribution to OSS
kawanamiyuu
0
110
Other Decks in Technology
See All in Technology
PHPでアクターモデルを活用したSagaパターンの実践法 / php-saga-pattern-with-actor-model
ytake
0
1k
View Transition API
shirakaba
1
930
チームビルディング「脅威モデリング」ワークショップ
koheiyoshikawa
0
130
非エンジニアにも伝えるメールセキュリティ / Email security for non-engineers
ykanoh
13
3.8k
RAGの基礎から実践運用まで:AWS BedrockとLangfuseで実現する構築・監視・評価
sonoda_mj
0
420
移行できそうでやりきれなかった 10年超えのシステムを葬るための戦略 / phper-kaigi-2025-ryu
carta_engineering
0
680
初めてのPostgreSQLメジャーバージョンアップ
kkato1
0
390
ソフトウェアプロジェクトの成功率が上がらない原因-「社会価値を考える」ということ-
ytanaka5569
0
120
OCI見積もり入門セミナー
oracle4engineer
PRO
0
110
頻繁リリース × 高品質 = 無理ゲー? いや、できます!/20250306 Shoki Hyo
shift_evolve
0
150
モジュラーモノリスでスケーラブルなシステムを作る - BASE のリアーキテクチャのいま
panda_program
7
2k
チームの性質によって変わる ADR との向き合い方と、生成 AI 時代のこれから / How to deal with ADR depends on the characteristics of the team
mh4gf
4
330
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
PRO
52
11k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
135
33k
The Pragmatic Product Professional
lauravandoore
33
6.5k
How STYLIGHT went responsive
nonsquared
99
5.4k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
Making Projects Easy
brettharned
116
6.1k
Embracing the Ebb and Flow
colly
85
4.6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Statistics for Hackers
jakevdp
798
220k
Git: the NoSQL Database
bkeepers
PRO
429
65k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
A better future with KSS
kneath
238
17k
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