リーン開発の本質 公開用

10,180 views

Published on

2013/12/6に実施された「リーンな現場の実際 ~企画サイドと開発サイドからみる失敗と成功~」で使用した資料です。
公開用に一部修正をしています。

Published in: Business

リーン開発の本質 公開用

  1. 1. リーン開発の本質 ~リーンに関する基礎知識~ 株式会社永和システムマネジメント コンサルティングセンター センター長 天野勝 http://sec.tky.esm.co.jp/ 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 1
  2. 2. 本日の内容    2013/12/6 トヨタ生産方式の研究から生まれた、「リーン」という 概念が、ソフトウェア開発の現場でも活かされるよう になってきています。 しかし、リーン開発の中心を形成しているものは、 原則集にしか過ぎないため、プロセスとしての形を 持たず、理解、認識がしにくという特徴があります。 今回は、書籍『リーン開発の本質』で語られている 原則を、世の中の実例と対応させながらご紹介して いきます。 Copyright (c) 2002-2013 Eiwa System Management, Inc. 2
  3. 3. スピーカー紹介  天野 勝(あまの まさる) @amapyon    (株)永和システムマネジメント コンサルティングセンター センター長 オブジェクト指向、アジャイル開発、開発現場の活性化をテーマに、ファシリ テーションを活用したコンサルティング、セミナーに従事。 経歴    コミュニティ活動   『これだけ!KPT』『eXtreme Programmingテスト技法』『正しく学ぶソフトウエア設計』 訳書  2013/12/6 オブラブ 事務局長、アジャイルプロセス協議会 編集委員、日本XPユーザグループ 運営委 員、日本ソフトウェアテストシンポジウム 実行委員、プロジェクトファシリテータ協会 副理事、 ETロボコン審査委員 著書   1995年 電機メーカの情報システム部門 2002年10月より現職 『リーン開発の本質』『アジャイルソフトウェア開発スクラム』 Copyright (c) 2002-2013 Eiwa System Management, Inc. 3
  4. 4. 日経コンピュータでの連載 情報システム部門でのアジャイル開発導入がテーマ 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 4
  5. 5. 会社紹介  株式会社 永和システムマネジメント     本社:福井県福井市 1980年創業、2002年東京事務所開設 金融、医療、オブジェクト指向 を使ったシステム開発 コミュニティ活動や、 書籍の執筆・翻訳に積極的 福井県福井市 @objectclub 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 5
  6. 6. KPTのセミナーやります 有料です 最強のカイゼンフレームワーク「KPT」 ~KPTの基礎知識を演習で学ぶ~  12月12日(木) 13:30~17:30 永和システムマネジメント 東京支社 料金:30,000円  特典1:「これだけ! KPT」持参で、5,000円引き     現場のお悩み相談もOK! お申込み/詳細  2013/12/6 電子書籍でもOK! 特典2:ふりかえりファシリテータの無償派遣   特典付き http://esminc.doorkeeper.jp/events/6867 Copyright (c) 2002-2013 Eiwa System Management, Inc. 6
  7. 7. リーンから、 リーン(ソフトウェア)開発へ 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 7
  8. 8. 「リーン」の日本語訳 ほそマッチョ ひょろひょろ 筋肉質、贅肉がない 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 8
  9. 9. リーンの起源 時間の流れ トヨタ生産方式の研究から「リーン生産方式」が発見された 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 9
  10. 10. TPS(Toyota Production System)の家 高品質・最小のコスト・最短のリードタイム 最も安全・最高の勤労意欲 ムダ取りによって生産の流れを短くする ジャストインタイム 必要なものを 必要なだけ 必要なときに 自働化 従業員・チームワーク ・選択 ・共通の目標 ・稟議による意思決定 ・多能工として訓練 (停止することによる 品質管理) 問題を視覚化する ・継続的な流れ ・プルシステム ・素早い段取り替え ・統合された物流 継続的改善 ムダ取り ・現地現物 ・5つの「なぜ」 ・ムダを見抜く ・問題解決 ・自動停止 ・アンドン ・人と機械の分離 ・間違い防止 ・停止することによる 品質管理 ・問題の本当の原因に 取り組む (5つの「なぜ」) 平準化 安定して標準化された工程 目で観る管理 トヨタウェイの思想 出典:『ザ・トヨタウェイ(上巻)』 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 10
  11. 11. リーン思考の原則の適用領域 継続的改善を促す視点 リーン思考の原則 原則の抽出 製造 製品開発 原則の適用 保険 保険 保険 医療 金融 ソフトウエア 開発 リーン思考の原則は多くの現場に適用可能 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 11
  12. 12. リーンソフトウェア開発 時間の流れ リーンの考え方をソフトウェア開発に適用 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 12
  13. 13. リーン開発で重視する「品質」 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 13
  14. 14. 品質の定義 出典:『ソフトウェア品質知識体系ガイド』 品質が高ければ「儲かる」 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 14
  15. 15. 納品後のソフトウェアの機能の利用度 Rarely 19% Sometimes 16% ときどき利用する ほとんど 利用しない 余分な機能のムダ よく利用する Often 13% いつも 利用する 全く利用しない Always 7% Never 45% Standish Group Study Reported at 2002 by Jim Johnson 利用される機能は全体の1/3、良く利用されるのは1/5 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 15
  16. 16. システムは陳腐化する 提 供 価 値 提 供 価 値 完成時点 経過時間 要求を早く固定すると、完成時 点で劣化してしまう。 さらに、システムの劣化が進む。 完成時点 経過時間 保守し続けることで、提供価値を 維持する。 提供価値を維持するには、保守開発が欠かせない 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 16
  17. 17. リーン開発 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 17
  18. 18. リーン:Lean Software Developmentとは  トヨタ生産方式(TPS)を手本とした、より良いソフトウェア開 発を考える思考ツール    アジャイル開発プロセスをTPSの文脈で表現 Bob Charette、Mary Poppendiek、Tom Poppendiekらが提唱 『リーンソフトウェア開発(Lean Software Development)』   副題:An Agile Toolkit 7つの原則と、22の思考ツールを紹介している    『リーン開発の本質(Implementing Lean Software Development)』   2013/12/6 プラクティスを生成するための仕掛け 22の思考のツールにより、7つの原則をアジャイルプラクティスに変換 副題:From Concept to Cash 7つの原則と、その現場への適用の考え方を紹介している Copyright (c) 2002-2013 Eiwa System Management, Inc. 18
  19. 19. 前提とするビジネス環境 変化が早く大きい 市 場 ニーズ 獲得 システムが ニーズに対して 陳腐化する 供給 ¥ 供 給 者 要求 【前提】 供給されたシステムに よってもニーズが変化 する。 【前提】 供給したシステムが、 ニーズに合致すること が、成功条件。 システム 要求を早く固定すると ニーズとかい離する リスクが大きくなる 開発 参考:IPA「非ウォーターフォール型開発WG活動報告書」 http://sec.ipa.go.jp/reports/20110407.html システム開発には様々なリスクが潜んでいる 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 19
  20. 20. ニーズに合う商品を提供するために 市 場 市 場 獲得 獲得 要求 要求 開発 開発 商品 商品 提供 市 場 提供 市 場 時間短縮 ニーズが変わる前に 素早く提供 ムダを省いてニーズの獲得から商品提供を素早く行う 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 20
  21. 21. リーン開発の原則 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 21
  22. 22. リーン思考の原則(=リーン開発の本質)        原則1:ムダをなくす 原則2:品質を作りこむ 原則3:知識を作り出す 原則4:決定を遅らせる 原則5:速く提供する 原則6:人を尊重する 原則7:全体を最適化する 良い状態であるための思考フレームワーク 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 22
  23. 23. 原則1:ムダをなくす 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 23
  24. 24. 原則1:ムダをなくす 生産工程での 7つのムダ 在庫のムダ ソフトウェア開発での 7つのムダ 未完成の作業のムダ 説明 例 目的を達しない作業は意味が レビューが完了していない ない 設計書 加工そのものの 再学習のムダ ムダ 同じような失敗を繰り返す チェックリストの項目が現状 と乖離している 作りすぎのムダ 余分な機能のムダ 今必要ではないことに時間を 割く 優先度の低い作業から取り 掛かる 運搬のムダ 引き継ぎのムダ 引継ぎをするたびに元の情報 担当者が変わると、生産性 (特に暗黙値)が欠落していく や品質が落ちる 手待ちのムダ 遅れのムダ 情報に遅れがあると制御が難 まとめて大量にレビューする しくなる 動作のムダ タスク切り替えのムダ 目的の異なる複数の作業を同 プロジェクトを複数掛け持つ 時に行う 不良を作るムダ 欠陥のムダ 異常を放置してしまう 欠陥がかなり後の工程でな いと検出できない 参考:『リーン開発の本質』 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 24
  25. 25. ムダの定義 顧客視点 お客様にとって 価値のあるもの 付加価値 組織視点 お客様にとって 価値のないもの お客様のムダ 組織にとって 必要なもの 組織のムダ 組織にとって 必要のないもの 出典:『職場の「かんばん方式」』 松井順一 著 組織のムダを無くし、顧客のムダを減らす 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 25
  26. 26. ムダ取りによる生産性の向上 付加価値 お客様のムダ 3h 3h 付加価値 6h 組織のムダ 2h お客様のムダ 2h 能力は同じでも、生産性は2倍 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 26
  27. 27. ムダを排除するために 要求 待ち行列に フォームを入れる 承認と 優先順位 待ち行列に フォームを入れる づけ 技術 評価 待ち行列に フォームを入れる コーディング とテスト 検査へ 検査と 運用担当へ 配備 修正 合計4時間 合計20分 価値 ムダ 5分 15分 効率 1% 2分 1/2週間 15分 2週間 2時間 2週間 15分 1週間 3時間 45分 3分 1/2週間 2時間 40分 6週間 4時間 バリューストリームマップの例 顧客価値に 結びつかない すべてがムダ 出典:『リーン開発の本質』 バリューストリームマップでプロセスのムダを見る 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 27
  28. 28. 原則2:品質を作りこむ 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 28
  29. 29. 原則2:品質を作りこむ 直す ? ? ? 検 査 ? ○ 検 査 ? ○ ? ポ カ ヨ ケ ○ ? ポ カ ヨ ケ 検 査 ○ ○ ○ ? 検 査 ○ 作って直すのではなく、直さないように作る 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 29
  30. 30. 開発:テスト駆動開発(Test-Driven Development) 1 2 3 4 テストコードを 書く テストに沿った 製品コードを 書く テストの失敗を 確認する テストが通る 最小コードを 記述する 7 6 5 テストが通ること を確認する 不吉な臭いは リファクタリング 8 TDDのプロセス テストが通ること を確認する 実行可能なユニットテストを作りながらプログラミングする 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 30
  31. 31. TDDで品質を作りこみながら開発する 欠 陥 数 欠 陥 数 作って後で直す 時間 早い段階で欠陥をなくす 時間 後で直すより、早く直せば安くつく 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 31
  32. 32. 原則3:知識を作り出す 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 32
  33. 33. 原則3:知識を作り出す Keep プロジェクト Try プロジェクト Problem 定期開催 タイマー駆動 Keep Try Keep Problem Problem Try Keep Try Problem Keep Problem Try Keep Try Problem プロジェクト 工程 工程 臨時開催 イベント駆動 Keep Try Problem Keep Try Problem 学習サイクルを回しながら進める 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 33
  34. 34. 短いイテレーションで開発する イテレーション 計 画 開発実施 P D イテレーション ふ 早期の失敗は り 次の糧となる 計 か 開発実施 え 画 り C A 会 イテレーション ・・・ 計 画 ふ り か え り 会 イテレーションは タイムボックス 1~4週間 ・・・ イテレーション 開発実施 リ リ ー ス ふ り 計 か 開発実施 え 画 外部に り 会 リリースする ふ り か え り 会 場合もある 早くに小さく失敗できる仕組み 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 34
  35. 35. 原則4:決定を遅らせる 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 35
  36. 36. 原則4:決定を遅らせる 早く決定すると、 新しい知識によって 決定が変わる 最 終 決 定 時 点 ぎりぎりまで 決定を遅らせれば、 変わりようがない 決定を遅らせた分だけ知識が増え、ぎりぎりまで磨ける 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 36
  37. 37. 継続的インテグレーション  開発中のソフトウェアを、常に動作可能な状態にす る為の仕組みや、活動のこと  Continuous Integration    ビックバン結合による、コストを低減する   CIと略すことが多い 常時結合と訳されることもある 早期に不具合を見つけて取り除ける 出荷ぎりぎりまで、ソフトウェア開発が行えるように なる  出荷前のテスト期間を大幅に短縮できる ソフトウェアを常に出荷可能な状態に保ちます 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 37
  38. 38. ビックバン結合 どこを直す? モジュール 直したつもりが 他を壊してしまった 製品 モジュール不具合 モジュール 不具合 結合 モジュール モジュール 不具合 モジュール 不具合 モジュール モジュール 何が原因? 不具合の原因を特定、修正するためのコストが高くつく 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 38
  39. 39. 継続的インテグレーション 製品 製品 製品 モジュール モジュール モジュール モジュール モジュール モジュール モジュール モジュール 結合 モジュール 結合 モジュール モジュール 不具合 不具合の原因は、 最後に結合した モジュール 参考:「継続的インテグレーション」http://ObjectClub.jp/community/XP-jp/xp_relate/cont-j 不具合発生の原因特定がしやすく、すぐに修正できます 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 39
  40. 40. 常に結合し、テストを行う 実装 結合 ビックバン結合 テスト デバッグ 実装 結合 テスト デバッグ 継続的 インテグレーション ぎりぎりまで実装可能 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 40
  41. 41. 原則5:速く提供する 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 41
  42. 42. 原則5:速く提供する 最 終 決 定 時 点 最 終 決 定 時 点 提供能力が高まれば、最終決定時点を遅らせられる 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 42
  43. 43. イテレーションからフローへ ウォータフォール イテレーション フロー 要求(スコープ) 要求(スコープ) 要求(スコープ) 計画 各工程を 並行で実施 分析 設計 実装 1~4週間 イテレーション テスト 時 間 時 間 時 間 より小さいサイクルでの開発へと進化している 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 43
  44. 44. 継続的デリバリー 開発 要求 開発 要求 デプロイ 開発 要求 開発 要求 開発 要求 要求 開発 要求 開発 デプロイ デプロイ 開発 要求 要求 開発 要求 デプロイ デプロイ 開発 デプロイ 本番環境 ※開発には、分析、設計、実装、テストの一連の作業が含まれる 開発の終わった要求から順に、本番環境にデプロイする 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 44
  45. 45. 原則6:人を尊重する 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 45
  46. 46. 原則6:人を尊重する 共に働く人、価値を受け取る人を尊重する 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 46
  47. 47. リーダーシップについて  メンバーが自律的に協働するように働きかける  指示命令だけで、メンバーを動かすようなリーダーを登場させないこと 支配(指示命令)型 リーダーの 振る舞い メンバーの 振る舞い サーバント(奉仕)型 ・メンバーの細かい行動まで指示を出す ・メンバーの弱点に焦点を当てる ・メンバーに自分の声を聞かせる ・メンバーを引っ張る ・メンバーが自発的に動けるようにサ ポートする ・メンバーの強みに焦点を当てる ・メンバーの声に耳を傾ける ・メンバーを押す ・恐れや義務感で行動する ・言われてから行動する ・言われたとおりにしようとする ・役割や指示内容にだけに集中する ・やりたい気持ちで行動する ・言われる前に行動する ・工夫できるところは工夫しようとする ・リーダーの示すビジョンを意識する リーダーが ボトルネック リーダー 支配 メンバー メンバー メンバー メンバー メンバー メンバー メンバー メンバー 支援 自律的に協働 リーダー 参考「NPO法人サーバント・リーダーシップ協会」 http://www.servantleader.jp/about_servant.html 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 47
  48. 48. 見える化とは  見える化とは、異常を見えるようにし、行動を誘発 する仕組み、および活動のこと   メンバー間で共有する 見たくなくても眼に飛び込んでくる   自発的な行動を促す   五感に訴えかける アイデアを出す、相互に確認しあう カイゼンの道具   管理の道具ではない 現場主体の素早いフィードバックループを作る ⇒カイゼンが促進される 異常が見えることで行動につながる 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 48
  49. 49. 見える化のサイクル 「可視化」で 現場が見える チームで 改善策を実施する 見える化 チームで 問題に気づく チームで 改善策を練る 現場の人の知恵と工夫を最大限に活かす(衆知を集める) 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 49
  50. 50. 作業状況の見える化:タスクボード   イテレーションで完了すべき要求(ストーリ)や、タス ク(調査、実装、改善)の状態を可視化したボード イテレーションバックログを管理する 未着手 実施中 Doing ToDo 要求 タスク 要求 タスク タスク タスク 完了 Done タスク タスク 着手 タスク タスク 完了 タスク タスク タスクの現時点の状況を把握できる 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 50
  51. 51. 原則7:全体を最適化する 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 51
  52. 52. 原則7:全体を最適化する 滞留 全体が滞りなく流れるようにする 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 52
  53. 53. 制限付きのタスクボード ToDo 工程1 Ready Doing 工程2 Ready 工程N Doing Ready Doing 完了 ・・・ 次の工程に、空きがあ る場合のみ、前工程 の作業可(Pull方式) KANBAN=タスクボード+流量制限 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 53
  54. 54. システム開発からビジネス開発へ 市場分析 市場 発注 システム (IT) ビジネス リリース 納品 半年から3年 市場 ビジネス ミッション・リスク共有型の ビジネスへ システム (IT) ビジネスとITが一体となり、結果から戦略を作りながら進む 2013/12/6 Copyright (c) 2002-2013 Eiwa System Management, Inc. 54
  55. 55. お問い合わせ  本資料に関するお問い合わせは下記までお願いし ます。 sales@esm.co.jp twitter @esmsec 株式会社永和システムマネジメント コンサルティングセンター http://sec.tky.esm.co.jp/ 2013/11/5 Copyright (c) 2006-2013 Eiwa System Management, Inc. 55

×