본문 바로가기
Product Manager/Methods

애자일 업무 방법론 칸반(Kanban)에 대한 쉬운 설명

by 지표덕후 2022. 5. 11.

Kanban은 지식 노동을 통해 제공되는 서비스를 정의/관리하며 개선하기 위하여 사용되는 린(lean) 업무 방법론입니다. 칸반을 통해 업무를 시각화하고 효율성을 극대화하며 지속적으로 개선할 수 있습니다. Kanban 보드로 업무가 표시되므로 다양한 팀과 협업 시 업무 전달/공유를 쉽게 할 수 있고,  복잡한 프로젝트라도 단일 환경에서 처리할 수 있습니다.

 

 

칸반은 제조 분야에서 유래했지만 오늘날에는 애자일 소프트웨어 개발분야에서 널리 사용되고 있습니다. 최근에는 IT 외 다양한 사업 영역에서도 진가를 인정받고 있습니다. 그만큼 점점 더 많은 사람들이 칸반에 대해 인지하고 있지만 칸반에 대해 제대로 아는 사람은 많지 않은 것 같습니다. 이번 그런 분들을 위해 정리한 ‘칸반 이해하기’ 포스팅입니다.

 

 

 

칸반의 정의


"칸반"은 일본어로 "시각화한 보드" 또는 "표식"을 의미합니다. ‘제 시간에 완성(저스트 인 타임)’하기 위한 스케줄링 시스템으로서, 도요타가 최초로 개발해 사용했습니다. 한편 대문자로 쓰인 "Kanban"이라는 업무 방법론(Kanban Method) 용어는 2007년에 처음 등장하였습니다.

 

 

 

칸반의 탄생


처음에는 도요타 생산 시스템(TPS; Toyota Production System)이 시초가 된, 린 제조(lean manufacturing)를 위한 스케줄링 시스템으로부터 칸반은 시작되었습니다.  1940년대 후반 도요타는 ‘제 시간에 완성(just in time)’ 제조법을 도입했습니다. 이 접근방식은 도요타의 생산 방식이 상품을 생산해 시장에 밀어넣는 푸쉬(push)가 아니라 고객의 수요에 따라 생산을 최적화하는 풀(pull) 시스템임을 의미합니다.

 

그들의 독특한 생산 시스템이 린 제조의 기초를 닦았습니다. 그것의 핵심 목적은 생산성을 희생하지 않으면서 쓸데 없는 업무를 최소화하는 것이었습니다. 이것을 목표로 표현한다면, 비용을 추가하지 않으면서 고객에게 제공되는 가치는 늘리겠다는 것으로 나타낼 수 있습니다.

 

 

 

 

칸반 방법론


21세기 초, 소프트웨어 산업의 핵심 플레이어들은 칸반이 제품과 서비스가 제공되는 방식을 어떻게 개선시킬 수 있는지 금방 깨달았습니다. 효율성에 관심이 높아지고 컴퓨팅 기술이 발전하면서 칸반은 자동차 제조업의 영역을 벗어나 IT, 소프트웨어 개발, R&D 등과 같은 다른 복잡한 사업 분야에도 성공적으로 적용되었습니다.

 

우리가 알고 있는 현재의 칸반 방법론은 2007년 초에 나타났습니다. 데이비드 애더슨, 댄 빈칸티, 대런 데이비스, 코리 라다스, 도미니카 드그랜디스, 릭 거버 등 린(lean) & 애자일(agile) 커뮤니티의 주요 인사들이 수년간 실험과 경험, 노력을 기울인 결과였습니다.

 

가장 기본적인 칸반 보드는 "요청(Requested)", "진행 중(In Progress)" 및 "완료(Done)"의 세 가지 기본 열(column)로 이루어집니다. 이것만으로도 칸반 시스템을 운영할 수 있습니다. 칸반이 올바르게 관리되고 작동한다면 시스템 내의 병목 현상과 원활한 업무 처리를 어렵게 만드는 여러 가지 사항을 드러내주는 실시간 정보 저장소의 역할을 하게 됩니다.

 

 

 

 

칸반의 원리


