翻訳する上で、「かんばん」についていろいろ調べる機会がありました。「かんばん」について調べてみると、トヨタにおける「かんばん」と、ソフトウェア開発方法論としての「Kanban」が見つかります。今回はこの「かんばんたち」の違いについて、簡単ですが整理してみたいと思います。
トヨタのかんばん
トヨタのWebサイトで説明されいている情報がとてもわかりやすいので参考にしました。トヨタのかんばんのポイントは以下です。
- 生産管理方式。トヨタ生産方式で重要な役割となっている。
- 商品管理用のカードをかんばんと呼ぶ。
- 後工程が前工程に部品を調達しに行く際に、シグナルカードとして運ばれる道具がかんばん。
これによる効果は以下が挙げられます。
- 必要な部品を必要なだけ(ジャスト・イン・タイム)前工程に取りに行く(プルする)ことで、ムダな生産を改善する
トヨタのWebサイトにあるかんばん方式の概念図を見ると、かんばんは運搬され、目印として部品に付けられているのがわかります。
ソフトウェア開発方法論のKanban
次に、ソフトウェア開発方法論としてのKanbanを見てみましょう。参考にしたのは、『Kanban – Successful Evolutonary Change for Your Technology Business』というKanbanのバイブル本(以下、かんばん本)です。
Kanbanのポイントは以下です。
- 方法論としてのKanban(大文字はじまり)と、ツールとしてのkanban(小文字はじまり)がある。
- 情報カードや付箋として貼りつけられた、壁やホワイトボード等をかんばんと呼ぶ。
- かんばんの代わりに情報カードや付箋がシグナルカードとして運ばれる。
Kanbanによる効果をざっくりまとめると以下になります。
- 組織文化が進化する(cultural evolution)
ちょっと突飛な効果ですが、かんばん本を読み進めるとその理由がだんだんわかってきます。組織文化が進化するまでを、簡単にですがまとめると以下の様な流れになります。
- インクリメンタルな開発になる
- インクリメンタルなプロセス変更ができる
- 持続可能な開発を導く
Kanbanはちょっとずつ、確実にプロセスを進化させ、組織文化の変革へとアプローチしていきます。また、この進化を支えるためにツールであるkanbanには以下の要素が必要です。
- WIP(Work in Progress)の制限
- プル型の仕組み
Kanbanの誕生については、「かんばん」というソフトウェア開発方法論が誕生するまでの物語を参照ください。
トヨタのかんばんとソフトウェア開発のかんばんの違い
では、2つのかんばんが出揃ったところで比較をしてみましょう。両者のかんばんについて、実践・原則・本質については、「かんばん」をソフトウェア開発に適用する: アジャイルからリーンへがとても詳しいので参考にしてください。
まず、2つのかんばんの共通点を探してみます。
- 流れがある
- 作業量の制限がある
- プル型の仕組みがある
Kanbanはトヨタのかんばんから影響を受けているため、共通点は多いです。逆にどんな相違点があるか見てみます。
1) トヨタのかんばんとKanbanでは、シグナルカードが異なる
前述しましたが、トヨタのかんばんは、シグナルカードとしてかんばんというモノが動きます。しかし、Kanbanのシグナルカードは、タスク・作業といった触ることができないモノです(Work Item)。
かんばん本では、Kanbanのシグナルカードを「Virtual」と表現しています。
2) トヨタのかんばんとKanbanでは、流れが逆
こちらも前述ですが、トヨタのかんばんは、後工程が前工程に伝えるシグナルカードです。よって、後ろから前に流れていく用に見えます。
Kanbanのシグナルカードは、前工程から後工程にしか流れません。手戻りなどで場合によっては前工程に戻る場合はあるかもしれませんが、あくまでイレギュラーなケースです。
3) トヨタのかんばんにはイテレーションのようなタイムボックスがない
もし、あなたがKanbanと同時に、アジャイル開発におけるイテレーションやスプリントといったタイムボックスを使っている場合、ある一定のリズムが生まれます。一方、トヨタのかんばんは絶え間なく流れるため、タイムボックスのような概念がありません。もちろん、何かスケジュールがある場合もあるでしょうが、意識してタイムボックスを使っているようには見えません。
どちらがいいかは別の議論になりそうですが、Kanbanを使ってインクリメンタルに開発をしていくと、タイムボックスの必要性がなくなってきます。できた機能をすぐにリリースするというのは、XPやスクラムといった他の開発手法と大きく異なる点です(もちろん、タイムボックスを組み合わせて開発することも可能ですね)。
4) Kanbanで使われるツールのkanbanは、情報が集まる場所になる
トヨタのかんばんは、かんばん自体が情報を持ち、流れ(動き)ます。一方、ツールのkanbanは、プロダクトなどの情報を持ち、チームから目の届く場所に設置されることが多いでしょう。
よって、ツールのkanbanは、情報が集約された場所(情報発信機)になっていきます。いい場には、自然に人が集まってくるものです。場というのは、トヨタのかんばんと大きく違うポイントです。
ソフトウェア開発のかんばんたち
ソフトウェア開発で使われるかんばんにも、いろいろなものがあります。
- ソフトウェアかんばん
- タスクかんばん
- タスクボード
などなど。しかし、かんばん本にも書かれているのですが、WIP制限とプル型の仕組みがなければ、Kanbanではありません。
おわりに
今回は、David J. Anderson氏の『Kanban – Successful Evolutonary Change for Your Technology Business』や、Kanbanぼんにも登場するチェンジビジョン平鍋さんの記事「かんばん」をソフトウェア開発に適用する: アジャイルからリーンへ、トヨタのWebサイトで説明されているかんばん方式などを読みました。
極端に言うと、よくあるTODO、Doing、DONEのシンプルなかんばんを使い、タスクを管理していてもKanbanの恩恵を受けることができません(見える化など別の効果はあるでしょうが)。
Kanbanはシンプルですが、方法論だけあってとても奥が深いことがよくわかります。今後もこのブログでKanbanの詳細を調べていこうと思います。