SlideShare una empresa de Scribd logo
1 de 35
RedmineのFAQとアンチパターン
〜親⼦チケットの功罪
2017/3/25
あきぴー@Redmine大阪
Copyright2017 akipii@XPJUG関西 1
自己紹介
• ハンドルネーム:@akipii
• 東京Redmine、Redmine大阪スタッフ
• 出版した著書
• 「Redmineによるタスクマネジメント実践技法」 (with 阪井さん)
• 「チケット駆動開発」 (with 阪井さん)
• 「Redmine超入門」(with redmine.tokyoスタッフ)
• 「Redmine 実践ガイド」 (with (株)アジャイルウェア)
Copyright2017 akipii@XPJUG関西 2
Redmineの現状
• Redmineが持つ「チケットやPJの階層は無制限」の特徴
はとても柔軟な機能
• ガントチャートと相性が良い
• タスクのブレイクダウンを親⼦チケットで直感的に表現できる
• WF型開発で始めた後でも、割り込みタスクを管理しやすい
• WF型開発や縦割り組織をRedmineへ直感的に適用しやすい
• 最近、親子チケットに関する質問が多い
• 親⼦チケットはすごく便利だが、ガントチャート画⾯で編集できない
• Redmineの仕様と業務内容がフィットしていない部分がある
• 古いバージョンでは、階層が深くなると遅くなる??
Copyright2017 akipii@XPJUG関西 3
Defect #23318: 大量の⼦チケットを持つチケットで
#lock_nested_set メソッドが遅い問題の改善
【例】親⼦チケットで予定・実績を分けて入⼒
Copyright2017 akipii@XPJUG関西 4
縦割り組織では、
親チケット=SEが予定入⼒、
⼦チケット=PGが実績入⼒
と分けて運用している
【メリット】ガントチャートと相性が良い
Copyright2017 akipii@XPJUG関西 5
MS ProjectのようにWBSを
ツリー構造で表示できる
【メリット】かんばんも相性が良い
Copyright2017 akipii@XPJUG関西 6
【第13回RxTStudy勉強会】Redmine BacklogsプラグインでScrum開発!
~Redmineでアジャイルに開発しよう
https://www.slideshare.net/akipii.oga/13rxtstudyredmine-backlogsscrumredmine
親チケット=ストーリーカード、
⼦チケット=タスクカード
と分けて運用できる
今⽇議論したいこと
最近よく聞かれるFAQやアンチパターンのうち、
「親⼦チケット」にフォーカスを当てて、紹介します。
その後、パネラーを交えて、
皆さんの経験に基づいて、
問題の本質やあるべき姿を議論をしてみたい。
Copyright2017 akipii@XPJUG関西 7
停滞したチケット
Copyright2017 akipii@XPJUG関西 8
名前名前名前名前 停滞したチケット停滞したチケット停滞したチケット停滞したチケット
頻出場所頻出場所頻出場所頻出場所 チケット管理チケット管理チケット管理チケット管理
症状と結果症状と結果症状と結果症状と結果 ・進捗・進捗・進捗・進捗90%のチケットが多いのチケットが多いのチケットが多いのチケットが多い
・課題や・課題や・課題や・課題やQAがあるためにチケットをがあるためにチケットをがあるためにチケットをがあるためにチケットをCloseできないできないできないできない
挿話証拠挿話証拠挿話証拠挿話証拠 「いつも進捗が「いつも進捗が「いつも進捗が「いつも進捗が90%のままだね」のままだね」のままだね」のままだね」
根本原因根本原因根本原因根本原因 ・作業の完了基準が不明確・作業の完了基準が不明確・作業の完了基準が不明確・作業の完了基準が不明確
・チケットの粒度が大きい・チケットの粒度が大きい・チケットの粒度が大きい・チケットの粒度が大きい
再構想解の再構想解の再構想解の再構想解の
プラクティスプラクティスプラクティスプラクティス
・チケットで分割統治・チケットで分割統治・チケットで分割統治・チケットで分割統治
・棚卸し・棚卸し・棚卸し・棚卸し
再構想による解決再構想による解決再構想による解決再構想による解決 ・残課題や別作業は、チケットを分割する・残課題や別作業は、チケットを分割する・残課題や別作業は、チケットを分割する・残課題や別作業は、チケットを分割する
・ステータスと進捗率を紐づける・ステータスと進捗率を紐づける・ステータスと進捗率を紐づける・ステータスと進捗率を紐づける
変種変種変種変種 ・肥大化したチケット・肥大化したチケット・肥大化したチケット・肥大化したチケット
・放置されたチケット・放置されたチケット・放置されたチケット・放置されたチケット
スタンプラリー
Copyright2017 akipii@XPJUG関西 9
名前名前名前名前 スタンプラリースタンプラリースタンプラリースタンプラリー
頻出場所頻出場所頻出場所頻出場所 ソフトウェア保守の変更管理プロセス、稟議申請ソフトウェア保守の変更管理プロセス、稟議申請ソフトウェア保守の変更管理プロセス、稟議申請ソフトウェア保守の変更管理プロセス、稟議申請
症状と結果症状と結果症状と結果症状と結果 ワークフローが複雑すぎて、チケットが停滞しているワークフローが複雑すぎて、チケットが停滞しているワークフローが複雑すぎて、チケットが停滞しているワークフローが複雑すぎて、チケットが停滞している
例:あるトラッカーには、ステータスが例:あるトラッカーには、ステータスが例:あるトラッカーには、ステータスが例:あるトラッカーには、ステータスが10個もある個もある個もある個もある
挿話証拠挿話証拠挿話証拠挿話証拠 「チケットを完了させるには、ステータスが多すぎるね」「チケットを完了させるには、ステータスが多すぎるね」「チケットを完了させるには、ステータスが多すぎるね」「チケットを完了させるには、ステータスが多すぎるね」
根本原因根本原因根本原因根本原因 1個のワークフローで複数の作業を完了させようとしている個のワークフローで複数の作業を完了させようとしている個のワークフローで複数の作業を完了させようとしている個のワークフローで複数の作業を完了させようとしている
再構想解の再構想解の再構想解の再構想解の
プラクティスプラクティスプラクティスプラクティス
・トラッカーのライフサイクルで分割統治・トラッカーのライフサイクルで分割統治・トラッカーのライフサイクルで分割統治・トラッカーのライフサイクルで分割統治
・サイクルタイム・サイクルタイム・サイクルタイム・サイクルタイム
再構想による再構想による再構想による再構想による
解決解決解決解決
・プロセスのフェーズごとに、トラッカーを使い分ける・プロセスのフェーズごとに、トラッカーを使い分ける・プロセスのフェーズごとに、トラッカーを使い分ける・プロセスのフェーズごとに、トラッカーを使い分ける
・ワークフローのリードタイム・ワークフローのリードタイム・ワークフローのリードタイム・ワークフローのリードタイム(チケット平均完了日数チケット平均完了日数チケット平均完了日数チケット平均完了日数)を短縮を短縮を短縮を短縮
化するように運用する化するように運用する化するように運用する化するように運用する
変種変種変種変種 ・放置されたチケット・放置されたチケット・放置されたチケット・放置されたチケット
・停滞したチケット・停滞したチケット・停滞したチケット・停滞したチケット(90%シンドロームシンドロームシンドロームシンドローム)
ITILのワークフローは複雑になりがち
各プロセスがチームや担当者に対応するので、ロールやステータスが多くなる
⇒プロセスごとに⼦チケットに分割した方が運用しやすい
Copyright2017 akipii@XPJUG関西 10
親⼦チケットにし過ぎる
Copyright2017 akipii@XPJUG関西 11
名前名前名前名前 親子チケットにし過ぎる親子チケットにし過ぎる親子チケットにし過ぎる親子チケットにし過ぎる
頻出場所頻出場所頻出場所頻出場所 タスク登録タスク登録タスク登録タスク登録
症状と結果症状と結果症状と結果症状と結果 個人の個人の個人の個人のToDoを子チケットで登録を子チケットで登録を子チケットで登録を子チケットで登録
他の人には不要なチケット他の人には不要なチケット他の人には不要なチケット他の人には不要なチケット
⇒⇒⇒⇒チケットが乱発されるチケットが乱発されるチケットが乱発されるチケットが乱発される
根本原因根本原因根本原因根本原因 チケットの粒度があまりにも細かすぎるチケットの粒度があまりにも細かすぎるチケットの粒度があまりにも細かすぎるチケットの粒度があまりにも細かすぎる
再構想による再構想による再構想による再構想による
解決解決解決解決
①チケットは他人と共有すべき作業内容に限定する①チケットは他人と共有すべき作業内容に限定する①チケットは他人と共有すべき作業内容に限定する①チケットは他人と共有すべき作業内容に限定する
②②②②TODOレベルは、チケットにチェックリストを追記するレベルは、チケットにチェックリストを追記するレベルは、チケットにチェックリストを追記するレベルは、チケットにチェックリストを追記する
⇒⇒⇒⇒issue_templateプラグインでチェックリストをテンプレートプラグインでチェックリストをテンプレートプラグインでチェックリストをテンプレートプラグインでチェックリストをテンプレート
化化化化
http://www.redmine.org/plugins/issue_templates
③③③③個人の個人の個人の個人のToDoは、プライベートチケットを使うは、プライベートチケットを使うは、プライベートチケットを使うは、プライベートチケットを使う
課題課題課題課題 無償の無償の無償の無償のcheckListプラグインはチェックリストを保持できないプラグインはチェックリストを保持できないプラグインはチェックリストを保持できないプラグインはチェックリストを保持できない
http://www.redmine.org/plugins/redmine_checklists
親チケットの属性が消える
Copyright2017 akipii@XPJUG関西 12
名前名前名前名前 親チケットの属性が消える親チケットの属性が消える親チケットの属性が消える親チケットの属性が消える
頻出場所頻出場所頻出場所頻出場所 WF型開発の案件の実績登録型開発の案件の実績登録型開発の案件の実績登録型開発の案件の実績登録
症状と結果症状と結果症状と結果症状と結果 ・親チケットに・親チケットに・親チケットに・親チケットにSEが開始予定日・終了予定日・予定工数を入力が開始予定日・終了予定日・予定工数を入力が開始予定日・終了予定日・予定工数を入力が開始予定日・終了予定日・予定工数を入力
・子チケットに・子チケットに・子チケットに・子チケットにPGが実績の開始日・終了日・自分で見積もった予定が実績の開始日・終了日・自分で見積もった予定が実績の開始日・終了日・自分で見積もった予定が実績の開始日・終了日・自分で見積もった予定
工数を入力工数を入力工数を入力工数を入力
⇒⇒⇒⇒親チケットの開始日・期日・予定工数が消えてしまう親チケットの開始日・期日・予定工数が消えてしまう親チケットの開始日・期日・予定工数が消えてしまう親チケットの開始日・期日・予定工数が消えてしまう
根本原因根本原因根本原因根本原因 ・・・・Redmineの仕様は「の仕様は「の仕様は「の仕様は「WBS 100%ルール」だから。ルール」だから。ルール」だから。ルール」だから。
・実際の・実際の・実際の・実際のWF型開発は「型開発は「型開発は「型開発は「WBS 100%ルール」で綺麗に運用できなルール」で綺麗に運用できなルール」で綺麗に運用できなルール」で綺麗に運用できな
い。い。い。い。
再構想再構想再構想再構想
による解決による解決による解決による解決
・・・・Redmineの設定画面で「子チケットから独立」を選択するの設定画面で「子チケットから独立」を選択するの設定画面で「子チケットから独立」を選択するの設定画面で「子チケットから独立」を選択する
・予定日・予定日・予定日・予定日or実績日の実績日の実績日の実績日のCFを別途作成するを別途作成するを別途作成するを別途作成する
課題課題課題課題 実際の実際の実際の実際のWF型開発で「型開発で「型開発で「型開発で「WBS 100%ルール」を放棄してよいのか?ルール」を放棄してよいのか?ルール」を放棄してよいのか?ルール」を放棄してよいのか?
「⼦チケットから独⽴」を選択する
Copyright2017 akipii@XPJUG関西 13
「親チケットの属性を
⼦チケットから独⽴」
を選択する。
Redmine 3.1新機能紹介: 親チケット
の値(優先度・期⽇など)を⼦チケットと連
動させない設定 | Redmine.JP Blog
http://blog.redmine.jp/articles/3
_1/parent-task-attributes-
independent/
親⼦チケットのステータス未連動
Copyright2017 akipii@XPJUG関西 14
名前名前名前名前 親子チケットのステータス未連動親子チケットのステータス未連動親子チケットのステータス未連動親子チケットのステータス未連動
頻出場所頻出場所頻出場所頻出場所 WF型開発の案件の実績登録型開発の案件の実績登録型開発の案件の実績登録型開発の案件の実績登録
症状と結果症状と結果症状と結果症状と結果 未完了のチケットが残っているのに、親チケットが完了できてし未完了のチケットが残っているのに、親チケットが完了できてし未完了のチケットが残っているのに、親チケットが完了できてし未完了のチケットが残っているのに、親チケットが完了できてし
まうまうまうまう
根本原因根本原因根本原因根本原因 WBS 100%ルールにルールにルールにルールにRedmineが完全に対応できてないが完全に対応できてないが完全に対応できてないが完全に対応できてない
再構想による再構想による再構想による再構想による
解決解決解決解決
Ver3.4で対応済みで対応済みで対応済みで対応済み
(Feature #10989: 未完了の子チケットを持つ親チケットのク未完了の子チケットを持つ親チケットのク未完了の子チケットを持つ親チケットのク未完了の子チケットを持つ親チケットのク
ローズを禁止ローズを禁止ローズを禁止ローズを禁止)
課題課題課題課題 実際の実際の実際の実際のWF型開発で、そこまでガチガチに運用してる?型開発で、そこまでガチガチに運用してる?型開発で、そこまでガチガチに運用してる?型開発で、そこまでガチガチに運用してる?
未完了の⼦チケットを持つ親チケットのクローズを禁止(Ver3.4)
Copyright2017 akipii@XPJUG関西 15
2016年11月のRedmine開発状況 | Redmine.JP Blog
http://blog.redmine.jp/articles/updates/2016/11/
⼦チケットが未完了
(例:解決)の場合、
親チケットで「完了」を
選択できない
親⼦チケットの階層が深すぎる
Copyright2017 akipii@XPJUG関西 16
名前名前名前名前 親子チケットの階層が深すぎる親子チケットの階層が深すぎる親子チケットの階層が深すぎる親子チケットの階層が深すぎる
頻出場所頻出場所頻出場所頻出場所 親子チケットは、機能別組織や一括請負契約にとてもマッチする親子チケットは、機能別組織や一括請負契約にとてもマッチする親子チケットは、機能別組織や一括請負契約にとてもマッチする親子チケットは、機能別組織や一括請負契約にとてもマッチする
①親チケットは設計部門①親チケットは設計部門①親チケットは設計部門①親チケットは設計部門/SEが予定入力が予定入力が予定入力が予定入力
②子チケットは製造部門②子チケットは製造部門②子チケットは製造部門②子チケットは製造部門/PGが実績入力が実績入力が実績入力が実績入力
症状と結果症状と結果症状と結果症状と結果 ・・・・ExcelののののWBSのようにのようにのようにのように5~~~~10階層まで作るが粒度がバラバラ階層まで作るが粒度がバラバラ階層まで作るが粒度がバラバラ階層まで作るが粒度がバラバラ
・深い階層のチケットは、ガントチャートでも見通しが悪い・深い階層のチケットは、ガントチャートでも見通しが悪い・深い階層のチケットは、ガントチャートでも見通しが悪い・深い階層のチケットは、ガントチャートでも見通しが悪い
・チケット階層が深いと、ロックがかかる可能性がある・チケット階層が深いと、ロックがかかる可能性がある・チケット階層が深いと、ロックがかかる可能性がある・チケット階層が深いと、ロックがかかる可能性がある
(Defect #23318: 大量の子チケットを持つチケットで大量の子チケットを持つチケットで大量の子チケットを持つチケットで大量の子チケットを持つチケットで #lock_nested_set メソッドが遅いメソッドが遅いメソッドが遅いメソッドが遅い
問題の改善問題の改善問題の改善問題の改善)
根本原因根本原因根本原因根本原因 ・・・・WBS 100%ルールを厳格に運用するとデメリットが大きくなるルールを厳格に運用するとデメリットが大きくなるルールを厳格に運用するとデメリットが大きくなるルールを厳格に運用するとデメリットが大きくなる
・親子チケットは組織構造に関係する・親子チケットは組織構造に関係する・親子チケットは組織構造に関係する・親子チケットは組織構造に関係する
課題課題課題課題 ①①①①Redmineで深い階層の親子チケットを一括インポートしたいで深い階層の親子チケットを一括インポートしたいで深い階層の親子チケットを一括インポートしたいで深い階層の親子チケットを一括インポートしたい
②ガントチャート以外で②ガントチャート以外で②ガントチャート以外で②ガントチャート以外でWBS漏れを検知したい漏れを検知したい漏れを検知したい漏れを検知したい
他の問題他の問題他の問題他の問題 RedmineののののPJの階層はどこまで深くするか?の階層はどこまで深くするか?の階層はどこまで深くするか?の階層はどこまで深くするか?
WF型開発の工程はどこにマッピングするか?
Copyright2017 akipii@XPJUG関西 17
質問質問質問質問 WF型開発の工程は型開発の工程は型開発の工程は型開発の工程はRedmineのどこにマッピングするか?のどこにマッピングするか?のどこにマッピングするか?のどこにマッピングするか?
頻出場所頻出場所頻出場所頻出場所 WF型開発案件の計画登録型開発案件の計画登録型開発案件の計画登録型開発案件の計画登録
根本原因根本原因根本原因根本原因 製造業の「工程」と製造業の「工程」と製造業の「工程」と製造業の「工程」とSW開発の「工程」を混同している開発の「工程」を混同している開発の「工程」を混同している開発の「工程」を混同している
⇒⇒⇒⇒工程の役割と工程の役割と工程の役割と工程の役割とRedmineの機能のの機能のの機能のの機能のFG分析が不十分分析が不十分分析が不十分分析が不十分
回答回答回答回答 ・・・・Redmineではではではでは6種類の方法がある種類の方法がある種類の方法がある種類の方法がある
①トラッカー①トラッカー①トラッカー①トラッカー
②②②②PJ
③バージョン③バージョン③バージョン③バージョン
④親チケット④親チケット④親チケット④親チケット
⑤カテゴリ⑤カテゴリ⑤カテゴリ⑤カテゴリ
⑥カスタムフィールド⑥カスタムフィールド⑥カスタムフィールド⑥カスタムフィールド
・期限が過ぎたタスクは、工程で管理しない方が良い・期限が過ぎたタスクは、工程で管理しない方が良い・期限が過ぎたタスクは、工程で管理しない方が良い・期限が過ぎたタスクは、工程で管理しない方が良い
関連する関連する関連する関連する
課題課題課題課題
業務は業務は業務は業務はRedmineのどこにマッピングするか?のどこにマッピングするか?のどこにマッピングするか?のどこにマッピングするか?
工程とRedmine機能の比較評価
Copyright2017 akipii@XPJUG関西 18
No Redmineの機能の機能の機能の機能 評価評価評価評価 評価理由評価理由評価理由評価理由 備考備考備考備考
1 トラッカートラッカートラッカートラッカー ☓☓☓☓ 経験上、トラッカーが無造経験上、トラッカーが無造経験上、トラッカーが無造経験上、トラッカーが無造
作に増えて破綻する作に増えて破綻する作に増えて破綻する作に増えて破綻する
例:基本設計、詳細設計、例:基本設計、詳細設計、例:基本設計、詳細設計、例:基本設計、詳細設計、
開発、単体テスト開発、単体テスト開発、単体テスト開発、単体テスト
2 PJ ☓☓☓☓ 経験上、経験上、経験上、経験上、PJの終了日の終了日の終了日の終了日
が不明になるので、破が不明になるので、破が不明になるので、破が不明になるので、破
綻する綻する綻する綻する
工程単位に契約やチーム工程単位に契約やチーム工程単位に契約やチーム工程単位に契約やチーム
がががが異なる場合は有効異なる場合は有効異なる場合は有効異なる場合は有効
例:設計・テスト=自社、例:設計・テスト=自社、例:設計・テスト=自社、例:設計・テスト=自社、
開発=外部ベンダー開発=外部ベンダー開発=外部ベンダー開発=外部ベンダー
3 バージョンバージョンバージョンバージョン △△△△ 期限をリリース日や納期期限をリリース日や納期期限をリリース日や納期期限をリリース日や納期
に読み替える。に読み替える。に読み替える。に読み替える。
ロードマップやガントチャートロードマップやガントチャートロードマップやガントチャートロードマップやガントチャート
で管理しやすい。で管理しやすい。で管理しやすい。で管理しやすい。
経験上、障害多発のたび経験上、障害多発のたび経験上、障害多発のたび経験上、障害多発のたび
ににににReOpenされてしまう。されてしまう。されてしまう。されてしまう。
4 親チケット親チケット親チケット親チケット △△△△ ガントチャートで管理しやガントチャートで管理しやガントチャートで管理しやガントチャートで管理しや
すいすいすいすい
深い階層のチケットは保深い階層のチケットは保深い階層のチケットは保深い階層のチケットは保
守しにくい守しにくい守しにくい守しにくい
5 カテゴリカテゴリカテゴリカテゴリ △△△△ PJ単位で自由に設定単位で自由に設定単位で自由に設定単位で自由に設定
できるできるできるできる
子子子子PJに継承されないので、に継承されないので、に継承されないので、に継承されないので、
同期させるのが面倒同期させるのが面倒同期させるのが面倒同期させるのが面倒
6 カスタムフィールドカスタムフィールドカスタムフィールドカスタムフィールド △△△△ 障害管理でよく使われ障害管理でよく使われ障害管理でよく使われ障害管理でよく使われ
るるるる
例:発見した工程、検出す例:発見した工程、検出す例:発見した工程、検出す例:発見した工程、検出す
べき工程べき工程べき工程べき工程
WBSはどう作る?
Copyright2017 akipii@XPJUG関西 19
質問質問質問質問 WBSは工程単位は工程単位は工程単位は工程単位 or 機能単位のどちらで作ると良いのか?機能単位のどちらで作ると良いのか?機能単位のどちらで作ると良いのか?機能単位のどちらで作ると良いのか?
頻出場所頻出場所頻出場所頻出場所 親子チケット登録親子チケット登録親子チケット登録親子チケット登録
症状と結果症状と結果症状と結果症状と結果 チーム構成や作業者の役割とチーム構成や作業者の役割とチーム構成や作業者の役割とチーム構成や作業者の役割とWBSが調和していないが調和していないが調和していないが調和していない
⇒⇒⇒⇒メンバーが混乱した結果、チケットが放置されやすいメンバーが混乱した結果、チケットが放置されやすいメンバーが混乱した結果、チケットが放置されやすいメンバーが混乱した結果、チケットが放置されやすい
根本原因根本原因根本原因根本原因 WBSはプロジェクト組織を規定するため、混乱するはプロジェクト組織を規定するため、混乱するはプロジェクト組織を規定するため、混乱するはプロジェクト組織を規定するため、混乱する (※※※※1)
回答回答回答回答 ①工程単位は、プロセス中心型の①工程単位は、プロセス中心型の①工程単位は、プロセス中心型の①工程単位は、プロセス中心型のWBSやチーム構成になる。やチーム構成になる。やチーム構成になる。やチーム構成になる。
モジュール間の関連性が強くて、全体が密結合のシステム。モジュール間の関連性が強くて、全体が密結合のシステム。モジュール間の関連性が強くて、全体が密結合のシステム。モジュール間の関連性が強くて、全体が密結合のシステム。
②機能単位は、成果物中心型の②機能単位は、成果物中心型の②機能単位は、成果物中心型の②機能単位は、成果物中心型のWBSやチーム構成になる。やチーム構成になる。やチーム構成になる。やチーム構成になる。
既存システムに新機能を順次リリースするシステム。既存システムに新機能を順次リリースするシステム。既存システムに新機能を順次リリースするシステム。既存システムに新機能を順次リリースするシステム。
⇒⇒⇒⇒システムの特徴、チーム構成に合致したシステムの特徴、チーム構成に合致したシステムの特徴、チーム構成に合致したシステムの特徴、チーム構成に合致したWBSに合わせる。に合わせる。に合わせる。に合わせる。
⇒⇒⇒⇒組織は組織は組織は組織はWBSに従う。に従う。に従う。に従う。
アーキテクチャは組織に従う。アーキテクチャは組織に従う。アーキテクチャは組織に従う。アーキテクチャは組織に従う。
関連情報関連情報関連情報関連情報 ※※※※1. WBSはプロジェクト組織を規定するWBSはプロジェクト組織を規定するWBSはプロジェクト組織を規定するWBSはプロジェクト組織を規定する : タイム・コンサルタンタイム・コンサルタンタイム・コンサルタンタイム・コンサルタン
トの日誌からトの日誌からトの日誌からトの日誌から
http://brevis.exblog.jp/19096066
WBSによるプロセスの違い
Copyright2017 akipii@XPJUG関西 20
①工程単位
⇒WBSが
プロセス中心
設計 開発 テスト
②機能単位
⇒WBSが
成果物中心
機能A
機能B
機能C
WBSによる組織の違い
Copyright2017 akipii@XPJUG関西 21
PM
設計PL 開発PL テストPL
SE1
SE2
SE3
PG1
PG2
PG3
担当者1
担当者2
担当者3
PM
機能A 機能B 機能C
SE1
PG1
担当者1
SE2
PG2
担当者2
SE3
PG3
担当者3
①工程単位
⇒プロセス中心の組織
(機能別組織)
②機能単位
⇒成果物中心の組織
(フィーチャーチーム)
チケットの棚卸しがやりにくい
Copyright2017 akipii@XPJUG関西 22
名前名前名前名前 チケットの棚卸しがやりにくいチケットの棚卸しがやりにくいチケットの棚卸しがやりにくいチケットの棚卸しがやりにくい
頻出場所頻出場所頻出場所頻出場所 チケットの棚卸しチケットの棚卸しチケットの棚卸しチケットの棚卸し
症状と結果症状と結果症状と結果症状と結果 チケット一覧で棚卸しを頑張ろうして詰まるチケット一覧で棚卸しを頑張ろうして詰まるチケット一覧で棚卸しを頑張ろうして詰まるチケット一覧で棚卸しを頑張ろうして詰まる
根本原因根本原因根本原因根本原因 チケットの優先順位付けができていないチケットの優先順位付けができていないチケットの優先順位付けができていないチケットの優先順位付けができていない
再構想による再構想による再構想による再構想による
解決解決解決解決
①チケットの優先度を設定する①チケットの優先度を設定する①チケットの優先度を設定する①チケットの優先度を設定する
②先行・後続の関連を付ける②先行・後続の関連を付ける②先行・後続の関連を付ける②先行・後続の関連を付ける
③バージョンを設定してロードマップ画面を使う③バージョンを設定してロードマップ画面を使う③バージョンを設定してロードマップ画面を使う③バージョンを設定してロードマップ画面を使う
⇒⇒⇒⇒Redmineの基本思想は、ロードマップ画面でチケットをの基本思想は、ロードマップ画面でチケットをの基本思想は、ロードマップ画面でチケットをの基本思想は、ロードマップ画面でチケットを
取捨選択する発想。取捨選択する発想。取捨選択する発想。取捨選択する発想。
④④④④Default Custom Queryプラグインを使うプラグインを使うプラグインを使うプラグインを使う
(Feature #7360: Issue Custom Query: Default Query)
課題課題課題課題 Redmineのロードマップ画面を「チケットの並び順が作業順序のロードマップ画面を「チケットの並び順が作業順序のロードマップ画面を「チケットの並び順が作業順序のロードマップ画面を「チケットの並び順が作業順序
である」仕様にしたい。である」仕様にしたい。である」仕様にしたい。である」仕様にしたい。
(Feature #22802: バージョン内のチケットをドラッグ&ドロップで並べ替えバージョン内のチケットをドラッグ&ドロップで並べ替えバージョン内のチケットをドラッグ&ドロップで並べ替えバージョン内のチケットをドラッグ&ドロップで並べ替え)
Copyright2017 akipii@XPJUG関西 23
【再掲】棚卸しとVelocity
RedmineのFAQとアンチパターン集
https://www.slideshare.net/akipii.oga/redminefaq
棚卸しの対応方法の比較評価
Copyright2017 akipii@XPJUG関西 24
No 対応方法・暫定策対応方法・暫定策対応方法・暫定策対応方法・暫定策 評価評価評価評価 評価理由評価理由評価理由評価理由
1 チケットの優先度を設定するチケットの優先度を設定するチケットの優先度を設定するチケットの優先度を設定する ☓☓☓☓ なる早が増えるなる早が増えるなる早が増えるなる早が増える
2 先行・後続の関連を付ける先行・後続の関連を付ける先行・後続の関連を付ける先行・後続の関連を付ける ☓☓☓☓ チケット操作が複雑。チケット操作が複雑。チケット操作が複雑。チケット操作が複雑。
ガントチャート画面で編集できなガントチャート画面で編集できなガントチャート画面で編集できなガントチャート画面で編集できな
い。い。い。い。
3 バージョンを設定するバージョンを設定するバージョンを設定するバージョンを設定する △△△△ チケット枚数が増えると結局、チチケット枚数が増えると結局、チチケット枚数が増えると結局、チチケット枚数が増えると結局、チ
ケットが溢れる。ケットが溢れる。ケットが溢れる。ケットが溢れる。
本来は、チケットの並び順で優本来は、チケットの並び順で優本来は、チケットの並び順で優本来は、チケットの並び順で優
先度を付けたい。先度を付けたい。先度を付けたい。先度を付けたい。
(Feature #22802: バージョン内のチケットバージョン内のチケットバージョン内のチケットバージョン内のチケット
をドラッグ&ドロップで並べ替えをドラッグ&ドロップで並べ替えをドラッグ&ドロップで並べ替えをドラッグ&ドロップで並べ替え)
4 Default Custom Query
プラグインを使うプラグインを使うプラグインを使うプラグインを使う
△△△△ チケット一覧の初期表示を、チケット一覧の初期表示を、チケット一覧の初期表示を、チケット一覧の初期表示を、
優先度が高い条件のクエリで表優先度が高い条件のクエリで表優先度が高い条件のクエリで表優先度が高い条件のクエリで表
示する。示する。示する。示する。
(Feature #7360: チケット一覧にデフォルトのカスタチケット一覧にデフォルトのカスタチケット一覧にデフォルトのカスタチケット一覧にデフォルトのカスタ
ムクエリを適用ムクエリを適用ムクエリを適用ムクエリを適用)
【課題】バージョン内のチケットをドラッグ&ドロップで並べ替え
Copyright2017 akipii@XPJUG関西 25
2016年9月のRedmine開発状況 | Redmine.JP Blog
http://blog.redmine.jp/articles/updates/2016/09/
Feature #22802: バージョン内のチケットをドラッグ&ドロップで並べ替え
ロードマップ画⾯で、
リリース計画を考えながら、
チケットの順序をドラッグ&
ドロップで自由に変更できる
⇒
Scrumのプロダクトバックログ
のような操作が可能になる
【課題】 Default Custom Queryプラグイン
Copyright2017 akipii@XPJUG関西 26
2016年4月のRedmine開発状況 | Redmine.JP Blog
http://blog.redmine.jp/articles/updates/2016/04/
Feature #7360: Issue Custom Query: Default Query
PJごとに、指定したトクエリで
チケット一覧画⾯に初期表示できる。
PJごとに、指定したクエリで
チケット一覧画⾯に初期表示できる。
最もウケた棚卸し方法
⾯白すぎる。RT @NAGAYASU_Shinya:
Redmineにて
塩漬けチケットがしぬほどある部署にいたとき、
ついカッとなって、ここ1ヶ月更新のないチケットを
一気に却下にしたったことある
……すごい怒られた、
そして、別に、業務になんの支障もなかった。
Copyright2017 akipii@XPJUG関西 27
https://twitter.com/akipii/status/840131096364822528
ガントチャートとかんばんの使い分けは?
Copyright2017 akipii@XPJUG関西 28
質問質問質問質問 ガントチャートとかんばんの使い分けは?ガントチャートとかんばんの使い分けは?ガントチャートとかんばんの使い分けは?ガントチャートとかんばんの使い分けは?
頻出場所頻出場所頻出場所頻出場所 作業のリードタイムが異なる業務や組織が混在する作業のリードタイムが異なる業務や組織が混在する作業のリードタイムが異なる業務や組織が混在する作業のリードタイムが異なる業務や組織が混在する
例:ハード屋さんは、ガントチャートが使いたい例:ハード屋さんは、ガントチャートが使いたい例:ハード屋さんは、ガントチャートが使いたい例:ハード屋さんは、ガントチャートが使いたい
例:アジャイル屋さんは、かん例:アジャイル屋さんは、かん例:アジャイル屋さんは、かん例:アジャイル屋さんは、かんばんをばんをばんをばんを使いたい使いたい使いたい使いたい
根本原因根本原因根本原因根本原因 作業のリードタイムが異なる作業のリードタイムが異なる作業のリードタイムが異なる作業のリードタイムが異なる
回答回答回答回答 ①ガントチャート①ガントチャート①ガントチャート①ガントチャート
a)リードタイムが長い場合に有効。リードタイムが長い場合に有効。リードタイムが長い場合に有効。リードタイムが長い場合に有効。
b)親子チケットで階層化すると見やすい。親子チケットで階層化すると見やすい。親子チケットで階層化すると見やすい。親子チケットで階層化すると見やすい。
②かんばん②かんばん②かんばん②かんばん
a)リードタイムが短い場合に有効。リードタイムが短い場合に有効。リードタイムが短い場合に有効。リードタイムが短い場合に有効。
b)ステータスをどんどん変えて、サクサク流す。ステータスをどんどん変えて、サクサク流す。ステータスをどんどん変えて、サクサク流す。ステータスをどんどん変えて、サクサク流す。
課題課題課題課題 ①ガントチャート:①ガントチャート:①ガントチャート:①ガントチャート:
a)進捗率の運用ルールを決めておく。進捗率の運用ルールを決めておく。進捗率の運用ルールを決めておく。進捗率の運用ルールを決めておく。
②かんばん:②かんばん:②かんばん:②かんばん:
a)リードタイムが長い作業は遅れているように見える。リードタイムが長い作業は遅れているように見える。リードタイムが長い作業は遅れているように見える。リードタイムが長い作業は遅れているように見える。
b)未リリースの要件は未リリースの要件は未リリースの要件は未リリースの要件はPBLで別管理する。で別管理する。で別管理する。で別管理する。
その他の
アンチパターン
Copyright2017 akipii@XPJUG関西 29
野良Redmineが社内に溢れる
Copyright2017 akipii@XPJUG関西 30
名前名前名前名前 野良野良野良野良Redmineが社内に溢れるが社内に溢れるが社内に溢れるが社内に溢れる
別名別名別名別名 闇闇闇闇Redmine
症状と結果症状と結果症状と結果症状と結果 ・会社標準の・会社標準の・会社標準の・会社標準のRedmineは使いにくいは使いにくいは使いにくいは使いにくい
・別チームの・別チームの・別チームの・別チームのRedmineは特定は特定は特定は特定PJに特化されているに特化されているに特化されているに特化されている
・運用が拡大すると、運用ルール策定が追いつかない・運用が拡大すると、運用ルール策定が追いつかない・運用が拡大すると、運用ルール策定が追いつかない・運用が拡大すると、運用ルール策定が追いつかない
根本原因根本原因根本原因根本原因 ・大規模な組織で多様な業務を、一つの・大規模な組織で多様な業務を、一つの・大規模な組織で多様な業務を、一つの・大規模な組織で多様な業務を、一つのRedmineインスタンスでインスタンスでインスタンスでインスタンスで
対応できるか?対応できるか?対応できるか?対応できるか?
・組織ごと・組織ごと・組織ごと・組織ごと/業務ごとに業務ごとに業務ごとに業務ごとにRedmineを作りたい意図があるを作りたい意図があるを作りたい意図があるを作りたい意図がある
再構想による再構想による再構想による再構想による
解決解決解決解決
・トップダウンで・トップダウンで・トップダウンで・トップダウンでRedmineを1個に統一するを1個に統一するを1個に統一するを1個に統一する
⇒⇒⇒⇒Redmine事務局を設ける・運用ルールを標準化し推進事務局を設ける・運用ルールを標準化し推進事務局を設ける・運用ルールを標準化し推進事務局を設ける・運用ルールを標準化し推進
・運用は柔軟に行う・運用は柔軟に行う・運用は柔軟に行う・運用は柔軟に行う
⇒⇒⇒⇒セキュリティ面で複数のセキュリティ面で複数のセキュリティ面で複数のセキュリティ面で複数のRedmineインスタンスはありうるインスタンスはありうるインスタンスはありうるインスタンスはありうる
課題課題課題課題 ①複数の①複数の①複数の①複数のRedmineインスタンスを統合できるか?インスタンスを統合できるか?インスタンスを統合できるか?インスタンスを統合できるか?
QA #247: 複数の複数の複数の複数のRedmineサーバを統合したいサーバを統合したいサーバを統合したいサーバを統合したい - Unofficial Redmine Cooking - redmine.Tokyo
https://redmine.tokyo/issues/247
②②②②Redmineインスタンス同士でチケットを関連付けたいインスタンス同士でチケットを関連付けたいインスタンス同士でチケットを関連付けたいインスタンス同士でチケットを関連付けたい
⇒⇒⇒⇒リンク型リンク型リンク型リンク型CFを使うを使うを使うを使う
まとめ
Copyright2017 akipii@XPJUG関西 31
まとめ
• Redmineの柔軟な機能が災いしている
• メリット①:チケットやPJの階層は無限に作れる
• メリット②:ワークフローやカスタム項目をたくさん作れる
• ⇒業務の特徴とRedmine運用のFG分析を⾏っておく
• チケット管理はアジャイル開発のノウハウが向く
• 深い親⼦チケットは保守しにくい
• サクサク流れるフローを重視した方が運用しやすい
• 問題は、運用ルールなのか、Redmineの機能不⾜
なのか、を⾒極める
• 運用ルールを標準化して、運用でカバーするのか
• 不⾜した機能はRedmineを機能拡張するのか
Copyright2017 akipii@XPJUG関西 32
Redmineに残された他の課題
• チケット管理をより使いやすくするUI改善
• 例:ロードマップ画⾯のソート順、PJ一覧画⾯レイアウト
• 置き去りにされた画⾯の機能改善
• 例:ロードマップ、⽂書、ファイル管理、カレンダー
• チケット枚数に伴う性能改善
• 例:全⽂検索
• 多様な組織や業務に対応する運用ルール策定
• コミュニティでRedmineガイドラインを作りたい
Copyright2017 akipii@XPJUG関西 33
換言すれば、
Redmineは成⻑の余地がまだまだある
copyright2017akipii@XPJUG関西 34
ご清聴
ありがとうございました
copyright2017 akipii@XPJUG関西 35
【独り言】
Redmineを
LinuxやRubyのような
永続的なOSSコミュニティにしたい