칸반의 가치를 좀 더 자세히 탐구하기 전에 지금 많은 사람들이 수용하고 사용하는 형태의 방법론에 많은 이들의 노력이 투입되었다는 점을 밝히고 싶습니다. 칸반을 사용하는 조직이 확대될 수록 이들 공헌자의 공헌과 아이디어가 인정받아야 하기 때문입니다.

 

데이비드 J. 앤더슨(지식 노동을 위한 린/칸반 분야의 선구자이자 이 방법의 창시자 중 한 명)은 지식 노동을 통해 가치를 창출하는 조직이 업무를 완수하는 데 초점을 맞추었습니다. 그리고 이를 위해 두 가지 유형의 원칙과 여섯 가지의 실천을 정의했습니다. 그것이 칸반 원리입니다.

 

Change Management Principles  Service Delivery Principles
Start With What You Do Now  Focus on Customer’s Needs and Expectations 
Agree to Pursue Incremental, Evolutionary Change  Manage the Work, Not the Workers 
Encourage Acts of Leadership at All Levels Regularly Review the Network of Services

 

 

변경 관리 원칙Change Management Principles

이미 확립된 프로세스에 지장을 주지 않는 방식으로 융합하여 점진적인 변화와 지속적인 개선을 추구합니다. 칸반 변경 관리 원칙을 자세히 살펴보겠습니다.

 

 

원칙 1: 지금 하고 있는 작업부터 시작

칸반은 기존에 진행하던 업무, 시스템 및 프로세스 위에 바로 적용될 수 있을 정도로 유연합니다. 칸반 방법론은 기존 프로세스, 역할, 책임, 직무가 가치를 지니고 있으며 보존할 필요가 있음을 인정합니다. 자연스럽게 칸반 방법론은 해결해야 할 문제(issue)를 강조하고 변경사항을 평가(assess)하고 계획(plan)하여 가능한 한 중단 없이 작업이 이행될 수 있도록 지원하는 데 초점을 맞춥니다.

 

원칙 2:점진적인 개선

칸반 방법론은 저항을 최소화 하도록 설계되어 있습니다. 칸반 방법론은 협업(collaboration)과 피드백이라는 형태로 현재의 프로세스에 작지만 점진적인 개선들이 이루어지도록 돕습니다. 일반적으로 전면적이고 포괄적인 변화는 권장하지 않는데 이것들은 대체로 불확실성 혹은 두려움에서 비롯된 저항을 불러일으키기 때문이다.

 

원칙 3: 모든 층위에서 리더십 행동 장려

일하는 방식을 개선하기 위한 일상의 인사이트와 행동들이 리더십의 원천입니다. 별 의미없어 보일 수도 있지만 모두가 동일한 현황을 함께 관찰함으로써 팀/부서/회사 수준에서 효율적이면서 효과적인 성과 달성을 위한 지속적으로 고민하는 마인드(Kaizen)가 형성됩니다. 이런 활동이 관리자(management-level)에게만 중요할 리 없습니다.

 

 

서비스 제공 원칙

칸반은 서비스 지향적인 접근법을 개발하는 걸 목표로 합니다. 이를 위해서는 고객의 요구를 깊이 이해하고, 직원들이 각자의 업무를 중심으로 서로 연결된 서비스들의 네트워크를 구성하고 시스템은 지속적으로 개선이 되어야 합니다.

 

원칙 1: 고객의 요구와 기대에 집중

고객에게 가치를 제공하는 것이 각 조직의 중심에 있어야 합니다. 고객의 요구와 기대를 이해하면 제공되는 서비스의 품질과 서비스가 창출하는 가치에 대한 집중할 수 있게 됩니다.

 

원칙 2: 업무 관리

서비스들의 네트워크라는 관점에서 업무를 관리한다면 사람들이 업무를 중심으로 스스로를 조직화할 수 있도록 권한을 부여해야 합니다. 이를 통해 관리자의 마이크로 매니징으로부터 비롯되는 “잡음noise” 없이, 원하는 결과물에 온전히 집중할 수 있게 됩니다.

 

원칙 3: 서비스들의 네트워크를 정기적으로 검토

일단 서비스 지향 접근법이 개발되면 고객 서비스 문화가 조성될 수 있도록 지속적인 평가가 필요합니다. 서비스들의 네트워크를 정기적으로 검토하고 업무와 관련된 정책을 평가함으로써, 칸반은 산출된 결과물이 개선될 수 있는 기반을 마련합니다.

 

 

 

 

