SEA-KANSAI #43

1,802 views
1,741 views

Published on

2011年1月15日(土)の講演スライド。発表では紹介できなかったおまけスライドも入れています。

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,802
On SlideShare
0
From Embeds
0
Number of Embeds
155
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

SEA-KANSAI #43

  1. 1. チケット駆動開発による 現場力の向上 (株)SRA 阪井 誠 E-mail: sakai@sra.co.jp http://sakaba.cocolog-nifty.com/sakaba/ Twitter: sakaba37
  2. 2. 「仕事には働きがいが必要」 • 働きがいを与えるには、仕事そのものに責任を持 たせなければならない(ドラッカーの「マネジメント」p.74) – 生産的な仕事 – フィードバック情報 – 継続的学習 • これはTiDDによって実現できる! – チケットで責任を与えて作業を任せる – 見える化やコメントによるフィードバック – 繰り返しのリズム 「もし、高校野球の女子マネージャーがドラッカーの『マネジメント』を読んだら」(p.90) 2
  3. 3. TiDD普及の背景 • 小規模かつ高機能なソフトウェアの開発 • オープン化に伴う環境の流動化 • ユーザ(ビジネス)要求の不安定化 • 細かく大量の作業、変化への対応が必要となり、 プロセスの即時性・効率化が求められた – 従来型開発のアジリティ(機敏さ)向上 – アジャイル開発の支援 3
  4. 4. 紺屋の白袴 布を紺色に染めるのを仕事とする紺屋が、自分の 袴も染めないで、白袴を穿(は)いているということ。 1. 他人のためにばかり忙しく、自分のことには手が回らないこと。 2. いつでもできるにも拘(かか)わらず、放置しておくようなこと   を指摘する言葉。   (くろご式 ことわざ辞典: http://www.geocities.jp/tomomi965/kotowaza05/index.html) • 自動化による業務改善がソフト屋さんの仕事。 – 人に向かない仕事、負担の多い仕事を自動化 – 業務改善により、人はより高度な作業をする – 他社に負けない企業にする    ⇒ 今こそ袴を紺色に!そして、現場を元気に 4
  5. 5. 目次 • チケット駆動開発(TiDD)の概要 – TiDD普及の背景 – TiDDの歴史 – TiDDの事例 – TiDDとは(BTS、アジャイル開発との関係、 TiDDによる改善、運用方式、管理方法) • TiDDの体験談 • まとめと感想 5
  6. 6. TiDDの歴史 2007年 まちゅ, 「もうひとつのTDD」, ITpro Challenge のライトニングトーク        http://www.machu.jp/diary/20070907.html#p01 2008年 XPJUG関西 ビジネスモデリング研究会からTiDD勉強会発足 前田, 「入門Redmine Linux/Windows 対応」, 秀和システム 岡本, 「第1回Tracをオススメする,これだけの理由」, Trac で開発現場を交通整理        http://itpro.nikkeibp.co.jp/article/COLUMN/20080414/298973/ 2009年 あきぴー , XP祭り関西2009「チケットファーストでアジャイル開発!」        http://forza.cocolog-nifty.com/blog/2009/02/xp2009-746a.html 阪井, 「TiDD : チケット駆動によるアジャイル開発法」, FORCE2009.        http://sakaba.cocolog-nifty.com/PDF/TiDD_FORCE09.pdf shun, 名古屋アジャイル勉強会 第13回「チケット駆動開発入門」        http://successdrills.com/modules/d3blog/details.php?bid=359 小川, 阪井, 「チケット駆動開発 - BTSでExtreme Programmingを改善する-」        http://forza.cocolog-nifty.com/blog/2009/11/spes2009sqip200.html 2010年 XPJUG, XP祭り関西2010「チケット駆動開発の体験談」ほか        http://w w w .xpjug.jp/
  7. 7. チケット駆動開発(TiDD)とは • BTS(ITS)を使う • チケットを用いて作業の管理をする • チケットなしに(構成管理上の)更新をしない No Ticket, No Commit! • (ツール連携による自動化) ⇒ 厳密な定義はなく、様々な実施方法がある    個人的には、チケット駆動開発という名前の下に 様々な技術を整理・統合したいと思っています
  8. 8. BTS:Bug Tracking System (ITS:issue tracking system) • BTS(ITS)とは – 障害(課題)を管理するツール – Trac, Redmine, Mantis, Bugzilla, GNATS, 影舞 – 障害(課題)ごとにチケットを発行する • チケットの属性ごとの一覧が可能 – 状態:報告、担当者決定、修正済、確認済、完了など – 担当者、作業工数、完了予定、完了日 • 高機能化 – ワークフローの管理 – 構成管理ツール(色々), TestLink等との連携 – ガントチャート(線表)の作成 – 階層管理(WBSより詳細にできる) – Wiki, メール, RSS機能 8
  9. 9. チケット一覧(例:Redmine) タスクボードの代わりとして  担当者毎の進捗を確認できる 9 SQiP2009発表資料より ©小川明彦, 阪井誠
  10. 10. ガントチャート SQiP2009発表資料より ©小川明彦, 阪井誠 10
  11. 11. ワークフロー設定(例:Redmine) ソフトウェア開発のワークフローは BTSのワークフロー機能で 制御できる ユーザ権限と チケット種類の単位で ステータスの現在・移行先を 指定する 現 ステータスの移行先 在 の ス テ ー タ ス 11 SQiP2009発表資料より ©小川明彦, 阪井誠
  12. 12. TiDDの効果 • ワークフローの管理 • 見える化 – プロジェクト状況把握 – 担当や重要度など様々な視点での作業管理 – コミュニケーション・納得性向上 • ソースのトレーサビリティ向上 • ツール連携による自動化 • アジリティの向上 12
  13. 13. アジャイル開発との関係 • アジャイル開発とは(良く聞く表現) – 変化を前提に開発 – 繰り返し開発 – 期間を固定してスコープを変更 – 規律・ツールよりも人(プロジェクトファシリテーション)           ⇒コミュニケーション、モチベーション    13
  14. 14. 変化 スクラム スプリント(30日間) 要望 要望 スプリント バックログ 優 先 順 日次スクラム 位 (朝会) スプリント計画 ミーティング プロダクト バックログ スプリントレビュー リリース ミーティング 14
  15. 15. XP(eXtream Programing) イテレーション 変化 ストーリカード 要望 ストーリカード ストーリカード 要望 イテレーション計画 計画ゲーム ストーリカード ストーリカード ToDo     Doing     Done ストーリカード ストーリカード ストーリカード タスクカード タスクカード タスクカード タスクカード タスクカード 優先順位を考慮し てイテレーションを タスクカード 計画 タスクボード 15
  16. 16. TiDD(Ticket Driven Development) 日々の活動 変化 前提 前提 BTSのチケット一覧 内容 期限 担当 ステータス ・・・ BTSに登録 チケット チケット チケット チケット チケット チケットごとの優先 チケットに 順位を考慮して、 担当作 作業 進捗 作業を記述 期限、担当、ステー 業確認 実施 更新 タスなどを設定 *チケットはスクラムのバックログ、XPのタスクカードと同じ 16
  17. 17. TiDDによるアジャイル開発の支援 期間優先&優先順位 によるスコープの変更 – 電子化による自由度向上 コミュニ • スクラムのバックログ ケーション • XPのタスクカード・タスクボード – トレーサビリティ(コメント・議論、変更の履歴) – 繰り返しリリースの支援 • ふりかえりが容易になりプロセスが洗練される • 本番保守と開発の2重管理をワークフローで支援 – BTS中心にツールを統合(構成管理、テスト、継続 的インテグレーション、デプロイ) – アジャイルの目指すところがわかる    ⇒ 「アジャイルがわかった!」 17
  18. 18. TiDDの運用方式 • 完全チケット方式(Redmineの本ほか) o チケットですべての作業を管理する o 管理が集約される o プロセスを変更するので社内調整が必要 • 補完チケット方式(今回の体験談) o 既存の管理は変更しない o 計画外の作業をチケットで管理する o こっそり開始できる(でも報告は必要<=後述)
  19. 19. チケットの管理方法 • ワークフロー型 o トップダウン組織的 o 起票や終了には権限が必要 o 仕様の一貫性を保障できる • オープン型(今回の体験談) o ネットワーク組織的 o 誰でも起票・終了できる o 機敏さ、自由がある 19
  20. 20. 目次 • チケット駆動開発の概要(説明済) • TiDDの体験談 – プロジェクト概要 – 導入時の工夫 – 結果、効果 – 注意点 • まとめと感想 20
  21. 21. 質問 Q: ソフトウェア開発が楽しいですか? A: ものづくりだから楽しいはず • しかし、不完全な人間が、間違いを犯さない計算 機と戦わないといけない • ミスをしてはいけないというプレッシャーを感じるこ とも多い • しかもやることはたくさんある ★TiDDはそんなプロジェクトを元気にしました!
  22. 22. TiDDの体験談(概要) • 文教パッケージのカスタマイズ(最大8人x1年) o 短納期 & 仕様の決定遅れ・変更 o スキルは高いが経験者が少ない(リーダは途中交代) o 初めての組み合わせ(サブシステム、ミドルのバージョン) o 義務感と不安、重苦しい雰囲気、閉塞感、、、 o 守りに入るので、コミュニケーションが悪い システムテストの時期になると、計画外の環境構築やリリース 準備作業が明らかになった(環境に関連するバグも、、、) ⇒ そうだ!チケット駆動開発をしよう! 22
  23. 23. 総合文教ソリューション UniVision UniVisionは入試管理、学籍管理、教務管理といった基幹事務機能を中心に学生 サービスに関する情報全般を統合的に管理する統合文教ソリューションです。 また、2009年度より、新たに法人系システム(学校会計、固定資産)もサービス開 始しております。システムコンサルティングから構築、運用支援にいたるトータルサ ポートサービスを御提供しています。 履修管理 履修管理 学籍管理 学籍管理 成績管理 成績管理 入試管理 入試管理 SOA基盤 進級・卒業 進級・卒業 授業料・入学金 授業料・入学金 奨学金 奨学金 就職管理 就職管理 研究者D シラバス情報 研究者D 休講 卒業生管理 スクーリング管理 奨学金 奨学金 B

×