全2704文字
PR

アジャイル開発でも外部ベンダーとプロジェクトを進めるケースは多い。ベンダー選定時に重視したいのはアジャイル開発経験より業務知識の豊富さだ。RFPの書き方や契約期間、生産性の考え方にもアジャイルならではの注意点がある。

 アジャイル開発の経験が少ない日本企業が組織や文化を大きく変革せずにSoR(System of Record)領域の業務システムのアジャイル開発を成功させるにはどうすればいいのか。

 アジャイル開発プロジェクトを立ち上げる準備段階で重要となるポイントは4つある。今回は3つ目と4つ目について、事例を交えながら説明する。

ポイント3:ベンダー選定のコツ

 プロジェクト準備段階でアジャイル開発のチームを立ち上げる際、外部の開発ベンダーの技術者を組み入れてチームを組む場合が多いだろう。外部の開発ベンダーと手を組む際に気をつけたいコツは3つある。

 1つ目は評価視点でのコツだ。開発ベンダーの選定に際しては、アジャイル開発経験の有無を重視しがちだが、業務システムのアジャイル開発においては業務知識の有無や深さに主眼を置いて評価したほうが、結果的に立ち上がりが早いケースがある。

 アジャイル開発の経験がなくともウオーターフォール開発の経験が豊富ならば、初めてのアジャイル開発でも慣れてくると長年の「開発の勘所」が生きてくるケースが多い。一方で業務知識のキャッチアップは開発のスタンスを変える以上に時間と人的コストがかかるものだからだ。

 2つ目は開発ベンダーに提出するRFP(提案依頼書)の書き方のコツだ。アジャイル開発を採用したいという要望が開発ベンダーにうまく伝わらず、ウオーターフォール開発で提案されてしまう残念なケースも少なくない。

 次の4点を踏まえたRFPであれば、開発ベンダーから適切な提案を受けられるだろう。

a.工程ではなく「時期」で書く

 アジャイル開発のRFPに慣れないと、「要件定義では」「単体テストでは」とどうしてもウオーターフォール開発の工程に沿って提案してもらいたい内容を書いてしまいがちだ。工程ではなく、「2カ月目にオンラインで受注できるようにして、4カ月目に在庫の自動引き当てをできるようにする」といったように、どの時期に何を実現したいのかを書くようにする。

b.ドキュメントは指定せずに提案を求める

 アジャイル開発は規定のドキュメントを定義していないが、だからと言って何もつくらないのは保守運用を考えるとあり得ない。開発ベンダーが何のドキュメントを必要と考えているのかを提案させることで、開発のスピードと保守運用の効率性のバランスを取ることができる。

c.要求事項に優先順位を付ける

 システムで実現したい項目(要求機能)をただ羅列するのはビッグバン方式のウオーターフォール型での考え方である。アジャイル開発の提案を受けるのであれば、いつまでにどの要求機能を必要とするかを書く必要がある。

d.アジャイルで進めたい旨を明記する

 当たり前のようだが、この一文は明快であり、提案内容をぶれさせないためにも勧めたい。

 3つ目は契約のコツだ。ウオーターフォール型のような稼働までの一括契約を避け、2カ月程度の契約としたほうがよい。アジャイル開発は仕様変更を柔軟に受け入れることが前提のため、プロジェクトの途中で方向転換する可能性が大きい。

 その際、長期の一括契約では開発ベンダーが柔軟に契約変更などに対応できないリスクがある。そのため区切りごとにその時々に最適なベンダーを選ぶことが欠かせないわけだ。

 また契約を更改するタイミングで振り返りと、中長期の方向性について確認・修正することで、プロジェクトメンバー全員が常に同じ方向を向けるという効果も期待できる。短期の契約更改を続ける点に関しては「ベンダーとの信頼関係が保てない」「選定の労力がかかる」という不安もあるだろうが、アジャイル開発を成功させるには必要な考え方である。

図 アジャイル開発プロジェクトの協力ベンダーを選ぶ際の3つのコツ
図 アジャイル開発プロジェクトの協力ベンダーを選ぶ際の3つのコツ
アジャイル経験より業務知識を重視(出所:シグマクシス)
[画像のクリックで拡大表示]