チケット駆動開発のフレームワーク~現場の経験知からパターン言語へ14-B-5                                     小川 明彦                                          ...
チケット駆動でよく聞かれる質問似たような質問が多い チケットの粒度 複数チームのタスク管理判断基準が暗黙知なので明確でない 現場のノウハウが形式知として共有されていないチケット駆動開発(TiDD)はAgile開発なのか? 日本の開発現場で生まれ...
体系化の方針1. ツールの説明を排除   TiDDはツールに依存しない   RedmineでもPostItでもチケット駆動は運用可能2. プラクティスをパターン言語の形式で表現   現場の経験知を再利用できる形式にする   特定の状況の問題に対...
TiDDの原則、  価値観、 プラクティス Developers Summit 2013 Action !   4
TiDDの原則原則とは 価値とプラクティスの領域における不変のルール1. 最初にチケットありき (Ticket First)    SW開発の作業も課題も障害もチケットへ    チケット無しの作業不可 (No Ticket, No Work)2...
チケットとは製品の変更時に管理すべき対象プロセス(チケットは製品に従う                     チケットは製品に従う)                     チケットは製品に従うチケットはワークフローで制御される(チケットはワ...
構成管理とはソフトウェア資産を記録する仕組み (成果物は構成管理に従う                  成果物は構成管理に従う)                  成果物は構成管理に従うバージョンは、ソフトウェア資産を確定させる締日チケットは...
TiDDの価値観とは何が望ましく何がふさわしくないのかという基準価値を実現するためにプラクティスを実践する       Developers Summit 2013 Action !   8
プラクティスとは 現場で実証された実践技法     プラクティスは価値観に基づく行動を促す パターン言語で表現してみる     特定の状況の問題における解決法名前・別名     プラクティス名。別の名称。頻出場所      プラクティスが出現す...
TiDDが目指す世界      Developers Summit 2013 Action !   10
パターンの適用例~チケットの粒度に関する問題   Developers Summit 2013 Action !   11
「チケットの粒度」に関する問題あいまいなチケット チケットがタスクではなく仕様書になっている 作業内容がよく分からない肥満児チケット タスク分割が不十分 当初の見積りよりも倍以上の工数がかかる放置されたチケット チケットを細かくすれば、チケット...
No Ticket, No Work名前     チケット無しの作業不可頻出場所   チケットの作り方状況     担当者の作業が公開されていない        オープンを妨害       →オープンを妨害問題     作業がチケットに記録され...
TiDDによるパラダイムシフト  チケットの取捨選択でスコープ管理する    変化に強いタスク管理が運用可能       Developers Summit 2013 Action !   14
No Ticket, No Commit名前     チケット無しのコミット不可頻出場所   チケットの閉じ方状況     ソース修正が意図された修正なのか判別できない         コミットメントを妨害       →コミットメントを妨害問...
TiDDの運用サイクル      Developers Summit 2013 Action !   16
Iteration is Version名前     イテレーションはバージョンに同一視頻出場所   バージョンの登録・終了、チケットの分類状況     リリース計画が現実と合致していない        オープンを妨害       →オープンを...
小規模リリース 小刻みに機能拡張しながら定期的にリリースしていく  Velocity(開発速度           開発速度)=イテレーション単位の平均消化チケット数           開発速度            Developers S...
開発のリズムチケットの作業に集中 (Scrumの集中                 の集中)                 の集中 割り込み作業はしないコミットのリズム コミットと同時にチケットをCloseする (No Ticket, No...
TiDDは自発的行動を促す開発者に自己管理する勇気の基盤を与える 作業の見える化がメンバー間の信頼関係を強化する リーダーは管理者から支援者へ変わる        Developers Summit 2013 Action !   20
その他のプラクティス(作成中)チケット管理の観点    適用可能なプラクティス、概念チケットの作り方     No Ticket, No Workチケットの整理      チケットの棚卸しチケットの閉じ方     No Ticket, No C...
まとめDevelopers Summit 2013 Action !   22
まとめパターン言語で現場の経験知を表現できそう 状況と問題によってプラクティスを使い分ける パターンで経験知の本質を取り出したいTiDDとAgile開発の親和性を説明できそう 透明性、小規模リリース、持続可能な開発ペース etc. TiDDは価...
ご清聴 ありがとうございました Developers Summit 2013 Action !   24
Upcoming SlideShare
Loading in …5
×

デブサミ2013発表資料(14-B-5)「チケット駆動開発のフレームワーク~現場の経験知からパターン言語へ」 #devsumi #devsumiB

7,317 views

Published on

デブサミ2013発表資料(14-B-5)「チケット駆動開発のフレームワーク~現場の経験知からパターン言語へ」 #devsumi #devsumiB
デブサミ2013、講演関連資料まとめ:CodeZine
http://codezine.jp/article/detail/7003

【公開】チケット駆動開発のフレームワーク~現場の経験知からパターン言語へ #devsumi #devsumiB: プログラマの思索 http://forza.cocolog-nifty.com/blog/2013/02/devsumi-devsumi.html

Published in: Business
  • Be the first to comment

デブサミ2013発表資料(14-B-5)「チケット駆動開発のフレームワーク~現場の経験知からパターン言語へ」 #devsumi #devsumiB

  1. 1. チケット駆動開発のフレームワーク~現場の経験知からパターン言語へ14-B-5 小川 明彦 XPJUG関西 XPJUG関西 Developers Summit 2013 Action ! 1
  2. 2. チケット駆動でよく聞かれる質問似たような質問が多い チケットの粒度 複数チームのタスク管理判断基準が暗黙知なので明確でない 現場のノウハウが形式知として共有されていないチケット駆動開発(TiDD)はAgile開発なのか? 日本の開発現場で生まれたアジャイルな実践技法 人によって説明がバラバラ Developers Summit 2013 Action ! 2
  3. 3. 体系化の方針1. ツールの説明を排除 TiDDはツールに依存しない RedmineでもPostItでもチケット駆動は運用可能2. プラクティスをパターン言語の形式で表現 現場の経験知を再利用できる形式にする 特定の状況の問題に対して有効な解決法を提示3. 原則・価値観・プラクティスでまとめる 開発フレームワークの作業仮説として提示 コミュニティで議論した結果を反映して補強したい Developers Summit 2013 Action ! 3
  4. 4. TiDDの原則、 価値観、 プラクティス Developers Summit 2013 Action ! 4
  5. 5. TiDDの原則原則とは 価値とプラクティスの領域における不変のルール1. 最初にチケットありき (Ticket First) SW開発の作業も課題も障害もチケットへ チケット無しの作業不可 (No Ticket, No Work)2. 成果物は構成管理に従う プログラムや仕様書は構成管理へ 議事録や報告書はWikiやチケット集計へ Developers Summit 2013 Action ! 5
  6. 6. チケットとは製品の変更時に管理すべき対象プロセス(チケットは製品に従う チケットは製品に従う) チケットは製品に従うチケットはワークフローで制御される(チケットはワークフローに従う チケットはワークフローに従う) チケットはワークフローに従うチケットは成果物や仕様ではない(成果物は構成管理に従う 成果物は構成管理に従う) 成果物は構成管理に従う Developers Summit 2013 Action ! 6
  7. 7. 構成管理とはソフトウェア資産を記録する仕組み (成果物は構成管理に従う 成果物は構成管理に従う) 成果物は構成管理に従うバージョンは、ソフトウェア資産を確定させる締日チケットはリリースに至るまでのコミット履歴というメタ情報 Developers Summit 2013 Action ! 7
  8. 8. TiDDの価値観とは何が望ましく何がふさわしくないのかという基準価値を実現するためにプラクティスを実践する Developers Summit 2013 Action ! 8
  9. 9. プラクティスとは 現場で実証された実践技法 プラクティスは価値観に基づく行動を促す パターン言語で表現してみる 特定の状況の問題における解決法名前・別名 プラクティス名。別の名称。頻出場所 プラクティスが出現する工程、作業状況(文脈状況 文脈) 文脈 問題が発生し、価値が妨害される状況(context) 問題が発生し、価値が妨害される状況問題 プラクティスで解決しようとする問題 プラクティスで解決しようとする問題(problem) で解決しようとする問題解決法 問題を取り除くための解決方法(solution) 問題を取り除くための解決方法結果文脈 プラクティスで解決した後に変化した状況。 プラクティスで解決した後に変化した状況。 別の価値を促進する副次的な効果。 Developers Summit 2013 Action ! 9
  10. 10. TiDDが目指す世界 Developers Summit 2013 Action ! 10
  11. 11. パターンの適用例~チケットの粒度に関する問題 Developers Summit 2013 Action ! 11
  12. 12. 「チケットの粒度」に関する問題あいまいなチケット チケットがタスクではなく仕様書になっている 作業内容がよく分からない肥満児チケット タスク分割が不十分 当初の見積りよりも倍以上の工数がかかる放置されたチケット チケットを細かくすれば、チケットは乱発されやすい 期日やリリースバージョンが未定の「今すぐ」チケット Developers Summit 2013 Action ! 12
  13. 13. No Ticket, No Work名前 チケット無しの作業不可頻出場所 チケットの作り方状況 担当者の作業が公開されていない オープンを妨害 →オープンを妨害問題 作業がチケットに記録されていない解決法 チケットを起票してから作業を開始する結果文脈 ・日々のタスク管理はメンバー自身で行うようになる コミットメント、勇気の効果 →コミットメント、勇気の効果 ・チーム内で情報共有が促進される コミュニケーションの効果 →コミュニケーションの効果 Developers Summit 2013 Action ! 13
  14. 14. TiDDによるパラダイムシフト チケットの取捨選択でスコープ管理する   変化に強いタスク管理が運用可能 Developers Summit 2013 Action ! 14
  15. 15. No Ticket, No Commit名前 チケット無しのコミット不可頻出場所 チケットの閉じ方状況 ソース修正が意図された修正なのか判別できない コミットメントを妨害 →コミットメントを妨害問題 障害の記録と、成果物の作業履歴が同期されてな い解決法 ソースをコミットする時、チケットに変更理由を残して Closeする Closeする結果文脈 トレーサビリティの実現によって保守作業で役立つ フィードバックの効果 →フィードバックの効果 Developers Summit 2013 Action ! 15
  16. 16. TiDDの運用サイクル Developers Summit 2013 Action ! 16
  17. 17. Iteration is Version名前 イテレーションはバージョンに同一視頻出場所 バージョンの登録・終了、チケットの分類状況 リリース計画が現実と合致していない オープンを妨害 →オープンを妨害問題 リリースが1回だけなので学生症候群になりやすい解決法 イテレーションをリリースバージョンとして定期的に リリースする結果文脈 ・マイルストーンごとにリリースできるようになる コミットメント、勇気の効果 →コミットメント、勇気の効果 ・開発中の経験知がフィードバックされて蓄積される フィードバックの効果 →フィードバックの効果 Developers Summit 2013 Action ! 17
  18. 18. 小規模リリース 小刻みに機能拡張しながら定期的にリリースしていく  Velocity(開発速度 開発速度)=イテレーション単位の平均消化チケット数 開発速度 Developers Summit 2013 Action ! 18
  19. 19. 開発のリズムチケットの作業に集中 (Scrumの集中 の集中) の集中 割り込み作業はしないコミットのリズム コミットと同時にチケットをCloseする (No Ticket, No Commit)定期的なリリース 持続可能な開発ペース (Velocity)定期的なイベントで検査 (Scrumの透明性 の透明性) の透明性 毎日の朝会 リリースごとにふりかえり Developers Summit 2013 Action ! 19
  20. 20. TiDDは自発的行動を促す開発者に自己管理する勇気の基盤を与える 作業の見える化がメンバー間の信頼関係を強化する リーダーは管理者から支援者へ変わる Developers Summit 2013 Action ! 20
  21. 21. その他のプラクティス(作成中)チケット管理の観点 適用可能なプラクティス、概念チケットの作り方 No Ticket, No Workチケットの整理 チケットの棚卸しチケットの閉じ方 No Ticket, No Commitチケットの渡し方 ペア作業チケットの分類 分割統治、 チケットはワークフローに従うチケットの集計 ・チケット集計もワークフローに従う ・ロールでビューを切り替える etc.チケットの通知 私に聞くな、チケットに聞け(TiDD版ハリウッドの原則) TiDD版ハリウッドの原則 版ハリウッドの原則)チケットの並べ方 バックログ etc.バージョンの作り方 Iteration is Versionプロジェクトの作り方 チケットは製品に従う Developers Summit 2013 Action ! 21
  22. 22. まとめDevelopers Summit 2013 Action ! 22
  23. 23. まとめパターン言語で現場の経験知を表現できそう 状況と問題によってプラクティスを使い分ける パターンで経験知の本質を取り出したいTiDDとAgile開発の親和性を説明できそう 透明性、小規模リリース、持続可能な開発ペース etc. TiDDは価値観に基づく行動を促すプラクティスが生成的(generative)な特徴を表現したい 生成的 単独のプラクティスから「品質」「効率」は出現しない プラクティスの相乗効果として「計画」「品質」「リズム」が現れる Developers Summit 2013 Action ! 23
  24. 24. ご清聴 ありがとうございました Developers Summit 2013 Action ! 24

×