튜토리얼: GitLab을 사용하여 칸반 촉진하기

이 튜토리얼은 GitLab 이슈 보드를 사용하여 칸반 워크플로우에서 작업을 관리하는 단계를 안내합니다.

그룹, 프로젝트, 보드를 설정하고 이슈를 조직함으로써 투명성, 협업, 및 전달을 향상시킬 수 있습니다.

GitLab 이슈 보드를 사용하여 칸반 워크플로우에서 작업을 관리하려면:

기타 정보는 이 페이지 하단의 고급 팁 및 요령을 참조하세요.

그룹 및 프로젝트 설정

해당 단계를 따라 그룹 만들기프로젝트 만들기를 진행하세요.

팀이 여러 저장소에서 작업하는 경우, 그룹 내 각 저장소에 대해 프로젝트를 만듭니다.

이슈는 각각의 프로젝트에 존재하지만, 칸반 보드는 그룹 내에 있어 모든 프로젝트에 대한 가시성을 유지할 수 있습니다.

단일 저장소에서 작업하는 경우에는 이 단계를 건너뛸 수 있습니다.

라벨 생성

다음으로, 칸반 생애주기에서 각 단계를 나타내는 몇 가지 라벨을 생성해 보겠습니다:

  • 단일 프로젝트에서 작업하는 경우 해당 프로젝트 내에서 라벨을 생성합니다.
  • 여러 프로젝트에서 작업하는 경우, 그룹 내에서 라벨을 생성합니다.

이렇게 하면 모든 프로젝트에서 단일 라벨 세트를 사용할 수 있습니다.

두 경우의 라벨 생성 과정은 동일합니다. status::to do, status::doing, status::done에 대한 스코프 라벨생성하세요.

칸반 보드 설정

라벨을 생성한 후, 다음 단계는 칸반 보드를 만드는 것입니다:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 그룹 또는 프로젝트를 찾습니다.
  2. 계획 > 이슈 보드를 선택합니다.
  3. 이슈 보드의 왼쪽 상단 모서리에서 현재 보드 이름이 있는 드롭다운 목록을 선택합니다.
  4. 새 보드 만들기를 선택합니다.
  5. 새 보드의 이름을 입력한 후 보드 생성을 선택합니다.
  6. + 새 목록을 선택하여 새 라벨 목록을 만듭니다.
  7. 목록 범위를 라벨로 설정하고 값을 status::to do로 설정합니다.
  8. 같은 라벨 목록 생성 흐름을 반복하여 두 개의 라벨 목록 status::doingstatus::done을 만듭니다.

축하합니다. 이제 칸반 보드가 생겼습니다. 이제 각 목록에 새 이슈를 만들고, 한 워크플로 단계에서 다른 단계로 이슈를 드래그 앤 드롭하고, 팀원에게 이슈를 할당할 수 있습니다.

선택적으로, 보드의 각 라벨 목록에 대해 작업 진행 중(WIP) 한도를 활성화할 수 있습니다.

이를 위해서는:

  1. 라벨 목록의 오른쪽 상단에 있는 목록 설정 편집 기어 아이콘을 선택합니다.
  2. 작업 진행 중 한도 > 편집을 선택합니다.
  3. 해당 목록에 허용되는 최대 이슈 수를 입력한 후 Enter 키를 누릅니다.

한도가 초과되면 목록 배경이 자동으로 빨간색으로 변합니다. “작업 진행 중 한도” 컷 라인이 목록에 표시되어 한도를 초과한 모든 이슈를 시각적으로 표시합니다.

흐름 및 분포 시각화

칸반은 전통적으로 누적 흐름 다이어그램을 사용하여 로드를 시각화하고 병목 현상을 식별하는 데 도움을 줍니다.

GitLab에서는 Value Stream Analytics (VSA)를 사용하여 이를 구현할 수 있습니다.

다음으로, 귀하의 칸반 워크플로에 맞는 맞춤형 VSA 보고서를 만들겠습니다.

흐름 시각화

흐름을 시각화하려면:

  1. 왼쪽 사이드바에서 Search or go to를 선택하고 귀하의 그룹 또는 프로젝트를 찾습니다.
  2. 사이드 내비게이션에서 Analyze > Value stream analytics를 선택합니다.
  3. 페이지 왼쪽 상단에 있는 Value stream 드롭다운을 선택한 다음 New Value Stream을 선택합니다.
  4. 원하는 VSA 보고서 이름을 입력한 후 Create from a template 옵션을 선택합니다.
  5. 단계 이름으로 To do를 입력합니다.
  6. 시작 이벤트로 Issue label was added를 선택한 다음 status::to do 라벨을 선택합니다.
  7. 종료 이벤트로 Issue label was removed를 선택한 다음 status::to do 라벨을 선택합니다.
  8. 다음으로 Add another stage를 선택합니다.
  9. status::in progressstatus::done에 대한 단계를 만들기 위해 동일한 프로세스를 반복합니다.
  10. 세 개의 단계가 모두 추가되면 New value stream을 선택합니다.

귀하의 칸반 보드와 동일한 워크플로에 맞는 맞춤형 VSA 보고서를 사용하면

GitLab이 각 이슈가 각 단계에서 보내는 시간을 자동으로 계산하고 모든 단계의 데이터를 집계합니다.

그 결과로 리드 타임과 사이클 타임을 얻을 수 있습니다.

각 단계를 세부적으로 살펴보아 개별 이슈에 대한 특정 타이밍을 확인할 수 있습니다.

분포 시각화

분포를 시각화하려면:

  1. 생성한 VSA 보고서에서 Tasks by type 차트로 스크롤합니다.
  2. 오른쪽 상단의 기어 아이콘 드롭다운을 선택한 다음 라벨을 검색 및 선택하여 이슈 유형을 나타내십시오.
  3. type::… 범위 라벨 또는 유사한 것을 아직 생성하지 않았다면, 지금은 작업 항목 유형을 워크플로에 통합하기 시작하기 좋은 시점입니다(예: feature, bug, maintenance).
  4. Show issues를 선택한 다음 드롭다운 목록 외부를 클릭하여 변경 사항을 적용합니다.
  5. 이제 Tasks by type 차트는 선택한 라벨에 맞는 이슈의 분포를 시간에 따라 보여줍니다.

고급 팁 및 요령

  • 지정된 조건에 따라 이슈를 자동으로 업데이트하는 정책을 만들고 싶다면 gitlab-triage를 설정하세요. 예를 들어, status::done 라벨이 적용될 때 이슈를 자동으로 닫게 하거나 이슈가 생성될 때 자동으로 status::to do 라벨을 추가하는 정책을 만들 수 있습니다. 오픈 소스 gitlab-triage gem은 GitLab 파이프라인과 원활하게 작동하도록 설계되었습니다.

  • 다양한 유형의 이슈를 보다 효율적이고 표준화된 방식으로 생성하기 위해 설명 템플릿을 만드세요.

  • 그룹 또는 프로젝트의 각 팀원에게 부담을 시각화하려면 assignee lists가 포함된 추가 이슈 보드를 만드세요.

  • 티셔츠 크기 이슈를 위한 범위 라벨 세트를 만드세요. 예: size::small, size::medium, size::large.