ソフトウェア開発ライフサイクルのデータテンプレート

GitLab
ソフトウェア開発ライフサイクルのデータテンプレート

ソフトウェア開発ライフサイクルのデータテンプレート

このテンプレートでは、ソフトウェア開発ライフサイクルのプロセス分析に必要なデータを確認できます。収集する属性や追跡する主要なアクティビティを示し、GitLabから情報を直接抽出する方法も説明します。この資料を参考にデータを準備し、プロセスマイニングを始められます。
  • 収集を推奨する属性
  • 追跡する主なアクティビティ
  • データ抽出ガイド
イベントログを初めて作成する方はこちら: プロセスマイニング用イベントログの作成方法.

ソフトウェア開発ライフサイクルの属性

ソフトウェア開発ライフサイクルを詳しく分析し、改善するために、イベントログに含めることを推奨するデータ項目です。
3 必須 5 推奨 12 任意
名前 説明
アクティビティ
Activity
発生したプロセスの具体的なステップまたはイベントの名前です。例:課題の作成、マージリクエストのマージ。
説明

アクティビティ属性は、開発項目に対して発生した個々のイベントを記録します。GitLabでは単一のフィールドとして保存されるのではなく、課題、マージリクエスト、CI/CDパイプラインに関するさまざまな操作やタイムスタンプから導出されます。たとえば、課題の作成、コミットのプッシュ、パイプラインの失敗、マージリクエストの承認は、それぞれ別のアクティビティです。

この属性は、プロセスマップの作成、ワークフローの可視化、イベントの順序や頻度の分析に欠かせません。逸脱やステップ間のボトルネック、よく見られるプロセス経路の特定に使われます。

重要な理由

プロセスマップ上のステップを定義し、開発ワークフロー全体の可視化と分析を可能にします。

入手先

GitLabのイベントストリームに含まれるイベント種別や状態変更から導出します。または、課題やマージリクエストのcreated_at、merged_at、closed_atなどのタイムスタンプフィールドを解釈して導出します。

例
課題の作成開発の開始マージリクエストのマージパイプラインの失敗本番環境へのデプロイ
開始時刻
StartTime
アクティビティまたはイベントが始まった時刻を示すタイムスタンプです。
説明

StartTimeは、特定のアクティビティが発生した正確な日時を示します。GitLabのイベントでは、さまざまなタイムスタンプフィールドから取得します。たとえば、課題の作成アクティビティのStartTimeには課題のcreated_atタイムスタンプを、マージリクエストのマージアクティビティのStartTimeにはマージリクエストのmerged_atタイムスタンプを使います。

このタイムスタンプは、プロセスマイニングにおける時間情報の基礎です。イベントを時系列に並べ、アクティビティ間の所要時間やサイクルタイムを計算し、時間の経過に伴うプロセスのパフォーマンスを分析するために使います。

重要な理由

イベントの時系列を示す属性です。時間に基づくすべての指標の計算や、プロセスの流れの把握に欠かせません。

入手先

課題のcreated_at、updated_at、closed_atや、マージリクエストのmerged_atなど、GitLabのさまざまなタイムスタンプフィールドから抽出します。

例
2023-10-26T10:00:00Z2023-11-01T14:35:10Z2023-11-15T09:00:00Z
開発項目
DevelopmentItem
機能追加、不具合修正、タスクなどの作業単位を一意に識別するIDで、主要なケース識別子として使われます。
説明

開発項目は、ソフトウェア開発ライフサイクルを通じて進行する、追跡可能な個々の作業を表します。作成から最終的なデプロイまで、関連するすべてのアクティビティを1つのケースとして結び付けます。GitLabでは通常、プロジェクト内で一意な課題の内部ID(IID)で表されます。

開発項目ごとに分析すると、エンドツーエンドのサイクルタイムの測定、ボトルネックの特定、プロセス適合性チェックが可能になります。構想から本番環境へのリリースまで、作業がどれだけ効率よく進むかを把握する基盤となります。

重要な理由

これは、プロセス内のすべてのイベントを結び付ける重要なケース識別子です。個々の作業項目のライフサイクル全体を追跡できます。

