Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

アジャイル開発の進め方

7,256 views

Published on

2011年2月3日に同様のセミナーを行いました。内容をちょい更新。
2010年11月2日 ビーイング、ゴールシステムコンサルティング 主催の「TOC/CCPM+アジャイル実践セミナー」での講演資料です。

Published in: Technology
  • Be the first to comment

アジャイル開発の進め方

  1. 1. アジャイル開発の進め方 なぜ、アジャイル開発はそのように進めるのか 1Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 株式会社永和システムマネジメント コンサルティングセンター センター長 天野勝 http://sec.tky.esm.co.jp/
  2. 2. 2Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 本日のお話  アジャイル開発が一般に普及し、多くのソフトウェア 開発に採用されるようになってきました。しかし、す べてのプロジェクトでそのメリットを享受できている わけではないのも事実です。  自分たちに適応したアジャイル開発になっていない のが、その原因だと考えます。  本日は、アジャイル開発の成り立ちを考えるため のきっかけとなる予備知識と、アジャイル開発の始 め方の一例をご紹介します。
  3. 3. 3Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 スピーカー紹介  天野 勝(あまの まさる)  (株)永和システムマネジメント コンサルティングセンター センター長  オブジェクト指向、アジャイル開発、開発現場の活性化をテーマに、 ファシリテーションを活用したコンサルティング、セミナーに従事。  2002年にKent BeckからTDDを教わる  オブラブ、アジャイルプロセス協議会、日本XPユーザグループ、日 本ソフトウェアテストシンポジウムなど、ソフトウェアコミュニティに積 極的に参加  著書:『eXtreme Programmingテスト技法』『正しく学ぶソフトウエア設 計』  訳書:『リーン開発の本質』『アジャイルソフトウェア開発スクラム』
  4. 4. 4Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 会社紹介  株式会社 永和システムマネジメント  本社は福井県福井市  1980年創業、 2002年東京事務所開設  金融、医療、オブジェクト指向 を使ったシステム開発  コミュニティ活動や、 書籍の執筆・翻訳に積極的 福井県福井市
  5. 5. 5Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 目次  予備知識  アジャイル開発の進め方  TFからはじめるアジャイル開発  おわりに  参考資料
  6. 6. 予備知識 6Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3
  7. 7. ビジネスのサイクル 7Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 要求 ニーズ 商品 市 場 供 給 者 ¥ 提供獲得 開発 ニーズに合う商品を提供するのがビジネスの大前提POINT
  8. 8. 市 場 市 場 ニーズに合う商品を提供するために 8Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 ニーズの獲得から商品提供を素早く行う仕組みが必要POINT 市 場 市 場要求 商品獲得 開発 提供 要求 商品獲得 開発 提供 時間短縮 ニーズが変わる前に 素早く提供
  9. 9. 商品提供を素早くするには(ソフトウェアの場合) 9Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 要求 既存の ソフトウェア 開発 新たな ソフトウェア 開発チーム 修正しやすく 作る 小さく作って大きく育てる開発プロセスを採用するPOINT プロセス ムダを 排除する チームとして 成長する
  10. 10. 10Copyright (c) 2002-2011 Eiwa System Management, Inc. 要求 ソフトウェア 整理された問題 分析モデル 設計モデル 解決へ向けた具体策 (2)方針を決めて、具体化 する。問題を解く (1)問題を見つめて 整理する。 問題のモデル化 (3)具体策に基づいてモデ ルを現実化する 【現実領域】 【問題領域】 【解領域】 【モデル領域】 (4)現実化された解で問題が解決 されているかを確認する 現実化された具体策解くべき問題 分析 Verification 実装 Verification テスト 設計 Validation Validation 修正しやすく作るために 2011/2/3 モデルを活用して、抽象度を高めるPOINT
  11. 11. ムダを排除するために 11Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 要求 待ち行列に フォームを入れる 承認と 優先順位 づけ 待ち行列に フォームを入れる 技術 評価 待ち行列に フォームを入れる コーディング とテスト 検査へ 検査と 修正 運用担当へ 配備 効率 1% 合計20分 合計4時間 価値 ムダ 5分 15分 1/2週間 2分 2週間 15分 2週間 2時間 1週間 3時間 45分 15分 1/2週間 3分 2時間 40分 6週間 4時間 バリューストリームマップの例 バリューストリームマップでプロセスのムダを見るPOINT 出典:『リーン開発の本質』 顧客価値に 結びつかない すべてがムダ
  12. 12. 12Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 7つのムダ 生産工程の7つのムダ ソフトウェア開発の7つのムダ 在庫のムダ 未完成の作業のムダ 加工そのもののムダ 再学習のムダ 作りすぎのムダ 余分な機能のムダ 運搬のムダ 引継ぎのムダ 手待ちのムダ 遅れのムダ 動作のムダ タスク切り替えのムダ 不良を作るムダ 欠陥(バグ)のムダ ムダの視点で観察し、改善のきっかけにするPOINT 出典:『リーン開発の本質』
  13. 13. 納品後のソフトウェアの機能の利用度 13Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 Standish Group Study Reported in 2000 Chaos Report. Always 7% Often 13% Sometimes 16% Rarely 19% Never 45% 全く利用しない ほとんど 利用しない いつも 利用する よく利用する ときどき利用する 利用される機能は全体の1/3、良く利用されるのは1/5POINT 余分な機能のムダ
  14. 14. なぜ作りすぎのムダが発生するのか?  変更コストカーブの前提がムダを生む  もし変更コストカーブを平坦にできたとしたら?  平坦にするためにはなにをする? 14Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 時間 変更 コスト 時間 変更 コスト Boehm 1981 Beck 2000 変更コストカーブが平坦ならば、後で修正しても損しないPOINT
  15. 15. チームとして成長するために  プロジェクトに学習のサイクルを組み込む 15Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 Study Adapt Plan Do 経験から学習する 学習したことを活かして、 チームを変化させる 学習できるように 計画を立てる 学習したことの効果を 試しながら仕事を行う 早く失敗が分かる方が学習の効果が高いPOINT
  16. 16. 16Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 現状に適したリスクコントロール リスク 事前対策 事後対策 ダメージを軽減 発生頻度を低減 素早く安価に対処 仕組み作り 回避、低減、転嫁、受容 トータルのコストが低減するようにリスクを管理下におくPOINT
  17. 17. 「アジャイル」とは  アジャイルであるということは、プロセスよりもむし ろ「態度」であり、「方法論」ではなく「環境」である。  『アジャイルプロジェクトマネジメント』 P.10  アジャイルは、プラクティス群によって定義されな い。文化的な信念群によって定義される。  『アジャイルソフトウェア開発エコシステム』P.203  アジャイルさというのは、「心構え」とか「考え方」で あって、「プラクティス」や「プロセス」のことではない  『アジャイルプロジェクトマネジメント』P.277 17Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 「アジャイルでやる」のではなく「アジャイルにやる」POINT
  18. 18. アジャイル開発の進め方 18Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3
  19. 19. 19Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 APM アジャイル開発には多くの手法がある ©アジャイルプロセス協議会 アジャイルプロジェクトマネジメントWG RUP WF 軽量 UP ASD スクラム FDD DSDM XP 人の関わり方 (アクティブ) 人の関わり方 (パッシブ) プロダクト重視 マネジメント重視 リーン AM 提唱者それぞれの成功事例や視点のバリエーションPOINT アジャイル開発に 分類されるプロセス
  20. 20. 代表的なアジャイル手法 20Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 XP スクラム リーン Extreme Programming Scrum Lean Software Development Kent Beckらが提唱している手法。 「変化ヲ抱擁セヨ」をスローガンとして、ソフトウェア開発 技術のベストプラクティスのいくつかを極端に実施するこ とで、ソフトウェア開発のリスク回避を実現している。 Ken Schwaber、Jeff Sutherlandらが提唱している手法。 ソフトウェア開発のマネジメントにフォーカスをあて、チー ムを自律的に動かすための場作りの仕掛け(フレーム ワーク)を提供している。 Mary Poppendiekらが提唱している手法。 トヨタ生産方式をお手本して、ソフトウェア開発を成功さ せるための原則集。この原則をもとに、具体的なプラク ティスを生み出す。第一原則は「ムダの排除」。
  21. 21. イテレーションで開発する 21Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 イテレーション毎に動作可能なソフトウェアを開発するPOINT イテレーション 計 画 ふ り か え り 開発実施 イテレーション 計 画 ふ り か え り 開発実施 ・・・ イテレーション 計 画 ふ り か え り 開発実施・・・ リ リ ー ス イテレーション 計 画 ふ り か え り 開発実施 イテレーションは タイムボックス リリースする 場合もあり 早期の失敗は 次の糧となる P D C A
  22. 22. 仕事 タイムボックス 22Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 時間の箱を満たすように計画、時間になるまで実行するPOINT 仕事 仕事 仕事 仕事 仕事 仕事 仕事 仕事 仕事 仕事 箱を満たすまで 仕事を入れる 想定しやすい範囲を 単位時間にする 見積りやすい範囲で 見積る
  23. 23. バッグログ イテレーションの計画 23Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 要求 要求 要求 要求 要求 要求 要求 優先順位が メンテされている 要求 イテレーション中も 新たな要求を追加可 必要な分だけ詳細化して、計画をするPOINT タスクリスト 優先順位の高い要求から タスクに分けて見積る タスク タスク タスク タスク イテレーションで受入れ 可能な分だけ 計画は 設計活動でもある
  24. 24. 24Copyright (c) 2002-2011 Eiwa System Management, Inc. 朝会(ディリーミーティング)  その日の行動を確認  昨日やったこと、 今日やること、 問題点の3点のみ報告  VMボード、タスクボードなど の前で行なう  全員参加  スタンドアップで15分以内で実施  問題点の検討は2次会で人を絞っ て実施 朝会の例 PF実践編:朝会ガイド http://ObjectClub.jp/community/pf/ 毎日定時に、タスクボードの前で、全員で短い会議POINT 2011/2/3
  25. 25. タスクの実施 (プログラミング) 25Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 テストコードを 書く テストに沿った 製品コードを 書く テスト失敗を 確認する テストが通る 最小コードを 記述する テストが通ること を確認する 不吉な匂いは リファクタリング テストが通ること を確認する 1 2 3 4 567 8 テストしながら開発を行う (TDD:テスト駆動開発)POINT
  26. 26. 品質を作りこみながら開発を進める 時間 欠 陥 数 時間 作って後で直す 早い段階で欠陥をなくす 後で直すより、早く直せば安くつくPOINT 欠 陥 数 2011/2/3 26Copyright (c) 2002-2011 Eiwa System Management, Inc.
  27. 27. イテレーションの終了 27Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 ふりかえりの良しあしがチームの成長に影響するPOINT ふりかえり プログラミング ユニットテスト 何を学んだかを確認し 次につなげる 計画した作業が残っていても、 時間になったら終了する 受入テスト・・・
  28. 28. 28Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 KPTによるふりかえりのサイクル Keep ●焦ったら、深呼吸する ●迷ったら、アラームを挙げる ●... Try ●開始前に深呼吸する ●机の上を片付ける ●立って行う ●荷物はイスの上に置く ●事前に何をするか、確認 する ●.... Problem ●作業場所が狭い ●迷うことが多い ●... テーマ:作業を効率的に行うために (1')試してみてうまくいったこと/続けたいこと (2) 問題点、工夫したいこと (3)Problemに効きそうな改善策 (4)Keepを強化する改善策 (1)続けたいこと、良かったこと (5)試したいこと (6)試すことを選択、 同意する PF実践編:ふりかえりガイド http://ObjectClub.jp/community/pf/
  29. 29. 29Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 ふりかえりミーティングの効果 効果 説明 コミュニケーションベースの改善 メンバー間で、話しやすくなる。 ナレッジの共有 個人の暗黙知が表出化され共有される。 コーチング効果 目標達成に対して自主性が増す。 チームビルディング チームの行動規範が生まれ、チームに一体 感が生まれる。 アイデアの創発 質の高いアイデアが生まれやすくなる。 チームとして前向きな思考になる。 PF実践編:ふりかえりガイド http://ObjectClub.jp/community/pf/
  30. 30. イテレーションの時間割 (1週間の例) 木 金 月 火 水 9:30~9:45 朝会 10:00~12:00 レビュー 13:30~15:30 ふりかえり 16:00~18:00 計画 30Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 ふりかえり、計画、朝会で仕事のリズムを作るPOINT 原則的に 定時後は仕事をしない ふりかえりの直後に 計画を行う 日々の作業も タイムボックス
  31. 31. アジャイル開発の成果物 31Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 正しいプロセスであっても、それを使うのは人POINT ニーズ アジャイル 開発 ソフトウェア チーム プロセス チーム より良いチーム チーム自らが 自分たちを高めていく プロセス より良いプロセス
  32. 32. TFからはじめるアジャイル開発 32Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3
  33. 33. チームファシリテーションとは  チームとしての仕事術  チームでリズムに乗って、見える化で仕事を進める  自律的なチーム運営の仕組み プロジェクト ファシリテーション アジャイル ソフトウェア開発 トヨタ生産方式 ファシリテーション 抽出 ・ 融合 抽出 ・ 導入サービス チーム ファシリテーション プロジェクトファシリテーション http://ObjectClub.jp/community/pf/ 平鍋らが提唱している「プロジェクトファシリテーション」のサブ セットで、現場への導入も含めた考え方およびサービス 2011/2/3 33Copyright (c) 2002-2011 Eiwa System Management, Inc.
  34. 34. 34Copyright (c) 2002-2011 Eiwa System Management, Inc. 基本となる考え方。 TFの最尐セットの構成 原則 見える化 リズム 実践 朝 会 週 次 計 画 ふ り か え り タ ス ク ボ ー ド 具体的な実施項目。 実践 原則 2011/2/3 実践は原則の上に成り立つPOINT
  35. 35. TFのPDCAサイクル 35Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 Plan ・週次計画 Do ・朝会 Check ・ふりかえり Act ・ふりかえり 上位計画 Done Keep Try Problem KPT DoneToDo Doing Done タスクボード チームでリズムに乗って、見える化で仕事を進めるPOINT 成果物 報告
  36. 36. アジャイル開発のPDCAサイクル 36Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 Plan ・イテレーション計画 Do ・朝会 Check ・ふりかえり Act ・ふりかえり Done Keep Try Problem KPT DoneToDo Doing Done タスクボード 計画のインプット以外は、PDCAサイクルの基本は同じPOINT バッグログ 要求 要求 要求 要求 要求 要求 要求 成果物 報告
  37. 37. プロジェクトへの適応例 プロセス 対象 リズムのサイズ 備考 アジャイル ・チーム ・1週間 ・イテレーション ・1イテレーションの期間が2 週間でも、ふりかえりは1週 間毎に行なう場合もある。 スパイラル ・チーム ・1週間 ・2週間 ・イテレーション ・イテレーションは1~3ヶ月。 ウォータ フォール ・チーム ・プロジェクト ・1週間 ・2週間 ・工程 ・工程の期間は工程毎に異 なる。 ・プロジェクト単位でのふりか えりは、工程毎に行なう。 保守 ・チーム ・保守案件 ・1ヵ月 ・1案件は1~3週間程度。 37Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3
  38. 38. おわりに 38Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3
  39. 39. アジャイル開発の前提 39Copyright (c) 2002-2011 Eiwa System Management, Inc. 製品 態度 活動 ・ニーズとの適合性 ・変更容易性 ・品質の担保 ・顧客との協働 ・繰り返し ・非属人性 ・自主性 ・正直さ ・敬意をはらう 2011/2/3
  40. 40. ふりかえり  予備知識  ニーズに対して、素早く商品を届ける  変更コストカーブを平坦にするには  開発中のムダを取り除く  アジャイル開発の進め方  タイムボックスでイテレーション開発  ソフトウェアだけではなく、プロセス、チームも開発する  TFからはじめるアジャイル開発  見える化とリズムをチームに導入  週次計画、朝会、ふりかえり、タスクボード 40Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3
  41. 41. 41Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 参考資料
  42. 42. 42Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 情報源  書籍  リーン開発の本質 著:メアリー・ポッペンディーク、トム・ポッペンディーク、 訳:高嶋 優子、天野 勝、監訳:平鍋 健児  アジャイルプロジェクトマネジメント 著:ジム・ハイスミス 訳:平鍋 健児、高嶋 優子、小野 剛  アジャイルソフトウェア開発 著:アリスター・コーバーン、訳:株式会社テクノロジックアート  アジャイルソフトウェア開発スクラム 著:ケン シュエイバー、マイク ビードル 訳:テクノロジックアート、長瀬 嘉秀、今野 睦、 スクラムエバンジェリストグループ  アジャイルレトロスペクティブズ 著:Esther Derby、Diana Larsen 、訳:角 征典
  43. 43. 43Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3 情報源  Web  プロジェクトファシリテーション 「朝会ガイド」「ふりかえりガイド」 http://ObjectClub.jp/community/pf/  永和システムマネジメント コンサルティングセンターページ チームファシリテーション http://sec.tky.esm.co.jp/categories/tf/
  44. 44. お問い合わせ  本資料に関するお問い合わせは下記までお願いし ます。 sales@esm.co.jp 株式会社永和システムマネジメント コンサルティングセンター http://sec.tky.esm.co.jp/ 44Copyright (c) 2002-2011 Eiwa System Management, Inc.2011/2/3

×