Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
カンバン入門
Search
Kei Shiratsuchi
PRO
October 13, 2016
Technology
5
2.5k
カンバン入門
PFI セミナー 2016/10/13
Movie:
https://www.youtube.com/watch?v=1AnBScrT51s
Kei Shiratsuchi
PRO
October 13, 2016
Tweet
Share
More Decks by Kei Shiratsuchi
See All by Kei Shiratsuchi
モノリスとマイクロサービスの橋渡し - ベターからモアベターへ
kei_s
PRO
0
89
なぜ リアーキテクティング専任チームを作ったのか
kei_s
PRO
2
1.4k
実践 Rails アソシエーションリファクタリング / Rails association refactoring in practice
kei_s
PRO
8
8.4k
「Go言語でつくるインタプリタ」を Rust で移植してみた / "Write An Interpreter In Go" In Rust
kei_s
PRO
1
1.9k
Rust言語で作るインタプリタ / Write An Interpreter In Rust
kei_s
PRO
2
610
育児休業のご報告と、育児グッズとしてのスマートスピーカー / Parental Leave and SmartSpeaker
kei_s
PRO
0
840
「深層学習による自然言語処理」読書会 第6章2.7
kei_s
PRO
0
450
「深層学習による自然言語処理」読書会 第5章5.1
kei_s
PRO
0
430
最近個人的に気になるプログラミング言語おさらい Ruby, Python, Go, Rust, Julia
kei_s
PRO
0
1k
Other Decks in Technology
See All in Technology
My small contributions - Fujiwara Tech Conference 2025
ijin
0
1.4k
デジタルアイデンティティ技術 認可・ID連携・認証 応用 / 20250114-OIDF-J-EduWG-TechSWG
oidfj
2
690
RubyでKubernetesプログラミング
sat
PRO
4
160
re:Invent2024 KeynoteのAmazon Q Developer考察
yusukeshimizu
1
150
Alignment and Autonomy in Cybozu - 300人の開発組織でアラインメントと自律性を両立させるアジャイルな組織運営 / RSGT2025
ama_ch
1
2.4k
dbtを中心にして組織のアジリティとガバナンスのトレードオンを考えてみた
gappy50
0
280
Copilotの力を実感!3ヶ月間の生成AI研修の試行錯誤&成功事例をご紹介。果たして得たものとは・・?
ktc_shiori
0
350
Goで実践するBFP
hiroyaterui
1
120
機械学習を「社会実装」するということ 2025年版 / Social Implementation of Machine Learning 2025 Version
moepy_stats
5
1.3k
Oracle Exadata Database Service(Dedicated Infrastructure):サービス概要のご紹介
oracle4engineer
PRO
0
12k
実践! ソフトウェアエンジニアリングの価値の計測 ── Effort、Output、Outcome、Impact
nomuson
0
2.1k
Oracle Base Database Service:サービス概要のご紹介
oracle4engineer
PRO
1
16k
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Building Adaptive Systems
keathley
38
2.4k
Embracing the Ebb and Flow
colly
84
4.5k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.6k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Designing Experiences People Love
moore
139
23k
Why Our Code Smells
bkeepers
PRO
335
57k
Building a Scalable Design System with Sketch
lauravandoore
460
33k
Bash Introduction
62gerente
610
210k
jQuery: Nuts, Bolts and Bling
dougneiner
62
7.6k
Designing for humans not robots
tammielis
250
25k
Transcript
カンバン⼊⾨
⾃⼰紹介 • ⽩⼟ 慧 (Shiratsuchi Kei) • Preferred Infrastructure(2016年4⽉⼊社) –
Ruby on Rails エンジニア • スタートアップ経験 – 前職:メガネのECサービス(⼀⼈⽬のエンジニア) – 前々職(新卒):レコメンデーションエンジン開発 • ⼤学時代 – 複雑ネットワーク • 趣味 – 妻とポケモンGO(130種) – ⼩説(舞城王太郎)
Table of Contents • カンバンとは? • なぜ? • カンバンを作ってみる •
カンバンを運⽤してみる • カンバンの流れを管理する • まとめ • プラクティス
カンバンとは?
カンバンとは?
カンバンの構成要素 ワークフロー 作業項⽬ アバター
なぜ?
導⼊前のチームの状態 • チーム⼈数: 10+α⼈ • 動いている案件が多い • 携わっているプロダクトが多い • 会議体
– 毎⽇のスタンドアップミーティング – 週⼀度の定例ミーティング
課題感 • 全体を把握する⼈が忙しくなると、回らなくなる – 個別の作業は進むが、全体の取りまとめで⼿こずる – リリースの直前でバタバタする • (⼊社したての私の課題感) 動いている話が多く、脳に乗らない
動機 • チームでもっとスムーズに仕事を進めたい • 「いま忙しい?」って聞かれたくない – 暇なわけない • 「いま忙しい?」って聞きたくない –
すぐ本題に⼊りたい
参考図書 • 「カンバン仕事術」 • https://www.oreilly.co.jp/books/9784873117645/ • 原著 “Kanban in Action”
– Marcus Hammarberg and Joakim Sundén – アジャイルコンサルタント & Spotifyのエンジニア
カンバンを作ってみる
カンバンの作り⽅ 1. ワークフローを定義する 2. 作業項⽬を定義する 3. アバターを配置する 「カンバン仕事術」1章を参照
1. ワークフローを定義する そのうち やりたい 未着⼿ 着⼿中 レビュー中 チームに 出した 確認待ち
完了 レビュー 待ち 社外に 出した
1. ワークフローを定義する • 仕事がチームに⼊ってくるところから、出て⾏くところ まで、すべてのステージを特定する – 本での例: Todo、分析、開発、テスト、受⼊、運⽤待ち、本番 • 完璧を⽬指さない。やりながら改善
• 顧客に価値を⽣み出すまで仕事は完了しない • ワークフローを⾒える化する
2. 作業項⽬を定義する • 作業の説明 – ユーザストーリーを使う? – 「やるべきことを思い出せる 短い説明であれば、なんでも良い」 •
付箋の⾊ – 開発▪、案件▪、その他▪、緊急▪ • タグ – [製品名]、[顧客名] など • 開始⽇、終了⽇ • 書き損じは破って捨てる
3. アバターを配置する • Slack のアイコンを貼り付けた マグネット – 付箋に直接書くと、どんどん ⼈が増えていき、つらい •
マグネットの数が重要(後述)
ポイント:⾒える化 • ワークフローの定義で、仕事がどう進むかがわかる – 暗黙的なフローをチームで議論して、全員が同じよ うに仕事を進めることができる • 作業項⽬をワークフローに並べることで、どこがボトル ネックになっているか把握できる
ポイント:⾒える化 • 情報ラジエーター(発信物)になる – 情報を常にアップデートし、関係者が誰でも必要な 時に参照できるようにする – 「誰が何をやっているか」「どれが終わったのか」 質問する必要がない
ポイント:常に更新できるようにする • ⾒る価値のある状態を保つ • 更新コストを下げる – アクセスしやすいホワイトボードで作る – デジタルはコストが⾼い →
「情報冷蔵庫」 • 最初から綺麗に作りすぎない – ワークフローの更新を気軽にできるように • 物理&⼿書き最強
カンバンを運⽤してみる
WIP の導⼊ • WIP = Work in Process – 同時に作業している作業項⽬の数
• WIP を減らす • 「コイン渡しゲーム」で解説
コイン渡しゲーム • 作業者と計測者でペア + 顧客役ひとり • コインを20枚⽤意 • 作業者は、コインをひっくり返して、次の⼈ に渡す
– 最後の⼈は、顧客に渡す • すべてのコインが顧客に渡ったらゴール • 計測者は、作業者が作業を始めてから終わる までを計測 • 顧客は、全体の時間(最初のコインがゴール した時間と、最後のコインがゴールした時 間)を計測
コイン渡しゲーム • ゲームを3回⾏う • 1回⽬:20枚すべてひっくり返してから、次 の⼈に渡す • 2回⽬:5枚ずつひっくり返したら、次の⼈ に渡す •
3回⽬:1枚ずつひっくり返したら、次の⼈ に渡す • ひっくり返すコイン(仕事の量)は同じ • 個々の作業時間、全体の時間はどうなるか?
コイン渡しゲーム
コイン渡しゲーム 最初のコインが ゴールするまで の時間が短くな る
コイン渡しゲーム 合計時間も短く なる
コイン渡しゲーム 作業者の作業時 間は⻑くなる
WIP を制限する効⽤ • 同時に作業する仕事の数を減らす と、リードタイムが短くなる • それぞれの作業者の効率は落ちる – プロセスをより速い流れに最 適化すると、リソースの稼働
率は低下する – 全員を常時稼働させることは 重要か? minneチームでKPTAのふりかえりとコイン渡しゲームをやった | けんちゃんくんさんの Web⽇記 http://diary.shu-cream.net/2016/05/11/minne-product-team-retrospectives.html
ソフトウェア開発における WIP • 実装されていない仕様 – 放っておくと、腐る • マージされていないコード – ⼿元の開発環境でしか動かない
• テストされていないコード – 正しく動いているかすぐにわからない • リリースされていないコード – 価値を提供できていない
WIP が多い弊害 • コンテキストスイッチが増える • フィードバックが遅れると仕事が増える – バグ報告が遅くなると、調査に時間がかかる • リスクが⾼まる
– 時代遅れになる可能性 • オーバーヘッドが増える – WIP 同⼠の調整が必要になる • 品質が低下する • モチベーションが低下する
WIP を制限する • 原則: 「始めるのをやめて、終わらせることを始めよう」 – 現在の作業を終わらせる前に、他の作業に着⼿しな い – 同時に⾏う作業の数を制限する
• WIP 制限に答えはない – 実際に試してみて、調整する
WIP を制限するアプローチ 1. ボード全体、チーム全体で制限する – チーム⼈数の1.5倍の数だけ着⼿できることにする 2. ワークフローの列ごとに制限する 3. ⼈に対して制限する
2. ワークフローの列ごとに WIP 制限する • 列に滞留できる項⽬の数を制限する • 分析から開発にするには、開発中の作業を2以下に減らさなければ開始できない • 例:レビューが溜まってしまったら
– レビューできる⼈を増やす必要があるのではないか – レビューに時間がかかっているのではないか。事前共有ができていないの ではないか
3. ⼈に対して WIP 制限をする • アバターの数を制限する – 4つ以上の作業に着⼿できないようにする • 例:フルで埋まっている⼈がいたら
– 作業の肩代わりができないか – その⼈以外も作業できるようにするにはどうすればいいか
WIP 制限はゴールではない • 流れを改善することがゴール • WIP 制限は、流れを阻害する問題を⾒つけやすくする ツール – ボトルネックの発⾒
– 問題点の改善
カンバンの流れを管理す る
流れの管理 • 「流れ」は、すべてのステップで邪魔や待ち時間が発⽣せず 価値を⽣み出している理想的な状態 • 流れるようにするために – WIP を制限する –
ブロッカーを取り除き、待ち時間を削減する – 品質を作り込み、再作業をなくす – クロスファンクショナルなチームを作る – タイムボックス(イテレーション)を使って、優先順位を 決める
⽇々の流れの管理 • デイリースタンドアップ – 毎⽇、短時間で • デイリースタンドアップで、カンバンを確認する – アップデートされているか –
作業の流れは順調か、溜まっていないか • 「次に何をすべきか?」にチームが答えられるようにす る
まとめ
カンバンの原則 • ⾒える化 • WIP の制限 • 流れの管理
今いるところから始められる • 現在どのような⼿法をとっていようが、カンバンを適⽤ して改善を進められる – プロセスの変化、役割の変更はない • 何が流れを滞らせているかが⾒え、改善できる • 「カンバンはメタプロセス」
– カンバンの原則をプロセスに適⽤して、プロセスを 改善する
カンバンを始める時の最⼤の間違い • WIP の制限なしで始めてしまうこと – 改善を進めるための制約がなくなってしまう • 今のチームでは、「未着⼿」に制限がないので、どんど ん溜まってしまう –
「未着⼿」と「開発」の間に、なにか列が存在する のかもしれない
本の中で話していないこと • 計画づくりと⾒積り • プロセスの改善 – ふりかえり • プロセスのメトリクス –
メトリクスの⾒える化
おまけ
案件カンバン • 案件の⾒える化 – ラジエーターに • ワークフローの定義 • 暗黙的な WIP
制限 – アバター制限を かける予定 • 週次MTGで更新 案件名 内容 窓⼝ 完了 今後3ヶ⽉ ワ ー ク フ ロ ー
ありがとうございました 参考 • Kanban Casual Talks(2016/05/19) – http://togetter.com/li/977418 想定質問 •
リモートでどうやるの • デジタルツールならどれがいいか • トヨタのかんばん⽅式との関係は