入手先

通常はGitLabの課題の内部ID(IID)です。Issues APIの応答にあるiidフィールドで確認できます。

例
1024512PRJ-2345
プロジェクト名
ProjectName
開発項目が属するGitLabプロジェクトの名前です。
説明

この属性は、作業が行われているコードリポジトリまたはプロジェクトを特定します。GitLabでは、すべての課題とマージリクエストがプロジェクトに属します。

プロジェクト名ごとに分析すると、製品、コンポーネント、サービス間でパフォーマンスを比較できます。SDLCプロセスの状態が良好なプロジェクトを特定したり、関心のある領域に絞ってダッシュボードを表示したりする際に役立ちます。

重要な理由

製品、アプリケーション、コンポーネントごとにプロセス分析を分類でき、対象を絞った改善に役立ちます。

入手先

IssuesとMerge Requestsのproject_idを介して関連付けたProject APIのnameまたはpath_with_namespaceフィールドから取得します。

例
platform/api-gatewayfrontend/customer-portalmobile/ios-app
担当者
Assignee
イベント発生時に課題またはマージリクエストを担当していたユーザーです。
説明

担当者は、プロセスの各時点で作業項目を担当する開発者またはユーザーです。GitLabでは、課題またはマージリクエストのassigneeまたはassigneesフィールドに記録されます。

担当者別の分析は、開発者の作業負荷と配分のダッシュボードに欠かせません。リソースの利用状況を把握し、負荷が集中している個人やチームを特定し、担当者間の引き継ぎを分析できます。

重要な理由

作業を担当した人を追跡し、作業負荷やリソース配分の効率を分析できます。引き継ぎによる遅れの特定にも役立ちます。

入手先

GitLabのIssues APIおよびMerge Requests APIの応答にあるassignee.usernameまたはassigneesフィールドから取得します。

例
jdoeasmithr.williams
終了時刻
EndTime
アクティビティまたはイベントが完了した時刻を示すタイムスタンプです。
説明

EndTimeは、アクティビティが終了した正確な日時を示します。課題の作成など、GitLabの多くの単発イベントでは、EndTimeとStartTimeは同じです。コードレビューのように所要時間があるアクティビティでは、最後の承認が行われた時刻など、完了時のタイムスタンプを表します。

この属性は、個々のアクティビティの所要時間(処理時間)を正確に計算するために欠かせません。タスクに実際に取り組んだ時間と、タスク間の待ち時間を区別できるため、ボトルネックを詳しく分析できます。

重要な理由

アクティビティの正確な所要時間(処理時間)を計算でき、プロセス内の非効率なステップの特定に役立ちます。

入手先

単発イベントではStartTimeと同じです。所要時間のあるアクティビティでは、データ内の対応する完了イベントを特定して導出します。

例
2023-10-26T10:00:00Z2023-11-01T18:00:15Z2023-11-15T11:30:00Z
重大度
Severity
通常は不具合やインシデントに設定される、開発項目の重大度です。
説明

重大度は、不具合や問題の影響の大きさを示し、重大から軽微までの段階があります。GitLabには標準の重大度フィールドがないため、ほとんどの場合、severity::1やseverity::2などのラベルで管理します。

この属性は、重大度のエスカレーション傾向を示すダッシュボードと関連する重要業績評価指標(KPI)に欠かせません。ライフサイクルを通じた重大度の変化を分析すると、当初の見積もりが甘かった問題や、問題を悪化させるプロセスを明らかにできます。

重要な理由

作業の優先順位付けや、重大度の高い項目がより早く処理されているかの分析に役立ちます。変更を追跡すると、重大度のエスカレーション頻度を示す重要業績評価指標(KPI)を確認できます。

入手先

GitLabの課題に付けられたlabelsから導出します。S1やS2などのラベルを重大度に対応付ける必要があります。

例
1 - 重大2 - 高3 - 中4 - 低
開発項目の種類
DevelopmentItemType
機能追加、不具合、タスク、保守など、開発項目の分類です。
説明

この属性は、実施する作業の種類を分類します。GitLabでは通常、課題に付けるラベルで管理します。チームはラベルを使って、新機能の開発、不具合の修正、技術的負債への対応など、作業の種類を区別します。

