반응형
LinkedIn 개발자로 성장하면서 남긴 발자취들을 확인하실 수 있습니다.
Github WWDC Student Challenge 및 Cherish, Tiramisul 등 개발한 앱들의 코드를 확인하실 수 있습니다.
개인 앱 : Cherish 내 마음을 들여다보는 시간, 체리시는 디자이너와 PM과 함께 진행 중인 1인 개발 프로젝트입니다.
10년 후, 20년 후 나는 어떤 스토리 텔러가 되어 있을지 궁금하다. 내가 만약에 아직 조금 더 탐구하고 싶은 게 있고, 궁금한 게 있다면, 그게 설사 지금 당장의 내 인생에 도움이 안 되는 것 같더라도 경험해보자. 그 경험들을 온전히 즐기며 내 것으로 만들고, 내 일에 녹여내고... 그러다보면 그 점들이 모여 나란 사람을 그려내는 선이 될 테니까.

Recent Posts
Recent Comments
Total
관리 메뉴

꿈꾸는리버리

Kanban board 본문

오뚝이 개발자

Kanban board

rriver2 2022. 4. 5. 20:13
반응형

 Kanban board가 뭘까? 

Kanban board 란 agile 방법론을 실행하는 도구 중에 하나이다.

 

이때, agile(에자일)이란, 작업 계획을 짧은 단위로 세우고 시제품을 만들어 나가는 사이클을 반복함으로써 고객의 요구 변화에 유연하고도 신속하게 대응하는 개발 방법론이다.

 

Kanban board는 일의 진행 상황을 시각화해서 확인할 수 있으며, 현재 집중하고 있는 task의 개수를 조절할 수 있다는 장점이 있다. 프로젝트를 진행하는 동안 모든 것을 한 번에 변경하거나 완료하려고 하면 시스템이 작동하지 않을 수 있다. 따라서 Kanban은 지속적인 개선과 점진적인 변화에 집중을 한다. 한 번에 모든 것을 해결하는 대신 팀의 프로세스가 시간이 지남에 따라 점진적으로 발전되어 하나하나의 task에 집중할 수 있게 된다..

칸반보드의 예 )

일의 과정은 왼쪽에서 오른쪽으로,

일의 중요도는 위에서 아래로 표시하며,

일의 종류(디자인, 개발, 마케팅 등)에 따라 다른 포스트잇 색을 사용한다.

 

칸반의 주요 요소 5가지

1️⃣ Visual Signals

위 그림을 보면 알 수 있겠지만 cards에 작업 정도를 한 눈에 확인할 수 있기 때문에 Visual이라는 표현을 사용한다.

visual cards에 팀 구성원들은 마케팅, 개발, 디자인 등 각자의 역할에 따라 해야하는 일들을 작성한다.

따라서 각각의 팀원들이 자신이 끝낸 정도를 보고하지 않아도, kanban board를 통해 우리 팀이 어느 task를 수행해야하는지 부터, 프로젝트를 진행하고 있을 때에는 어느 colum에 일이 몰려있는지, 현재 작업 정도나, Done한 일을 한눈에 확인할 수 있다.

 

+) visual cards를 user story에 따라 캡슐화해서 나누어 작성하기도 한다. 

 

2️⃣ Columns

각각의 column은 workflow를 구성하는 활동을 차례대로 명시한다.

"TO-Do", "In Progress", "Done"처럼 workflow에 따라 작성되기 때문에 visual cards들은 일을 시작해서 끝이 날 때 까지 column을 따라 이동하게 된다. (이때, workflow의 column 개수는 팀안에서 조율하여 정하면 된다.)

앞서 언급한 "TO-Do", "In Progress", "Done"의 흐름처럼 단순해도 되고, 조금 더 복잡하고 세분화되게 나누어도 된다.

(본 블로그 포스팅은 "TO-Do", "In Progress", "Done"의 workflow를 따른다고 가정 후에 작성되었다.)

 

3️⃣ Work In Progress (WIP) Limits

WIP Limits는 한 column의 최대 card 개수이다. 팀원의 인원과 능률을 고려해서 WIP Limits를 결정한다.

