見出し画像

溜池随想録 #17 「アジャイルソフトウェア開発に適した契約(その3)」 (2010年10月)

 前回に引き続き、ピーター・スティーブンスの「あなたの次のアジャイルソフトウェアプロジェクトのための10の契約」(注)で取り上げられている契約を一つずつ検討していこう。
(注)Peter Stevens “10 Contracts for your next Agile Software Project” (http://agilesoftwaredevelopment.com/blog/peterstev/10-agile-contracts)
 
(4) 固定仕様、シーリングありの準委任契約
(Time and Materials with Fixed Scope and Cost Ceiling)
 スコープ(仕様)が固定され、かつ支払い金額に上限がある準委任契約である(図1参照)。要求仕様を満たすものが完成した時点でプロジェクトは終了する。予定より早く完成すれば、準委任契約型であるために支払い金額は上限金額より少なくなる。しかし、一般的に開発側は、利益(売上高)を最大化しようとするため、予定より早くプロジェクトが終了するケースは少ないだろう。また、予定より開発期間が長くなった場合、支払い金額にはシーリングがあるため、受け取る開発費は一定となる。つまり、開発スケジュールが遅延すれば、利益率は急減し、ある時期を超えると赤字プロジェクトになる。この点は定額請負型と同じである。
 プロジェクトが早期に完成すれば支払い金額が少なくて済み、プロジェクトが長期化しても支払い金額は一定金額(上限額)を超えないという点で、明らかに顧客側に有利な契約形態である。
 しかし、スコープを固定しているという点で、この契約はアジャイルソフトウェア開発には適していない。
 
(5) シーリングありの準委任契約
(Time and Materials with Variable Scope and Cost Ceiling)
 支払い金額に上限がある準委任契約であるが、スコープが固定されていないという点で、一つ前に取り上げた「固定仕様、シーリングありの準委任契約」とは異なる(図2参照)。
顧客は希望するシステムが完成した時点でいつでもプロジェクトを終了させることができるが、その一方で予算を使いきってもシステムが完成しないというリスクを負うことになる(予算を使い切った段階で、システムが未完成でもプロジェクトは終了する)。
開発側が受け取る金額(売上)と利益は、上限金額に達するまでは、時間とともに増大する。システムの完成責任は負わないが、顧客との継続的な取引を考えた場合には、上限金額に達するまでに顧客が満足するシステムを完成させようという若干のインセンティブは働くだろう。
 スコープは固定されていないので、アジャイルソフトウェア開発に使うことができるが、開発側に生産性を向上させ、より早くシステムを完成させようというインセンティブが働く工夫が欲しいところである。
 
(3) 段階的開発契約(Phased Development)
 一定期間(たとえば四半期)でプロジェクト期間を分割し、その期間ごとに達成すべきスコープを定めて準委任契約を結ぶという方法である(図3参照)。その期間で開発した機能のリリースに成功すれば、次の期間の予算が与えられる。したがって、開発側にはその期間の開発を成功させようというインセンティブが働くと考えられる。
 また、顧客側には通常、できるだけ早く高品質なシステムを完成させたいというニーズがあるので、顧客と開発チームとの間によい協力関係が生まれる可能性が高い。
 準委任契約ではあるものの、一定期間ごとにシステムがリリースされるため、最大リスクを一期間分の開発コストに抑えることができる。さらに、その期間の開発に成功しなければ次の期間の契約がなくなってしまうことを考えれば、顧客側のリスクは小さいと考えることができる。
期間を分割して契約を結ぶ点では、先月紹介した「スプリント契約」と同じである。
 なお、期間ごとのスコープは固定しても、全体としてのスコープは固定しなくてよいので、アジャイルソフトウェア開発に適していると考えられる。
 
 次回も、引き続きアジャイルソフトウェア開発に適した契約について考えてみたい。

この記事が気に入ったらサポートをしてみませんか?