스윔레인

Swimlane

개념

보드를 가로로 나눠 성격이 다른 일을 줄마다 따로 흐르게 만든 구획으로, 줄마다 규칙을 달리 둘 수 있습니다.

등장 배경

판 하나에 성격이 다른 일을 다 올리면 급한 일이 항상 위로 올라갑니다. 급한 일이 위로 가는 것은 옳은 판단인데, 그 판단이 매일 반복되면 급하지 않은 일은 영영 시작되지 않습니다. 아무도 결정한 적이 없는데 결과는 그렇게 됩니다.

페이지덱의 개발 보드가 그랬습니다. 작업을 상태별 열에 놓아 흐름을 보여 주는 칸반 보드 하나에 네 종류가 섞여 있었습니다. 새 기능, 버그 수정, 기업 고객이 계약 조건으로 요청한 항목, 그리고 팀이 스스로 잡은 내부 개선입니다. 태오가 급한 버그를 올릴 때마다 맨 위에 꽂았고, 그것이 옳았습니다. 내부 개선 카드 세 장은 석 달째 같은 자리에 있었습니다.

지현이 보드를 보고 물은 것은 우선순위가 아니었습니다. 네 종류가 같은 규칙으로 흐르는 것이 맞는지였습니다. 버그는 들어오면 그 주에 끝내야 하고, 기업 고객 요청은 약속한 날짜가 있고, 내부 개선은 날짜가 없는 대신 아예 멈추면 안 됩니다. 기대하는 바가 서로 다른 일을 한 줄에 세워 두면 가장 급한 종류의 규칙이 나머지를 다 덮습니다. 스윔레인은 판을 가로로 갈라 종류마다 자기 줄과 자기 규칙을 주는 장치입니다.

작동 방식

세로 열은 그대로 두고 판을 가로로 나눕니다. 열은 상태를 뜻하고 줄은 일의 종류를 뜻합니다. 정할 것은 다섯 가지입니다.

  1. 나누는 기준을 하나만 고릅니다. 일의 종류로 나누거나 급한 정도로 나누거나 요청한 곳으로 나눕니다. 두 기준을 섞으면 줄이 곱셈으로 늘어나 판을 읽을 수 없게 됩니다. 종류로 넷, 급한 정도로 셋을 나누면 열두 줄이 됩니다.
  2. 줄 수를 셋이나 넷으로 맞춥니다. 줄이 여섯을 넘으면 각 줄의 카드가 한두 장이 되고, 그 상태에서는 줄을 나눈 것이 흐름을 보여 주지 않습니다. 비슷한 종류는 합칩니다.
  3. 줄마다 규칙을 정합니다. 이 장치의 값이 여기서 나옵니다. 동시에 진행할 수 있는 작업 수의 상한인 WIP 제한을 줄마다 따로 두고, 줄마다 기대하는 소요 시간도 따로 적습니다. 버그 줄은 상한 2에 3일 안, 기능 줄은 상한 3에 2주 안 하는 식입니다.
  4. 급행 줄을 하나 둡니다. 서비스가 멈춘 것처럼 다른 일을 멈추고 먼저 해야 하는 항목을 두는 줄입니다. 상한은 1로 두고, 이 줄에 카드가 있으면 다른 줄의 새 작업을 시작하지 않는 규칙을 함께 답니다. 남용을 막는 규칙도 필요합니다. 한 달에 두 건까지처럼 개수를 정하지 않으면 세 달 만에 모든 카드가 급행으로 들어옵니다.
  5. 최소 몫을 정합니다. 내부 개선처럼 날짜가 없는 줄은 상한이 아니라 하한이 필요합니다. 그 줄에 항상 카드 하나가 진행 중이어야 한다고 정해 두면 석 달째 멈춰 있는 상태가 생기지 않습니다.

줄을 나눈 뒤에 보이는 것이 하나 더 있습니다. 어느 종류가 굶고 있는지입니다. 섞여 있으면 내부 개선이 밀린다는 사실이 카드 위치로만 남는데, 줄로 갈라 두면 그 줄이 움직이지 않는 것이 한눈에 보입니다.

쓰이는 곳

가장 흔한 자리는 개발 팀의 보드입니다. 앞에서 본 네 종류가 그대로 네 줄이 됩니다. 이렇게 두면 회고에서 묻는 질문이 달라집니다. 무엇이 밀렸는지가 아니라 어느 줄이 밀렸는지를 묻게 되고, 그 답은 대개 규칙 문제입니다.