칸반 실천하기


칸반 방법론을 실행하고자 할 때엔 모든 조직이 각 실천 단계를 신중하게 밟아나가야 합니다. 성공적인 칸반 방법론에 포함되어야 할 6가지 핵심 실천사항이 있습니다. 이러한 실천사항들을 마스터하되 이것들이 여전히 진화하고 있음을 인식해야 합니다. 그럼 칸반의 여섯 가지 실천사항이 무엇인지 자세히 살펴보도록 하겠습니다.

 

 

1. 업무흐름을 시각화

칸반 시스템으로 업무흐름을 시각화 하려면 열(column)과 카드로 이루어진 보드가 필요합니다. 보드의 각 열은 업무흐름의 단계를 나타냅니다. 각 칸반 카드는 과업(work item)을 나타냅니다. 칸반 보드 자체는 모든 리스크와 스펙 등이 명시된 업무 현황을 보여줍니다.

 

가장 중요한 점은 요구사항(request)을 출시 가능한 제품(deliverable product)으로 만들어내는 데 필요한 과업이 무엇인지 이해하는 겁니다. 칸반 시스템을 통해 과업이 어떻게 흘러가는지 인지하고 있으면, 필요한 변경작업을 수행함으로써 지속적인 개선을 이룰 수 있습니다. 

 

X라는 과업을 시작한다면 "To Do" 열에서 항목을 끌어오고, 과업이 완료되면 "Done" 열로 이동시킵니다. 이런 식으로 진행 상황을 쉽게 추적하고 어디에서 병목 현상이 발생하는지 발견할 수 있습니다. 당연히 칸반 보드는 프로젝트의 요구사항이나 경과에 따라 전체적인 모습이 계속 바뀌게 됩니다.

 

 

2. 한 번에 처리할 과업(WIP; Work In Progress)의 수를 제한

칸반의 주요 기능 중 하나는 관리가 가능한 수의 과업만큼만 한 번에 진행되도록 제한하는 것입니다. 만약 당신이 적용하고 있는 칸반 방법론에 work in progress limits(WIP)가 없다면 제대로 된 칸반이 아닙니다. 프로젝트 중간에 팀의 초점을 다른 데로 바꾸어 버리면 대개는 업무 처리에 부정적인 영향을 미치게 되며 멀티태스킹은 보통 낭비와 비효율성을 발생시킵니다.

 

한 번에 진행하는 과업(work in progress)의 규모를 제한한다는 것은 업무흐름의 일부 혹은 전체에 풀 시스템(pull system)을 구현한다는 것을 의미합니다. 단계별로 처리하는 과업의 최대 개수를 설정해두면 가용 리소스가 존재할 때에만 이전 단계의 카드가 현 단계로 "당겨집니다(pulled)". 이러한 제약이 업무흐름의 문제 영역을 신속하게 표시하여 당신이 문제를 식별하고 해결하게 만들어줍니다.

 

 

3. 흐름을 관리

흐름을 관리하는 것은 과업을 관리하는 것이지 사람을 관리하는 것이 아닙니다. 예측 가능하고 지속 가능한 속도로 생산이 진행된다는 것, 이 생산과정 상에서 과업이 이동하는 게 바로 흐름입니다.

 

칸반 시스템을 시행하는 중요한 목표 중 하나는 부드럽고 건강한 흐름을 만드는 것입니다. 사람들을 마이크로 매니징하고 그들을 바쁘게 돌리는 대신, 여러분은 업무 프로세스를 관리하고 시스템을 통해 더 빨리 작업물을 산출해낼 수 있는 방법을 간구해야 합니다. 당신의 칸반 시스템이 더 신속하게 가치를 창출해내게 하는 데 집중하십시오.

 

 

4. 업무 관련된 정책은 명명백백하게

알지 못하는 것은 개선할 수도 없습니다. 바로 이 때문에 여러분의 공정(process)는 명확하게 정의되고, 기재되고, 사람들에게 인식되어야 합니다. 사람들이 보기에 유용해 보이지 않는다면 그들의 외면을 받을 것입니다.

 

