独学文系エンジニアな日々

機械音痴な文系大学生が独学でプログラミングを学んだブログ

【エンジニア/プロジェクトマネージャー】ソフトウェアに関する見積もりについて①

f:id:sooriy25:20210211231900p:plain

大規模プロジェクトになるとメンバーの見積の仕方がわからない。

という言葉を耳にします。
フリーランスの方であればファンクションポイント法を使ったり、 規模が大きくなったチームではCOCOMO法などを使ったりすると思います。


www.itmedia.co.jp www.weblio.jp

しかし、最初の計画が抽象的、機能の多さ、予測不能な機能実装、メンバーのポテンシャルなどなど様々な不足した情報により、どう見積もったらいいかわからない。
ということがあります。





不確実性コーンとは


不確実性コーンという見積もりの概念があります。

f:id:sooriy25:20210211223542j:plain

引用: xtech.nikkei.com

不確実性コーンとは プロジェクトが初期段階で予測、計画、した時より現実との差が大きく、プロジェクトの進行とともにその差が縮まっていくという性質。

実際に世の中のほとんどのプロジェクトが綺麗におさまっていないそうです。
自分もいろいろな現場を見せてきましたが中規模以上のプロジェクトでは一回も綺麗におさまってるところは見たことありません。
それどころかSE時代はそれよりもいかにお客さんに「良い顔」するかを教えてもらうことが多かったです笑

対処方法

それに対し有効だとされているのがアジャイル開発やスクラム開発です。
個人的な解釈では特に以下のような特徴で効果を発揮するという解釈をしました。

・膨大すぎるのに全ての情報をかき集めてからでは時間がかかりすぎる。
・タスクをできるだけ明確にしなければいけない

プロジェクトマネージャーやスクラムマスターは、必要な情報を揃えながらもソースコード総量でもメソッドの数前回の実績(あれば)係数でもそのプロジェクトに合わせた良いやり方でできるだけタスクを明確化、細かく(実際に細かくする作業はメンバーの方が良いのかもしれない)してグルーミングやスプリントプランニングができるようにします。
ただし、マイクロマネジメントにならないようにしなくてはいけないのも注意点だと思っています。
この辺の匙加減は別のタイミングで考察しようと思います。

ja.wikipedia.org

最後に

個人的にはコミュニケーションに関する問題で行き違いが発生し問題が発生することも多く感じます。 次回は見積もりにおけるコミュニケーション観点について感じることについて取り上げたいと思います。