開発項目の種類ごとに分析すると、作業の種類によるプロセスの流れやサイクルタイムを比較できます。たとえば、不具合の修正が機能開発より早いか、技術的負債への対応で異なるレビュー手順が使われているかを分析できます。

重要な理由

作業の種類ごとにプロセスを分類すると、遅延、手戻り、逸脱が起きやすい作業を特定できます。

入手先

通常はGitLabの課題に付けられたlabelsから導出します。個々のラベルを標準化された種類に変換するためのマッピングが必要です。

例
機能追加不具合タスク技術的負債
サイクルタイム
CycleTime
開発項目の最初のアクティビティから最後のアクティビティまでにかかった合計時間です。
説明

サイクルタイムは、ケースの所要時間を測定する計算指標です。通常、1つの開発項目について、最初のイベント(例:「課題の作成」)から最後のイベント(例:「本番環境へのデプロイ」)までの時間差として算出します。

プロセス全体の効率を測る主要なKPIです。「SDLCのエンドツーエンド・サイクルタイム」などのダッシュボードで中心となる指標であり、改善状況の追跡や、システム上の問題を示す可能性がある長期化したケースの特定に使います。

重要な理由

開発ライフサイクル全体の効率を測定する、プロセスマイニングの主要なKPIです。

入手先

プロセスマイニングツールが、固有のCaseIdごとにStartTimeの最大値から最小値を差し引いて算出します。

例
10日4時間23時間15分35日
ソースシステム
SourceSystem
データの取得元となるシステムを示します。
説明

この属性は、プロセスデータの取得元を示します。このデータモデルでは、値は常にGitLabです。

Jiraで計画しGitLabで実行する場合のように、複数のシステムからプロセスデータを統合する環境では、この属性が重要です。データの絞り込みや分類に使えるほか、データの来歴の管理にも役立ちます。

重要な理由

データの取得元を明確にし、データガバナンスや複数の業務システムからのデータ統合を支援します。

入手先

データ変換時に追加する固定値のGitLabです。

例
GitLab
チーム名
TeamName
プロジェクトまたは担当者に関連付けられた開発チームです。
説明

チーム名は、開発項目を担当するグループまたはチームを示します。通常、GitLabの標準フィールドではないため、プロジェクトの命名規則やグループ構成から導出するか、外部の参照テーブルを使って担当者を各チームに対応付けます。

この属性を使うと、チーム単位でプロセスのパフォーマンスを分析できます。チーム間の効率、作業負荷、プロセス遵守状況を比較でき、チーム別にステージ固有のボトルネック分析を行うダッシュボードにも役立ちます。

重要な理由

チーム間のパフォーマンス分析やプロセス比較が可能になり、チーム固有のボトルネックや優れた取り組みを特定できます。

入手先

多くの場合、GitLab外で定義されたチーム構成にプロジェクト名や担当者を対応付けるか、GitLabのグループ階層から推定します。

例
フロントエンド-アルファバックエンド-サービスプラットフォーム-インフラ
パイプラインのステータス
PipelineStatus
CI/CDパイプライン実行のステータスです。「成功」「失敗」「実行中」などがあります。
説明

この属性は、コミットまたはマージリクエストに関連付けられたCI/CDパイプラインの実行結果を示します。GitLabでよく使われるステータスには、「実行中」「保留中」「成功」「失敗」「キャンセル」「スキップ」があります。

このデータは「手戻りと再実行の分析」ダッシュボードに欠かせません。パイプラインの頻繁な失敗は、手戻りや遅延の大きな原因になることがあります。開発効率とコード品質を高めるには、失敗の頻度や発生箇所、影響を分析することが重要です。

重要な理由

自動ビルドとテストの成功・失敗を追跡し、手戻りの繰り返しやコード品質、自動テストに関する問題を明らかにします。

入手先

GitLab CI/CD Pipelines APIの応答にある「status」フィールドから取得します。

例
成功失敗実行中キャンセル
マージリクエストのステータス
MergeRequestStatus
イベントに関連付けられたマージリクエストのステータスです。「オープン」「マージ済み」「クローズ」などがあります。
説明