나머지 세 자리는 이렇습니다.

  1. 흐름 시간을 재는 자리 — 실제 작업을 시작한 뒤 끝낼 때까지 걸린 시간인 사이클 타임을 줄마다 따로 잽니다. 전체 평균 하나로는 버그가 이틀이고 기능이 3주인 팀에서 아무 정보도 얻지 못합니다.
  2. 병목을 찾는 자리 — 같은 열에서 어느 줄만 막혀 있으면 원인이 그 종류에 있습니다. 전체 흐름의 속도를 결정해 버리는 가장 느린 구간이 병목인데, 줄로 갈라 두면 병목이 단계에 있는지 종류에 있는지 가릴 수 있습니다.
  3. 문의 응대 — 들어오는 문의를 장애 신고와 사용법 질문과 기능 요청으로 갈라 줄을 만듭니다. 기대하는 응답 시간이 서로 다른 일이라 한 줄에 두면 가장 급한 기준으로 전부를 다뤄야 합니다.

안 맞는 자리도 있습니다. 하루에 오가는 카드가 다섯 장뿐인 팀에서는 줄을 나눌 만큼의 양이 없습니다. 줄마다 규칙을 정하지 않고 칸만 그은 경우도 마찬가지입니다. 그때는 판이 복잡해진 것 말고 달라지는 게 없습니다.

실무 용례

"버그와 기능을 같은 줄에 두지 말죠. 기대하는 소요 시간이 다릅니다."

종류마다 규칙을 달리 두자는 제안입니다.

"급행 줄에 카드가 셋이에요. 이번 달 한도를 이미 넘겼습니다."

예외 줄이 남용되고 있다는 지적입니다.

"내부 개선 줄이 석 달째 비어 있는데요."

줄을 갈라 두어 굶고 있는 종류가 드러난 자리입니다.

지현이 페이지덱 보드를 네 줄로 나눴습니다. 급행, 버그, 기능, 내부 개선입니다. 급행은 상한 1에 월 2건, 버그는 상한 2에 3일 안, 기능은 상한 3, 내부 개선은 항상 하나가 진행 중이어야 한다는 하한을 걸었습니다.

두 달 뒤 달라진 것은 두 가지였습니다. 석 달 멈춰 있던 내부 개선 카드 셋이 다 끝났고, 급행으로 들어오는 항목이 월 다섯 건에서 두 건으로 줄었습니다. 뒤쪽이 줄어든 이유는 규칙 때문이 아니라 한도가 보이기 시작했기 때문입니다. 요청하는 쪽이 이번 달 급행이 찼다는 것을 보고 스스로 버그 줄로 넣었습니다.

흔한 오해

줄을 우선순위로 읽는 경우가 가장 많습니다. 위쪽 줄이 더 급해 보이니 자연스러운 오해입니다. 하지만 줄이 나타내는 것은 종류이고 순서는 줄 안에서 따로 정해집니다. 우선순위로 읽으면 아래쪽 줄의 카드가 위쪽 줄이 빌 때까지 기다려야 하는 것처럼 다루게 되고, 그러면 줄을 나누기 전과 같은 상태가 됩니다. 급행 줄만 예외입니다. 그 줄은 실제로 다른 줄을 멈추게 하는 권한을 가지므로 상한과 한도를 함께 걸어 둡니다.

줄만 나누면 관리가 쉬워진다고 보는 것도 흔합니다. 판이 정리돼 보이니 그렇게 느껴집니다. 그런데 이 장치가 하는 일은 구획을 나누는 것이 아니라 구획마다 다른 규칙을 걸 수 있게 하는 것입니다. 상한도 기대 시간도 하한도 정하지 않고 선만 그으면 카드가 네 덩어리로 나뉜 채 똑같이 흐릅니다. 줄을 그은 뒤에 규칙을 정하지 않은 팀이 두 달 뒤에 줄을 다시 없애는 일이 흔한 이유입니다.

같이 보면 좋은 페이지

  • 칸반

    이 장치가 어느 방식의 한 부분인지 위에서 봅니다

  • 칸반 보드

    줄을 긋는 판 자체를 봅니다

마지막 업데이트 2026-09-16