きわめて発言の多いアジャイルスペシャリストの1人であるBob Marshall氏は、先週ブログに、開発チームにとってよりよいタスクの優先順位のつけ方と定義の仕方について自身の考えを書いた。
「バリュー」という題名がつけられたその投稿では、Dyphoon.comとNewsMice.co.ukのCEOであるMarshall氏が、SMS Ltdの取締役として働いていた故Grant Rule氏と共に「教えることのできるビジネスバリューの評価方法」にどのように取り組んだのかを説明している。プロダクトオーナーに対して、優先順位付けをより簡単にし、そして組織全体にとってはるかに有益なものとするためのツールを提供しようとしたのだ。Marshall氏とRule氏の両人はチーム編成に対して別々のアイディアを持っていた。それはフローチェーンとSlamITであった。そのため彼らはどちらのシステムにも適応できるひとつの方法をまとめたかった。
Marshall氏の意見は、ビジネスマネジメントのエキスパートであり、"ザ・ゴール(The Goal)"の著者であるEliyahu Goldratt博士によるTOC(Theory of Constraints, 制約条件の理論)に基づいている。TOCによると、どのシステムにも少なくともひとつ、多くて2、3の制約があり、それによって目的を達成することが妨げられるという。Marshall氏は、ソフトウェア開発におけるゴールとは、ユーザ(顧客)が目的を達成するために利用できる機能を提供することであると主張している。より抽象的に言えば、開発のゴールは顧客の制約を取り除くことであると言える。Marshall氏はこのように締めくくっている。 前述の制約を取り除くタスクこそが唯一価値のあるタスクである。つまり、それらがプロダクトオーナーにとって最も優先順位が高いのだ。
顧客が何かに妨げられている状態をソフトウェアでは解消できない状況もある。Marshall氏は、そのような場合には開発プロセスを中断し、システムの他の部分によって制約が取り除かれるまで待つべきだと主張している。顧客が直面している最も緊急を要する問題を検知することは容易ではない。それは開発チームとユーザの間で親しい関係が築かれていたとしてもだ。
その他にももちろんMoSCoW メソッド、 Nominal Group Techniqueやその他の優先順位付けのテクニックはある。Marshall氏の考えが他と異なっているのは、どのような時でも、ビジネスに価値をもたらすタスクをひとつ、ピンポイントで示すことができるという点である。