Redmineの親チケットの進捗率(%)の計算ロジック

藤江 佑季子(ファーエンドテクノロジー株式会社)
作成日

Redmineでチケットを親子関係にした場合、親チケットの進捗率は「管理」→「設定」→「チケットトラッキング」タブにある 「親チケットの値の算出方法」 の設定によって決まります。

1. 「子チケットの値から算出」の場合

すべての子チケットの進捗率を予定工数(見積工数)で重み付けした加重平均で算出します。全体の予定工数のうち、何時間分の作業が終わったかという考え方です。

予定工数が入力されている場合(加重平均)

  • 親チケット
    • 子チケットA
      • 予定工数: 10時間
      • 進捗率: 50%
      • 完了: 10時間 × 50% = 5時間
    • 子チケットB
      • 予定工数: 30時間
      • 進捗率: 10%
      • 完了: 30時間 × 10% = 3時間

親チケットの進捗率は (5時間 + 3時間) ÷ (10時間 + 30時間) = 20% です。
※単純な平均 (50% + 10%) ÷ 2 = 30% にはなりません。

予定工数が未入力の場合

チケットの予定工数が未入力の場合は、重みが「1」とみなされます。

  • 親チケット
    • 子チケットA
      • 予定工数: 空欄(重み 1)
      • 進捗率: 50%
      • 完了: 0.5
    • 子チケットB
      • 予定工数: 空欄(重み 1)
      • 進捗率: 10%
      • 完了: 0.1

親チケットの進捗率は (0.5 + 0.1) ÷ (1 + 1) = 30% です。

注意点

  • 親チケットの進捗率は子チケットの値から自動計算されるため、親チケットの編集画面から手動で更新できません(入力欄が非表示になります)。
  • 「管理」→「設定」→「チケットトラッキング」タブ→「進捗率の算出方法」を「チケットのステータスに連動」にしている場合、親チケットの進捗率は以下の挙動になります。
    • 「管理」→「チケットのステータス」で親チケットのステータスに進捗率が設定済み: そのステータスの%が優先
    • 「管理」→「チケットのステータス」で親チケットのステータスに進捗率が未設定: 子チケットの加重平均

2. 「子チケットから独立」の場合

親チケットの編集画面から任意の進捗率(%)を手動で入力できます。親チケットの進捗率は子チケットの値と連動しないので、子チケットをすべて終了(100%)にしても親チケットの進捗率は自動では変わりません。

親チケット自体に作業があり、子チケットとは別に進捗を管理したい場合に適しています。

どちらの設定を使うべきか?

設定 メリット デメリット
子チケットの値から算出 タスクの積み上げが自動で反映され、全体の進捗が正確に把握できる。 親チケットの進捗率を個別に変更できず、すべての子チケットを更新する必要がある。
子チケットから独立 親チケット独自で進捗率を管理できる。自由度が高い。 子チケットの進捗率を親チケットに反映させるには、手動で更新する手間がかかる。

関連情報