모든 구성원이 공유하고 있는 목표를 익히 알고(familiar) 있어야 그들이 긍정적인 결과를 위해 일하고 의사결정을 내릴 수 있을 겁니다. 과하게 쫀쫀하지 않고(sparse), 눈에 잘 띄며, 잘 정의되어 있으며 (필요한 경우) 조정될 수 있는 업무 정책이어야 사람들이 스스로를 조직과 연동(self_organization)할 수 있도록 독려할 수 있습니다.

 

 

5. 피드백 루프

더 민첩해지기를 원하는 팀이나 회사에서는 피드백 루프를 필수적으로 구현해뒀습니다. 이런 조직은 발생할 수 있는 변화에 적절히 대응하고 이해관계자 간에 필요한 지식이 잘 오갈 수 있도록 노력합니다. 

 

칸반은 서비스 지향 피드백 루프와 더불어 팀 수준에서의 피드백 루프를 활용할 것을 제안합니다.

 

팀 수준의 피드백 루프(cadences)는, 일례로 과업 진척 상황을 추적하기 위해 행해지는 일간 팀 칸반 미팅(Team Kanban Meeting)이 있습니다. 이런 절차를 통해 가용 리소스를 확인하고 출시 속도를 향상시킬 수 있는 잠재력을 파악할 수 있습니다. 이 미팅은 칸반 보드 앞에서 진행되며 모든 멤버가 전날 무엇을 했는지, 오늘 무엇을 할 것인지 다른 멤버들에게 공유합니다.

 

 

서비스 지향 피드백 루프는 운영, 서비스 출시 및 리스크 미팅 같은 것들인데 이는 서비스와 관련된 사항을 현행화하고(synchronize) 개선된 방식으로 서비스를 제공하기 위해 수행합니다. 그 결과 가령 무엇이 효과적인 서비스 제공을 가로막고 있는지를 이해하게 되고 우리 서비스들의 네트워크가 지속적으로 개선되는 데에 필요한 의사결정을 하게끔 만듭니다.

 

소수의 참석자로 구성된 집중적이고 정기적인 미팅이 가능한 가장 좋은 방식입니다. 다만 칸반 피드백 루프의 이상적인 길이란 당신의 상황, 팀 규모 및 주제에 따라 달라질 수 있습니다.

 

 

6. 협업을 통한 개선(과학적인 방법론과 모델을 활용)

조직 내에서 지속적인 개선과 지속 가능한 변화를 달성하는 방법은 과학적으로 입증된 방법론과, 피드백 및 지표(metrics)를 기반으로 협업하는 것입니다.

 

어떤 가설이든 입증하여 그 결과의 긍/부정을 검정하는 조직문화를 배양하여야 직원들이 점진적인 변화를 통해 개선을 이루는 데 집중하게 됩니다.

 

 

 

칸반 활용의 혜택 Top 6


 

보고서에 따르면 칸반 방법론을 채택하는 주된 이유는 업무의 가시성 제고와 지속적인 개선에 대한 니즈 때문입니다. 오늘날 칸반 사용에 따른 장점을 좀 더 자세히 알아보도록 하겠습니다.

 

 

1. 공정의 가시성 확보

칸반의 기본 개념은 모든 과업을 시각화하는 것입니다. 이렇게 하면 칸반 보드가 정보의 허브 역할을 하게 되면서 모두가 같은 곳을 보게 됩니다. 모든 과업은 눈에 보이고, 결코 길을 잃지 않으며, 전체 공정에 투명성을 가져다 줍니다. 모든 팀 구성원은 신속하게 모든 프로젝트 혹은 과업의 상태를 업데이트할 수 있습니다.

 

 

2. 결과 산출의 속도 향상

칸반은 프로젝트 관리자가 과업 분배 상황을 면밀히 모니터링하고 정보에 입각하여 현황을 분석할 수 있는 여러 가지 방법을 제공합니다. 일정 기간 동안 완료된 과업을 명확하게 조망할 수 있으므로 처리에 시간이 가장 오래 걸리는 단계인 병목(bottlenecks)을 쉽게 파악할 수 있습니다. 팀은 이러한 도전을 해결하여 업무 흐름과 궁극적으로는 산출 속도를 개선할 수 있습니다.

 

 

