「なぜ使えないシステムが納品されるのか?」(その3)

『アジャイル開発』という選択肢

前回、事前にしっかりと要件定義を行い、その通りに納品してもらうというウォーターフォール型開発も一概に悪くはないと言いました。しかし、やはりこの方法は以下の点で無理があります。

・お客様は事前にすべての要望を挙げきれない
・お客様は見積書の前提になる要件定義に、自らの要望がすべて織り込まれているのか判断がつかない
・要件定義の内容を満たしても使いやすいシステムとは限らない

特に大規模なシステムになればなるほどこの性質は色濃く、弊社がかつてヘルプとして入った大規模なシステムでは発注後2年経ち、仮納品の段階でまったく要望を取り違えていることに気づいたいうことでした。

このような事態を回避するにはどうしたらよいでしょうか?

おそらく開発業界に限らずどのようなお仕事でもそうだと思いますが、「途中で何度もお客様がチェックを入れて、おかしな方向で仕事を進めていないか確認する」ということが大事です。

そしてもし方向的に違和感を感じたら開発責任者を呼び、「ここがこういうことになっているが、大丈夫ですか?」と聞き、間違っていたら軌道修正を行ってもらうという、これはごく当然の仕事の仕方だと思います。

それを行うのが「アジャイル開発」という手法です。

開発会社から見積を取ると「弊社はアジャイル開発で行います」というところが増えていますが、要するにこういうことです。

アジャイル開発では、開発を2週間とか4週間などの細かい期間(イテレーションと呼びます)に区切り、頻繁にお客様を交えて進捗会議を行います。そこで軌道修正ができますので、システムの完成間近になって「まったく違うものが出来つつある!」というトラブルが避けられるのです。

さて、このアジャイル開発ですが、お金の話をどうするかは開発会社によってまちまちです。

・一括請負型
これは大枠の方向性と規模感から予算を決めておき、その中で柔軟に仕様変更に応じていくというものです。お客様には予算が確定しますので安心ではありますが、開発会社の方はリスクを抱えますのでどうしても見積は高くなるはずです。また、予算が決まっているため、イテレーションの期間が長くなったり、回数制限があったりします。

・準委任契約型
準委任契約とは開発会社が稼働した時間分だけの費用を発注者に請求する契約形態です。システム全体の青写真は共有しつつ、あたかも自社のシステム開発部門のように発注者と同じ方向を向いて作業を行うことが可能になります。イテレーションの期間や回数などどこまでも柔軟に対応可能ですが、最終的にコストが予想外にかかってしまうことがあります。

そしてその中間のような契約形態を提案する開発会社もあります。一定の工数までは一括請負型で行い、それを超えると準委任契約型に切り替えるようなスタイルです。

プラムザの国内ラボ開発は、基本的に「準委任契約型」を採用しています。

他のまるわかりシステム開発コラム の記事も読む

システムの価格はどう決まるのか?(2/2)

システムの価格はどう決まるのか?(1/2)

「なぜ使えないシステムが納品されるのか?」(その2)

「なぜ使えないシステムが納品されるのか?」(その1)