正式なドキュメントは英語版であり、この日本語訳はAI支援翻訳により作成された参考用のものです。日本語訳の一部の内容は人間によるレビューがまだ行われていないため、翻訳のタイミングにより英語版との間に差異が生じることがあります。最新かつ正確な情報については、英語版をご参照ください。

チュートリアル: イシュートリアージ用のプロジェクトをセットアップする

  • プラン: Free、Premium、Ultimate
  • 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated

トリアージとは、種類と重大度に応じて分類するプロセスです。プロジェクトが成長し、より多くのイシューが作成されるにつれて、受信イシューをトリアージする方法のワークフローを作成する価値があります。

このチュートリアルでは、そのためのGitLabプロジェクトを設定する方法を学習します。

プロジェクトでイシュートリアージのためにGitLabを設定するには:

  1. プロジェクトを作成する
  2. 種類、重大度、および優先順位の基準を決定
  3. 基準をドキュメント化
  4. スコープ付きラベルを作成
  5. 新しいラベルを優先
  6. イシュートリアージボードを作成
  7. 機能のイシューを作成

はじめる前

  • このチュートリアルで既存のプロジェクトを使用している場合は、プロジェクトでレポーター、デベロッパー、メンテナー、またはオーナーロールを持っていることを確認してください。
  • 下記のステップに従い、以降でプロジェクトの親グループを作成することを決定した場合、ラベルを最適に活用するには、プロジェクトラベルをグループラベルにプロモートする必要があります。まずグループを作成することを検討してください。

プロジェクトを作成する

プロジェクトには、今後のコード変更を計画するために使用されるイシューが含まれています。

作業中のプロジェクトがすでにある場合は、種類、重大度、および優先順位の基準を決定に進んでください。

空のプロジェクトを作成するには:

  1. 右上隅で、新規作成 plus )と新規プロジェクト/リポジトリを選択します。
  2. 空のプロジェクトの作成を選択します。
  3. プロジェクトの詳細を入力します。
    • プロジェクト名に、Issue triage tutorialと入力します。
  4. プロジェクトを作成を選択します。

種類、重大度、および優先順位の基準を決定

次に、以下を決定する必要があります:

  • 認識したいTypesのイシュー。よりきめ細かいアプローチが必要な場合は、各種類にサブタイプを作成することもできます。種類は、チームにリクエストされる作業の種類を理解するために、作業を分類するのに役立ちます。
  • prioritiesseveritiesのレベル。これは、受信する作業がエンドユーザーに与える影響を定義し、優先順位付けを支援するためです。

このチュートリアルでは、以下を決定したとします:

  • 種類: BugFeature、およびMaintenance
  • 優先: 123、および4
  • 重大度: 123、および4

参考として、GitLabでこれらをどのように定義しているかを参照してください:

基準をドキュメント化

すべての基準に同意したら、チームメイトがいつでもアクセスできる場所にすべて書き留めてください。

たとえば、プロジェクトのWikiに追加したり、GitLab Pagesで公開された会社のハンドブックに追加したりします。

スコープ付きラベルを作成

  • プラン: Premium、Ultimate
  • 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated

次に、イシューを分類するために追加するラベルを作成します。

これに最適なツールはスコープ付きラベルで、これを使用して相互に排他的な属性を設定できます。

以前にまとめた種類、重大度、および優先順位のリストと照合して、一致するスコープ付きラベルを作成します。

スコープ付きラベル名にあるダブルコロン(::)は、同じスコープの2つのラベルが一緒に使用されるのを防ぎます。たとえば、type::featureラベルをすでにtype::bugを持つイシューに追加すると、以前のものが削除されます。

スコープ付きラベルはPremiumおよびUltimateプランで利用できます。Freeプランの場合は、代わりに通常のラベルを使用できます。ただし、それらは相互に排他的ではありません。

各ラベルを作成するには:

  1. 上部のバーで、検索または移動先を選択して、プロジェクトを見つけます。
  2. 管理 > ラベルを選択します。
  3. 新しいラベルを選択します。
  4. タイトルフィールドにラベルの名前を入力します。から開始します。type::bugで始まる。
  5. (オプション)使用可能な色から選択するか、背景色フィールドに特定の色を表す16進数のカラー値を入力して、色を選択します。
  6. ラベルを作成を選択します。

必要なすべてのラベルを作成するには、これらの手順を繰り返します:

  • type::bug
  • type::feature
  • type::maintenance
  • priority::1
  • priority::2
  • priority::3
  • priority::4
  • severity::1
  • severity::2
  • severity::3
  • severity::4

新しいラベルを優先

次に、新しいラベルを優先ラベルとして設定します。これにより、優先順またはラベル優先順でソートした場合に、最も重要なイシューがイシューリストの最上部に表示されるようになります。