Más contenido relacionado

Destacado

Redmineを活用したプロジェクトマネジメント教育について(ダイジェスト版)
Redmineを活用したプロジェクトマネジメント教育について(ダイジェスト版)Redmineを活用したプロジェクトマネジメント教育について(ダイジェスト版)
Redmineを活用したプロジェクトマネジメント教育について(ダイジェスト版)Hirofumi Kadoya
 
View Customize Pluginで出来ること
View Customize Pluginで出来ることView Customize Pluginで出来ること
View Customize Pluginで出来ることonozaty
 
ある工場のRedmine画面カスタム【View customize plugin 活用例】
ある工場のRedmine画面カスタム【View customize plugin 活用例】ある工場のRedmine画面カスタム【View customize plugin 活用例】
ある工場のRedmine画面カスタム【View customize plugin 活用例】Kohei Nakamura
 
View customize pluginを使いこなす
View customize pluginを使いこなすView customize pluginを使いこなす
View customize pluginを使いこなすonozaty
 
ある工場はこれでRedmineバージョンアップを決意した
ある工場はこれでRedmineバージョンアップを決意したある工場はこれでRedmineバージョンアップを決意した
ある工場はこれでRedmineバージョンアップを決意したKohei Nakamura
 
講演1 redmineの簡易crmとしての活用事例r2
講演1 redmineの簡易crmとしての活用事例r2講演1 redmineの簡易crmとしての活用事例r2
講演1 redmineの簡易crmとしての活用事例r2Hidehisa Matsutani
 
