オルタナティブ・ブログ > An Agile Way >

アジャイルに行こう!

Agile2008 まとめ(1 - 技術的な方向性)

»

今年の Agile2008 を自分なりにまとめてみる。

まず、技術的にもっとも「革新的」に思えたのは、Agile UX(User Experience)とKanban(かんばん)だ。この2つは、他の領域からアジャイルを発見した(あるいは、アジャイルが発見したのかもしれない)。この2つをここで紹介する。

  • Agile UX

UI(User Interface)よりもう1つ上の領域、使っていて気持ちいいと感じる「おもてなし」の感覚がUX。UCD(User Centered Design)や、ユーザのエクスペリエンスを作っていく活動は、アジャイルと出合って大きく発展すると思う。そもそも、机上のデザインでソフトウェアのエクスペリエンスは作れないからだ。使う人と作る人の対話の場が必要で、それをプラクティスとして受け入れられるのが、アジャイル開発の1つの可能性だ。というのが、アランクーパー(VB の父でもあり、『コンピュータは、むずかしすぎて使えない!』の著者)の基調講演のボトムラインだ。

ソフトウェアのインターフェイスにはアプリケーションが使うインターフェイスである API と ユーザが使うインターフェイスである UI がある。そして、UI の上に、UX がある。API  -- UI -- UX という概念的な関係が見える。APIとUIは「I」が共通。UI と UX は「U」が共通。なんで、同列に並べるのはおかしいが、要は、「Uの方向にもっともっと未開の地があるぞ!」という1つの宣言なんだ。アジャイルがプログラミング活動として捉えていたものをUの方向に延長し、ユーザに喜んでもらえる、気持ちよく使ってもらえるものを目指すもの。

そして、カンファレンス自体でUXの実践が行われていた。写真は Graffiti Wall と名づけられたもので、簡単な問いについて、いろんな役割の人が意見交換する場。これまでも、「壁にポストイット」というのはアジャイルの定番コミュニケーション方法だったが、ここまでデザインされたものは初めてだ。紙の色、そして、その紙がおかれているボックスの上の説明書き(テントのように立っている)。色はソフトウェア開発での役割ごとに指定されている。このウォールは、Salesforce のチームによってデザインされた、というのも驚きの1つだ。

Grafitti_wall  Grafitti_wall2Grafitti_wall3Agileux

そして、1つのセッションに1つの絵葉書がデザインされ、セッションの案内とともに機能している。最近のSNSをはじめ、どんどんテキストでなく画像を用いたアイデンティティ(mixiやメッセンジャー の個人を示す画像を思い出すとよい)が広がっている。そして、それは人間が持っている認識機構にマッチするものだ。こういうものを、アナログでうまく取り入れている。 予算さえあれば、ぜひ、他のイベントでも取り入れてみたい、と思わせるアイディアだ。

  • Kanban(かんばん)

ぼくが今回技術的に一番期待していたのはこれ。今後、アジャイルをスケールさせたり、安定化させたりする1つのキラーメソッドになる予感。従来は、タスクボードのようなものに張って「見える化」することが第一義だった。それが、リーン(TPS)やTOCと出合って、「価値の流れ」、「WIP(Work in Process: 仕掛品)の削減」を重視した方向に発展している。今回、Kanban、Pull系の話はこんなのがあった。

Value Stream Mapping - Extending Our View to the Enterprise(Alan Shalloway)
バリューストリームマップ入門。全体最適のために。

Come and Take It! Lean Pull Applied(Rod Coffin and Don McGreal)
プル、の意味。ソフトウェア作りを顧客から見て、顧客に価値を引っ張って(pull)もらう。従来の開発側からの押し出し(push)でなくて。

GTD + Kanban + Round Robin for Product Owners(Thomas Nilsson)
GTD(Getting Things Done)とかんばん、ラウンドロビンスケジューリングの組み合わせ。

Future Directions for Agile(David Anderson)
かんばんコミュニティを引っ張っているDavidのセッション。Agileの次の方向として、Kanban(Pull)、ToC、RealOption、Behavior-Driven-Development など、これらははたしてAgileなのか?

KFC Development - Finger Lickin’ Good(Karl Scotland and Aaron Sanders)
フライドチキンにしゃれて、Kanban-Flow-Cadence。プルが実際にWIP(仕掛)を減らす効果があること、ボトルネックを顕在化すること、リソースの平準化に効くこと、をワークショップで実験しながら示す。

Starting a Kanban System for Software Engineering with Value Stream Maps and Theory of Constraints(Corey Ladas)
かんばんの有効性を、まず、リーンの方向から説明(リードタイム、平準化、リトルの法則、WIP削減)。次に、スクラムの「タスクかんばん」を延長してWIPの考えをいれ、その2つが同じ結末(KSSE=Kanban SYstem for Software Engineering)に向かうことを示す。

Learning Kaizen from Toyota [ with Mind Maps ](Kenji Hiranabe)
WIPの削減の究極の方法として、屋台方式を説明。それとカイゼン活動をあわせたものが、アジャイルの本質と共通点が多くあることを、ワークショップ形式でマインドマップを使って発見する。

Kfckanban かんばんは、今後、アジャイルのスケールの1方向を確実に示している。アジャイルをスケールさせる場合、1つは、「木」構造を作る方法で、スクラムのスクラム、を階層的にやるパターン。強い同期を取っていく必要があり、全体でリズムを共有する。もう1つは、かんばん、で「川」構造を作る方法。こちらは、バッファをはさんで複数チームが非同期に動作できる。そして、バッファ間の仕掛の受け渡しをかんばんで行う(最近のアジャイルでよくある議論の1つに、「リーンではイテレーションの概念が消える。それでもイテレーションは必要か?」というのがある)。

Kanbandiagram かんばんは、「スムーズなフロー」と「仕掛のムダ」をバランスさせる方法であり、同時に、「カイゼン活動」を刺激する基盤となる。(これを、僕なりの解釈で「かんばん9特性」とし、その影響図を描いてみる)

これを見ると、かんばんが

  1. プルのツール
  2. カイゼンのツール

の2つを担っていることがわかる。1はりーンに強く出ており、2はアジャイルに強く出ている。そして、1は、流れとムダのバランスを取っているのだ。

Comment(0)