Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

講演2 実例に基づくRedmine管理者入門 r2

9 495 vues

Publié le

2015/11/28 Redmine.tokyo presentation

Publié dans : Ingénierie
  • Soyez le premier à commenter

講演2 実例に基づくRedmine管理者入門 r2

  1. 1. 2015年11月28日 松谷 秀久(@mattani)
  2. 2.  カスタマイズ事例とノウハウ  Excelからのインポート  Redmine+Subversionを使いこなそう いずれも、ちょっとしたコツが必要です。 そのコツをお伝えします。
  3. 3.  ハンドルネーム @mattani  所属 NTTコムウェア(株)  担当業務 ◦ あるシステムの運用担当(SE)でRedmine管理者  Redmine歴 ◦ 約3年 ◦ Bitnami Redmineを利用。(今使っているのは3.0.3) ◦ ユーザ数80名。プロジェクト数 10~15 ◦ タスク管理、課題管理、インシデント管理、検証設備利用申請管理、工事管理 ◦ ヘルプデスク問合せ管理、脆弱性管理 他  利用しているプラグイン ◦ clipboard_image_paste ◦ redmine_comment_only ◦ redmine_importer ◦ redmine_information ◦ redmine_issue_templates 他
  4. 4.  私が行ったインシデント管理のカスタマイズ事例を ご紹介します  インシデントとは ◦ 商用システムで発生した申告や監視アラーム事象のこと ◦ すべてが問題とは限らないが、適切に対処しないと お客様クレームにつながります  Excelで管理すると・・・ ◦ だれがどこを変えたかわからない ◦ だれが何を判断して完了にしたのかわからない ◦ 更新頻度が遅くなり、書き忘れも多い
  5. 5.  状態遷移図 ◦ 最初に管理する対象の状態遷移図を書きます 新規 調査中 対処待ち 完了 調査着手 調査完了 対処完了 対処不要 再対処要 再調査要 対応が不十分な 場合を追加 完了 破棄 リーダが確認 リーダが確認 完了待ち リーダの確認を追加 完了の前に完了待ちを追加 保留 保留/保留解除 保留/保留解除 を追加 状態遷移図を書いた結果、インシデントの管理には「新規」、 「調査中」、「対処待ち」、「完了待ち」、「完了」、「破棄」、 「保留」の7つのステータスが必要
  6. 6.  チケットのステータス設定 ◦ 作成した状態遷移図に従ってステータスを設定します 既存のステータスで使わないも のは削除してもOK (使っているものは消さない) 必要に応じてステータスを作成 設定後は こんな感じ
  7. 7.  トラッカー設定 ◦ トラッカーはチケットの大分類 ◦ トラッカー毎に、ワークフローの定義や使用するカスタ ムフィールドを変えられる トラッカー「故障」では、 親チケット、予定工数を使わない のでチェックしない インシデント管理プロジェクトを選択 まだプロジェクトを作っていない場合は、 後で設定してもよい インシデント管理のワークフロー を識別するトラッカー「故障」を 作ります
  8. 8.  ワークフロー設定 ◦ 管理者はどのステータス間でも遷移できるようにする 管理者は、どんなス テータスにでも変更 できるようにします
  9. 9.  ワークフロー設定 ◦ 報告者は「完了」「破棄」はできないようにする 「完了」「破棄」にできな いようにします 「新規」にできる必要はないの で、チェックを外します
  10. 10.  カスタムフィールド設定 ◦ チケットに追加したいカスタムフィールドを追加します テキストの書式をチェック するとフィールド中でWiki フォーマットを使用可能 チケット一覧のフィルタと して使用する場合チェック 検索対象にしたい場合のみ チェック (性能低下につながるので 必要な場合のみ)
  11. 11.  よくある質問 プロジェクトでカスタムフィールドにチェック入れたのに チケット入力画面に表示されない  回答 トラッカーのカスタムフィールドもチェック入れたか? プロジェクトの設定で、使用するカ スタムフィールドにチェック トラッカーの設定でも、使用するカ スタムフィールドにチェック
  12. 12.  追加したカスタムフィールド例 カスタムフィールドを増やすのは、Excelでいうとカラムを増やすイメージ。 増やしすぎると煩雑なので、基本機能の注記も有効活用を! 名称 書式 テキストの書式 フィルタとして使用 検索対象 意味 申告者 テキスト - レ レ 申告者名 サービス影響有無 リスト - レ - サービス影響の有無 影響内容 長いテキスト レ レ レ 影響内容 影響ゲスト 長いテキスト レ レ レ 影響をうけるゲスト エスカレ有無 リスト - レ - 一次受付完結かエスカレしたか センタ名 リスト - レ - インシデントの発生したセンタ 調査・対応状況 長いテキスト レ レ レ 調査・対応状況 結果 長いテキスト レ レ レ 調査状況・結果 対処内容 長いテキスト レ レ レ 対処内容 備考 長いテキスト レ レ レ メモ
  13. 13.  親プロジェクトの設定 親プロジェクトの識別子 は後で作成するリポジト リと同じ名前にします 使わないモジュールは オフにします 使用するカスタムフィー ルドを選択します 親プロジェクトにチケッ トを発行できないように するためオフにします。
  14. 14.  子プロジェクトの設定 使わないモジュールはオフにします (リポジトリは親プロジェクトで管理 するのでオフ) プロダクト全体の子プロジェクトに しています 使用するカスタムフィールドをチェッ クします 親プロジェクトのメン バを引き継ぎます
  15. 15.  バージョンとロードマップ 新しいバージョン を作成すると・・ ロードマップも セットで作られます 親プロジェクトで作成 して、子プロジェクト に共有できます バージョン・ロード マップのWikiページに は、そのバージョンの 体制、計画などを記述 私の場合、四半期毎に インシデントの分析を するので四半期に対応 したバージョンを作っ ています
  16. 16.  グループとユーザ おすすめできない例 課題管理PJ Aさん(管理者) Bさん(報告者) Aさん(管理者) Bさん(報告者) Aさん(管理者) Bさん(報告者) Cさん(報告者)Cさん(報告者) Cさん(報告者) ・グループを使っていない ・子プロジェクトでユーザの継承を行っていない →ユーザと権限の管理が煩雑になる インシデント管理PJ 〇〇プロジェクト 課題管理PJインシデント管理PJ Aさん ○○_リーダG (管理者) ○○_運用G (報告者) Bさん Cさん 親プロジェクト の ユーザを継承 親プロジェクト の ユーザを継承 • グループを使うとまとめてユーザを登録できる • 権限の設定変更も容易 • 親プロジェクトのユーザ継承を行うと管理が楽 おすすめ例 〇〇プロジェクト
  17. 17.  まとめ ◦ まず管理対象を明確にして状態遷移図を書く ◦ 状態遷移図でわかったステータスを登録 ◦ ワークフローを識別するトラッカーを作成  私の経験上、トラッカー作り過ぎはNG(1~2/PJ) ◦ ワークフローは管理者用と報告者用  管理者は制限なし、報告者は必要最小限の制限をつける ◦ 親プロジェクトは子プロジェクトを束ねる  親プロジェクトにトラッカーは登録しない  リポジトリは親プロジェクトで作成 ◦ バージョンとロードマップはセットで作られる  見通しが良くなるのでなるべく作成する ◦ グループ作成で管理を省力化する
  18. 18.  現在のRedmineでは、インポートはプラグインが 必要です。 ◦ 次リリースされるRedmine3.2.0では、 標準機能でCSVインポートがサポートされるかも・・・  インポートプラグインは開発が活発です。 ◦ Redmine.JPの紹介(※1)によると、※2が近年活発に更新 されている、と紹介されていますが、こちらはまだ Redmine3.0に対応していないようです。 ◦ ※2からフォークした※3が2015/4月以降も活発に更新 されています。Redmine3.0以降に対応しています。 ※1 http://redmine.jp/faq/issue/csv/ ※2 https://github.com/zh/redmine_importer ※3 https://github.com/stateio/redmine_importer 以前はInternal Errorが良く出 て困った。 最近は安心。
  19. 19.  Redmine_importerプラグインのインストール ◦ Githubから、zipファイルをダウンロードして、redmineの pluginsフォルダに展開します。 名前はredmine_importerというフォルダ名にします。  bitnamiの場合 にredmine_importerを展開します。 ◦ 以下のコマンドでDBのマイグレーションを行います。 ◦ Redmineを再起動します。 ◦ Redmineの管理メニュー→プロジェクト→設定→モジュールか ら、モジュールを有効にします。 ◦ 管理メニュー→情報で、インストールされていることを確認。  インストール詳細はプラグインの指示に従ってくださ い。 bundle exec rake redmine:plugins:migrate RAILS_ENV=production /opt/redmine-X.X.X-X/apps/redmine/htdocs/plugins/
  20. 20.  Excelでインポート用データを準備 ◦ そのファイルをCSV形式で保存します 担当者を読み込む場合は、RedmineのIDにす る。 →上記の×は匿名ユーザになる 日付を読み込む場合は、YYYY-MM-DD形式 でないと読み込めない場合も。 (最近は改善された) × × 〇 × △ 〇 〇 × ×
  21. 21.  Redmineにインポート ◦ プロジェクト→インポートからアップロードします SJISを選択 作成したExcelファイルを選択
  22. 22.  各列のフィールドとの対応を指定します。 ◦ ExcelとRedmineのカラム名が同じ場合はデフォルトで対 応されています。 必須フィールドは必ず指定すること。 例)題名や必須にしたカスタムフィールド いろいろと読み込み時のオプションを指定できます 「未登録のユーザーは匿名ユーザーに~」を有効に しないと、未登録のユーザーがあるとInternal Errorが 発生します Excelのカラム情報 Redmineのカラム情 報
  23. 23.  インポート結果が表示されます ◦ 正しく読み込めた行数、エラーメッセージとそれに対応 する行の情報が表示されます 正しく処理された行数を表示 エラーメッセージを表示 失敗した行の情報
  24. 24.  まとめ ◦ 現在はRedmineのインポートはプラグインが必要 ◦ プラグインは開発が活発なので、最新のフォークを確認 してインストールする必要がある ◦ 担当者をインポートする場合は、Redmine IDを指定
  25. 25.  なぜgitでなくてSubversion? 集中型 分散型
  26. 26.  なぜgitでなくてSubversion? チーム全体での成果管理 チーム全体の成果管理 + 個人の構成管理 構成管理 対象 使用 ディスク量 集中リポジトリ:大 ローカルエリア:小~大 集中リポジトリ:大 ローカルリポジトリ:大 コミット 方法 集中リポジトリへのコミット ローカルコミットでテストし 集中リポジトリにコミット 私の場合、管理対象は作成資料や運用マニュアル(バイナリファイル) →ファイル間のマージはしないし、個人環境でのテストをする必要もない →ローカル領域にリポジトリを作る必要性がない。 →Subversionを選択
  27. 27.  RedmineとSubversionの認証連携について ◦ 認証連携させないと、Redmineのユーザが増えるたびに、 リポジトリのユーザ管理も必要。 ◦ 試行錯誤したノウハウをr-labsのWikiにまとめました。
  28. 28.  Pre-commit hook ◦ Subversionのコミットコメントに 「refs: #チケット番号」がないとコミット不可 ◦ これにより、「No Ticket, No work」を実現する ◦ カスタマイズ例は、こちらのサイト参照  Post-commit hook ◦ Post-commitで、Subversionのコミットと同時にRedmineに 反映する ◦ 「リポジトリ」タブをクリックしないと取り込まれない ◦ カスタマイズ例は、こちらのサイト参照
  29. 29.  まとめ ◦ ユーザ管理を楽にするために、RedmineとSubversionの認 証連携を設定 ◦ No Ticket, No workを実現する手段として、 Pre-commit hookを活用 ◦ Subversionのコミットと同時にRedmineにデータを反映す るために、Post-commit hookを活用
  30. 30.  カスタマイズ事例とノウハウ  Excelからのインポート  Redmine+Subversionを使いこなそう 参考にしていただければ幸いです。 ありがとうございました。

×