XPもまた、アジャイル開発手法の一つです。関連する書籍に「エクストリームプログラミング」が出版されています。
XPでは、中心となる価値に、コミュニケーション/シンプリシティ/フィードバック/勇気/リスペクトを置いています。また、その価値を実現するために複数のプラクティスが定義されており、書籍「Clean Agile」ではサークルオブライフというプラクティスの分類を表した図が紹介されています。
スクラムでは、エンジニアリングプラクティスについて触れていませんが、実際のアジャイル開発を進める際には、エンジニアリングプラクティスが不可欠です。例えば、テスト駆動開発/リファクタリング/ペアプログラミング(ペアリング)/継続的インテグレーションといったプラクティスを取り入れているチームもいるかと思います。このようなエンジニアリングプラクティスが欠けた状態で進めても、変更に耐えうるプロダクトは開発できず、いずれ管理不能となるからです。
その意味から、スクラムとXPは排他的なものではなく、相互に補完できるものと言えます。
「カンバンガイド」では、カンバンを下記のように定義しています。
カンバンとは、視覚的かつプルに基づく仕組みによるプロセスを通じて、価値の流れ(フロー)を最適化するための戦略である。
カンバンを導入する場合、まず自分たちのワークフローを見える化します。その上で、進行中の作業(WIP)の制限などの手法を用いて、ワークフローを改善していきます。ワークフロー上のボトルネックに対してWIPの数を制限することによって、部分最適ではなくワークフロー全体の最適化が図られます。また、ボトルネックに対処するに当たって、各メンバーの担当範囲を超えたコラボレーションが生まれやすくなるでしょう。
カンバンは、スクラムやXPとは違って、イテレーションの概念は定義されていません。また、必須の役割やイベントも定義されていないため、現状を大きく変えることなく導入できます。もちろん、必須となっていないだけで、リズムを整えるためにイテレーションの概念を導入することもできます。その意味では、スクラムやXPを補完するものとしてカンバンを導入することも効果的です。
なお、製造業に携わっている皆さんは、トヨタの“かんばん”をご存じの方も多いでしょう。アジャイル開発におけるカンバンは、トヨタ生産方式のかんばんを起源としているため幾つか共通点もあります。
上述したWIPの制限において、WIPの数を1つにするという極端なプラクティスを採用することもありますが、これはトヨタの「一個流し」から着想を得ています。
本連載の第1回目では、アジャイル開発の基礎について紹介しました。次回以降は、製造業に特有の背景などを加味して、読者の皆さんの現場にアジャイル開発を導入していくときのポイントや、実際の導入事例について取り上げる予定です。
クリエーションラインでは、アジャイル開発の第一歩として、プロジェクト開始前にチームや関係者の認識をそろえて合意形成する「インセプションデッキ」の無料体験ワークショップを開催しています。以下のWebサイトで申し込み可能なので、ぜひご参加ください。
中村 知成(なかむら ともなり)
2009年にBacklogを提供するヌーラボに転職し、ソフトウェアエンジニアとしてBacklogの開発・運用両面、その後開発マネージャーを担当。2016年ごろから、技術的なプラクティスだけではないチーム作りや改善活動の重要性や難しさ・楽しさを実感し、以後アジャイルへの興味とそれを突き詰める活動を始める。現在は、クリエーションラインでスクラムマスター・アジャイルコーチとして、現場支援をメインに活動中。その活動を通じて、チーム・ユーザーともに喜びを届けることについて模索している。書籍「SCRUMMASTER THE BOOK」の共同翻訳者。
Copyright © ITmedia, Inc. All Rights Reserved.