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.

Redmineの活用事例‐多様なプロジェクト管理に対するツールの適用

6,693 views

Published on

第12回Rxtstudy 2015/03/21開催にて発表した資料です

Published in: Software
  • Be the first to comment

Redmineの活用事例‐多様なプロジェクト管理に対するツールの適用

  1. 1. AVCテクノロジー株式会社 システム技術グループ 陸野 礼子 RxTStudy#12 「ITS活⽤最前線〜現場からの実践報告」
  2. 2. 1.はじめに 2.背景 3.事例1:検証プロジェクト 4.事例2:⼤規模組込みソフト開発プロジェクト 5.事例3:プロジェクト管理統合とメトリクス 6.まとめ 1.はじめに 2.背景 3.事例1:検証プロジェクト 4.事例2:⼤規模組込みソフト開発プロジェクト 5.事例3:プロジェクト管理統合とメトリクス 6.まとめ © Reiko Rikuno
  3. 3. ソフトウェア開発管理は、プロジェクトの目的や成果物に よってプロセスや管理⼿法が変化します。 プロジェクト管理のツールは数多く存在しますが、使いこな すとなると、ハードルが高くなりがち。 使いにくい! 私たちの 仕事のやり方に 合わせてくれ! 効率が 悪くなる! こんな項目、 意味あるの? © Reiko Rikuno
  4. 4. Redmineは、BTS(Bug Tracking System)として開発 されたオープンソフトのアプリケーションです。 障害管理だけでなく、タスク(作業)管理、情報共有も⾏ える汎⽤性が高いツールです。 その柔軟性を活⽤し、不具合管理やプロジェクトの進捗管理 など様々なプロジェクトに対応してきた事例をご紹介します。 Redmineのシンプルさ が良さそう! カスタマイズも (比較的)簡単そう! © Reiko Rikuno
  5. 5. 自分たちのプロジェクト(組織)に 合った管理ツールは何? Redmineはシンプルなツールであり、 カスタマイズも(比較的)簡単! プロジェクトの概要 規模 お悩みのポイント ODM商品検証プロジェクト 30名程度 顧客、ODM開発先、検証チームなど ステークホルダー間のコミュニケーションを 強化して、効率アップを図りたい。 商品開発:組込み系ソフ ト開発プロジェクト 100名程度 いろいろなツールを使ってきたが管理は 不⼗分。⼤規模開発のプロジェクト管 理がうまくできる⽅法はないか? 委託開発:組込み系ソフ ト開発プロジェクト 20名程度 以前からバグ管理としてRedmineを活 ⽤。新たに、顧客からメトリクス報告の 要求が出てきたので、プロジェクト管理 にリンクして、効率的に収集/分析がで きないか? © Reiko Rikuno
  6. 6. 【プロジェクト概要】 •顧客事業部が海外に発注したODM商品の検証プロジェクト 【課題】 ・顧客/海外メーカー/検証チーム(弊社)間のバグ情報を、 いかに効率的に共有できるか。(従来はexcelファイルで管理) 【アプローチ】 海外メーカー ソフト開発 Redmine (海外メーカー側 にて設置) 顧客 検証部門 品質保証 検証 AVCT 国内バグ管理 システム 仕様 報告 対策確認 仕様判断 © Reiko Rikuno
  7. 7. 【ワークフローのカスタマイズ】 【効果】 • 顧客事業部も含め関連部門全体でRedmineを 活⽤することにより、相互にリアルタイムなコミュ ニケーションを実現し、信頼関係の構築に⼤き な効果があった。 • メール/excelと比較すると、情報の記載漏れ、 確認漏れが減少し、バグ対策の加速化を 実現した。 <バグ管理> <仕様問合せ> © Reiko Rikuno
  8. 8. 【現場の声】 •やり取りがリアルタイムになったことで、修正が早くなったし、問い合わせ 対応も円滑に進んだ。 –Excelファイルだと、ファイルを開くというアクション自体が遅くなりがち。 •連絡ツールとしても有効 –メールの場合、題名が曖昧だったり、経緯がつかみにくかったり、⼤量になると把 握できなくなりがち –相⼿のメールアドレスがわからなくても、やり取りできる。 –誰に質問していいのか、わからない場合でも、受け先で振り分けてもらえるので 発信しやすい。 •今回はプラグインが活⽤できなかったので、環境を⾒直し、活⽤してい きたい •他ツールとの連携の効率化 © Reiko Rikuno
  9. 9. 【課題】 • 100名規模/多機種並⾏開発において、効率的に管理できる ツールはないのか? 【アプローチ①】 〜Redmineの導⼊〜 • 設計〜実装〜結合テストの作業をチケット化 • シンプルなワークフローによる実績更新の簡易化 • 進捗の確認 –チケット数のバーンダウンチャート –要件単位のチケット完了状況 ワークフローワークフロー バーンダウンバーンダウン チャート 要件別チケット 完了状況 Redmineの データから加工 © Reiko Rikuno
  10. 10. 【Redmine導⼊後の課題】 • 通常のWBS管理をRedmineに置き換えただけでは プロジェクトの進捗が⾒えにくい –個々の進捗はチェックしやすいが全体の動きとの連携が不⼗分 –チケットが多く(1PJ:約3,000枚)、管理しきれない! •開発体制に合わせたプロジェクト設定と、スクラムを導⼊して、 進捗の⾒える化を目指す! 開発プロセスの見直しに合わせてRedmineの使い方を工夫! © Reiko Rikuno
  11. 11. 【アプローチ②-1】 •開発体制とプロジェクト構成を合わせる ▼2/18 仕様DR ソフトプロジェクトL ユニットA ULULULUL ユニットB ULULULUL ユニットC ULULULUL ユニットD ULULULUL ユニットE ULULULUL ユニットF ULULULUL @@@開発プロジェクト ユニットA ユニットB ユニットC ユニットD ユニットE ユニットF サブプロジェクトを使って、階層化すること で、各ユニットでの進捗管理は5-15人の 管理しやすい人数に。プロジェクトリーダは 親プロジェクトで全体管理を。
  12. 12. 【アプローチ②-2】 • Agileのスクラムをカスタマイズした開発プロセスを構築し、 ゴール進捗をロードマップで管理。 ゴール設定で全体計画と 連携 →「TargetVersion」 親プロジェクトで設定し、 サブプロジェクトと共有 ロードマップにて、ゴール単 位での各ユニットの進捗を 週次で確認 Redmineデータを元に 進捗状況の可視化 12 © Reiko Rikuno
  13. 13. 1週間単位でゴールを設定し、各機能のゴールを決定。 例)機能Aのゴールはゴール#2 1週間の最初にその週の作業を確認(ゴール単位かつユ ニット単位で確認)、最後に振り返りを実施し、進捗・ 課題・全体計画との整合性を確認。 【アプローチ②-3】 •ゴールを1週間ごとに設定し、チケットの期間も1週間以内 で徹底。 ソフト 着手 仕様Fix 全機能 実装 ゴール #1ゴール #1 ゴール #2ゴール #2 ゴール #3ゴール #3 ・・・・・・ ゴール #Nゴール #N 機能A 機能B 機能C ゴール #4ゴール #4 全体設計 詳細設計 コーディング 単体テスト 結合テスト ゴールをまたぐタスクの場合は、 完了時の作業目標を明確にして チケットを分割 © Reiko Rikuno
  14. 14. 【Redmineでの工夫:具体例①】 ゴール名称を登録 →ゴールNo_機能名 期日を登録 (基本は週の最終稼動日) チケットごとにゴール を設定する ゴール設定ゴール設定 © Reiko Rikuno
  15. 15. 【Redmineでの工夫:具体例②】 進捗確認進捗確認 ゴールごとのチケット 完了状況の確認 ユニットごとのチケット状況 ※どこのユニットの作業が残って いるか簡単に把握できる ゴールは全体計画で調整 遅れが発生した場合は、期 日変更(スプリントの変 更)をするか、他に影響が ないか、ふりかえりで調整 © Reiko Rikuno
  16. 16. 【Redmineでの工夫:具体例③】 設定項目のカスタマイズ設定項目のカスタマイズ 「トラッカー」で⼤きく作業(プロセス)を 識別できるように設定 メトリクス収集⽤の項目などもカス タムフィールドで設定。 例)「実績工数」を追加し、チ ケットのクローズ時に未⼊⼒はエ ラーになるように設定。 © Reiko Rikuno
  17. 17. ユニット別に、要件別プロセス別の見積を実施 SPLとULとのレビューの中で、どんな手順で開発を 進めるのか双方のイメージ合わせ 見積りシートからチケットの (部分的)自動作成の仕組み作成 見積りシートからチケットの (部分的)自動作成の仕組み作成 見積りシートから Redmineのインポート 用CSVを自動作成 担当者、日程、バー ジョンなど必要情報を を入力 インポートデータをガント チャートに加工して 計画の妥当性をチェック インポート 17 【Redmineでの工夫:具体例④】 次のステップ © Reiko Rikuno
  18. 18. 「トラッカー」で定義した設計プロセスを 設定して、チケットを分類 トラッカーの設定トラッカーの設定 リアルタイムにバーンダウンチャートを 見ることで進捗状況の共有化を図る 進捗確認進捗確認 18 【Redmineでの工夫:具体例⑤】 © Reiko Rikuno
  19. 19. 【現場の声】 •サブプロジェクトでユニット進捗管理をすることで、コンパクトに⾒える化 され、開発メンバー間での作業負荷や進捗の調整がしやすくなった。 •1週間のゴール単位での進捗管理はわかりやすく、遅れた時の是正も 早めにアクション可能。 •作業が発生したらチケット発⾏というルールで、⼝頭やメールだけでの 作業依頼を削減することができた。 •ガントチャートが⾒にくい。計画策定時には、ガントチャートが便利なの に…。 →開発メンバーの⼿により、CSVファイルからガントチャートを 作成するエクセルマクロが作成され、展開。自発的な改善がしやすい。 © Reiko Rikuno
  20. 20. 弊社開発チーム 【課題】 • 従来は顧客側バグ管理システムと弊社バグ管理(Redmine利⽤、 構成管理ツールと連携)との⼆重管理によって効率が低下。 • 顧客への報告、監査対応のためメトリクス報告が必須。メトリクスが 効率的に取れて、リアルタイムにチェックできる仕組みはできないか? SVN(ソースリポジトリ) 顧客バグ管理 システム ①IT以降 バグ報告 ①バグ報告③メンバーがRedmineに⼿動で登録 ②内部結合 バグ報告 ④対策 ⑤対策結果⼿動更新 © Reiko Rikuno
  21. 21. 【アプローチ】 〜Redmineの機能拡張~ ①チケットの登録と更新作業の煩雑さの軽減、 ②⾒える化促進、③工数集計の為、下記5ツールを整備 名 称 機 能 種 別 A:チケット生成ツール 開発する機能リスト、仕様変更リストに基づき、開発⽤のタ スク(作業)を生成して、Redmineに流し込む為のCSV ファイルを生成する。 エクセルマクロ (インプットは、既存 の プ ラ グ イ ン を 活 ⽤) B:顧客側バグ管理シ ステム連携ツール 顧客が運⽤しているバグ管理ツールに登録された弊社担当 のバグをバグの修正タスクとしてRedmineに流し込む為の CSVファイルを生成する。 エクセルマクロ C:ガントチャート 作成ツール Redmineで管理されているタスクのチケットの進捗状況を 集約し、デフォルト機能より⾒やすくするために項目を追加 したガントチャートを作成する。 Redmineプラグイン D:メトリクス シート生成ツール Redmineで管理されているタスクと工数情報を紐付し、顧 客指定のメトリクスシートを生成する。 エクセルマクロ E:工数登録モニタツー ル Remineで管理されている複数のプロジェクトのタスクと工 数情報を紐付した上で、アカウントごと日別に集計し、エク セルファイルを出⼒する。 Redmineプラグイン
  22. 22. 弊社開発チーム 顧客バグ管理 システム インポート 開発作業とバグ対策 作業をタスクとしてプロ ジェクト管理下に置き 統合的に管理 リアルタイムな⾒える化 によりチェック強化 進捗更新・ 実績⼊⼒ 要件一覧 仕様変更一覧 A:チケット 生成 ツール B:バグ 管連携 ツール E:工数 登録 モニタツール D:メトリクス 生成ツール C:ガント チャート 作成ツール メトリクスシート (集計表) 顧客に報告 顧客 © Reiko Rikuno
  23. 23. 【工数モニタ画面】 • プロジェクトに属するメンバー全員の工数登録状況をチェック © Reiko Rikuno
  24. 24. 【ガントチャート改善】 © Reiko Rikuno
  25. 25. 【成果】 • ⼿動作業がツールで対応され、工数削減と転記ミス(必要な情報 の⽋落など)が無くなり、効率が向上。 • バグ管理+開発作業の進捗もRedmineで管理することになり、開 発メンバーが⾒るべきツールがほぼ一元化され、進捗遅れの是正や 個々の作業負荷の調整が的確にできるようになり、効率が向上。 • 機能別の工数収集を実現するために、機能をベースにしたWBSを 作成し、タスクとしてチケット化→工数登録を作業とリンクさせ、実績 収集率もアップ。 【今後の取組み】 • いったん登録されたバグ対策チケットと顧客側バグ管理システム間の 整合性を保つ為に、差分チェック機能と双⽅に更新内容を反映でき る機能の検討。 © Reiko Rikuno
  26. 26. • 開発現場ではそれぞれの開発プロセス、開発環境、開発 のやり⽅に合わせられる管理ツールが求められている。 Redmineは、導⼊が簡単、さらに、カスタマイズやPlugin を駆使することで、プロジェクトの様々なフェーズでの活⽤が 可能。 • Redmineでも他ツールでも、万能なツールはなかなか⾒ つかりません。ツールは単に道具でしかなく、あとは使う側の アイデアと工夫しだいで、使える/使えないかが決まる。 • 今後も、開発現場の課題を紐解き、現場に合わせた仕 組みを構築し、現場の目標を達成するための改善を支援 します! © Reiko Rikuno

×