3. 비즈니스 목표와 실행 간의 일치

투명성을 높이고, 피드백을 장려하며, 정기적인 검토 회의를 통해 칸반 업무는 회사의 전략적 목표를 팀의 일상적인 업무와 일치시킬 수 있습니다. 비즈니스 방향과 실행이 일치할 때 조직의 민첩성은 향상됩니다. 이로 인해 팀은 시장이나 고객의 요구에 따라 변화하는 우선순위와 조직 재구성에 잘 대응할 수 있습니다.

 

 

4. 예측 가능성 향상

일단 칸반 보드를 만들고 그 보드에 작업 항목을 쌓기 시작하면 흐름 지표(flow metrics)를 통해 공정을 더 깊이 이해할 수 있습니다. 업무 흐름 가운데 과업들을 수행하는 데 소비한 시간(cycle time)을 분석하여 향후에 얼마나 많은 산출물을 제공할 수 있는지에 대해 보다 잘 예측할 수 있는 것처럼요. 출시 속도(delivery rate)의 일관성(처리량)을 이해하고 있으면 예측은 더욱 정확해지고 과거 데이터를 기반으로 좋은 의사결정을 내릴 수 있습니다.

 

 

5. 스케일과 의존성(Dependencies) 관리능력 향상

시각화라는 칸반의 기본적인 실천방식은 의존성을 매핑하고 관리하는 데에도 유효합니다. ‘지금 하는 일부터 시작’한다는 것은 현재의 의존성을 시각화하고 그 의존성 간의 흐름을 관리하라는 뜻입니다. 의존성 관리는 업무 흐름의 현상태에 대한 통찰과 개선에 필요한 아이디어를 제공합니다. 뿐만 아니라 팀들 간에 존재하던 기존 연결성과 업무 흐름을 투명하게 전략적으로 관리할 수 있습니다.

 

 

6. 고객 만족

칸반 방식의 기원인 당김 시스템(pull system)은 요구가 있을 때 일을 한다는 것을 뜻합니다. 즉, 칸반은 현재 필요한 작업에만 몰두함으로써 낭비를 줄이도록 가이드합니다. 나아가 시각화 기법을 적용하고, ‘한 번에 수행하는 과업(WIP)’ 제한을 도입함으로써 최종 산출물이 고객의 기대에 맞게 세심하게 튜닝되도록 합니다.

 

 

 

Scrum vs. Kanban


칸반과 스크럼(Scrum)의 가장 중요한 차이점은 전자는 방법론인 반면 후자는 프레임워크라는 점입니다. 칸반이 추구하는 것은 지속적인 출시 모델(continuous delivery model)인데 이 모델에서는 팀이 준비되는 대로 가치 배포해냅니다. 스크럼은 스프린트(Sprints) 내에서 과업을 조직합니다. 공정의 특성에 따라 둘 중 하나를 적용하면 됩니다. 칸반은 테일러 메이드 접근법인 반면 스크럼은 미리 정해진 규칙에 의존하는 접근법이라 할 수 있습니다. 또 이 둘은 기저에 깔린 마인드셋과 철학에서도 차이가 있습니다.

 

  Kanban Scrum
Nature Kanban is an adaptive method Scrum is a prescriptive framework 
Principles 1. Start with what you do now 
2. Agree to pursue evolutionary change 
3. Encourage acts of leadership at all levels 
4. Focus on customer’s needs 
5. Manage the work 
6. Regularly review the network of services 
1. Empiricism 
2. Transparency 
3. Inspection 
4. Adaptation
Cadences - Team-level cadences 
- Service-oriented cadences
- Sprint with a fixed length 
- Sprint planning 
- Daily Scrum 
- Sprint Review 
- Sprint Retrospective
Roles - Service Delivery Manager* 
- Service Request Manager* 
(*no pre-defined roles are required)
- Product Owner 
- Scrum Master 
- Development Team
Metrics - Cycle Time 
- Throughput 
- Work In Progress 
- Velocity 
- Planned Capacity

 

 

 

애자일 기업 내부의 여러 조직을 아우르는 칸반