この属性は、イベント発生時点のマージリクエスト(MR)の状態を記録します。GitLabのMRには、「オープン」「クローズ」「マージ済み」「ロック」の状態があります。開発項目全体のステータスとは別の情報です。

MRのステータスを追跡することは、SDLCのコード統合フェーズを分析するうえで重要です。「コードレビューのサイクルタイムと処理量」などのダッシュボードに利用でき、MRの作成からレビュー、承認、マージまでの遅延を特定するのに役立ちます。

重要な理由

コードレビューとマージの状況を可視化します。SDLCでは、この工程が重大なボトルネックになることが少なくありません。

入手先

GitLab Merge Requests APIの応答にある「state」フィールドから取得します。

例
未着手マージ済みクローズ済みロック
マージ先ブランチ
TargetBranch
マージリクエストの変更を取り込む先のブランチ名です。
説明

マージ先ブランチとは、変更をマージする対象のブランチです。たとえば、「main」「develop」や「release/1.5」のようなリリースブランチがあります。マージリクエストの基本情報の1つです。

マージ先ブランチごとに分析すると、異なるブランチへのマージでプロセスにどのような違いがあるかを把握できます。たとえば、「main」へのマージは、機能ブランチへのマージより承認プロセスが厳しく、サイクルタイムも長い場合があります。また、本番環境へのデプロイと、その他のコード統合を区別するのにも役立ちます。

重要な理由

マージ先ブランチによってプロセスが大きく異なる場合があるため、開発やリリースのワークフローを区別するのに役立ちます。

入手先

GitLab Merge Requests APIの応答にある「target_branch」フィールドから取得します。

例
maindeveloprelease/v2.1.0hotfix/user-auth-bug
マイルストーン名
MilestoneTitle
開発項目が割り当てられているマイルストーンまたはスプリントのタイトルです。
説明

GitLabのマイルストーンは、スプリントやリリースバージョンなど、特定の目標や期間に対する作業の進捗を追跡するために使います。この属性には、マイルストーンの名前またはタイトルが記録されます。

特定のスプリントや計画期間におけるプロセスのパフォーマンスを分析できます。スプリントごとのサイクルタイムの変化を確認したり、プロセスビューを絞り込んで次回リリースに関係する作業だけを表示したりできます。

重要な理由

開発作業をスプリントやリリースなどの計画サイクルに関連付け、予定期間に対するパフォーマンスを分析できます。

入手先

GitLab IssuesまたはMerge Requests APIの応答にある「milestone.title」フィールドから取得します。

例
2023年第4四半期リリーススプリント23.11フェーズ1:MVP
リリースバージョン
ReleaseVersion
デプロイに関連付けられた、予定または実際のソフトウェアバージョンタグです。
説明

この属性は、開発項目がどのソフトウェアリリースに含まれるかを示します。GitLabでは、マイルストーン、保護タグ、またはリリース機能のエントリを通じて関連付けることができます。

この情報は「リリーススケジュールの遵守状況の追跡」ダッシュボードに欠かせません。リリースバージョンに設定した予定日と実際のデプロイ日を比較することで、組織がスケジュールを守れているかを測定し、リリース遅延の原因を調べられます。

重要な理由

開発項目を特定のソフトウェアリリースに関連付けます。リリースの進捗とスケジュールの遵守状況を追跡するうえで重要です。

入手先

GitLab Releases、Gitタグ名、またはリリース計画に使うマイルストーンのタイトルから取得できます。

例
v1.2.0v3.0.0-beta2023.4.1
最終データ更新日時
LastDataUpdate
このイベントのデータがソースシステムから最後に更新された日時を示すタイムスタンプです。
説明

この属性には、イベントデータが最後に抽出された日時、またはプロセスマイニング用データセットで更新された日時が記録されます。イベントが発生した時刻ではなく、イベントの記録が最後に同期された時刻を示します。

データの鮮度を把握し、プロセス分析が適時に行われているかを確認するうえで重要な情報です。ダッシュボードや重要業績評価指標(KPI)が新しいデータに基づいていることを確認でき、ソースシステムと分析データの間に生じる遅れも把握できます。

