Redmineの親チケットの進捗率(%)の計算ロジック
Redmineでチケットを親子関係にした場合、親チケットの進捗率は「管理」→「設定」→「チケットトラッキング」タブにある 「親チケットの値の算出方法」 の設定によって決まります。
1. 「子チケットの値から算出」の場合
すべての子チケットの進捗率を予定工数(見積工数)で重み付けした加重平均で算出します。全体の予定工数のうち、何時間分の作業が終わったかという考え方です。
予定工数が入力されている場合(加重平均)
- 親チケット
- 子チケットA
- 予定工数: 10時間
- 進捗率: 50%
- 完了: 10時間 × 50% = 5時間
- 子チケットB
- 予定工数: 30時間
- 進捗率: 10%
- 完了: 30時間 × 10% = 3時間
- 子チケットA
親チケットの進捗率は (5時間 + 3時間) ÷ (10時間 + 30時間) = 20% です。
※単純な平均 (50% + 10%) ÷ 2 = 30% にはなりません。
予定工数が未入力の場合
チケットの予定工数が未入力の場合は、重みが「1」とみなされます。
- 親チケット
- 子チケットA
- 予定工数: 空欄(重み 1)
- 進捗率: 50%
- 完了: 0.5
- 子チケットB
- 予定工数: 空欄(重み 1)
- 進捗率: 10%
- 完了: 0.1
- 子チケットA
親チケットの進捗率は (0.5 + 0.1) ÷ (1 + 1) = 30% です。
注意点
- 親チケットの進捗率は子チケットの値から自動計算されるため、親チケットの編集画面から手動で更新できません(入力欄が非表示になります)。
- 「管理」→「設定」→「チケットトラッキング」タブ→「進捗率の算出方法」を「チケットのステータスに連動」にしている場合、親チケットの進捗率は以下の挙動になります。
- 「管理」→「チケットのステータス」で親チケットのステータスに進捗率が設定済み: そのステータスの%が優先
- 「管理」→「チケットのステータス」で親チケットのステータスに進捗率が未設定: 子チケットの加重平均
2. 「子チケットから独立」の場合
親チケットの編集画面から任意の進捗率(%)を手動で入力できます。親チケットの進捗率は子チケットの値と連動しないので、子チケットをすべて終了(100%)にしても親チケットの進捗率は自動では変わりません。
親チケット自体に作業があり、子チケットとは別に進捗を管理したい場合に適しています。
どちらの設定を使うべきか?
| 設定 | メリット | デメリット |
|---|---|---|
| 子チケットの値から算出 | タスクの積み上げが自動で反映され、全体の進捗が正確に把握できる。 | 親チケットの進捗率を個別に変更できず、すべての子チケットを更新する必要がある。 |
| 子チケットから独立 | 親チケット独自で進捗率を管理できる。自由度が高い。 | 子チケットの進捗率を親チケットに反映させるには、手動で更新する手間がかかる。 |

