Agile 프로젝트 퀵가이드(3) : Starting편 - 스크럼팀 구성

Updated:

스크럼 팀이란 ?

스크럼 프로젝트에서의 핵심은 바로 스크럼 팀입니다.

스크럼이란 용어 자체가 럭비 스포츠에서 유래했듯이, 개발 프로젝트에서 스크럼 팀이란 럭비에서 스크럼을 짜는 것처럼 각자의 포지션을 유지한 채 공을 끊임없이 주고받으며(상호협력과 끊임없는 communication), 단기적인 목표(바로 스프린트의 목표를 말함)를 향해 전력질주하는 팀을 말합니다.

우선 스크럼 가이드북에서 정의하는 스크림 팀의 정의에 대해 알아봅시다.

  • 스크럼 팀(Scrum Team)은 서비스 또는 기능 중심으로 구성되는 조직이다.
  • 스프린트 백로그의 분량과 스프린트 목표를 팀 스스로 결정한다.
  • 분석-설계-코딩-테스트-사용자문서 작성까지 모든 일을 스크럼팀 내에서 수행한다.

스크럼 조직에서는 PM(프로젝트 관리자), PL(프로젝트 리더), QA, BA, 설계자, 개발 등의 전통적인 방식의 직무에 따른 역할을 사용하지 않습니다.

프로젝트 팀은 복수의 스크럼 팀으로 구성되며, 스크럼 팀은 다음과 같은 특징을 갖고 있습니다.

스크럼 팀의 특징

※ Self-Organized

자기 조직화된 팀이란, 자기 주도적인 일 관리, 자발적 동기 부여가 가능한 팀을 말한다. 스크럼팀 구성원 대다수가 경험이 적어 리더의 세밀한 관리가 필요한 경우, 또는 단기 계약에 의한 외부 참여 인력일 경우 자기 주도성이 약할 수 있다. 스스로 목표까지 세울 수 있다면 가장 좋겠으나 적어도 목표를 달성하고자 스스로 일 관리를 할 수 있는 구성원으로 구성되는 것이 바람직하다.

※ Cross-Functional

교차 기능적이라 함은, 스크럼 팀이 개발에 필요한 기술적 역량 및 권한을 보유하고 있다는 뜻이다. 즉, DB관리, 인프라의 경우 프로젝트 외부 팀에 의존해야 하는 경우가 많다. 이 경우는 Cross-Functional하지 않다라고 본다. 팀이 Cross-Functional하지 않다면 빠르게 2~3주 스프린트 단위로 제품을 생산하기가 어렵다. 그렇다고 모든 필요한 요소에 해당하는 구성원을 팀으로 구성할 필요는 없다. 해당 요소가 제품 및 관련 작업에 Critical한 것인지, 전체 effort 중 많은 비중을 차지하는지에 따라 결정되어야 한다. 이상적인 Cross-Functional 팀은 개발에 필요한 분석, 설계/아키텍트, 개발, 테스트 역량이 모두 팀 안에 존재하는 것이다.

스크럼 팀 구성 역할

스크럼 팀이 원활히 돌아가기 위해서 팀 내부는 다음의 3가지 역할이 필요합니다.

아래 그림에서 스크럼 팀을 구성하는 주요 역할의 주요 책임과 업무를 읽어보십시오.

애자일의 핵심은 기존의 Top-Down 업무 스타일을 탈피하여, 구성원의 역량과 실력을 존중하며 상호 보완적으로 협력해가는 모습에 있습니다.

이러한 자율적인 방식은 서로간의 역할과 책임 뿐 아니라, 자신이 맡은 역할과 일에 대하여 본인이 어떠한 권한과 책임이 있는지를 인지하고 자기주도적으로 완수하려는 헌신된 태도를 중요하게 여깁니다.

이에 관하여 Scrum Alliance에서는 스크럼 팀이 추구해야 할 **핵심 가치**로 다음의 5가지를 꼽고 있다.