重要な理由

データの鮮度を明らかにし、プロセス分析がどの程度最新の状態かを把握できるようにします。

入手先

データ更新時に、データ抽出ツールまたはETLプロセスによって生成、記録されるタイムスタンプです。

例
2024-05-21T02:00:00Z2024-05-22T02:00:00Z
引き継ぎ待ち時間
HandoffWaitTime
担当者が異なる連続した2つのアクティビティ間に生じる、計算上の待機時間です。
説明

この指標は、あるアクティビティの完了から次のアクティビティの開始までの時間を、担当者が変わる場合に算出します。たとえば、開発者の作業完了からレビュー担当者によるコードレビュー開始までの時間を測定します。

「平均引き継ぎ待ち時間」KPIの中心となる指標です。チーム間や担当者間のリソース配分、コミュニケーションに潜む非効率を明らかにし、実作業が行われていない間の遅延を把握できます。

重要な理由

担当者やチーム間の引き継ぎで発生する待機時間を定量化し、見えにくい遅延やコミュニケーション上のボトルネックを明らかにします。

入手先

プロセスマイニングツールが算出します。ケース内の連続するイベントを分析し、「担当者」が異なるかを確認したうえで、時間差を計算します。

例
1日2時間15分8時間
手戻りの有無
IsRework
アクティビティが手戻りのループに含まれるかを示す真偽値です。
説明

この計算属性は、テスト開始後に開発へ戻るなど、プロセスが後戻りするアクティビティを示します。通常、同じケースで「パイプライン失敗」または「QAテスト開始」の後に「開発開始」が発生するなど、特定のアクティビティの並びを検出して判定します。

この属性は「手戻りと再実行の分析」ダッシュボードと「テスト後の手戻り率」KPIに直接使われます。手戻りを簡単に絞り込み、定量化できるため、頻度や原因、プロジェクトのスケジュールへの影響を把握できます。

重要な理由

手戻りを直接特定して定量化できるため、プロセスの非効率や品質上の問題の原因と影響を分析しやすくなります。

入手先

プロセスマイニングツールが、ケースごとのアクティビティの順序を分析し、手戻りを示すパターンを特定して算出します。

例
truefalse
開発項目のステータス
DevelopmentItemStatus
イベント発生時点での開発項目のステータスです。未着手、進行中、クローズなどがあります。
説明

この属性は、主要な作業項目(通常はGitLabの課題)の状態を示します。GitLabの課題にはopenedまたはclosedのstateがあります。より細かなステータスは、Status::TriageやStatus::In-Dev、Status::In-Reviewなどのスコープ付きラベルで管理されることがよくあります。

ステータスの変更を追跡すると、ケースのライフサイクルを把握できます。各状態に費やした時間を特定でき、SDLCのエンドツーエンドのサイクルタイムなどのダッシュボードで、進行中または完了済みの作業を絞り込む際にも使えます。

重要な理由

ケースの状態を示し、各段階に費やした時間の分析や、進行中と完了済みの作業の絞り込みを可能にします。

入手先

基本のステータスは、GitLabの課題のstateフィールド(opened、closed)から取得します。より細かなステータスは、通常ラベルから導出します。

例
未着手クローズ済み進行中レビュー中
必須 推奨 任意

ソフトウェア開発ライフサイクルのアクティビティ

プロセスを正確に把握し、ボトルネックを特定するために、イベントログに記録する主な工程とマイルストーンです。
4 推奨 8 任意
アクティビティ 説明
マージリクエストのマージ
コードレビューと統合プロセスが正常に完了したことを示すアクティビティです。ユーザーがマージリクエストのブランチをターゲットブランチにマージしたときに発生する明示的なイベントです。
重要な理由

開発とレビューの完了を示す重要な節目です。開発サイクルタイムの測定終了点であり、デプロイまでのリードタイムの測定開始点でもあります。

入手先

merge_requestsテーブルのmerged_atタイムスタンプから取得する明示的なイベントです。マージ時にはシステムノートも作成されます。

記録

マージリクエストのmerged_atタイムスタンプを使用します。

