JIRA 협업1

Agile/DevOps 프로젝트를 수행하기 위한 협업도구인 JIRA 활용 방법을 소개합니다. JIRA를 통해 개발 일감(Epic, User Story), 버그 등을 작성하고, 개발자를 할당 후 개발 상태 및 릴리스(배포) 관리가 가능합니다. 일은 혼자 시작해서 끝나는 것이 아닌 다른 사람과의 hand-off 등이 발생 됩니다. JIRA는 기획자, 팀원, 검토자간 협업을 도와주는 도구이지 팀원을 관리하는 목적으로 사용되는 도구가 아닙니다.

  • JIRA란? (https://www.atlassian.com/ko/software/jira)
    – Planning : user story 및 issue(일감)를 생성하고 sprint를 계획
    – Tracking : 팀 업무의 우선순위를 정하고, 수행 상태 등 가시성 제공
    – Release : 일감의 개발완료 등 최신 정보를 가지고 제품 출시 관리
    – Report : 실시간 시각적 데이터를 기반으로 팀 효율을 향상
  • Scrum을 모르시는 분은 참고하세요(스크럼(Scrum) 이해하기).

본 가이드는 Server에 설치하는 Server-managed 버전을 기본으로 하였으며, Cloud 버전은 10인 미만 사용시에는 무료입니다. (https://www.atlassian.com/software/jira/pricing)

Cloud 버전 가격

0. 사전 준비 (Admin 권한자가 수행)

0.1. 프로젝트 생성

  • 프로젝트 만들기
  • 프로젝트 종류 및 설정된 프로세스
    – 스크럼 소프트웨어 개발 : To Do → In Progress → Done
    – 기본 소프트웨어 개발 : To Do → In Progress → In Review → Done
  • 프로젝트명 및 키 작성
    – 키는 일감(issue) ID의 prefix명으로 사용 (예.EX-1, EX-2 등)

0.2. Project Role 추가

  • JIRA 관리> 시스템 > 프로젝트 역할
    – 예) Team Member, Viewer 역할 추가
    – 만약 프로젝트에 직접 참여는 하지 않지만 참조해야 하는 구성원이 있다면 Viewer 등의 역할을 추가하여 최소한의 기능만 사용 가능
  • 프로젝트 역할별 권한 변경
    – 역할별로 권한 부여, 제거 가능
    – 예) 이슈 생성, 이슈 할당 등은 Viewer는 제외하고 Team Member만 가능

0.3. Kanban 보드 생성

0.3.1. 보드 종류 선택

  • Kanban보드 vs. Scrum 보드 차이
    – Kanban보드 : 일감 전체가 보드에 보임
    – Scrum보드 : 현재 실행중인 Sprint에 할당된 일감만 보임(2편 참고)
  • 칸반보드 만들기
    – Tip. 우선 칸반보드가 익숙해지면, Sprint 단위로 관리하는 스크럼 보드를 활용하세요. 생성한 일감(issue)가 보이지 않아서 당황합니다.
  • 보드 이름 작성

0.3.2. 보드 설정

  • 보드 환경 설정
  • 칸반 보드를 공유할 팀원 설정

(칸반보드 설정으로 다시 들어가기)

  • 열(컬럼) 추가
    – “할일 → 진행중 → IN REVIEW → 완료”로 상태는 4개이지만 컬럼은 3개 밖에 없어서 추가 필요
  • [열추가] 버튼으로 추가
  • 컬럼명 추가로 불필요하게 추가된 상태 삭제

0.4. 프로젝트 설정

  • 일감(이슈) 유형
  • 사용자에게 역할/권한 설정
  • 사용 권한 (필요시에 설정)
    – 예) 이슈 생성, 이슈 할당 등의 기능은 Viewer에서 제외하고 Team Member만 가능

1. 일감(Issue) 작성 및 상태 관리

