튜토리얼: 이슈 트리지를 위한 프로젝트 설정

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated

이슈 트리지는 유형 및 심각도에 따라 분류하는 프로세스입니다. 프로젝트가 성장하고 사람들이 더 많은 이슈를 만들면 들어오는 이슈를 어떻게 처리할지에 대한 워크플로우를 만드는 가치가 있습니다.

이 튜토리얼에서는 GitLab 프로젝트를 이슈 트리지에 설정하는 방법을 배우게 됩니다.

GitLab에서 프로젝트를 이슈 트리지로 설정하는 방법:

  1. 프로젝트 생성
  2. 유형, 심각도 및 우선 순위에 대한 기준 결정
  3. 기준 문서화
  4. 스코프된 라벨 생성
  5. 새 라벨 우선 순위 지정
  6. 이슈 트리지 보드 생성
  7. 기능을 위한 이슈 생성

시작하기 전에

  • 이 튜토리얼을 위해 기존 프로젝트를 사용하는 경우, 해당 프로젝트에 적어도 기여자 역할이 있는지 확인합니다.
  • 아래 단계를 따른 다음에 후에 프로젝트의 상위 그룹을 만들기로 결정하면 라벨을 최대한 활용하려면 프로젝트 라벨을 그룹 라벨로 승격해야 합니다. 먼저 그룹을 만드는 것을 고려하세요.

프로젝트 생성

프로젝트에는 예정된 코드 변경을 계획하는 데 사용되는 이슈가 포함됩니다.

이미 작업 중인 프로젝트가 있는 경우 유형, 심각도 및 우선 순위에 대한 기준 결정으로 이동하세요.

빈 프로젝트를 만들려면:

  1. 왼쪽 사이드바 상단에서 만들기() 및 새 프로젝트/저장소 만들기를 선택합니다.
  2. 빈 프로젝트 만들기를 선택합니다.
  3. 프로젝트 세부 정보를 입력합니다.
    • 프로젝트 이름이슈 트리지 튜토리얼을 입력합니다.
  4. 프로젝트 만들기를 선택합니다.

유형, 심각도 및 우선 순위에 대한 기준 결정

다음으로, 인식하고자 하는 이슈의 유형과 심각도 수준 및 우선 순위를 결정해야 합니다.

  • 인식하려는 작업의 유형. 보다 세분화된 접근이 필요하다면 각 유형에 대해 하위 유형을 생성할 수도 있습니다. 유형은 요청된 작업의 종류에 대한 이해를 얻기 위해 작업을 분류하는 데 도움이 됩니다.
  • 우선 순위심각도 수준. 들어오는 작업이 최종 사용자에 미치는 영향을 정의하고 우선 순위를 결정하는 데 도움이 됩니다.

이 튜토리얼에서는 다음과 같이 결정했다고 가정해 봅니다:

  • 유형: 버그, 기능, 유지 보수
  • 우선 순위: 1, 2, 3, 4
  • 심각도: 1, 2, 3, 4

영감을 얻으려면 GitLab에서 이러한 내용을 어떻게 정의하는지 확인해보세요:

기준 문서화

모든 기준에 동의한 후, 팀원들이 항상 접근할 수 있는 곳에 모두 기록해야 합니다.

예를 들어 프로젝트의 위키나 회사 핸드북에 GitLab Pages로 게시한 곳에 추가하세요.

스코프된 라벨 생성

Tier: Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated

다음으로, 이슈를 분류하기 위해 이를 추가할 라벨을 만듭니다.

이를 위한 최적의 도구는 스코프된 라벨입니다. 이를 사용하여 상호 배타적인 속성을 설정할 수 있습니다.

이전에 모아 둔 유형, 심각도 및 우선 순위 목록을 확인하여 해당하는 스코프된 라벨을 만들어야 합니다.

스코프된 라벨 이름에 있는 이중 콜론(::)은 동일한 범위의 두 개의 라벨이 함께 사용되는 것을 방지합니다. 예를 들어 type::bug 라벨을 이미 가지고 있는 이슈에 type::feature 라벨을 추가하면 이전 것이 제거됩니다.

참고: 스코프된 라벨은 프리미엄 및 얼티밋 티어에서 사용할 수 있습니다. 프리 티어를 사용 중이면 일반 라벨을 대신 사용할 수 있습니다. 그러나 두 개의 라벨이 상호 배타적이지 않습니다.

각 라벨을 만들려면:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하여 프로젝트를 찾습니다.
  2. 관리 > 라벨을 선택합니다.
  3. 새 라벨을 선택합니다.
  4. 제목 필드에 라벨의 이름을 입력합니다. type::bug로 시작하세요.
    • 바탕색을 선택하거나 특정 색상을 위해 배경 색 필드에 16진수 색상 값을 입력하여 색상을 선택할 수 있습니다.
  5. 라벨 만들기를 선택합니다.

이러한 단계를 반복하여 필요한 모든 라벨을 생성합니다:

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

새 라벨 우선 순위 설정

이제 새 라벨을 우선 라벨로 설정하여, 우선 순위 또는 라벨 우선 순위로 정렬할 경우 가장 중요한 이슈가 이슈 목록 상단에 표시되도록 합니다.

우선 순위 또는 라벨 우선 순위로 정렬할 때의 동작에 대해 알아보려면 이슈 목록 정렬 및 순서 지정을 참조하세요.

