JIRA
Updated:
Jira는 SW 개발 지원 도구로 시작하여 plan/tracking이 필요한 모든 분야에 널리 사용되었다.
Agile Methodology
Agile Methodology는 소프트웨어의 빠른 개발을 위한 새로운 개발 방법론으로서 일정 시간 제한을 두고 한정된 시간 안에 세운 목표를 달성하는 방식으로 최종 목표을 달성하기 위해 반복적인 개발을 진행하는 방법론이다. 작은 규모의 Waterfall model을 반복적으로 적용하여 Product를 이른 시간 안에 마치고 최종 목표의 product가 완성될 때까지 반복한다. 통상적으로 한 회전은 대략 수 주간이고 환경변화에 대응 능력이 높고 고객의 feedback이 자주, 즉시 반영된다.
Agile 방법론의 두 가지 구체적인 제품개발 프레임워크로 Scrum, Kanban이 있다.
Scrum
Scrum 팀이 점진적으로 제품을 개발하기 위해 사용하는 시간 제한이 있는 개발주기(fixed-length development cycle)를 sprint라고 부른다.
Spint는 단거리 전력질주라는 뜻으로 하나의 팀이 어떤 작업을 완성하려고 작정한 시간이다. 작정한 시간이 지나기 전에 최종 목표치의 제품이 아니어도 의미가 있는 동작을 하는 working product를 전달해야 한다. 따라서 Sprint란 working product를 deliver하기 위한 계획, 즉 작업 스케줄과 구체적 일정을 달성하기 위해 필요한 노력을 기술하는 것이다.
Backlog란 팀이 한 Sprint에 달성하기 위해 정의해 놓은 prioritized(우선순위) items이다. 팀은 매일 짧은 미팅을 통해 backlog의 각 item 들의 progress를 점검하고 할 일을 논의하여 실행한다. Sprint의 마지막에 product의 owner 또는 고객에게 working product를 제시해야 한다.
Jira에서 Sprint는 다음과 같이 볼 수 있다.
- To Do 칼럼의 각 item 들을 다음 칼럼으로 옮겨서 sprint 안의 모든 item을 DONE 칼럼으로 옮기도록 팀 작업을 수행한다.
- Sprint 안에 계획했던 item들을 모두 완성할 수 없는 이유가 드러나면 원인을 분석하여 대처방안을 마련한다.
- 완료되지 못한 Sprint는 close 할 수 없으며, 해당 sprint는 시간이 expire되면 같이 종료되어 미완의 backlog item은 다음 Sprint의 backlog item이 되어 다음 sprint에서 수행한다.
Kanban
Kanban board(칸반 보드)는 작업을 시각화하고, 진행 중인 작업을 제한하며 효율성(또는 흐름)을 최대화하는 애자일 프로젝트 관리 도구이다. 시간 제한을 중시하지 않고 팀이 달성하려는 item들을 pull system방식으로 달성한다.
Push 대신에 팀은 오직 수요가 있으면서 동시에 해당 item을 실행할 capacity가 있는 경우에 작업을 Pull해 온다. Every process state는 In progress(IP)와 Done column으로 구성된다.
Jira Epics and User Stories
Scrum methodology에 따라 작은 단위의 user functionality들로 project를 나누고 그 요소들을 Jira에서는 epic과 story라고 부른다.
- Epic: 하나의 스프린트로는 마칠 수 없는 훨씬 큰 작업 모임으로서 고객을 위해 만들려고 하는 것의 전체적인 View이다.
- 팀은 대개 하나의 epic을 다수의 user story들로 나눈다.
- User story: Epic을 달성하기 위해 팀이 만들어 내야 하는 기능 또는 능력이다(feature, capacity)
- User Story Format: As a USER TYPE, I want SOME CAPABITY so that a BENEFIT can be achieved
- 모든 user story가 완성되면 해당 epic이 완료된다.
Scrum Project Demo
먼저 프로젝트 만들기를 클릭하고 Jira Software의 스크럼 템플릿을 사용하고 회사에서 관리하는 프로젝트 선택으로 프로젝트를 생성한다.
백로그로 이동을 클릭하고 2개의 스토리(스프린트)를 작성하고 스프린트 시작 버튼을 클릭한다.
스토리 이슈를 클릭하고 하위 작업을 만든다.
다음과 같이 드래그하여 진행 중(In progress) 칼럼으로 끌어올 수 있고 해당 작업이 완료되면 완료(Done) 칼럼으로 끌어오면 업데이트 할 수 있다.
댓글남기기