1.1. 일감(Issue) 종류

  • Epic : 큰 단위의 업무(여러 User Story, Task 등을 묶은 단위)
  • User Story : 최종 고객에게 가치를 제공하는 기능
    – 작성 방법 : “I as WHO want to do WHAT, so that WHY”
    – Tip) User story의 크기는 sprint내에 완료 가능한 단위로 분할 필요
    – 예) 사용자 관리 개발
  • Task : User Story외의 기술적, 관리적 업무
    – 예) 설계, 서버 설치, 클라우드 도입 등
  • Sub-Task
    – Story, Task를 더 작은 단위로 나눈 업무
    – 즉, 모든 Sub-Task가 끝나야 해당 업무 종료
    – 예) 사용자 관리(UI) 개발, 사용자관리(Service) 개발

참고로, JIRA에서는 Story와 Task를 같은 레벨로 구분하지만, 일반적으로 Story를 더 작게 나눈것을 Task라고 정의하기도 함

https://pmcircle.wordpress.com/2015/07/30/confused-about-epic-story-task-and-sub-tasks/

1.2. 일감 작성

  • Epic 생성
  • User Story 추가
    – Story를 추가하고 관련된 Epic link를 연결한다.
  • Sub Task 생성
  • 칸반보드에 생성된 일감 보기
  • 칸반보드 Swimlane 설정
    – Epic(큰틀) : Epic단위로 그룹핑해서 보기
    – Story(이야기) : 이야기 단위로 그룹핑해서 보기
  • Epic, user story, 담당자별로 그룹핑해서 볼 수 도 있음
기본 레인을 큰틀(Epic)으로 설정
Epic 기준으로 설정된 칸반보드
Story(이야기)로 기본레인을 설정한 경우
담당자로 기본레인을 설정한 경우

1.3. 보고자 및 담당자 할당

  • Reporter(보고자) : 일감 업무 내용을 작성하고, 진행상황을 보고 받는자
    (원래는 일을 시키는 사람이 작성하므로, 일감 작성자로 기본 할당됨)
  • Assignee(담당자) : 해당 일감을 수행하고, 일감상태를 현행화할 담당자

1.4. 우선순위 조정

  • 일반적으로 Product owner는 일감의 우선순위로 정렬(특히 담당자별 수행해야 할 작업이 여러개라면)

1.5. 일감 진행 상태 변경

  • Drag & Drop으로 상태명의 컬럼간 이동
    – 예) 개발자1(Dev1)은 UI를 개발중이며, 개발자2(Dev2)는 개발완료 상태
  • 작업 요청자(기획자)가 검토 후 최종 완료 상태로 이동
    – 개발자가 완료하면 “리뷰 중” 상태로 변경시키고,
    – 기획자는 검토하고 “완료”상태로 변경시킨다.

1.6. 덧글 작성

  • @ + 이름으로 전달할 사람을 선택하면 유용

1.7. Watcher(지켜보기)

  • JIRA는 기본적으로 보고자, 담당자에게만 일감 변경, 덧글 발생시 알림이 가며, 담당자를 1명만 선택가능
    따라서, 다른 사람에게도 알리는 기능 필요
  • 방법1) 숫자(Watch하고 있는 사람수)를 클릭해서 다른 사람 추가
  • 방법2) 본인이 관심있는 일감을 클릭하여 추가

1.8. 일감 완료

2. 필터 기능 사용

2.1. 기본 Quick Filter(빠른 필터) 사용

  • [내이슈만] : assignee = currentUser() //담당자가 현재 로그인한 사용자
  • [최근 업데이트] : updatedDate >= -1d //수정한 기간이 1일 미만

2.2. Quick Filter 추가하여 사용

  • 보드 환경설정으로 이동
  • Quick Filter(빠른 필터) 추가
  • Quick Filter 사용 예 : 개발자1의 업무만 선택

2. 배포(릴리스) 관리

  • 배포(릴리스) 생성
  • 배포(릴리스) 보기
  • 배포 버전 상세 보기

3. 보고서

  • 보고서
  • 보고서 > 누적 흐름 도표
https://uashadow.tistory.com/32
  • 보고서 > 최근 생성된 이슈 보고서