라벨을 우선 순위로 설정하려면:

  1. 라벨 페이지에서 우선 순위로 설정하려는 라벨 옆에 별표를 선택하세요 (). 이제 해당 라벨은 우선 순위 라벨 아래에 라벨 목록 상단에 표시됩니다.
  2. 이러한 라벨의 상대적인 우선 순위를 변경하려면 목록 상하로 드래그하세요. 목록 상단에 위치한 라벨일수록 더 높은 우선 순위를 가집니다.
  3. 이전에 생성한 모든 라벨에 우선 순위를 지정하세요. 우선순위와 심각도가 높은 라벨이 낮은 값보다 목록 상단에 표시되도록 확인하세요.

우선 순위 라벨 목록

이슈 트리지 보드 생성

들어오는 이슈 대기열에 대비하기 위해 라벨별로 이슈를 정리하는 이슈 보드를 생성하세요. 여기에서 이슈를 빠르게 생성하고 이슈에 라벨을 끌어다 놓아 추가할 수 있습니다.

이슈 보드 설정 방법:

  1. 보드의 범위를 결정하세요. 예를 들어, 이슈에 심각도를 할당하는 데 사용할 보드를 생성합니다.
  2. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 이슈 트리지 튜토리얼 프로젝트를 찾습니다.
  3. 계획 > 이슈 보드를 선택합니다.
  4. 이슈 보드 페이지의 왼쪽 상단에서 현재 보드 이름이 있는 드롭다운 목록을 선택하세요.
  5. 새 보드 만들기를 선택하세요.
  6. 제목 필드에 이슈 트리지 (심각도별)을 입력하세요.
  7. 열린 목록 표시 확인란을 선택하고 닫힌 목록 표시 확인란을 선택 해제하세요.
  8. 보드 만들기를 선택하세요. 빈 보드가 표시됩니다.
  9. severity::1 라벨을 위한 목록을 만드세요:
    1. 이슈 보드 페이지의 오른쪽 상단에서 목록 만들기를 선택하세요.
    2. 나타나는 열에서 드롭다운 목록에서 severity::1 라벨을 선택하세요.
    3. 보드에 추가를 선택하세요.
  10. severity::2, severity::3, severity::4 라벨에 대해 이전 단계를 반복하세요.

현재 보드의 목록은 비어 있어야 합니다. 다음으로 몇 가지 이슈를 추가하여 목록을 채우게 됩니다.

기능을 위한 이슈 생성

곧 나올 기능과 버그를 추적하기 위해 몇 가지 이슈를 생성해야 합니다. 이슈는 프로젝트에 속하지만 이슈 보드에서 직접 생성할 수도 있습니다.

이슈 트리지 (심각도별) 보드에서 이슈를 생성하려면:

  1. 열린 목록에서 새 이슈 만들기를 선택하세요 (). 열린 목록은 다른 목록에 맞지 않는 이슈를 표시합니다.

    이미 어떤 심각도 라벨을 사용해야 하는지 알고 있다면 해당 라벨 목록에서 직접 생성할 수 있습니다. 라벨 목록에서 생성된 각 이슈에는 해당 라벨이 지정됩니다.

  2. 다음을 입력하세요:
    • 제목 아래에 사용자 등록을 입력하세요.
  3. 이슈 생성을 선택하세요.
  4. 몇 가지 이슈를 생성하기 위해 이러한 단계를 반복하세요.

    예를 들어, 앱을 만드는 경우 다음과 같은 이슈를 생성합니다:

    • 사용자 등록
    • 프로필 생성
    • 검색 기능
    • 즐겨찾기 추가
    • 푸시 알림
    • 소셜 공유
    • 앱 내 메시지
    • 진행 상황 추적
    • 피드백 및 평가
    • 설정 및 기본 설정

첫 번째 트리지 보드를 사용할 준비가 되었습니다! 열린 목록에서 몇 가지 이슈를 어느 라벨 목록으로 끌어다 놓아 하나의 심각도 라벨을 추가할 수 있도록 해보세요.

예시 이슈를 포함한 트리지 이슈 보드

다음 단계

이제 다음을 수행할 수 있습니다:

  • 이슈 보드 사용 방법 수정. 몇 가지 옵션으로:
    • 현재 이슈 보드를 편집하여 우선 순위 및 유형 라벨 목록도 추가합니다. 이러면 보드가 더 넓어지며 가로 스크롤이 필요할 수 있습니다.
    • 이슈 트리지 (우선 순위별)이슈 트리지 (유형별)로 명명된 별도의 이슈 보드를 만듭니다. 이렇게 하면 다양한 유형의 트리지 작업을 분리할 수 있지만, 보드 간 전환이 필요합니다.
    • 팀 이언드를 위한 이슈 보드 설정.
  • 이슈 목록에서 우선 순위 또는 심각도별로 이슈를 찾아보고, 각 라벨로 필터링합니다. 가능하다면, “is one of” 필터 연산자를 사용하세요.
  • 작업으로 이슈를 분할합니다.
  • gitlab-triage으로 프로젝트 내에서 이슈 트리지를 자동화하는 데 도움이 되는 정책을 만듭니다. 다음과 같은 히트맵과 같은 써머리 보고서를 생성하세요:

    예시 트리지 보고서 히트맵

GitLab에서 이슈 트리지에 대해 더 알아보려면 이슈 트리지트리지 운영을 참조하세요.