![見出し画像](https://assets.st-note.com/production/uploads/images/99664937/rectangle_large_type_2_72bf988aae47c7df19287579573cc6b7.png?width=800)
アジャイルな受託開発は無理がある?
こんにちは、IBMの飯田です。題はちょっと誇張があるかもですが、最近IBMで働いていて「受託でアジャイル開発を行うのは難しい」と思ったことについて、考えをまとめていきます。
ことの発端
先日、あるプロジェクトにおいて「IBM garage の手法(ざっくりいうと弊社の agile 開発メソドロジーの1つ)取り入れてMVP作ります」と言って始まったものの、いくら待ってもPOがお客さん側から出てくる気配がない。結局そのプロジェクトは「取り組むテーマ自体があんまり練られてなかったから、やっぱり練り直すところから始めます」となり開発チームは解散になりました。
ただ、仮にテーマが決まっていたとしても、garage と銘打っておきながらいつまで経ってもPOが出てこず、仕方がないので弊社メンバーだけのチームで開発、顧客は週1,2のミーティングに参加するだけ、という形に落ち着いていたかもしれないと思いました。このことをきっかけに少し考えてみて、題のように至りました。
なぜ受託でアジャイル開発は無理だと思うのか?
こういった質問を投げかければ様々な回答があるかと思いますが、私は前述のプロジェクトの例で挙げたような、顧客が積極的でないことが一番大きいかと思っています。
『アジャイルサムライ』においても
積極的にかかわってくれる顧客の存在が欠けているということは、すなわちお前のプロジェクトは始まる前から窮地に立たされておる
と記載されており、顧客の積極性はagile開発において欠かせないものです。ではなぜ、受託開発だと顧客が積極的でなくなるのか。
これは顧客側の視点に立って考えてみると、まあ仕方のないことなのかと思いました。
契約としては「お金払ってもらえば動くものを作るよ」(準委任契約であれば動くものができあがることを保証するわけではありませんが)というものなので、顧客からしたら「お金払ってるんだからおたくらだけでやってくんね、週1のミーティングぐらいだったら出るけどさ」というスタンスになるのも致し方ないのかなと。日々の業務すっぽかしてベンダーの開発チームに時間割いてくれる顧客なんていないでしょう。
仮にいたとしても、それは「時間割かれる分日々の業務おろそかになるけど許してね」ということに対して、長ったらしい社内稟議が通った後でしょう。おまけにその社内稟議というのは、「どんな利益を保証できるのか」ということを往々にして聞かれるでしょうから、利益が出るかを保証できない agile 開発ではことさらに通りにくい。契約時点で「誰々を週10時間お借りいたします」とでも言わない限り、積極的に開発チームに関わってくれる顧客の存在は保証できないだろうと思います(その「誰々」も契約時点で決まっていればラッキーですが、そうでなければ…)。
ただし、この辺はうまくやっている人もいるかとは思います。前述のような、ベンダーだけのチームで開発し、週1のミーティングで要件確認する、といった形の開発も(ひょっとしたら大多数のベンダーは)やられていることでしょう。正しいプロダクトが正しく作られれば(『正しいものを正しくつくる』からニュアンスを引っ張ってきてます)、agile開発か否かなんて別にどうでもいいですし。
ただ、顧客と開発チームの間に線を引くことで被るリスクを考えると、開発チーム側の人間としては、顧客に積極的にかかわってほしいなあと思う次第です。
顧客が積極的でない問題、受託開発に勤める皆さんはどう向き合っておりますか?
参考
アジャイルになぜ受託開発が向いてないのか?
ユーザー側とSIer側の「成功」に関する視点から述べられています。
この記事が気に入ったらサポートをしてみませんか?