見積もりの精度 Accuracy of EstimationThe Rational Edge(3/4 ページ)

» 2008年03月06日 12時00分 公開
[Denton Tarbet(プロジェクト管理/プランニングコンサルタント),Galorath Incorporated]

実際のプロジェクトモデリング:米社会保障局の10年

 社会保障局(SSA)は非常に大きな規模の組織で、その責務は重大だ。SSAは、2007年には5000万人の米国市民に対して5850 億ドル以上の退職金を給付している。メリーランド州ボルティモアに本局を置くSSAでは、約6万2000人の職員が10カ所の支局、6カ所の処理センター、そして1300カ所の事業所に分かれて働いている。数百万人という団塊の世代が退職期に差し掛かるなか、SSAに対する要求は高まるばかりとなっている。社会保障受給者の急増に合わせるには、100万人以上の市民の収入と給付金をトラッキングできる複数の複雑なコンピュータシステムと専用開発のソフトウェアが必要だ。これらのシステムは、SSAのシステム局で開発とテストが行われている。

 システム局は、1997年8月にパラメトリックモデリングソリューション(SEER by Galorath)の導入を決めた。当時、SSAは約100種類のプログラムを使用中で、ほかに30〜40種類の開発が進んでいた。そのほとんどすべてがCOBOLで書かれていた。この言語は、当時の世界の80%の業務に利用されていた。SSAは、Capability Maturity Model(CMM)という新プロセス標準への準拠と、ソフトウェア見積もり機能の一元管理を目指していた。

 SSAのSoftware Measurementチームでリーダーを務めたのがDennis O'Mailey氏(すでに退職)だった。同グループは、潜在的なソフトウェア開発プロジェクトの見積もりと、既存プロジェクトのトラッキングを担当していた。同氏は、「600人以上のプログラマが多くのシステムの開発と保守を行っていたため、正確なソフトウェア見積もりツールが必要だった。当時の見積もりは良くない、というのが全体の見方だった」と語っている。

 当時は、各プロジェクトマネージャがそれぞれ責任を持って見積もりを作成していた。O'Mailey氏は、「適切な見積もりはプロジェクトマネージャの知識と経験次第だった。プロジェクトの経験が長いプロジェクトマネージャの方が、経験の浅いプロジェクトマネージャより正確だった。しかし、多くのプロジェクトで数十倍の誤差があった」と語る。

 当初、SSAは数十件のプロジェクトにしかパラメトリックモデリングを導入しなかった。これらのプロジェクトでは、ツールを使って保守費用や開発継続の是非を判断した。しかし、SSAはCMM Levels 2および3への準拠にも取り組んでいた。O'Mailey氏は、「ソフトウェア開発作業が成熟しており、システム開発の標準方法論があることを示すものであることからCMMは重要だった」と語った。CMMでは、プロジェクト作業と見積もりは文書化された手続きに従って行うことが要求されていた。SEERを使えばSSAがこれらの要件を満たすことができた。

 今日、システム局のソフトウェア開発現場では約3200人のアナリスト、開発者、データベースモデラーといったさまざまなシステム担当者が働いている。彼らは、社会保障局用のソフトウェアの開発のほかにも、ほかの連邦政府機関向けのアプリケーションの設計と開発を行っている。SSAでO'Mailey氏の役職を引き継いだJim Denney氏によると、「COBOLプロジェクトも幾つか残っているが、どちらかといえばWebベースの言語に変わってきている。JavaやJavaScript、HTML、Visual Basic、そしてCold Fusionを使っている」という。同氏の組織は先日、「Medicare Part D Prescription Drug Coverage Initiative」のインプリメントに必要なソフトウェア開発の依頼も受けた。Denney氏は、「民間のベンダーにアウトソーシングするよりも、社会保障局に開発してもらう契約を選んだ。省庁間の合意により、Medicareプログラム向けのソフトウェア開発作業を時間単位で計算し、同額の払い戻しを受ける。結果的に、これをサポートするためだけに約600人を追加採用することになった」と語る。

 Jim Denney氏は、O'Mailey氏の後を引き継いだ際、このソリューションに新たなチャンスを見いだした。「別々のプロジェクトマネージャに見積もりを任せるべきか、プロジェクト間の関係を深く理解できる見積もり選任グループを用意すべきかどうか自問した」とDenney氏は語る。今日では、見積もりは一元管理されたサービスとなっていて、Software Measurementチームがこれを提供している。

 例年は、90〜100件の最も重要なSSAプロジェクトで、SEERパラメトリックモデリングソリューションを使った見積もりが出る。このプロセスは、「Microsoft Project」を使った仮のボトムアップ分析から始まっている。Denney氏のチームはこれよりもトップダウンのアプローチを取っており、ファンクションポイントを使って2つ目の見積もりを作成している。「1つはボトムアップ、もう1つはトップダウンというように、プロジェクトマネージャに見積もりを2つ用意させるのが標準だ。帰納と推理の両方の論法を使うようなものだ。そして、プロジェクトマネージャがこれら2つの見積もりのコストチェック比較を担当する。これら2つがかなり近づくよう目指している。経験豊かなプロジェクトマネージャは、ここで方向性の正しさを確認する」とDenney氏は話す。

 SEERはまた、リソース管理の役割も担っている。Denney氏は、「流用可能性と呼ばれるコンセプトを用いてプロジェクトの過不足状態を特定しようとしている。リソース過剰気味のプロジェクトに割り当てられたリソースは、これをもっと必要とするプロジェクトに回せる。これが見積もりのメリットの1つだ。パラメトリックモデリングでは、リソース利用率を明確にし、われわれが自分たちの仕事をもっと素早く、効率的かつ正確にできるようになる」と語っている。

 オープンソフトウェアアーキテクチャを用いたSEERは、ネイティブのKnowledge Basesを組織に特化したプロジェクトのデータで拡張することにより、個々の組織がそれぞれの見積もりツールを洗練できるようにしている。「われわれは約5年前、完成した50件のプロジェクト情報をGalorathの開発者に提供した。彼らはそれをSEERの知識ベースに組み入れた。参加したプロジェクトと作業を毎週記録するよう全員が義務付けられているため、現在ではかなり堅牢なプロジェクトトラッキングシステムになった」という。

 「パラメトリックモデリングの真のメリットは、プロジェクトマネージャが作業やスケジュールの測定をプロジェクトの早い段階で行うのを支援するところだ。プロジェクトの期間と必要なリソースを早いうちに知り、プロジェクト全体を通じて把握しておくことがカギになる。優れたプランからプロジェクトを管理すれば(そして、そのプランの不可欠な部分の見積もりが優れていれば)、コストは大幅に削減できる」とO'Mailey氏は話す。

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