イベントタイプ explicit
マージリクエストの作成
初期の開発作業が完了し、コードがレビューと統合に進める状態になったことを示します。GitLabのワークフローにおける明示的な主要イベントで、開発者が新しいマージリクエスト(MR)を作成したときに記録されます。
重要な理由

開発からレビューとテストへの引き継ぎを示す重要な節目です。コードレビューとCI/CDパイプラインのサイクル全体を分析する起点になります。

入手先

merge_requestsテーブルのcreated_atタイムスタンプ、またはMerge Requests APIから取得する明示的なイベントです。

記録

マージリクエストのcreated_atタイムスタンプを使用します。

イベントタイプ explicit
本番環境へのデプロイ
コードが稼働中の本番環境に正常にデプロイされ、エンドユーザーが利用できる状態になったことを示します。GitLabのCI/CDパイプラインで、本番環境へのデプロイ専用ジョブが正常に完了したときに記録されます。
重要な理由

これはプロセスの主要な終了イベントで、価値が届けられたことを示します。SDLCのエンドツーエンドのサイクルタイムとリリース頻度を測定するうえで欠かせません。

入手先

本番環境へのデプロイ専用CI/CDジョブが正常に完了したときのfinished_atタイムスタンプから取得します。GitLabのEnvironments機能で明示的に追跡されます。

記録

本番環境へのデプロイが正常に完了したCIジョブのfinished_atタイムスタンプを使用します。

イベントタイプ explicit
課題の作成
このアクティビティは開発ライフサイクルの開始を示し、機能追加、不具合、タスクなどの新しい作業項目が作成されたことを表します。GitLabでユーザーが課題を作成すると、その作成日時が記録され、明示的なイベントとして取得されます。
重要な理由

これはエンドツーエンドのプロセスにおける主要な開始イベントです。課題の作成からデプロイまでの時間を分析すると、SDLCのサイクルタイム全体を把握できます。

入手先

これは、issuesテーブルのcreated_atタイムスタンプ、またはIssues APIから取得する明示的なイベントです。システムノートにも作成イベントが記録されます。

記録

課題のcreated_atタイムスタンプを使用します。

イベントタイプ explicit
コードレビューの開始
マージリクエストのピアレビューが始まったことを示します。作成者以外のユーザーによる最初のコメントやスレッド投稿など、レビューに関連する最初の操作から推定します。
重要な理由

MRの作成からレビュー開始までの時間を測定すると、待ち行列による遅れが明らかになります。この待ち時間を短縮することは、コードレビュー全体のサイクルを短くするうえで重要です。

入手先

MRの作成者以外が投稿した最初のコメントまたはレビュースレッドのタイムスタンプから推定します。このデータはシステムノートまたはNotes APIから取得できます。

記録

MRの作成者以外による最初のユーザーコメントのタイムスタンプを確認します。

イベントタイプ inferred
デプロイの開始
ステージング環境や本番環境など、特定の環境にコードをリリースするプロセスの開始を表します。GitLabでは、CI/CDパイプライン内のdeployジョブの開始に該当します。
重要な理由

デプロイの開始を追跡すると、デプロイ段階にかかる時間を切り分けて把握できます。デプロイまでのリードタイムを測定し、短縮するうえで重要です。

入手先

デプロイジョブとして設定されたCI/CDジョブのstarted_atタイムスタンプから取得します。これはGitLabのEnvironments and Deployments機能の一部です。

記録

デプロイタスクのCIジョブログに記録されたstarted_atタイムスタンプを使用します。

イベントタイプ explicit
パイプラインの失敗
ビルドエラーやテスト失敗など、CI/CDパイプラインの実行がいずれかの段階で失敗したときに発生するアクティビティです。GitLabは各パイプラインの最終ステータスを明示的に記録するため、失敗を簡単に特定できます。
重要な理由

パイプラインの失敗は、手戻りの主な原因です。発生頻度、継続時間、原因を分析すると、品質上の問題、不安定なテスト、開発者へのフィードバックループにおけるボトルネックを特定できます。

入手先