만약 "In Progress" colum의 WIP Limits를 3개의 일로 두었다면, 반드시 제한한 WIP limits를 넘지 않도록 프로젝트를 진행해야 한다.

만약 colum의 card 수가 WIP Limits를 초과하게 된다면, 해당 colum에 문제가 있음을 확인할 수 있다.

따라서 팀 구성원들은 해당 colum의 일을 수행하기 위해 몰려들어 해결해서 또 다른 일이 해당 colum에 추가될 수 있도록 해야 한다.

WIP Limits는 프로젝트를 진행함에 있어서 병목현상을 해결하는데에 효과적이다. 

 

4️⃣ Commitment point

Commitment point를 알기 위해서는 우선 Backlog를 알아야 한다.

Backlog는 "난로 안쪽에 넣어 두는 큰 장작"이라고 우리말로 번역이 되는데

쉽게 말해서 프로젝트를 진행하면서 해야 하는 일들의 집합체라고 생각하면 된다.

열정으로 불이 탈(?) 프로젝트 진행과정을 위한 장작(해야하는 일)이랄까,,? 

 

Commitment point란, 미리 해야할 일을 적어둔 Backlog에서 "To-Do" 즉, 실질적인 일의 시작 포인트로 card가 넘어가는 시점을 의미한다. 

 

+) backlog와 todo의 차이가 뭘까?

Backlog는 우리가 프로젝트를 진행하면서 해야 하는 모든 할 일 목록의 List이다. 반면에 todo는 "이번주에 할 일"처럼 backlog에서 가까운 시일안에 해결할 일들을 뽑아낸 colum 제목이라고 생각하면 된다. backlog에서 todo로 넘어오는 순간, Commitment Point 시점을 통과하기 때문에 그때부터 cycle time의 시간이 흐르기 시작한다. (cycle time은 뒷 내용 참고)

 

5️⃣ Delivery point

delivery point는 팀의 workflow가 끝나는 시점을 의미한다. 대부분의 팀들은 이 시점은 customer로 제품이나 서비스가 제공될 때를 의미한다. 

+) Lead Time vs Cycle Time vs Reaction time

- lead time : backlog ~ delivery point

팀에서 해결해야 하는 문제들을 나열하고 의논하고, 코드를 작성해서 사용자에게 배포를 하는 모든 과정을 의미하기 때문에 lead time은 실질적으로 팀이 프로젝트를 수행하는데에 걸리는 시간의 총량이다. 

- cycle time : Commitment point ~ delivery point

cycle time은 실질적인 work-in-progress time으로 프로젝트에 필요한 일들을 정리하고 일들을 "To-Do"로 데리고 와서 프로젝트를 끝내는 과정, 즉 코딩을 하는 시간이다. 이 cycle time은 프로젝트를 진행하는 데에 발생할 수 있는 병목현상과 연관이 되어 있다. 만약 병목현상이 자주 일어난다면, WIP Limits를 줄여서 cycle time를 줄이는데에 힘을 써야 한다.

- reaction time : backlog ~ Commitment point

 

 

User Stories | Examples and Template | Atlassian

User stories are system requirements often expressed as “persona + need + purpose.” Learn how stories drive agile programs & how to get started.

www.atlassian.com

 

 NOTE 

이전 프로젝트에서 kanban 보드를 비슷하게 흉내내어 프로젝트를 한 적이 있었는데 그 활동의 정확한 명칭이나, 어떻게 해야 하는지 잘 몰랐었던 것 같다. 이렇게 시간을 내어 알아보니까 그때 프로젝트를 진행하면서 커뮤니케이션이나 일을 처리하는 데에 있어서 문제가 생겼던 원인을 되돌아 볼 수 있었다. 이번 프로젝트에서는 제대로 kanban을 활용해서 진행해보고 싶다. 시행착오가 엄청 있을 거 같긴 하지만 그것도 개발자가 되기 위한 과정이라고 생각한다.

그리고 질문을 던지면서 공부하기 ! 오늘은 성공했다.

 

 

반응형
Comments