見積りとは何か 見積りとは何でないか - dRuby見積りとは何か...

Preview:

Citation preview

見積りとは何か見積りとは何でないか統計的手法, 俺プロセス, druby.org

読書メモを淡々と紹介みんな知ってる話技術系エンターテイメントはいかがなものか。

重要なことを先に

先に

重要

昨夏リリースまだ初版買えます!

dRubyによる

関 将俊 著

分散・Webプログラミング

私について

druby.orgプログラマTOPエンジニア?????

WEB+DB PRESS

肩身が狭い

肩身が狭い

豪華執筆陣。ここ→

普通の見積りの話

熊とワルツをソフトウェア見積り

見積りとは

目標ではない

「3ヶ月でやって

見積りではない

「○月△日にできます

これも目標

見積りとは

計画ではない

見積りとは

計画のための視点

確率分布

確率分布で表すある時期/コストでできる確率不確定性と向き合おう

相対確率の分布

3つの点

一番見込みがある日ナノパーセント日何もかもうまくいくとできる日

確実にできる日

積分してみる

五分五分な日

積分すると見える一番可能性がありそうな日とちょっと違う

見積りの回答例

ナノパーセント日一番見込みのある日五分五分な日確実にできる日

幅を狭めるには?

幅はリスクの大きさリスクを無視すれば狭まるリスクに気付かなければ狭まる狭めたいの?

精度とは何か

有効桁数だよ? > Precision1日?8H?28341.6秒?

正確さ

確からしさ95%信頼区間?

見積りの精度って

精度?正確さ?不確定性の把握?

尋ねられたのは

目標?見積り?

何のための見積り?

予言?計画?

ずっと見積れ

計画するために見積る計画し続けるために見積り続ける

ここまでが

常識

ここからは

俺見積り

統計的な見積り

また違った統計

統計の得意な領域

標本から母集団を推定異常の発見の手がかり

プロセスとは

なにかを出力するなにか出力を観察してみよう

ふつうの開発は

XPなどのイテレーティブな開発要求から実装、試験まで

当然

繰り返し出力しているはず

標本たくさん集まる

たとえば各ストーリーの実績数十個あればたいていわかる

正規分布に従う?

正確に求まるよ

実装に必要なポイントの分布ストーリーの個数がわかると‥全体でどのくらいかかるのか

製造のメタファは

自動化とか統計とか繰り返しの状況がないと使えない繰り返しを作ろう

もし出力が

1年で1回なら‥50年くらいやれば求まるよ

1日なら‥2ヶ月くらい?

結局

小さなストーリーに分割できて細かく反復して確認できたら見積りしやすい異常に気づける

分割する

大きいままでは食べられない扱いやすい粒度へ顧客も開発者も

繰り返すと上手に分割できる

そこまでやってたら

そこまでやってたら外さないそこまでやってたら異常もわかるしかもすごく速く

統計、役に立つの?

きっと

さて

まだ時間は余ってますね

俺プロセスとは

なにかを出力するなにか

ソフトウェアで言うと

プログラムを実体化したもの

ソフトウェア開発なら

プロセス = チーム

書かれたプロセス

チームをある視点で観察したメモ同じモノを見てもいろんな視点がポータブルかもしれないが転写はとってもとっても難しい

同じ物を見ても

なんでもWaterfallだなんでもアジャイルだ俺のはよいアジャイルだ

その抽象度はまるで

なんとかモデリング具体的な活動との乖離

出力を観察すると

プロセスの性能が見えるかも問題を分割し、解決する能力プロセスの出力を推定できる

問題点を見つけてプロセスを変更

プロセス超重要!!

つまりチーム重要!!出力重要書かれたプロセスはそれなりに

ポータブル?

言葉にしたら持ち出せるけど転写は難しいチームに依存した無数のプラクティス、文化?分析はできるかも

工場のメタファ

プロセスってまるで工場だチームを創る = 工場を創る

俺ソフトウェア工場

つづく

時間余ってたら

どうしよう‥

重要な点をもう一度

昨夏リリースまだ初版買えます!

dRubyによる

関 将俊 著

分散・Webプログラミング

Recommended