Redmineのバージョンアップに追従していくための一工夫
Redmineのバージョンアップに追従していくための一工夫Redmineのバージョンアップに追従していくための一工夫
Redmineのバージョンアップに追従していくための一工夫Go Maeda
 
Unofficial Redmine Cooking 闇鍋_デモ環境への発展
Unofficial Redmine Cooking 闇鍋_デモ環境への発展Unofficial Redmine Cooking 闇鍋_デモ環境への発展
Unofficial Redmine Cooking 闇鍋_デモ環境への発展Yuuki Nara
 
RedmineのFAQとアンチパターン集
RedmineのFAQとアンチパターン集RedmineのFAQとアンチパターン集
RedmineのFAQとアンチパターン集akipii Oga
 
はじめる! Redmine (2015)
はじめる! Redmine (2015)はじめる! Redmine (2015)
はじめる! Redmine (2015)Go Maeda
 
Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.
Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.
Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.Kuniharu(州晴) AKAHANE(赤羽根)
 
20171117 redminetokyo13
20171117 redminetokyo1320171117 redminetokyo13
20171117 redminetokyo13Yukiya Hayashi
 
「Redmineの運用パターン集~私に聞くな、チケットシステムに聞け」
「Redmineの運用パターン集~私に聞くな、チケットシステムに聞け」「Redmineの運用パターン集~私に聞くな、チケットシステムに聞け」
「Redmineの運用パターン集~私に聞くな、チケットシステムに聞け」akipii Oga
 