ci_pipelinesテーブルのパイプラインレコードで、ステータスがfailedになっているものを特定します。finished_atタイムスタンプから失敗した時刻を確認できます。

記録

ステータスがfailedのパイプラインレコードに絞り込み、finished_atタイムスタンプを使用します。

イベントタイプ explicit
パイプラインの開始
ビルド、テスト、セキュリティスキャンなどを実行するCI/CDパイプラインの開始を表します。コミットやMRの作成などをきっかけにパイプラインが実行されると、GitLabは開始タイムスタンプを含むパイプラインレコードを明示的に作成します。
重要な理由

パイプラインの実行状況を追跡すると、自動テストや統合プロセスの健全性と効率を監視できます。自動検証にかかる時間の把握にも役立ちます。

入手先

ci_pipelinesテーブルのパイプラインレコードにあるcreated_atまたはstarted_atタイムスタンプ、またはPipelines APIから取得します。

記録

MRのブランチに関連付けられたパイプライン実行レコードのタイムスタンプを使用します。

イベントタイプ explicit
承認の追加
レビュー担当者がマージリクエストのコード変更を正式に承認したことを表します。ユーザーがApproveボタンをクリックしたときに、GitLabが明示的に記録するイベントです。
重要な理由

承認は品質を確保するための重要なゲートです。承認を追跡すると、必要な承認を得るまでの時間を分析し、レビュー方針へのコンプライアンスを確認できます。

入手先

マージリクエストの承認イベントから取得します。Approvals APIで確認できるほか、MRの履歴にも表示されます。

記録

マージリクエストの承認イベントログに記録されたタイムスタンプを使用します。

イベントタイプ explicit
課題のクローズ
通常は変更のデプロイと検証が完了した後に、作業項目を最終的に事務処理上クローズしたことを表します。GitLabでユーザーが課題をクローズしたときに記録される明示的なイベントです。
重要な理由

課題のクローズは、関連する作業がすべて完了したことを示す場合がよくあります。クローズ時刻とデプロイ時刻を比較すると、デプロイ後の検証や事務処理に遅れがないかを確認できます。

入手先

issuesテーブルのclosed_atタイムスタンプ、または対応するシステムノートから取得する明示的なイベントです。

記録

課題のclosed_atタイムスタンプを使用します。

イベントタイプ explicit
課題の担当者設定
課題が特定の開発者またはチームに割り当てられ、作業の担当が決まったことを表します。GitLabでは、課題の担当者フィールドに値が設定されたとき、または変更されたときに、このイベントが明示的に記録されます。
重要な理由

担当者の割り当てを追跡すると、リソース配分、チームの作業負荷、引き継ぎにかかる時間を分析できます。作業の作成から着手までの遅れも特定しやすくなります。

入手先

課題のシステムノートから取得します。システムノートには、assigneeが追加または変更された日時が記録されます。

記録

課題のシステムノートからassignee changedイベントを抽出します。

イベントタイプ explicit
開発の開始
このアクティビティは、課題に関する実際のコーディング作業の開始を示します。GitLabには開発開始を明示するボタンがないため、通常は課題に関連付けられたブランチへの最初のコードコミットから推定します。
重要な理由

価値を生み出す開発作業の開始時点を特定できます。計画や待ち時間と切り分けて、コーディングにかかった時間を正確に測定できます。

入手先

課題に関連付けられたフィーチャーブランチの最初のコミットのタイムスタンプから推定します。そのためには課題とブランチの関連付けが必要で、通常は命名規則やメタデータを使います。

記録

課題IDに関連付けられたブランチで、最初のコミットのタイムスタンプを確認します。

イベントタイプ inferred
推奨 任意

データ抽出ガイド

GitLabからデータを取得する方法

準備はできましたか?

このテンプレートを使ってデータを準備し、ソフトウェア開発ライフサイクルの改善を始めましょう。今日からプロセスの見直しに取り組めます。

ソフトウェア開発ライフサイクルを改善:今すぐ最適化を開始

SDLCのボトルネックを解消し、サイクルタイムを30%短縮して、品質を高めましょう。

無料トライアルを開始しましょう

クレジットカードは不要です。すぐに最適化を始められます。