칸반은 본질적으로 모든 조직 계층에 적용할 수 있는 유연한 방법론입니다. 서로 연결된 칸반 보드를 활용하여 연관된 포트폴리오들을 관리하고 전략과 실행을 연결할 수 있습니다. 포트폴리오 칸반(Portfolio Kanban)이라는 컨셉을 활용하여 조직은 다양한 층위의 관리 업무에서 칸반의 원칙과 실천론을 적용하고 그 과실을 누릴 수 있습니다.

 

포트폴리오 칸반 접근법은 네 가지 다른 형태로 사용될 수 있습니다:

  • 팀 수준의 포트폴리오 칸반 
  • 프로젝트/제품 수준의 포트폴리오 칸반 
  • 프로그램 수준의 포트폴리오 칸반 
  • 전략 수준에서의 칸반 포트폴리오

 

 

알아야 할 주요 칸반 용어들


칸반 방법론을 적용함으로써 수혜를 누리려면 세부사항을 잘 숙지하고 기본적인 칸반 용어와 관련 개념에 익숙해질 필요가 있습니다. 도움이 될 만한 칸반 용어들을 정리해 보았습니다.

 

  • 칸반 보드Kanban board: 칸반 보드는 칸반 방법론을 구성하는 주요 요소 중 하나로, 모든 과업이 여기서 시각화됩니다. 최소 3개의 열(Column; 가령 요구사항Rquested, 진행중In Progress, 완료Done로 세 개 열로 이루어짐)로 나뉘어야 하며 이것은 공정의 각 단계를 나타냅니다.
  • 칸반 카드Kanban card: 칸반 카드는 칸반 보드 내에서 자리를 이동하는 다양한 과업들을 나타냅니다. 카드에는 과업과 관련된 세부사항들 가령 설명, 데드라인, 크기, 담당자 등과 같이 작업에 대한 중요한 정보가 포함되어 있습니다. 
  • 열Columns: 칸반 보드를 수직으로 분할하여 각각 업무 흐름의 상이한 단계를 나타내도록 한 것이 열입니다. 칸반 보드에는 3개의 기본 열이 있습니다: 요구사항Rquested, 진행중In Progress, 완료Done. 공정의 복잡성에 따라 이 세 단계는 더 촘촘한 하위 열로 나눌 수 있습니다.
  • 스위밍 레인Swimlanes: 칸반 보드를 여러 섹션으로 분할하는 수평선입니다. 하나의 보드 내에서 서로 다른 유형의 과업을 시각적으로 분리하고 동질적인 과업은 한 데 묶기 위해 사용하는 방법입니다.
  • 주기 시간Cycle Time: 새 과업이 업무 흐름 상의 "진행 중in progress" 단계에 투입되고 누군가가 실제로 이 과업을 수행하는 순간에 주기 시간이 시작됩니다.
  • 리드 타임Lead Time: 리드 타임은 새로운 작업이 요청되는 순간에 시작되며(실제로 누군가가 작업을 수행하는지 여부는 중요하지 않음) 칸반 시스템 내에서 빠져나갈 때 끝이 납니다.
  • 처리량Throughput: 특정 기간 동안 칸반 시스템 혹은 공정을 통과한(완료된) 과업의 수입니다. 처리량은 단위 시간당 생산성을 보여주는 중요한 지표입니다.
  • 진행 중인 작업Work in Progress: 당신이 현재 작업하고 있는 과업의 수이고 아직 끝나지 않았습니다.
  • WIP 제한: 리소스 과부하와 컨텍스트 혼선(context switching)을 방지하기 위하여 팀이 동시에 작업할 수 있는 과업의 수를 제한한다는 것을 의미합니다.
  • 서비스 클래스Classes of Service: 애자일 팀이 과업 및 프로젝트 우선순위를 정하는 데 참고할 수 있는 일군의 정책입니다. 
  • 칸반 피드백 루프Kanban Cadences: 점진적인 변화와 "목적에 맞는fit for purpose" 서비스 출시를 촉진하기 위해 행하는 주기적인 회의 
  • 칸반 소프트웨어: 다양한 규모의 팀 및 조직이 칸반 실천론과 원리를 실용적으로 적용할 수 있도록 도와주는 디지털 시스템입니다. 칸반 소프트웨어 중 대표적으로 국내 스타트업에서 많이 사용하는 JIRA에 대한 포스팅이 있으니 참고해보세요.

댓글