Destacado (13)

Redmineを活用したプロジェクトマネジメント教育について(ダイジェスト版)
Redmineを活用したプロジェクトマネジメント教育について(ダイジェスト版)Redmineを活用したプロジェクトマネジメント教育について(ダイジェスト版)
Redmineを活用したプロジェクトマネジメント教育について(ダイジェスト版)
 
View Customize Pluginで出来ること
View Customize Pluginで出来ることView Customize Pluginで出来ること
View Customize Pluginで出来ること
 
ある工場のRedmine画面カスタム【View customize plugin 活用例】
ある工場のRedmine画面カスタム【View customize plugin 活用例】ある工場のRedmine画面カスタム【View customize plugin 活用例】
ある工場のRedmine画面カスタム【View customize plugin 活用例】
 
View customize pluginを使いこなす
View customize pluginを使いこなすView customize pluginを使いこなす
View customize pluginを使いこなす
 
ある工場はこれでRedmineバージョンアップを決意した
ある工場はこれでRedmineバージョンアップを決意したある工場はこれでRedmineバージョンアップを決意した
ある工場はこれでRedmineバージョンアップを決意した
 
講演1 redmineの簡易crmとしての活用事例r2
講演1 redmineの簡易crmとしての活用事例r2講演1 redmineの簡易crmとしての活用事例r2
講演1 redmineの簡易crmとしての活用事例r2
 
Redmineのバージョンアップに追従していくための一工夫
Redmineのバージョンアップに追従していくための一工夫Redmineのバージョンアップに追従していくための一工夫
Redmineのバージョンアップに追従していくための一工夫
 
Unofficial Redmine Cooking 闇鍋_デモ環境への発展
Unofficial Redmine Cooking 闇鍋_デモ環境への発展Unofficial Redmine Cooking 闇鍋_デモ環境への発展
Unofficial Redmine Cooking 闇鍋_デモ環境への発展
 
RedmineのFAQとアンチパターン集
RedmineのFAQとアンチパターン集RedmineのFAQとアンチパターン集
RedmineのFAQとアンチパターン集
 
はじめる! Redmine (2015)
はじめる! Redmine (2015)はじめる! Redmine (2015)
はじめる! Redmine (2015)
 
Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.
Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.
Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.
 
20171117 redminetokyo13
20171117 redminetokyo1320171117 redminetokyo13
20171117 redminetokyo13
 
「Redmineの運用パターン集~私に聞くな、チケットシステムに聞け」
「Redmineの運用パターン集~私に聞くな、チケットシステムに聞け」「Redmineの運用パターン集~私に聞くな、チケットシステムに聞け」
「Redmineの運用パターン集~私に聞くな、チケットシステムに聞け」
 

Más de akipii Oga

JSTQB_テストプロセスの概念モデル改善版.pdf
JSTQB_テストプロセスの概念モデル改善版.pdfJSTQB_テストプロセスの概念モデル改善版.pdf
JSTQB_テストプロセスの概念モデル改善版.pdfakipii Oga
 
平鍋さんのテスト設計モデル.pdf
平鍋さんのテスト設計モデル.pdf平鍋さんのテスト設計モデル.pdf
平鍋さんのテスト設計モデル.pdfakipii Oga
 
