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

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

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

이 튜토리얼에서는 GitLab 프로젝트를 이를 위한 설정하는 방법을 배웁니다.

GitLab에서 이슈 트리지를 위해 프로젝트를 설정하는 방법은 다음과 같습니다.

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

시작하기 전에

  • 이 튜토리얼에 기존 프로젝트를 사용하는 경우, 프로젝트에 적어도 보고자의 역할이 있는지 확인하세요.
  • 아래 단계를 따라 프로젝트의 부모 그룹을 나중에 만들기로 결정하고 나서 레이블을 가장 잘 활용하려면, 프로젝트 레이블을 그룹 레이블로 승격해야 합니다. 먼저 그룹을 만드는 것을 고려해보세요.

프로젝트 생성

프로젝트는 향후 코드 변경을 계획하는 데 사용되는 이슈를 포함합니다.

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

빈 프로젝트를 만들려면:

  1. 왼쪽 사이드바에서 맨 위에 있는 Create new () 및 New project/repository를 선택합니다.
  2. Create blank project를 선택합니다.
  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 라벨을 추가하면 이전 라벨이 제거됩니다.

note
범위가 지정된 라벨은 Premium 및 Ultimate 티어에서 사용할 수 있습니다. 무료 티어에서는 일반 라벨을 사용할 수 있지만, 이러한 라벨은 상호 배타적이지 않습니다.

각 라벨을 만들려면:

  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. 라벨 페이지에서 우선순위를 지정하려는 라벨 옆에 별표()를 선택합니다. 이제 이 라벨은 우선순위 라벨 아래의 라벨 디렉터리 상단에 나타납니다.
  2. 상대적인 우선순위를 변경하려면 이들을 디렉터리에서 위아래로 끌어올립니다. 디렉터리 상위에 있는 라벨일수록 우선순위도 높습니다.
  3. 이전에 만든 모든 라벨에 우선순위를 지정합니다. 상대적으로 더 높은 우선순위와 심각도를 가진 라벨이 낮은 값보다 디렉터리 상위에 표시되도록 하세요.

우선순위 라벨 디렉터리

이슈 트리지 보드 생성

들어오는 이슈 백로그에 대비하기 위해, 이슈 보드 를 만들어 라벨에 따라 이슈를 구성하는 것이 좋습니다. 카드를 끌어서 각종 디렉터리으로 빠르게 이슈를 만들고 라벨을 추가하는 데 사용할 수 있습니다.

이슈 보드를 설정하려면:

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

당장 보드의 디렉터리은 비어 있어야 합니다. 다음으로 몇 가지 이슈를 채워 넣을 것입니다.

기능에 대한 이슈 생성

예정된 기능과 버그를 추적하려면 몇 가지 이슈를 만들어야 합니다. 이슈는 프로젝트에 속하지만 이슈 보드에서 직접 만들 수도 있습니다.

예정된 기능을 위해 몇 가지 이슈를 만들어보세요. 버그에 대한 이슈는 발견하는 대로 만들 수 있습니다 (희망적으로는 그렇게 많지 않겠죠!).

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

  1. 열린 디렉터리에서 이슈 생성 () 를 선택합니다. 열린 디렉터리은 다른 보드 디렉터리에 들어가지 않는 이슈를 보여줍니다.

    이미 어떤 심각도 라벨을 가진 이슈를 만들어야 하는지 알고 있다면 해당 라벨 디렉터리에서 직접 만들 수 있습니다. 각 라벨 디렉터리에서 생성된 이슈는 해당 라벨이 지정됩니다.

  2. 필드를 완성합니다:
    • 제목사용자 등록 을 입력합니다.
  3. 이슈 생성 을 선택합니다.
  4. 이러한 단계를 몇 가지 더 만들기 위해 반복합니다.

    예를 들어, 애플리케이션을 개발 중이라면, 다음과 같은 이슈를 생성합니다:

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

첫 번째 트리지 이슈 보드가 준비되었습니다! 열린 디렉터리에서 몇 가지 이슈를 다양한 라벨 디렉터리 중 하나로 끌어 감으로써 심각도 라벨 중 하나를 추가하는 방법을 시도해 보세요.

예시 이슈가 있는 트리지 이슈 보드

다음 단계

다음으로, 다음을 할 수 있습니다:

  • 이슈 보드 사용 방법을 조정합니다. 몇 가지 옵션은 다음과 같습니다:
    • 현재 이슈 보드를 수정하여 우선 순위 및 유형 라벨에 대한 디렉터리도 추가합니다. 이렇게 함으로써 보드가 넓어지고 좌우로 스크롤할 수도 있게 될 것입니다.
    • 이슈 트리지 (우선 순위별)이슈 트리지 (유형별) 라는 별도의 이슈 보드를 만듭니다. 이렇게 함으로써 각각의 트리지 작업 유형을 분리할 수 있지만, 보드 간에 전환할 필요가 있을 것입니다.
    • 팀 이관을 위한 이슈 보드 설정 을 합니다.
  • 이슈 디렉터리에서 우선 순위 또는 심각도 순으로 각 라벨로 필터링한 이슈를 찾아보세요. 가능하다면, the “is one of” filter operator 를 활용해 보세요.
  • 이슈들을 작업 으로 분해합니다.
  • gitlab-triage gem 을 사용하여 프로젝트에서 이슈 트리지를 자동화하는 데 도움이 되는 정책을 만듭니다. 다음과 같은 열지도와 함께 요약 보고서를 생성합니다:

    예시 트리지 보고서 열지도

GitLab의 이슈 트리지에 대해 더 알아보려면, 이슈 트리지트리지 작업 을 참조하세요.