モーニングチュートリアル 「アジャイル開発の適切な運用に向けて~IPA/SEC非ウォーターフォール型開発WG検討成果報告の概要~」 – 山下 博之 氏
「モーニング・チュートリアル」として用意されたこのセッションは、先日公開されたIPAの検討活動報告書から抜粋した内容を紹介するものであった。「IPA」と聞くと、どうにも固いイメージを持ってしまっていた私であったが、ところがどっこい、このセッションには「大きく熱い想い」が込められていた。
■アジャイル開発の適用範囲と関係者の理解
「アジャイル型開発を適用しやすい領域として、大きく3つ存在する」と切り出した山下さん。
アジャイル開発には、実施するにあたってより適した領域が存在しているということだ。適用領域としては、「ビジネス要求が変化する領域」「リスクの高い領域」「市場競争領域」。
一方、ある程度工夫しないと導入が難しい領域として、「大規模開発」「分散拠点開発」「複数の組織にまたがる開発」「組み込みシステム開発」が挙げられていた。
また、「アジャイル開発を適用するにあたり、顧客・経営層により一層関与してもらうことが重要である」と言う話も出た。責任問題につながる「ソフトウェアの品質問題/トラブル」などを避けるためには、経営層自身も積極的に開発形態へ関与していく必要がある、という内容だ。
私自身、マネージャ層が現場の開発手法について適切に判断できる目を持っていれば良いと考えていたが、確かに経営層の理解まで得られれば、より現場も動きやすくなるのかもしれないと思う。(ただし、深く関与する事によるデメリットもないとは言えないだろうが…)
■アジャイル開発に必要なスキルとその育成
次に、「アジャイル開発に必要/重要となるスキル」として3つの要素を紹介。
- アジャイル開発の進め方を踏襲させる「ファシリテーションスキル」
- イテレーションの中で「アウトプットを積み重ねていくスキル」
- 開発工程を一貫して作業可能な「マルチタレント的スキル」
そして、これらのスキルを持つ人材を育成するために、「個々のプラクティスを身につけるのではなく、価値にしたがって行動する習慣を身につける」ことの重要性を説いた。
確かに「プラクティスを身につける」事に重点を置いてしまうと、得てして「手段の目的化」を引き起こしやすい。午後のセッションで牛尾さんが言っていた「アジャイルの導入にはそのチームに合ったカスタマイズが必要だ」という話と照らし合わせると、「チームに適さないプラクティスを導入する」ような、不適切な状態が発生しやすくなってしまうのだろう。
■アジャイル開発の契約について
その後、話題は「アジャイル開発における契約」の話へ。
一般的な請負契約はアジャイル開発の手法に適さない(契約時点で成果物が不明確)ため、新たな契約形態を考える必要がある。
その解決案として、大きく2つの契約形態が検討されていた。
- 基本契約+個別契約モデル
- 「基本契約」で両者間の大枠の体制を明確にした上で、各フェーズで「個別契約」を締結するというもの。(個別契約では「準委任契約/請負契約」を使い分ける形)
- 組合(協働事業体)モデル
- 「ジョイントベンチャーモデル」とも呼ばれる。お互いが協働して組合をつくるというもの。(ユーザは資金を提供し、ベンダは労働力を提供する形)
なお、これら契約書の雛形をIPAのホームページに掲載しているので、ぜひ活用してもらいたいとのことだった。
■より具体的なアジャイル開発の導入に向けて
前述の「適用領域」に加え、アジャイル開発が適用しやすいスイートスポットを紹介。
人数規模や、要件の変化率、アーキテクチャなどについて、より導入しやすい具体例が出されていた。(公開資料を参照していただけると分かりやすいため、割愛)
そして、アジャイル開発を適用するポイントとしては「適切な手法の選択」「プラクティスの活用」「正しい理解」「問題解決を繰り返す」という内容を挙げられていた。
■最後に
最後に山下さんが打ち出したメッセージは、
「日本のソフトウェア産業をもっと元気にしよう!!」
と言うものであった。
従来型の開発と、アジャイル型開発の違い/文化をそれぞれ理解し、両者をうまく交流させることによって新たな「イノベーション」をソフトウェア産業に起こしていきたい。それにより、さらに業界が活性化していくのだと。
新しいものに取り組みつつも、従来の仕組みにも目を向け、そしてさらには両者の強みを最大限に活用して業界全体を前進させたい、という熱い思いを感じることができた。手段に固執さえしなければ、そこには無限の可能性が拡がっているのだろう。
– 公認レポーター:矢島 卓 (DevLOVE) –