統計学の攻略_統計的仮説検定の9パターン.pdf
統計学の攻略_統計的仮説検定の9パターン.pdf統計学の攻略_統計的仮説検定の9パターン.pdf
統計学の攻略_統計的仮説検定の9パターン.pdfakipii Oga
 
統計学の攻略_正規分布ファミリーの全体像.pdf
統計学の攻略_正規分布ファミリーの全体像.pdf統計学の攻略_正規分布ファミリーの全体像.pdf
統計学の攻略_正規分布ファミリーの全体像.pdfakipii Oga
 
統計学の攻略_推測統計学の考え方.pdf
統計学の攻略_推測統計学の考え方.pdf統計学の攻略_推測統計学の考え方.pdf
統計学の攻略_推測統計学の考え方.pdfakipii Oga
 
JSTQB_テストマネジメントとレビュープロセス.pdf
JSTQB_テストマネジメントとレビュープロセス.pdfJSTQB_テストマネジメントとレビュープロセス.pdf
JSTQB_テストマネジメントとレビュープロセス.pdfakipii Oga
 
JSTQB_テストプロセスの概念モデル.pdf
JSTQB_テストプロセスの概念モデル.pdfJSTQB_テストプロセスの概念モデル.pdf
JSTQB_テストプロセスの概念モデル.pdfakipii Oga
 
プロセスプログラミングとは
プロセスプログラミングとはプロセスプログラミングとは
プロセスプログラミングとはakipii Oga
 
SECIモデルの状態遷移図
SECIモデルの状態遷移図SECIモデルの状態遷移図
SECIモデルの状態遷移図akipii Oga
 
物理攻略の全体マップ
物理攻略の全体マップ物理攻略の全体マップ
物理攻略の全体マップakipii Oga
 
初中級プロマネのための現場で活かせ!統計情報.pdf
初中級プロマネのための現場で活かせ!統計情報.pdf初中級プロマネのための現場で活かせ!統計情報.pdf
初中級プロマネのための現場で活かせ!統計情報.pdfakipii Oga
 
「ハリウッドリライティングバイブル」のマインドマップ
「ハリウッドリライティングバイブル」のマインドマップ「ハリウッドリライティングバイブル」のマインドマップ
「ハリウッドリライティングバイブル」のマインドマップakipii Oga
 
GTDのワークフロー
GTDのワークフローGTDのワークフロー
GTDのワークフローakipii Oga
 
プロマネの判断プロセス
プロマネの判断プロセスプロマネの判断プロセス
プロマネの判断プロセスakipii Oga
 
プロマネの意思決定プロセス
プロマネの意思決定プロセスプロマネの意思決定プロセス
プロマネの意思決定プロセスakipii Oga
 
世界を動かすプロジェクトマネジメントの教科書の概念図
世界を動かすプロジェクトマネジメントの教科書の概念図世界を動かすプロジェクトマネジメントの教科書の概念図
世界を動かすプロジェクトマネジメントの教科書の概念図akipii Oga
 
チケット駆動開発の解説~タスク管理からプロセス改善へ
チケット駆動開発の解説~タスク管理からプロセス改善へチケット駆動開発の解説~タスク管理からプロセス改善へ
チケット駆動開発の解説~タスク管理からプロセス改善へakipii Oga
 
チケット管理の運⽤を⽀える体制
チケット管理の運⽤を⽀える体制チケット管理の運⽤を⽀える体制
チケット管理の運⽤を⽀える体制akipii Oga
 
ホールディング会社の役割とIt企画・構築プロセス
ホールディング会社の役割とIt企画・構築プロセスホールディング会社の役割とIt企画・構築プロセス
ホールディング会社の役割とIt企画・構築プロセスakipii Oga
 
Tiddの運用サイクルとチケット駆動開発のプロセスと開発基盤
Tiddの運用サイクルとチケット駆動開発のプロセスと開発基盤Tiddの運用サイクルとチケット駆動開発のプロセスと開発基盤
Tiddの運用サイクルとチケット駆動開発のプロセスと開発基盤akipii Oga
 

Más de akipii Oga (20)

JSTQB_テストプロセスの概念モデル改善版.pdf
JSTQB_テストプロセスの概念モデル改善版.pdfJSTQB_テストプロセスの概念モデル改善版.pdf
JSTQB_テストプロセスの概念モデル改善版.pdf
 
平鍋さんのテスト設計モデル.pdf
平鍋さんのテスト設計モデル.pdf平鍋さんのテスト設計モデル.pdf
平鍋さんのテスト設計モデル.pdf
 
統計学の攻略_統計的仮説検定の9パターン.pdf
統計学の攻略_統計的仮説検定の9パターン.pdf統計学の攻略_統計的仮説検定の9パターン.pdf
統計学の攻略_統計的仮説検定の9パターン.pdf
 
統計学の攻略_正規分布ファミリーの全体像.pdf
統計学の攻略_正規分布ファミリーの全体像.pdf統計学の攻略_正規分布ファミリーの全体像.pdf
統計学の攻略_正規分布ファミリーの全体像.pdf
 
統計学の攻略_推測統計学の考え方.pdf
統計学の攻略_推測統計学の考え方.pdf統計学の攻略_推測統計学の考え方.pdf
統計学の攻略_推測統計学の考え方.pdf
 
JSTQB_テストマネジメントとレビュープロセス.pdf
JSTQB_テストマネジメントとレビュープロセス.pdfJSTQB_テストマネジメントとレビュープロセス.pdf
JSTQB_テストマネジメントとレビュープロセス.pdf
 
JSTQB_テストプロセスの概念モデル.pdf
JSTQB_テストプロセスの概念モデル.pdfJSTQB_テストプロセスの概念モデル.pdf
JSTQB_テストプロセスの概念モデル.pdf
 
プロセスプログラミングとは
プロセスプログラミングとはプロセスプログラミングとは
プロセスプログラミングとは
 
SECIモデルの状態遷移図
SECIモデルの状態遷移図SECIモデルの状態遷移図
SECIモデルの状態遷移図
 
物理攻略の全体マップ
物理攻略の全体マップ物理攻略の全体マップ
物理攻略の全体マップ
 
初中級プロマネのための現場で活かせ!統計情報.pdf
初中級プロマネのための現場で活かせ!統計情報.pdf初中級プロマネのための現場で活かせ!統計情報.pdf
初中級プロマネのための現場で活かせ!統計情報.pdf
 
「ハリウッドリライティングバイブル」のマインドマップ
「ハリウッドリライティングバイブル」のマインドマップ「ハリウッドリライティングバイブル」のマインドマップ
「ハリウッドリライティングバイブル」のマインドマップ
 
GTDのワークフロー
GTDのワークフローGTDのワークフロー
GTDのワークフロー
 
プロマネの判断プロセス
プロマネの判断プロセスプロマネの判断プロセス
プロマネの判断プロセス
 
プロマネの意思決定プロセス
プロマネの意思決定プロセスプロマネの意思決定プロセス
プロマネの意思決定プロセス
 
世界を動かすプロジェクトマネジメントの教科書の概念図
世界を動かすプロジェクトマネジメントの教科書の概念図世界を動かすプロジェクトマネジメントの教科書の概念図
世界を動かすプロジェクトマネジメントの教科書の概念図
 
チケット駆動開発の解説~タスク管理からプロセス改善へ
チケット駆動開発の解説~タスク管理からプロセス改善へチケット駆動開発の解説~タスク管理からプロセス改善へ
チケット駆動開発の解説~タスク管理からプロセス改善へ
 
チケット管理の運⽤を⽀える体制
チケット管理の運⽤を⽀える体制チケット管理の運⽤を⽀える体制
チケット管理の運⽤を⽀える体制
 
ホールディング会社の役割とIt企画・構築プロセス
ホールディング会社の役割とIt企画・構築プロセスホールディング会社の役割とIt企画・構築プロセス
ホールディング会社の役割とIt企画・構築プロセス
 
Tiddの運用サイクルとチケット駆動開発のプロセスと開発基盤
Tiddの運用サイクルとチケット駆動開発のプロセスと開発基盤Tiddの運用サイクルとチケット駆動開発のプロセスと開発基盤
Tiddの運用サイクルとチケット駆動開発のプロセスと開発基盤
 

