2005年06月24日(金) << 前の日記 | 次の日記 >>
これまでの06月24日 編集

■6なぜ、進捗率が上がらないのか〜進捗が上がらないヒミツ<< 前の記事 | 次の記事 >> このエントリーをはてなブックマークに追加

某所での話。
進捗会議の度に進捗率を報告するのだけど、1週目「80%です」、2週目「90%です」、3週目「99%です」、4週目「99.9%です」等と報告して後が無くなりつつあるという話になっていた。
プロジェクトの進捗率報告には、
  • 会議での批判を避けるために
  • 見込みや
  • 希望的観測
が織り込まれるために、こういう事態が生じていると見られているのだけれども、実は、こういった要素を取りのぞいても、「進捗率」はこうなる運命を持っている。
「とあるプロジェクト」の進捗をグラフにしたものを示す。
進捗率のグラフ
プロジェクトは、今はグラフの「期間B」の中盤位、進捗率で50%を超えたところだ。これから先の実際の進捗はもちろん誰も知らない。
「期間A」の頃は、なかなか進捗が伸びていかずに心配したけれども、最近は順調に開発は進んでいて、「期間A」での遅れも完全に取り戻した。特に問題も抱えていない。プロジェクトは順風満帆だ。
進捗会議で完成時期を訊ねられたけども、「希望的予測」によれば、納期よりもずいぶん前に完成できる様だ。もちろん少しサバは読んであるけども「納期には十分間に合います」と言うだけの余裕があった。

「おかしい、こんなハズでは」:

進捗も70%を超えた頃、どうも進捗率が伸びていかない事に気づいた。定例の進捗会議が苦痛になってくる頃だ。
1週目(今週は伸びが悪かったが仕方がないか)「80%です」
2週目(若干サバを読んで)「90%です」
3週目(納期過ぎているし、来週には取り返せるだろう)「99%です」
4週目(進んでいないとは言えない)「99.9%です」
等と報告して後が無くなってしまった。

どうしてこういうことになるのか:

そもそも、進捗率というのは線形に上がっていかないものなのだ。
このプロジェクトの進捗は、実際には波線の様に推移した。開発末期には当たり前にこういうことが起こるものなのだ。
これは、経済学では 「限界効用逓減の法則」[http://www.nikonet.or.jp/spring/sanae/MathTopic/teigen/teigen.htm] として知られている法則だけれども、開発においては、
「進捗率が100%に近づけば近づくほど、進捗率を上げるのが難しくなる。」
『進捗逓減の法則』, MAEDA Katsuyuki, 2005年6月24日
という困った現象が起こるのだ。
例えば、残っているバグが100個あるとする。もちろんこの時点で残りのバグの個数は分からないのだけれども。 そこから任意のバグ1個を取りのぞくのと、最後の1個のバグを取りのぞくのは当然、難易度が異なる。当然ながら、最後に残るものほど難物になりやすいし、それは終わってみて分かるのだ。
取っても取っても新たな敵が出てくる。百鬼夜行の箱を開けた様な感じだ。 小物を倒すと、どんどん強い敵が出現する感じ。百鬼夜行は百匹って分かっているけど、こっちは残りの数が分からない分だけ分が悪い。

一方、プロジェクトの立ち上がりは:

一方、プロジェクトの立ち上がり[期間A]においては、学習曲線があるので、なかなか進捗が上がらない現象が生じる。
この時期を過ぎると、一見順調に進捗率が上がっていくけれども[期間B]、完成に近づくと、再び進捗率の上昇は遅くなってくる[期間C]。
実は、これは当然のことだったのだ。

生産量をグラフに示すと:

この時、単位期間あたりにどれくらい進捗が増加したかを「生産量」として、これをグラフに示すと、
進捗率と生産量のグラフ
の様になる。
労働力は常に一定であるという仮定をすると、最大の生産効率だった時期と比較すると、プロジェクト末期では、数十分の一にまで生産性が低下することになる。
こんな中で、進捗が上がらないプレッシャーと闘うのは非常に辛い。 別にサボっている訳ではない。誰もが必死で働いているのに、進捗は全くと言って良いほど上がらない。 進捗会議では責任者が針のむしろに座らせられる。そのストレスは現場全体に伝わる。誰もがどうしてこんな状況になったのか分からないままに徹夜を重ねる。
そういう辛い状況にプロジェクトの度に直面して、コの仕事を辞めたくなるヒトは多いと聞く。

進捗は上がらなくなるものだと受け入れること:

進捗率が線形に上がっていくという根拠のない妄想がこういう悲劇を招いている。
線形に伸びなければならないのだったら、線形になる様に再定義すれば良いのだ。
幸い、ここで見た進捗のカーブは「ロジスティック曲線」そのものだ。ロジスティック曲線になるものだと思えば、全期間を見積もって、進捗率nn%は、期間進捗率nn%に相当すると再定義することができよう。その方が、みんなが幸せになれる。
先人も言っている。
「百里の道を行く者は、九十九里をもって全行程の半ばとす。」
佐藤一斎
こう定義すると、そもそも「とあるプロジェクト」が納期通りに完了しないということは、早期に判明していたりするのだ。
結局、サイズを見積もっていないのにスケジュールと工数が決まっているという状況では、こうやってなるべく早期に再スケジューリングのサインを発見した方が良い。

ロジスティック曲線だとすると進捗は100%にならない:

「永遠に進捗は100%にならないじゃないか」という指摘は正しい。 でも、プロジェクトは進捗が100%に達したから終わるものではないのだ。

ドラえもん〜のび太のデスマーチ〜[http://pc8.2ch.net/test/read.cgi/prog/1116741745/]:

■ 関連記事

以上、1 日分です。

指定日の日記を表示

前月 2005年06月 翌月
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30

最近の日記

2019年04月01日

新元号「令和」について

2019年03月23日

DXアンテナ ワイヤレスチューナー メディアコンセント DMC10F1

2019年02月17日

#例のグラボを活用する

2019年01月03日

シリーズ5・myHomeAlexaで自分のCDをかける

2018年12月25日

シリーズ4・英語の楽曲・アルバム・アーティスト名をカタカナに直す

2018年12月23日

シリーズ3: Echo Dotがやってきた

2018年12月19日

続・Echo Dotがやってきた

分野別タイトル一覧


全て
CLIP
SYA!nikki
book
freebsd
hns
magic
おさけ
おしごと
お買いもの
ぐる
ごはん
アクセシビリティ
オープンソース
セキュリティ
音楽
地域情報化
電子自治体
日記

keikuma on Twitter

keikuma Name:前田勝之
Location:長崎市
Web:http://www.nantok...
Bio:前田勝之(まえだかつゆき)。長崎在住。コンサル、SE、プログラマー、 なんとか株式会社代表、非常勤講師(情報セキュリティ)。 セキュアド、テクニカルエンジニア(SV,NW)。サーバ管理とWeb日記を10年ほど。 ネットとリアルの接点に関心あり。食べること・歌うこと・愛すること・作ること・飲むこと。おいしいものがぜんぶすき。

サイト内検索

Google AdSense

Powered by hns-2.19.9, HyperNikkiSystem Project