アジャイル開発では、一回のイテレーションで何個の機能をリリースできるか? を重要な観点とし、その実装に何人日/人月かかったかはあまり重視しない傾向にあります。
と言うのは、アジャイル開発では、1イテレーションは2〜3週間程度の期間で固定され、イテレーションごとに実装された機能をリリースしていくので、総工数は最初から決まっているからです。
したがって、アジャイル開発における見積もりは、イテレーションに収まる規模がわかれば十分であり、工数を算出する合理的な理由は存在しないという考え方なのですね。
で、本題の
「作業規模を表すストーリーポイント」ではなく「時間」(人日/人月)の単位にするのはNGなのでしょうか?
についてですが、
相対見積もりのルールに準じていれば「時間」で見積もっても問題ないと考えています。
と仰られるように「時間」を規模の単位として扱っているだけだと認識さえしていれば、別に問題はありません。自分にとって扱いやすい単位で見積もりを行っているというだけのことです。
したがって、結論としては規模を見極めるという目的からブレない限りは「時間」で見積もっても何の問題もない、ということになります。
ここからは余談ですが、アジャイル開発で「時間」を使わない理由はもう1つあります。
それは、アジャイル開発ではビジネス側のステークホルダ(プロダクトオーナー)と協働することが必須であるという点です。
一般的に彼らはソフトウェア開発の素人であることが多いですし、見積もりの根拠も理解できないことが多いです。したがって、見積もりの単位を「時間」で表すよりもより抽象度の高い「規模」で表す方が話が通じやすいという実務的な理由であえて「時間」を見積もりの単位から外したとどこかの記事で読んだことがあります。
例えば、5人日の見積もりのタスクなら2人で掛かれば2.5日で終わるのではないかという安直な発想は、プログラマからすればナンセンスですが、ソフトウェア開発の素人には何がナンセンスなのかすらわかりません。
このような認識の齟齬は無駄なトラブルの火種になりかねないため、「時間」という単位を使うのをやめて、ストーリーポイントという「規模」を単位とすることにしたのだそうです。
2015/05/29 15:49