優先順またはラベル優先順でソートした場合に何が起こるかについては、イシューリストのソートと順序付けを参照してください。

ラベルの優先度を設定するには:

  1. ラベルページで、優先したいラベルの横にある星( star-o )を選択します。このラベルは、優先ラベルの下のラベルリストの最上部に表示されます。
  2. これらのラベルの相対的な優先度を変更するには、リストを上下にドラッグします。リストの上位にあるラベルは、より高い優先度を取得します。
  3. 以前に作成したすべてのラベルを優先します。優先度と重大度が高いラベルが、低い値よりもリストの上位にあることを確認してください。

11個の優先ラベル付きスコープ付きラベルのリスト

イシュートリアージボードを作成

受信するイシューバックログに備えて、イシューをラベルで整理するイシューボードを作成します。これを使用して、カードをさまざまなリストにドラッグすることで、イシューをすばやく作成し、ラベルを追加できます。

イシューボードを設定するには:

  1. ボードのスコープを決定します。たとえば、イシューに重大度を割り当てるために使用するものを1つ作成します。
  2. トップバーで検索または移動先を選択し、Issue triage tutorialプロジェクトを見つけます。
  3. 計画 > イシューボードを選択します。
  4. イシューボードページの上部左隅にあるドロップダウンリストで、現在のボード名を選択します。
  5. 新しいボードを作成を選択します。
  6. タイトルフィールドにIssue triage (by severity)を入力します。
  7. オープンリストを表示するチェックボックスをオンのままにし、クローズドリストを表示するチェックボックスをオフにします。
  8. ボードを作成するを選択します。空のボードが表示されます。
  9. severity::1ラベルのリストを作成します:
    1. イシューボードページの右上隅で、Create listを選択します。
    2. 表示される列で、ドロップダウンリストからseverity::1ラベルを選択します。
    3. ボードに追加を選択します。
  10. ラベルseverity::2severity::3、およびseverity::4についても、前の手順を繰り返します。

現時点では、ボード内のリストは空であるはずです。次に、いくつかのイシューでそれらを埋めます。

機能のイシューを作成

今後の機能やバグを追跡するには、いくつかのイシューを作成する必要があります。イシューはプロジェクトに属しますが、イシューボードから直接作成することもできます。

計画された機能のイシューをいくつか作成することから始めます。バグを見つけたら(うまくいけばあまり多くない!)、それらのイシューを作成できます。

**Issue triage(by severity)**ボードからイシューを作成するには:

  1. オープンリストで、イシューの新規作成 plus )を選択します。オープンリストは、他のボードリストに収まらないイシューを表示します。

    どの重大度ラベルをイシューに付けるべきか既に分かっている場合は、そのラベルリストから直接作成できます。ラベルリストから作成された各イシューには、そのラベルが付けられます。

  2. フィールドに入力します:

    • タイトルの下に、User registrationを入力します。
  3. イシューを作成を選択します。

  4. これらの手順を繰り返して、さらにいくつかのイシューを作成します。

    たとえば、アプリをビルドしている場合は、次のイシューを作成します:

    • User registration
    • Profile creation
    • Search functionality
    • Add to favorites
    • Push notifications
    • Social sharing
    • In-app messaging
    • Track progress
    • Feedback and ratings
    • Settings and preferences

最初のトリアージイシューボードが準備できました!オープンリストからいくつかのイシューをラベルリストのいずれかにドラッグして、いずれかの重大度ラベルを追加してみてください。

ラベルのないイシューと、イシューへのラベル付けに使用する優先度付き「重大度」ラベルを示すイシューボード

次の手順

その後、次のことができるようになります。

  • イシューボードの使用方法を微調整する。次のようなオプションがあります。

    • 現在のイシューボードを編集して、優先順位と種類ラベルのリストも持たせます。このようにすると、ボードが広くなり、水平スクロールが必要になる場合があります。
    • Issue triage (by priority)Issue triage (by type)という名前の個別のイシューボードを作成します。このようにすると、さまざまな種類のトリアージ作業を分離できますが、ボードを切り替える必要があります。
    • チームハンドオフのためのイシューボードを設定する
  • イシューリストで優先度または重大度別にイシューを閲覧し、各ラベルでフィルタリングします。利用可能な場合は、「is one of」フィルター演算子を使用してください。

  • イシューをタスクに分解します。

  • gitlab-triage gemを使用して、プロジェクトでイシュートリアージを自動化するポリシーを作成します。次のようなヒートマップ付きの概要レポートを生成します:

    「優先」と「重大度」ラベル付きのイシューの対角ヒートマップ

GitLabでのイシュートリアージの詳細については、イシュートリアージトリアージオペレーションを参照してください。