칸반에 대한 오해중에 하나가 운영 업무에만 적합하다는 것인데 실제 칸반은 제품을 개발할 때도 많이 사용하고 있습니다.
칸반을 제품 개발에 사용할 경우 경영진이나 비즈니스 팀은 개별 기능의 현재 상태보다는 고객에게 전달 가능한 최종 제품이 무엇인지와 언제 고객에게 딜리버리가 가능한지를 알고 싶어합니다.
이럴 경우 칸반 보드에 등록된 이슈들의 목록과 상태만 봐서는 이런 정보를 한 눈에 파악하기 어렵습니다.
이런 요구사항을 충족하려면 어떤 방법론을 사용하든 버전과 릴리스 기능을 같이 사용하면 프로젝트의 나아갈 방향에 대해 업무 가시성이 확보되므로 이해당사자들간의 격차를 좁힐 수 있습니다.
Version 이란?
먼저 버전은 프로젝트의 특정 시점의 결과물을 의미하며 여러 개선 사항이나 버그 수정등을 논리적으로 묶은 단위로 목표 릴리스 날자가 있으므로 프로젝트의 수행 일정을 파악할 수 있습니다.
Jira 에서 버전은 여러 분들이 사용하시는 소프트웨어의 버전과 동일하다고 보시면 되며 버전 이름은 여러분이 임의로 지으면 되는데 버전은 보통 숫자로 짓습니다.
예로 1.2 나 2.3.5 같이 지을 수 있으며 3.1-RC1, 3.1-Beta3 같이 의미 있는 문자열을 추가해서 지을 수 도 있으며 대신 버전 명에 대한 일관적 규칙이 있어야 합니다.
차세대 에서 Version 활성화
그러면 프로젝트에서 버전과 릴리스를 사용하는 방법을 설명하기에 앞서서 차세대 프로젝트는 기본적으로 버전이 꺼져 있으므로 버전 활성화를 해 보겠습니다.
지난 번 칸반 프로젝트에서 버전을 활성화하긴 했는데 복습차원에서 다시 "프로젝트 설정" → 기능 에 들어가서 "릴리스 및 버전 관리" 를 켜 줍니다.
Version 생성
이제 릴리스를 하려면 버전부터 생성해야 하는데 버전은 여러 메뉴에서 생성할 수 있습니다.
classic
먼저 클래식 프로젝트입니다. 좌측의 릴리즈를 클릭해서 버전 만들기를 클릭해서 버전을 생성할 수 있습니다.
버전 명은 1.0 으로 넣고 시작 날짜는 9/14일 , "릴리즈 날짜" 는 9/25일로 넣고 설명은 "고객에게 최초로 공개" 라고 넣어 보겠습니다.
그러면 현재 등록한 버전 목록과 상태, 진행 상황과 날자등이 표시됩니다.
진행 상황에 "이슈없음" 으로 표시되는 건 현재 버전에서 처리하기로 한 이슈가 등록되어 있지 않다는 의미입니다.
이제 또 하나의 버전인 2.0 을 만들겠습니다. 먼저 이름에 2.0을 넣고 아직 1.0 도 시작 단계이므로 2.0 의 시작 일정과 릴리스 날자는 진행하면서 결정된다고 가정하고 시작 날자와 종료 날자는 빈 칸으로 두겠습니다.
그러면 2개의 버전이 생성되었습니다.
차세대
다음은 차세대 프로젝트에서 버전을 생성해 보겠습니다. 클래식과 마찬가지로 좌측의 "릴리스 " 버튼을 클릭해서 "버전"을 생성할 수 있습니다.
그리고 차세대에서는 백로그를 선택한 후에 상단의 "버전" 을 클릭하고 "버전 패널" 을 활성화 해줍니다.
그리고 나타나는 버전 패널에서 "버전 만들기" 를 클릭해서 버전을 생성할 수 있습니다.
차세대에서도 마찬가지로 1.0 과 2.0 2개의 버전을 생성하겠습니다.
이슈에 Version 할당
이제 버전을 만들었으니 이슈에 버전을 할당할 단계입니다.
먼저 보드를 클릭하고 칸반 보드에서 이슈를 나열하겠습니다.
그리고 이슈를 클릭해서 상세화면을 띄우면 여러 필드중에 "수정 버전" 필드가 표시됩니다.
Jira 에서 버전 관련해서 제공되는 필드는 기본적으로 2개인데 하나는 "영향을 받는 버전" affects version 이며 다른 하나는 "수정 버전" fixed version 입니다.
영향 받는 버전은 보통 이슈 타입이 버그일 때 사용하는데 해당 버그가 발생하는 버전을 기술해 줍니다. 만약 다양한 버전에서 발생하는 버그라면 여러 개의 버전을 입력해 주면 됩니다.
차세대 프로젝트에서는 "영향 받는 버전" 필드를 지원하지 않습니다.
이제 1.0 버전에서 처리할 이슈들을 선택해서 "수정 버전" 에 1.0 을 할당해 주겠습니다.
버전 목록에 "릴리스 해제됨" 이라고 표시되는데 이것도 번역 오류인것 같습니다. 영어 버전에서는 Unreleased 이니 "릴리스 안 됨" 이 더 정확할 것 같습니다.
그리고 2개의 이슈에도 수정 버전을 1.0 을 할당해 주었습니다.
그리고 다른 이슈에는 수정 버전에 2.0 을 할당해 줍니다.
그리고 차세대 프로젝트에서도 마찬가지로 이슈에 버전을 할당해 보겠습니다.
보드에 가서 이슈를 선택하고 1.0 과 2.0 을 할당했습니다.
릴리스
이제 좌측의 릴리스 탭를 클릭해 보면 버전 목록과 상태가 표시되는데 이슈가 할당되었으므로 진행 상황이 변경된 것을 알수 있습니다.
그리고 버전 명을 클릭하면 해당 버전의 상세 정보를 알수 있는데 차세대 프로젝트는 이렇게 JQL 로 연결되어 이슈 검색 화면으로 넘어가게 됩니다.
이제 클래식 프로젝트에서 릴리스를 클릭해 보겠습니다.
현재 버전에 속한 이슈에 대한 정보가 보기 편하게 표시됩니다.
이제 버전 목록에서 우측의 릴리스를 누르면 릴리스 날자가 현재 날자로 변경되고 Release 버튼이 뜹니다.
여기에서 "Release" 를 눌러주면 새로운 버전이 릴리스 됩니다.
만약에 버전에서 해결되지 않은 이슈가 있다면 다음과 같은 안내 창이 뜹니다.
관리자는 여기에서 해결되지 않은 이슈를 찾아서 해결후 다시 릴리스 하거나 "이슈를 다음 버전으로 이동하거나 " 아니면 무시할 수 있습니다.