【第16回Redmine大阪】RedmineのFAQとアンチパターン~親子チケットの功罪

  • 2. 自己紹介 • ハンドルネーム:@akipii • 東京Redmine、Redmine大阪スタッフ • 出版した著書 • 「Redmineによるタスクマネジメント実践技法」 (with 阪井さん) • 「チケット駆動開発」 (with 阪井さん) • 「Redmine超入門」(with redmine.tokyoスタッフ) • 「Redmine 実践ガイド」 (with (株)アジャイルウェア) Copyright2017 akipii@XPJUG関西 2
  • 3. Redmineの現状 • Redmineが持つ「チケットやPJの階層は無制限」の特徴 はとても柔軟な機能 • ガントチャートと相性が良い • タスクのブレイクダウンを親⼦チケットで直感的に表現できる • WF型開発で始めた後でも、割り込みタスクを管理しやすい • WF型開発や縦割り組織をRedmineへ直感的に適用しやすい • 最近、親子チケットに関する質問が多い • 親⼦チケットはすごく便利だが、ガントチャート画⾯で編集できない • Redmineの仕様と業務内容がフィットしていない部分がある • 古いバージョンでは、階層が深くなると遅くなる?? Copyright2017 akipii@XPJUG関西 3 Defect #23318: 大量の⼦チケットを持つチケットで #lock_nested_set メソッドが遅い問題の改善
  • 6. 【メリット】かんばんも相性が良い Copyright2017 akipii@XPJUG関西 6 【第13回RxTStudy勉強会】Redmine BacklogsプラグインでScrum開発! ~Redmineでアジャイルに開発しよう https://www.slideshare.net/akipii.oga/13rxtstudyredmine-backlogsscrumredmine 親チケット=ストーリーカード、 ⼦チケット=タスクカード と分けて運用できる
  • 8. 停滞したチケット Copyright2017 akipii@XPJUG関西 8 名前名前名前名前 停滞したチケット停滞したチケット停滞したチケット停滞したチケット 頻出場所頻出場所頻出場所頻出場所 チケット管理チケット管理チケット管理チケット管理 症状と結果症状と結果症状と結果症状と結果 ・進捗・進捗・進捗・進捗90%のチケットが多いのチケットが多いのチケットが多いのチケットが多い ・課題や・課題や・課題や・課題やQAがあるためにチケットをがあるためにチケットをがあるためにチケットをがあるためにチケットをCloseできないできないできないできない 挿話証拠挿話証拠挿話証拠挿話証拠 「いつも進捗が「いつも進捗が「いつも進捗が「いつも進捗が90%のままだね」のままだね」のままだね」のままだね」 根本原因根本原因根本原因根本原因 ・作業の完了基準が不明確・作業の完了基準が不明確・作業の完了基準が不明確・作業の完了基準が不明確 ・チケットの粒度が大きい・チケットの粒度が大きい・チケットの粒度が大きい・チケットの粒度が大きい 再構想解の再構想解の再構想解の再構想解の プラクティスプラクティスプラクティスプラクティス ・チケットで分割統治・チケットで分割統治・チケットで分割統治・チケットで分割統治 ・棚卸し・棚卸し・棚卸し・棚卸し 再構想による解決再構想による解決再構想による解決再構想による解決 ・残課題や別作業は、チケットを分割する・残課題や別作業は、チケットを分割する・残課題や別作業は、チケットを分割する・残課題や別作業は、チケットを分割する ・ステータスと進捗率を紐づける・ステータスと進捗率を紐づける・ステータスと進捗率を紐づける・ステータスと進捗率を紐づける 変種変種変種変種 ・肥大化したチケット・肥大化したチケット・肥大化したチケット・肥大化したチケット ・放置されたチケット・放置されたチケット・放置されたチケット・放置されたチケット
  • 9. スタンプラリー Copyright2017 akipii@XPJUG関西 9 名前名前名前名前 スタンプラリースタンプラリースタンプラリースタンプラリー 頻出場所頻出場所頻出場所頻出場所 ソフトウェア保守の変更管理プロセス、稟議申請ソフトウェア保守の変更管理プロセス、稟議申請ソフトウェア保守の変更管理プロセス、稟議申請ソフトウェア保守の変更管理プロセス、稟議申請 症状と結果症状と結果症状と結果症状と結果 ワークフローが複雑すぎて、チケットが停滞しているワークフローが複雑すぎて、チケットが停滞しているワークフローが複雑すぎて、チケットが停滞しているワークフローが複雑すぎて、チケットが停滞している 例:あるトラッカーには、ステータスが例:あるトラッカーには、ステータスが例:あるトラッカーには、ステータスが例:あるトラッカーには、ステータスが10個もある個もある個もある個もある 挿話証拠挿話証拠挿話証拠挿話証拠 「チケットを完了させるには、ステータスが多すぎるね」「チケットを完了させるには、ステータスが多すぎるね」「チケットを完了させるには、ステータスが多すぎるね」「チケットを完了させるには、ステータスが多すぎるね」 根本原因根本原因根本原因根本原因 1個のワークフローで複数の作業を完了させようとしている個のワークフローで複数の作業を完了させようとしている個のワークフローで複数の作業を完了させようとしている個のワークフローで複数の作業を完了させようとしている 再構想解の再構想解の再構想解の再構想解の プラクティスプラクティスプラクティスプラクティス ・トラッカーのライフサイクルで分割統治・トラッカーのライフサイクルで分割統治・トラッカーのライフサイクルで分割統治・トラッカーのライフサイクルで分割統治 ・サイクルタイム・サイクルタイム・サイクルタイム・サイクルタイム 再構想による再構想による再構想による再構想による 解決解決解決解決 ・プロセスのフェーズごとに、トラッカーを使い分ける・プロセスのフェーズごとに、トラッカーを使い分ける・プロセスのフェーズごとに、トラッカーを使い分ける・プロセスのフェーズごとに、トラッカーを使い分ける ・ワークフローのリードタイム・ワークフローのリードタイム・ワークフローのリードタイム・ワークフローのリードタイム(チケット平均完了日数チケット平均完了日数チケット平均完了日数チケット平均完了日数)を短縮を短縮を短縮を短縮 化するように運用する化するように運用する化するように運用する化するように運用する 変種変種変種変種 ・放置されたチケット・放置されたチケット・放置されたチケット・放置されたチケット ・停滞したチケット・停滞したチケット・停滞したチケット・停滞したチケット(90%シンドロームシンドロームシンドロームシンドローム)
  • 11. 親⼦チケットにし過ぎる Copyright2017 akipii@XPJUG関西 11 名前名前名前名前 親子チケットにし過ぎる親子チケットにし過ぎる親子チケットにし過ぎる親子チケットにし過ぎる 頻出場所頻出場所頻出場所頻出場所 タスク登録タスク登録タスク登録タスク登録 症状と結果症状と結果症状と結果症状と結果 個人の個人の個人の個人のToDoを子チケットで登録を子チケットで登録を子チケットで登録を子チケットで登録 他の人には不要なチケット他の人には不要なチケット他の人には不要なチケット他の人には不要なチケット ⇒⇒⇒⇒チケットが乱発されるチケットが乱発されるチケットが乱発されるチケットが乱発される 根本原因根本原因根本原因根本原因 チケットの粒度があまりにも細かすぎるチケットの粒度があまりにも細かすぎるチケットの粒度があまりにも細かすぎるチケットの粒度があまりにも細かすぎる 再構想による再構想による再構想による再構想による 解決解決解決解決 ①チケットは他人と共有すべき作業内容に限定する①チケットは他人と共有すべき作業内容に限定する①チケットは他人と共有すべき作業内容に限定する①チケットは他人と共有すべき作業内容に限定する ②②②②TODOレベルは、チケットにチェックリストを追記するレベルは、チケットにチェックリストを追記するレベルは、チケットにチェックリストを追記するレベルは、チケットにチェックリストを追記する ⇒⇒⇒⇒issue_templateプラグインでチェックリストをテンプレートプラグインでチェックリストをテンプレートプラグインでチェックリストをテンプレートプラグインでチェックリストをテンプレート 化化化化 http://www.redmine.org/plugins/issue_templates ③③③③個人の個人の個人の個人のToDoは、プライベートチケットを使うは、プライベートチケットを使うは、プライベートチケットを使うは、プライベートチケットを使う 課題課題課題課題 無償の無償の無償の無償のcheckListプラグインはチェックリストを保持できないプラグインはチェックリストを保持できないプラグインはチェックリストを保持できないプラグインはチェックリストを保持できない http://www.redmine.org/plugins/redmine_checklists
  • 12. 親チケットの属性が消える Copyright2017 akipii@XPJUG関西 12 名前名前名前名前 親チケットの属性が消える親チケットの属性が消える親チケットの属性が消える親チケットの属性が消える 頻出場所頻出場所頻出場所頻出場所 WF型開発の案件の実績登録型開発の案件の実績登録型開発の案件の実績登録型開発の案件の実績登録 症状と結果症状と結果症状と結果症状と結果 ・親チケットに・親チケットに・親チケットに・親チケットにSEが開始予定日・終了予定日・予定工数を入力が開始予定日・終了予定日・予定工数を入力が開始予定日・終了予定日・予定工数を入力が開始予定日・終了予定日・予定工数を入力 ・子チケットに・子チケットに・子チケットに・子チケットにPGが実績の開始日・終了日・自分で見積もった予定が実績の開始日・終了日・自分で見積もった予定が実績の開始日・終了日・自分で見積もった予定が実績の開始日・終了日・自分で見積もった予定 工数を入力工数を入力工数を入力工数を入力 ⇒⇒⇒⇒親チケットの開始日・期日・予定工数が消えてしまう親チケットの開始日・期日・予定工数が消えてしまう親チケットの開始日・期日・予定工数が消えてしまう親チケットの開始日・期日・予定工数が消えてしまう 根本原因根本原因根本原因根本原因 ・・・・Redmineの仕様は「の仕様は「の仕様は「の仕様は「WBS 100%ルール」だから。ルール」だから。ルール」だから。ルール」だから。 ・実際の・実際の・実際の・実際のWF型開発は「型開発は「型開発は「型開発は「WBS 100%ルール」で綺麗に運用できなルール」で綺麗に運用できなルール」で綺麗に運用できなルール」で綺麗に運用できな い。い。い。い。 再構想再構想再構想再構想 による解決による解決による解決による解決 ・・・・Redmineの設定画面で「子チケットから独立」を選択するの設定画面で「子チケットから独立」を選択するの設定画面で「子チケットから独立」を選択するの設定画面で「子チケットから独立」を選択する ・予定日・予定日・予定日・予定日or実績日の実績日の実績日の実績日のCFを別途作成するを別途作成するを別途作成するを別途作成する 課題課題課題課題 実際の実際の実際の実際のWF型開発で「型開発で「型開発で「型開発で「WBS 100%ルール」を放棄してよいのか?ルール」を放棄してよいのか?ルール」を放棄してよいのか?ルール」を放棄してよいのか?
  • 13. 「⼦チケットから独⽴」を選択する Copyright2017 akipii@XPJUG関西 13 「親チケットの属性を ⼦チケットから独⽴」 を選択する。 Redmine 3.1新機能紹介: 親チケット の値(優先度・期⽇など)を⼦チケットと連 動させない設定 | Redmine.JP Blog http://blog.redmine.jp/articles/3 _1/parent-task-attributes- independent/
  • 14. 親⼦チケットのステータス未連動 Copyright2017 akipii@XPJUG関西 14 名前名前名前名前 親子チケットのステータス未連動親子チケットのステータス未連動親子チケットのステータス未連動親子チケットのステータス未連動 頻出場所頻出場所頻出場所頻出場所 WF型開発の案件の実績登録型開発の案件の実績登録型開発の案件の実績登録型開発の案件の実績登録 症状と結果症状と結果症状と結果症状と結果 未完了のチケットが残っているのに、親チケットが完了できてし未完了のチケットが残っているのに、親チケットが完了できてし未完了のチケットが残っているのに、親チケットが完了できてし未完了のチケットが残っているのに、親チケットが完了できてし まうまうまうまう 根本原因根本原因根本原因根本原因 WBS 100%ルールにルールにルールにルールにRedmineが完全に対応できてないが完全に対応できてないが完全に対応できてないが完全に対応できてない 再構想による再構想による再構想による再構想による 解決解決解決解決 Ver3.4で対応済みで対応済みで対応済みで対応済み (Feature #10989: 未完了の子チケットを持つ親チケットのク未完了の子チケットを持つ親チケットのク未完了の子チケットを持つ親チケットのク未完了の子チケットを持つ親チケットのク ローズを禁止ローズを禁止ローズを禁止ローズを禁止) 課題課題課題課題 実際の実際の実際の実際のWF型開発で、そこまでガチガチに運用してる?型開発で、そこまでガチガチに運用してる?型開発で、そこまでガチガチに運用してる?型開発で、そこまでガチガチに運用してる?
  • 15. 未完了の⼦チケットを持つ親チケットのクローズを禁止(Ver3.4) Copyright2017 akipii@XPJUG関西 15 2016年11月のRedmine開発状況 | Redmine.JP Blog http://blog.redmine.jp/articles/updates/2016/11/ ⼦チケットが未完了 (例:解決)の場合、 親チケットで「完了」を 選択できない
  • 16. 親⼦チケットの階層が深すぎる Copyright2017 akipii@XPJUG関西 16 名前名前名前名前 親子チケットの階層が深すぎる親子チケットの階層が深すぎる親子チケットの階層が深すぎる親子チケットの階層が深すぎる 頻出場所頻出場所頻出場所頻出場所 親子チケットは、機能別組織や一括請負契約にとてもマッチする親子チケットは、機能別組織や一括請負契約にとてもマッチする親子チケットは、機能別組織や一括請負契約にとてもマッチする親子チケットは、機能別組織や一括請負契約にとてもマッチする ①親チケットは設計部門①親チケットは設計部門①親チケットは設計部門①親チケットは設計部門/SEが予定入力が予定入力が予定入力が予定入力 ②子チケットは製造部門②子チケットは製造部門②子チケットは製造部門②子チケットは製造部門/PGが実績入力が実績入力が実績入力が実績入力 症状と結果症状と結果症状と結果症状と結果 ・・・・ExcelののののWBSのようにのようにのようにのように5~~~~10階層まで作るが粒度がバラバラ階層まで作るが粒度がバラバラ階層まで作るが粒度がバラバラ階層まで作るが粒度がバラバラ ・深い階層のチケットは、ガントチャートでも見通しが悪い・深い階層のチケットは、ガントチャートでも見通しが悪い・深い階層のチケットは、ガントチャートでも見通しが悪い・深い階層のチケットは、ガントチャートでも見通しが悪い ・チケット階層が深いと、ロックがかかる可能性がある・チケット階層が深いと、ロックがかかる可能性がある・チケット階層が深いと、ロックがかかる可能性がある・チケット階層が深いと、ロックがかかる可能性がある (Defect #23318: 大量の子チケットを持つチケットで大量の子チケットを持つチケットで大量の子チケットを持つチケットで大量の子チケットを持つチケットで #lock_nested_set メソッドが遅いメソッドが遅いメソッドが遅いメソッドが遅い 問題の改善問題の改善問題の改善問題の改善) 根本原因根本原因根本原因根本原因 ・・・・WBS 100%ルールを厳格に運用するとデメリットが大きくなるルールを厳格に運用するとデメリットが大きくなるルールを厳格に運用するとデメリットが大きくなるルールを厳格に運用するとデメリットが大きくなる ・親子チケットは組織構造に関係する・親子チケットは組織構造に関係する・親子チケットは組織構造に関係する・親子チケットは組織構造に関係する 課題課題課題課題 ①①①①Redmineで深い階層の親子チケットを一括インポートしたいで深い階層の親子チケットを一括インポートしたいで深い階層の親子チケットを一括インポートしたいで深い階層の親子チケットを一括インポートしたい ②ガントチャート以外で②ガントチャート以外で②ガントチャート以外で②ガントチャート以外でWBS漏れを検知したい漏れを検知したい漏れを検知したい漏れを検知したい 他の問題他の問題他の問題他の問題 RedmineののののPJの階層はどこまで深くするか?の階層はどこまで深くするか?の階層はどこまで深くするか?の階層はどこまで深くするか?
  • 17. WF型開発の工程はどこにマッピングするか? Copyright2017 akipii@XPJUG関西 17 質問質問質問質問 WF型開発の工程は型開発の工程は型開発の工程は型開発の工程はRedmineのどこにマッピングするか?のどこにマッピングするか?のどこにマッピングするか?のどこにマッピングするか? 頻出場所頻出場所頻出場所頻出場所 WF型開発案件の計画登録型開発案件の計画登録型開発案件の計画登録型開発案件の計画登録 根本原因根本原因根本原因根本原因 製造業の「工程」と製造業の「工程」と製造業の「工程」と製造業の「工程」とSW開発の「工程」を混同している開発の「工程」を混同している開発の「工程」を混同している開発の「工程」を混同している ⇒⇒⇒⇒工程の役割と工程の役割と工程の役割と工程の役割とRedmineの機能のの機能のの機能のの機能のFG分析が不十分分析が不十分分析が不十分分析が不十分 回答回答回答回答 ・・・・Redmineではではではでは6種類の方法がある種類の方法がある種類の方法がある種類の方法がある ①トラッカー①トラッカー①トラッカー①トラッカー ②②②②PJ ③バージョン③バージョン③バージョン③バージョン ④親チケット④親チケット④親チケット④親チケット ⑤カテゴリ⑤カテゴリ⑤カテゴリ⑤カテゴリ ⑥カスタムフィールド⑥カスタムフィールド⑥カスタムフィールド⑥カスタムフィールド ・期限が過ぎたタスクは、工程で管理しない方が良い・期限が過ぎたタスクは、工程で管理しない方が良い・期限が過ぎたタスクは、工程で管理しない方が良い・期限が過ぎたタスクは、工程で管理しない方が良い 関連する関連する関連する関連する 課題課題課題課題 業務は業務は業務は業務はRedmineのどこにマッピングするか?のどこにマッピングするか?のどこにマッピングするか?のどこにマッピングするか?
  • 18. 工程とRedmine機能の比較評価 Copyright2017 akipii@XPJUG関西 18 No Redmineの機能の機能の機能の機能 評価評価評価評価 評価理由評価理由評価理由評価理由 備考備考備考備考 1 トラッカートラッカートラッカートラッカー ☓☓☓☓ 経験上、トラッカーが無造経験上、トラッカーが無造経験上、トラッカーが無造経験上、トラッカーが無造 作に増えて破綻する作に増えて破綻する作に増えて破綻する作に増えて破綻する 例:基本設計、詳細設計、例:基本設計、詳細設計、例:基本設計、詳細設計、例:基本設計、詳細設計、 開発、単体テスト開発、単体テスト開発、単体テスト開発、単体テスト 2 PJ ☓☓☓☓ 経験上、経験上、経験上、経験上、PJの終了日の終了日の終了日の終了日 が不明になるので、破が不明になるので、破が不明になるので、破が不明になるので、破 綻する綻する綻する綻する 工程単位に契約やチーム工程単位に契約やチーム工程単位に契約やチーム工程単位に契約やチーム がががが異なる場合は有効異なる場合は有効異なる場合は有効異なる場合は有効 例:設計・テスト=自社、例:設計・テスト=自社、例:設計・テスト=自社、例:設計・テスト=自社、 開発=外部ベンダー開発=外部ベンダー開発=外部ベンダー開発=外部ベンダー 3 バージョンバージョンバージョンバージョン △△△△ 期限をリリース日や納期期限をリリース日や納期期限をリリース日や納期期限をリリース日や納期 に読み替える。に読み替える。に読み替える。に読み替える。 ロードマップやガントチャートロードマップやガントチャートロードマップやガントチャートロードマップやガントチャート で管理しやすい。で管理しやすい。で管理しやすい。で管理しやすい。 経験上、障害多発のたび経験上、障害多発のたび経験上、障害多発のたび経験上、障害多発のたび ににににReOpenされてしまう。されてしまう。されてしまう。されてしまう。 4 親チケット親チケット親チケット親チケット △△△△ ガントチャートで管理しやガントチャートで管理しやガントチャートで管理しやガントチャートで管理しや すいすいすいすい 深い階層のチケットは保深い階層のチケットは保深い階層のチケットは保深い階層のチケットは保 守しにくい守しにくい守しにくい守しにくい 5 カテゴリカテゴリカテゴリカテゴリ △△△△ PJ単位で自由に設定単位で自由に設定単位で自由に設定単位で自由に設定 できるできるできるできる 子子子子PJに継承されないので、に継承されないので、に継承されないので、に継承されないので、 同期させるのが面倒同期させるのが面倒同期させるのが面倒同期させるのが面倒 6 カスタムフィールドカスタムフィールドカスタムフィールドカスタムフィールド △△△△ 障害管理でよく使われ障害管理でよく使われ障害管理でよく使われ障害管理でよく使われ るるるる 例:発見した工程、検出す例:発見した工程、検出す例:発見した工程、検出す例:発見した工程、検出す べき工程べき工程べき工程べき工程
  • 19. WBSはどう作る? Copyright2017 akipii@XPJUG関西 19 質問質問質問質問 WBSは工程単位は工程単位は工程単位は工程単位 or 機能単位のどちらで作ると良いのか?機能単位のどちらで作ると良いのか?機能単位のどちらで作ると良いのか?機能単位のどちらで作ると良いのか? 頻出場所頻出場所頻出場所頻出場所 親子チケット登録親子チケット登録親子チケット登録親子チケット登録 症状と結果症状と結果症状と結果症状と結果 チーム構成や作業者の役割とチーム構成や作業者の役割とチーム構成や作業者の役割とチーム構成や作業者の役割とWBSが調和していないが調和していないが調和していないが調和していない ⇒⇒⇒⇒メンバーが混乱した結果、チケットが放置されやすいメンバーが混乱した結果、チケットが放置されやすいメンバーが混乱した結果、チケットが放置されやすいメンバーが混乱した結果、チケットが放置されやすい 根本原因根本原因根本原因根本原因 WBSはプロジェクト組織を規定するため、混乱するはプロジェクト組織を規定するため、混乱するはプロジェクト組織を規定するため、混乱するはプロジェクト組織を規定するため、混乱する (※※※※1) 回答回答回答回答 ①工程単位は、プロセス中心型の①工程単位は、プロセス中心型の①工程単位は、プロセス中心型の①工程単位は、プロセス中心型のWBSやチーム構成になる。やチーム構成になる。やチーム構成になる。やチーム構成になる。 モジュール間の関連性が強くて、全体が密結合のシステム。モジュール間の関連性が強くて、全体が密結合のシステム。モジュール間の関連性が強くて、全体が密結合のシステム。モジュール間の関連性が強くて、全体が密結合のシステム。 ②機能単位は、成果物中心型の②機能単位は、成果物中心型の②機能単位は、成果物中心型の②機能単位は、成果物中心型のWBSやチーム構成になる。やチーム構成になる。やチーム構成になる。やチーム構成になる。 既存システムに新機能を順次リリースするシステム。既存システムに新機能を順次リリースするシステム。既存システムに新機能を順次リリースするシステム。既存システムに新機能を順次リリースするシステム。 ⇒⇒⇒⇒システムの特徴、チーム構成に合致したシステムの特徴、チーム構成に合致したシステムの特徴、チーム構成に合致したシステムの特徴、チーム構成に合致したWBSに合わせる。に合わせる。に合わせる。に合わせる。 ⇒⇒⇒⇒組織は組織は組織は組織はWBSに従う。に従う。に従う。に従う。 アーキテクチャは組織に従う。アーキテクチャは組織に従う。アーキテクチャは組織に従う。アーキテクチャは組織に従う。 関連情報関連情報関連情報関連情報 ※※※※1. WBSはプロジェクト組織を規定するWBSはプロジェクト組織を規定するWBSはプロジェクト組織を規定するWBSはプロジェクト組織を規定する : タイム・コンサルタンタイム・コンサルタンタイム・コンサルタンタイム・コンサルタン トの日誌からトの日誌からトの日誌からトの日誌から http://brevis.exblog.jp/19096066
  • 20. WBSによるプロセスの違い Copyright2017 akipii@XPJUG関西 20 ①工程単位 ⇒WBSが プロセス中心 設計 開発 テスト ②機能単位 ⇒WBSが 成果物中心 機能A 機能B 機能C
  • 21. WBSによる組織の違い Copyright2017 akipii@XPJUG関西 21 PM 設計PL 開発PL テストPL SE1 SE2 SE3 PG1 PG2 PG3 担当者1 担当者2 担当者3 PM 機能A 機能B 機能C SE1 PG1 担当者1 SE2 PG2 担当者2 SE3 PG3 担当者3 ①工程単位 ⇒プロセス中心の組織 (機能別組織) ②機能単位 ⇒成果物中心の組織 (フィーチャーチーム)
  • 22. チケットの棚卸しがやりにくい Copyright2017 akipii@XPJUG関西 22 名前名前名前名前 チケットの棚卸しがやりにくいチケットの棚卸しがやりにくいチケットの棚卸しがやりにくいチケットの棚卸しがやりにくい 頻出場所頻出場所頻出場所頻出場所 チケットの棚卸しチケットの棚卸しチケットの棚卸しチケットの棚卸し 症状と結果症状と結果症状と結果症状と結果 チケット一覧で棚卸しを頑張ろうして詰まるチケット一覧で棚卸しを頑張ろうして詰まるチケット一覧で棚卸しを頑張ろうして詰まるチケット一覧で棚卸しを頑張ろうして詰まる 根本原因根本原因根本原因根本原因 チケットの優先順位付けができていないチケットの優先順位付けができていないチケットの優先順位付けができていないチケットの優先順位付けができていない 再構想による再構想による再構想による再構想による 解決解決解決解決 ①チケットの優先度を設定する①チケットの優先度を設定する①チケットの優先度を設定する①チケットの優先度を設定する ②先行・後続の関連を付ける②先行・後続の関連を付ける②先行・後続の関連を付ける②先行・後続の関連を付ける ③バージョンを設定してロードマップ画面を使う③バージョンを設定してロードマップ画面を使う③バージョンを設定してロードマップ画面を使う③バージョンを設定してロードマップ画面を使う ⇒⇒⇒⇒Redmineの基本思想は、ロードマップ画面でチケットをの基本思想は、ロードマップ画面でチケットをの基本思想は、ロードマップ画面でチケットをの基本思想は、ロードマップ画面でチケットを 取捨選択する発想。取捨選択する発想。取捨選択する発想。取捨選択する発想。 ④④④④Default Custom Queryプラグインを使うプラグインを使うプラグインを使うプラグインを使う (Feature #7360: Issue Custom Query: Default Query) 課題課題課題課題 Redmineのロードマップ画面を「チケットの並び順が作業順序のロードマップ画面を「チケットの並び順が作業順序のロードマップ画面を「チケットの並び順が作業順序のロードマップ画面を「チケットの並び順が作業順序 である」仕様にしたい。である」仕様にしたい。である」仕様にしたい。である」仕様にしたい。 (Feature #22802: バージョン内のチケットをドラッグ&ドロップで並べ替えバージョン内のチケットをドラッグ&ドロップで並べ替えバージョン内のチケットをドラッグ&ドロップで並べ替えバージョン内のチケットをドラッグ&ドロップで並べ替え)
  • 24. 棚卸しの対応方法の比較評価 Copyright2017 akipii@XPJUG関西 24 No 対応方法・暫定策対応方法・暫定策対応方法・暫定策対応方法・暫定策 評価評価評価評価 評価理由評価理由評価理由評価理由 1 チケットの優先度を設定するチケットの優先度を設定するチケットの優先度を設定するチケットの優先度を設定する ☓☓☓☓ なる早が増えるなる早が増えるなる早が増えるなる早が増える 2 先行・後続の関連を付ける先行・後続の関連を付ける先行・後続の関連を付ける先行・後続の関連を付ける ☓☓☓☓ チケット操作が複雑。チケット操作が複雑。チケット操作が複雑。チケット操作が複雑。 ガントチャート画面で編集できなガントチャート画面で編集できなガントチャート画面で編集できなガントチャート画面で編集できな い。い。い。い。 3 バージョンを設定するバージョンを設定するバージョンを設定するバージョンを設定する △△△△ チケット枚数が増えると結局、チチケット枚数が増えると結局、チチケット枚数が増えると結局、チチケット枚数が増えると結局、チ ケットが溢れる。ケットが溢れる。ケットが溢れる。ケットが溢れる。 本来は、チケットの並び順で優本来は、チケットの並び順で優本来は、チケットの並び順で優本来は、チケットの並び順で優 先度を付けたい。先度を付けたい。先度を付けたい。先度を付けたい。 (Feature #22802: バージョン内のチケットバージョン内のチケットバージョン内のチケットバージョン内のチケット をドラッグ&ドロップで並べ替えをドラッグ&ドロップで並べ替えをドラッグ&ドロップで並べ替えをドラッグ&ドロップで並べ替え) 4 Default Custom Query プラグインを使うプラグインを使うプラグインを使うプラグインを使う △△△△ チケット一覧の初期表示を、チケット一覧の初期表示を、チケット一覧の初期表示を、チケット一覧の初期表示を、 優先度が高い条件のクエリで表優先度が高い条件のクエリで表優先度が高い条件のクエリで表優先度が高い条件のクエリで表 示する。示する。示する。示する。 (Feature #7360: チケット一覧にデフォルトのカスタチケット一覧にデフォルトのカスタチケット一覧にデフォルトのカスタチケット一覧にデフォルトのカスタ ムクエリを適用ムクエリを適用ムクエリを適用ムクエリを適用)
  • 25. 【課題】バージョン内のチケットをドラッグ&ドロップで並べ替え Copyright2017 akipii@XPJUG関西 25 2016年9月のRedmine開発状況 | Redmine.JP Blog http://blog.redmine.jp/articles/updates/2016/09/ Feature #22802: バージョン内のチケットをドラッグ&ドロップで並べ替え ロードマップ画⾯で、 リリース計画を考えながら、 チケットの順序をドラッグ& ドロップで自由に変更できる ⇒ Scrumのプロダクトバックログ のような操作が可能になる
  • 26. 【課題】 Default Custom Queryプラグイン Copyright2017 akipii@XPJUG関西 26 2016年4月のRedmine開発状況 | Redmine.JP Blog http://blog.redmine.jp/articles/updates/2016/04/ Feature #7360: Issue Custom Query: Default Query PJごとに、指定したトクエリで チケット一覧画⾯に初期表示できる。 PJごとに、指定したクエリで チケット一覧画⾯に初期表示できる。
  • 28. ガントチャートとかんばんの使い分けは? Copyright2017 akipii@XPJUG関西 28 質問質問質問質問 ガントチャートとかんばんの使い分けは?ガントチャートとかんばんの使い分けは?ガントチャートとかんばんの使い分けは?ガントチャートとかんばんの使い分けは? 頻出場所頻出場所頻出場所頻出場所 作業のリードタイムが異なる業務や組織が混在する作業のリードタイムが異なる業務や組織が混在する作業のリードタイムが異なる業務や組織が混在する作業のリードタイムが異なる業務や組織が混在する 例:ハード屋さんは、ガントチャートが使いたい例:ハード屋さんは、ガントチャートが使いたい例:ハード屋さんは、ガントチャートが使いたい例:ハード屋さんは、ガントチャートが使いたい 例:アジャイル屋さんは、かん例:アジャイル屋さんは、かん例:アジャイル屋さんは、かん例:アジャイル屋さんは、かんばんをばんをばんをばんを使いたい使いたい使いたい使いたい 根本原因根本原因根本原因根本原因 作業のリードタイムが異なる作業のリードタイムが異なる作業のリードタイムが異なる作業のリードタイムが異なる 回答回答回答回答 ①ガントチャート①ガントチャート①ガントチャート①ガントチャート a)リードタイムが長い場合に有効。リードタイムが長い場合に有効。リードタイムが長い場合に有効。リードタイムが長い場合に有効。 b)親子チケットで階層化すると見やすい。親子チケットで階層化すると見やすい。親子チケットで階層化すると見やすい。親子チケットで階層化すると見やすい。 ②かんばん②かんばん②かんばん②かんばん a)リードタイムが短い場合に有効。リードタイムが短い場合に有効。リードタイムが短い場合に有効。リードタイムが短い場合に有効。 b)ステータスをどんどん変えて、サクサク流す。ステータスをどんどん変えて、サクサク流す。ステータスをどんどん変えて、サクサク流す。ステータスをどんどん変えて、サクサク流す。 課題課題課題課題 ①ガントチャート:①ガントチャート:①ガントチャート:①ガントチャート: a)進捗率の運用ルールを決めておく。進捗率の運用ルールを決めておく。進捗率の運用ルールを決めておく。進捗率の運用ルールを決めておく。 ②かんばん:②かんばん:②かんばん:②かんばん: a)リードタイムが長い作業は遅れているように見える。リードタイムが長い作業は遅れているように見える。リードタイムが長い作業は遅れているように見える。リードタイムが長い作業は遅れているように見える。 b)未リリースの要件は未リリースの要件は未リリースの要件は未リリースの要件はPBLで別管理する。で別管理する。で別管理する。で別管理する。
  • 30. 野良Redmineが社内に溢れる Copyright2017 akipii@XPJUG関西 30 名前名前名前名前 野良野良野良野良Redmineが社内に溢れるが社内に溢れるが社内に溢れるが社内に溢れる 別名別名別名別名 闇闇闇闇Redmine 症状と結果症状と結果症状と結果症状と結果 ・会社標準の・会社標準の・会社標準の・会社標準のRedmineは使いにくいは使いにくいは使いにくいは使いにくい ・別チームの・別チームの・別チームの・別チームのRedmineは特定は特定は特定は特定PJに特化されているに特化されているに特化されているに特化されている ・運用が拡大すると、運用ルール策定が追いつかない・運用が拡大すると、運用ルール策定が追いつかない・運用が拡大すると、運用ルール策定が追いつかない・運用が拡大すると、運用ルール策定が追いつかない 根本原因根本原因根本原因根本原因 ・大規模な組織で多様な業務を、一つの・大規模な組織で多様な業務を、一つの・大規模な組織で多様な業務を、一つの・大規模な組織で多様な業務を、一つのRedmineインスタンスでインスタンスでインスタンスでインスタンスで 対応できるか?対応できるか?対応できるか?対応できるか? ・組織ごと・組織ごと・組織ごと・組織ごと/業務ごとに業務ごとに業務ごとに業務ごとにRedmineを作りたい意図があるを作りたい意図があるを作りたい意図があるを作りたい意図がある 再構想による再構想による再構想による再構想による 解決解決解決解決 ・トップダウンで・トップダウンで・トップダウンで・トップダウンでRedmineを1個に統一するを1個に統一するを1個に統一するを1個に統一する ⇒⇒⇒⇒Redmine事務局を設ける・運用ルールを標準化し推進事務局を設ける・運用ルールを標準化し推進事務局を設ける・運用ルールを標準化し推進事務局を設ける・運用ルールを標準化し推進 ・運用は柔軟に行う・運用は柔軟に行う・運用は柔軟に行う・運用は柔軟に行う ⇒⇒⇒⇒セキュリティ面で複数のセキュリティ面で複数のセキュリティ面で複数のセキュリティ面で複数のRedmineインスタンスはありうるインスタンスはありうるインスタンスはありうるインスタンスはありうる 課題課題課題課題 ①複数の①複数の①複数の①複数のRedmineインスタンスを統合できるか?インスタンスを統合できるか?インスタンスを統合できるか?インスタンスを統合できるか? QA #247: 複数の複数の複数の複数のRedmineサーバを統合したいサーバを統合したいサーバを統合したいサーバを統合したい - Unofficial Redmine Cooking - redmine.Tokyo https://redmine.tokyo/issues/247 ②②②②Redmineインスタンス同士でチケットを関連付けたいインスタンス同士でチケットを関連付けたいインスタンス同士でチケットを関連付けたいインスタンス同士でチケットを関連付けたい ⇒⇒⇒⇒リンク型リンク型リンク型リンク型CFを使うを使うを使うを使う
  • 32. まとめ • Redmineの柔軟な機能が災いしている • メリット①:チケットやPJの階層は無限に作れる • メリット②:ワークフローやカスタム項目をたくさん作れる • ⇒業務の特徴とRedmine運用のFG分析を⾏っておく • チケット管理はアジャイル開発のノウハウが向く • 深い親⼦チケットは保守しにくい • サクサク流れるフローを重視した方が運用しやすい • 問題は、運用ルールなのか、Redmineの機能不⾜ なのか、を⾒極める • 運用ルールを標準化して、運用でカバーするのか • 不⾜した機能はRedmineを機能拡張するのか Copyright2017 akipii@XPJUG関西 32
  • 33. Redmineに残された他の課題 • チケット管理をより使いやすくするUI改善 • 例:ロードマップ画⾯のソート順、PJ一覧画⾯レイアウト • 置き去りにされた画⾯の機能改善 • 例:ロードマップ、⽂書、ファイル管理、カレンダー • チケット枚数に伴う性能改善 • 例:全⽂検索 • 多様な組織や業務に対応する運用ルール策定 • コミュニティでRedmineガイドラインを作りたい Copyright2017 akipii@XPJUG関西 33 換言すれば、 Redmineは成⻑の余地がまだまだある