Upload
ryo-rktm
View
2.298
Download
4
Embed Size (px)
Citation preview
2009/10/10 名古屋Ruby会議01
プログラマとプログラマでない人のための課題管理ツール『Redmine』
名古屋アジャイル勉強会北村 亮(id:RKTM)
自己紹介
● 北村 亮(id:RKTM)● 三重から名古屋へ通うプログラマ● 文学部心理学専攻出身の文系脳。● 最近のお気に入り
● 登山– 日本最高の勉強会(標高的な意味で)– 鈴鹿山脈登ったり、南アルプス登ったり。– IBS石井スポーツが経営継続とか!
● Scala勉強中。
自己紹介(2/3)
● 名古屋アジャイル勉強会スタッフ● 10月30日テーマ
『なぜ仕事は定時に終わらないのか?』– アジャイルのタイムボックスの考え方で
仕事の取り組み方を変えてみる。– よく知らないから
勉強会主担当として学んでみるメソッド。
● 続きは近日中にWebで!– http://blogs.yahoo.co.jp/nagoya_agile_study_group
自己紹介(3/3)
● 名古屋Scala勉強会(new!)● 名古屋アジャイル勉強会の方と共同創設。● 第1回は10/23金曜日
– 一人だとくじけるので勉強会を立ち上げるメソッド。
– まずはScala本を読む。
● 続きはGoogle Groupで! – http://groups.google.co.jp/group/NagoyaScala
本日お話すること
● Redmine良いよ!● プログラマでない人でも、課題管理ツール
や情報共有の場として。● プログラマな人には、チケット駆動開発の
土台として。
Redmineって?
● Webベースのプロジェクト管理ツール。● Ruby on Rails製。● 複数プロジェクト対応。● ロールベースの柔軟なアクセス制御。● 柔軟なIssue Tracking System。● バージョン管理ツールと連携。● 情報共有の場(ニュース、フォーラム、wiki)
いまここ
● Redmine良いよ!● プログラマでない人でも、課題管理ツール
や情報共有の場として。● プログラマな人には、チケット駆動開発の
土台として。
課題管理ツールとして
● 課題(、リスク、Todo)を管理
※厳密には3者は違うけど。● やらなければならないこと。● いつまでに?● そのステータスは?● 誰が承認?そしてその記録は?
Redmineの課題管理はこんな感じ
● チケット登録● 『チケット』という単位で課題を登録。
● チケット一覧● ガントチャート● 変更の記録● タイムライン
画面:チケット登録
トラッカー:チケットのカテゴリ
優先度を決めたり担当者割りしたり対象のバージョンを決めたり。
開始日・期限日。予定工数も入れられる。
画面:チケット一覧
フィルタリングの条件も色々と指定できる
画面:ガントチャート
マウスオーバーで概要表示
あれ、遅れすぎてない?
画面:チケット変更の記録
誰がどんな変更を加えたか残る。
画面:タイムライン
活動のタイムライン。ここが活発なのはメンバーが動けている印。
RSSリーダーに登録。
Redmineの良い点(1/2)
● Webブラウザがあれば良い。● Linuxな人でも課題を登録・編集できるよ。
● 情報のリアルタイム性● RSS● メール送信
●ワークフロー。● 完了できるのはマネージャのみ、とか。● 誰が承認したか記録に残る。
Redmineの良い点(2/2)
● 課題管理とは直接関係ないけど、非常に便利な機能● 情報共有の機能。
– wiki、news、forum。(メール連絡では後から入った人に伝わらない)
● 横断的に検索できる。– チケット、wiki、news、コミットログ、etc
いまここ
● Redmine良いよ!● プログラマでない人でも、課題管理ツール
や情報共有の場として。● プログラマな人には、チケット駆動開発の
土台として。
第13回名古屋アジャイル勉強会
『チケット駆動開発入門』
2009/06/26
『チケット駆動開発』とは?
● チケット駆動開発 (ticket-driven development; TiDD)● プログラム開発手法の一種。● 作業をタスクに分割しITSのチケットに割り
当てて管理を行う開発スタイル。– 参考:http://ja.wikipedia.org/wiki/チケット駆動開発
『チケット駆動開発』の何が良いの?
●作業のINPUTとOUTPUTが紐づく。● その作業をしたのはなぜ?を説明し易くな
る。● このINPUTからどんなOUTPUTが出てき
たのか?が簡単にわかる。● 誰がどんなことしたのか?もよくわかる。
→自然とトレーサビリティが上がる。
チケット『駆動』? その1
● 「はじめにチケットありき。」● 「チケットなしの作業禁止。」
– チケットがない作業は闇作業。
● 「チケットなしのコミット禁止。」– チケットがないコミットは闇コミット。
● チケットにより作業のインプット≒原因≒「なぜ」を明確にする。● 作業説明のお供にチケットを。● 作業の過程で確認したこともチケットに
記録していく。
チケット『駆動』? その2
● プロジェクトの流れ。● リーダーは、作業をチケットとして登録。● メンバーは、チケットをサインアップ。● メンバーは、作業が完了したらチケットのス
テータスを「解決」に変更。● リーダーは、メンバーの成果物を確認し、
– Okならチケットのステータスを完了にして終了。
– Ngならまたメンバーに差し戻し。OKが出るまで繰り返す。
ふつう仕事はこんな流れ。
● INPUTを受け取り、
● PROCESSして、
● OUTPUTを出す。
PROCESSINPUT OUTPUT
もう少し補足すると
PROCESSINPUT OUTPUT
作業説明 完了報告
人
情報
リーダー メンバー リーダー レビュー
チケットコミット
バージョン管理ツールとチケットの連携
● チケット駆動開発では、OUTPUT(コミット)とINPUT(チケット)が紐付く。● コミットログに特定のキーワードを入れるこ
とにより、チケットと紐付けが可能。●明確に、かつ、記録として残る。
● チケット(INPUT)に対して、何を行ったか(コミット)。
● この変更(コミット)は、なぜ行ったのか(チケット)
● 高いトレーサビリティを簡単に実現。
画面:チケットからリビジョン参照
コミットメッセージにキーワードとチケットナンバーを書くと、Redmineが自動でチケットと紐付けてくれる。さらに、チケットのステータスまで変えてくれる。
画面:リポジトリブラウザ
画面:リビジョンからチケット参照
リビジョンから関連するチケットが紐づく。
高トレーサビリティを簡単に実現
● 「簡単」に● 例:1件の不具合対応のため、1つの設計書と2つのソースファイルと、2つのテストコードに変更が加わった、とかが幾つも発生すると大変。
● 不具合を記録したチケットから、関係するリビジョンのリンクをクリックすれば修正したファイルがどれとどれかすぐに分かる。
その他
『Redmine』にまつわる色々なこと。
Redmine導入の注意点
● 人重要!● ツールを入れれば解決するものでもない。● チケットを放置しないように日々確認&行
動する。朝会・夕会で確認すると良い。● そのようなチーム作りが重要。
● 最初はゲリラ活動で!● 最初は「チーム用の情報共有の場」兼「自分用タスク管理ツール」として始める。そしてだんだんと周りの人に広げていく。
以上
ご清聴ありがとうございました。