• Commitment (전념,확약) : 약속한 것을 확실이 이행/실현하는 것
• Focus (집중) : 확약한 것의 실천을 위해 집중/최선을 다하는 것
• Openness (개방성) : 어떤 것이 자신에게 불리해도 숨기지 않는 것
• Respect (존중) : 자신과 다른 사람의 의견을 존중하는 것
• Courage (용기) : 실패나 거부에 대한 두려움 없이 의사를 개진할 수 있도록 함

스크럼 미팅 또는 스크럼 회고 미팅에서 위의 5가지 가치를 나누고 해당 가치가 스프린트 동안 잘 실행되고 있는지 생각해보는 시간을 가져보십시오.

  • 제품 책임자는 현업 담당자인가?
    • 제품 책임자는 요구사항을 내지만, 기존 프로젝트와 같이 요구사항만 제기하는 현업 담당자가 아니다.
    • 제품 기능(백로그)에 대한 오너십을 가지며, 스프린트 목적을 달성하기 위해 개발팀과 공동의 책임을 진다는 점에서 스크럼 팀을 구성하는 또 하나의 역할자이다.
    • 즉, 제품 책임자는 스크럼 팀에 소속되어 개발팀이 정해진 기간 내에 기능을 완성할 수 있도록 함께 협력해야 한다.
    • 목표 기간 내에 달성할 수 없는 무리한 요구사항 또는 불필요한 작업 요구로 개발팀의 역량을 분산시키지 않도록 하며 매 스프린트마다 스프린트를 달성할 수 있도록 함께 헌신해야 한다.
  • 스크럼 마스터는 리더인가?
    • 스크럼 마스터는 개발리더가 아니다. 개발리더가 겸직을 할 수도 있지만, 권고하지는 않는다.
    • 봉사하는 리더십(Servant Leadership)을 가져야 하며, 스크럼 프로세스가 잘 진행될 수 있도록 집중하여야 한다.
    • 개발팀의 이슈를 파악하고 해결하려는 자세가 중요하다.
    • 또한 제품 책임자가 본연의 역할을 잘 할 수 있도록 돕는 역할을 가진다.

제품 책임자(PO), 스크럼 마스터(SM), 개발팀(DEV)팀의 역할에 대해 보다 더 상세하게 알고자 한다면 “스크럼 가이드북” 을 참고하십시오. 또는 “성공적인 애자일 도입을 위한 에센셜 스크럼 (저자:케이스S.루빈)”의 내용을 참고해도 좋습니다.

스크럼 프로젝트 조직도 작성

스크럼 팀의 의미와 역할을 이해하였으면 각 담당자를 선정하고 다음과 같이 조직도를 만들어 보십시오.

스크럼 프로젝트의 조직도는 기존 조직도처럼 실제로 작업에 참여하지 않는 상위 영향권자나, 프로젝트 리더를 중심으로 표현하기보다, 스크럼 팀에 Focus하여 스크럼 팀 멤버의 이름이 나타나도록 작성합니다. 이렇게 함으로써 보다 스크럼 팀의 목표를 공유하고, 책임을 공동으로 위임하는 효과가 있습니다다. 또한 스크럼 팀별 목표와 Product Owner, Scrum Master도 명시되도록 하여 해당 역할은 공적으로 부여되는 것임을 주지시켜야 합니다.

위 조직에서 붉은색 Box 안에 있는 Scrum Of Scrums(SOS)는 각 스크럼 팀이 모여서 만드는 Virtual한 조직입니다. 스크럼 팀간 또는 프로젝트 이해관계자와 이슈를 공유하거나 해결책을 논의하기 위해 정기적으로 만남을 갖는 조직으로 보면 됩니다.

SOS는 각 스크럼 팀의 Scrum Master와 개발 리더, 경우에 따라서 Product Owner 및 이슈를 제기하거나 해결을 위해 필요한 사람을 모두 포함할 수 있습니다. 이에 대해서는 의사소통/품질 관리에서 다루도록 하겠습니다.


Related Posts :
QuickGuide 02 > 프로젝트 수행 준비
QuickGuide 04 > 제품백로그 도출
QuickGuide 07 > 의사소통 및 품질 계획


< EOF >