Outsider's Dev Story

Stay Hungry. Stay Foolish. Don't Be Satisfied.
RetroTech 팟캐스트 44BITS 팟캐스트

[Book] 스크럼 : 팀의 생산성을 극대화시키는 애자일 방법론

스크럼

스크럼 - 8점
마이크 비들.켄 슈와버 지음, 박일.김기웅 외 옮김/인사이트

애자일(Agile) 개발방법론 중의 하나인 스크럼(Scrum)에 대해서 설명한 책으로 스크럼의 초기틀을 만든 켄 슈와버가 직접 책을 썼습니다. 아시다시피 애자일에는 여러가지 방법론들이 있고 XP, RUP, 린소프트웨어등이 있고 스크럼도 그중의 하나입니다. 애자일이라는 이름 밑에 모여있는 만큼 비슷한 점들을 가지고 있습니다.

스크럼이란 것이 무엇인지, 스크럽의 실천방법, 그리고 실제 팀에 적용하는 방법, 스크럼이 어떤 효과를 가져오는지에 대해서 자세하게 설명할 수 있습니다. 스크럼 자체가 아주 심플하기 때문에(이론 자체는...) 책의 내용도 어렵지 않고 읽기는 쉬운편입니다.




애자일방법론의 대부분 강조하듯이 스크럼도 역시 같은 얘기를 하고 있습니다. "팀의 목표는 프로젝트의 성공이고 가치창출이지 외견상 드러나는 새로운 방법론의 성공적인 도입만이 되어서는 안됩니다."라고 역자인 박일님이 하신 얘기대로 가장 중요한 부분이라고 생각합니다. 애자일을 도입하게 되면 실천방법이나 방법론에 집착하게 되어 기본정신을 망각하게 되는 것이 가장 조심해야 되는 것이 아닌가 싶습니다.

스크럼은 팀의 생산성과 유연성에 최대한 초점이 맞추어져 프로젝트 진행의 불필요한 장애물을 제거하고 프로젝트 성공만을 위해서 팀이 진행되도록 합니다. 그렇게 하기 위해서 소프트웨어의 요구사항이 우선순위로 정렬된 목록인 제품 백로그(Product Backlog)를 작성하고 이 제품 백로그는 누구나 항목을 제출할 수 있지만 제품 책임자(Product Owner)만이 우선순위를 부여할 수 있습니다. 그리고 팀은 스프린트(Sprint)라고 부르는 30일의 반복주기를 단위로 개발을 진행하며 제품백로그에서 한 스프린트에 할 수 있는 일을 선택하여  진행하게 됩니다. 꼭 30일일 필요는 없지만 경험상 30일이 최적이었으며 특별한 이유가 있는 것이 아니면 30일로 스프린트를 진행하고 경험해본뒤에 팀에 맞게 기간을 수정하라고 합니다. 그리고 스크럼 마스터(Scrum Master)는 팀원들이 프로젝트 진행에 최대한 집중할 수 있도록 도우며 매일 일일 스크럼(Daily Scrum)라고 하는 짧은 현황회의를 진행합니다.

스크럼 팀은 자기조직적인 팀으로 구성되어야 하며 스크럼 마스터는 팀원들을 위해서 장애물을 해결해 주고 필요자원이 충분히 공급되도록 돕지만 팀내부문제를 해결해주려고 해서는 안된다고 하고 있습니다. 스크럼 회의에서는 오직 어제 무엇을 했는가? 오늘은 무엇을 할것인가? 장애요소가 있는가만을 얘기하고 다른 얘기로 회의가 길어지지 않도록 하며 특별히 회의가 필요한 경우에는 일일 스크럼 후에 회의롤 소집해서 진행토록 합니다. 일일 스크럼을 통해서 프로젝트의 진행상태가 공유되며 프로젝트외의 일을 하고 있지는 않은지 무엇이 프로젝트를 방해하고 있는지를 파악도록 하고 있습니다. 사람들은 수직적 구조에서 수동적으로 일하는 것에 익숙해져 있지만 스크럼팀은 자기조직적으로 프로젝트가 진행되어야 합니다.




다른 애자일 방법론이 잘못되었다는 것은 아니지만 다른 애자일방법론의 페어코딩 등 구체적인 실천강령에 대해서 어려움을 토로하는 사람들도 많이 보았었는데 스크럼은 디테일한 부분은 자유롭게 놔두면서 가이드라인만 제공하는 듯한 느낌이라서 스크럼에 다가가기에는 그렇게 어렵지 않아보였습니다.

다만 다른 애자일방법론과 마찬가지로 현실적용에서는 약간 괴리감이 있는 것은 동일한 것 같습니다. 스크럼 자체의 의도와 방법들은 지극히 동감하지만 실제 적용에 대해서는 고민이 되게 마련입니다. 일단 가장 큰 걱정은 스크럼이 말하는 것이 되려면 팀이 전권을 가져야 합니다. 제품백로그에  요구사항에 대한 처리가 강요되는 것을 팀이 거부할 수 있어야 하고 프로젝트 진행외에 팀이 다른 회사일등을 하는 것을 스크럼마스터가 막을 수 있어야 합니다. 심지어 기간이 모자라면 기능을 줄이는 것도 가능해야 하는데 과연 회사에서 스크럼팀에 이런 신뢰와 전권을 주는 것이 가능할까 하는 생각입니다.

그것 자체도 정말 쉽지 않은 일이지만 혁신이나 실험을 위해서 그렇게 허락해 준다고 하더라도 스크럼이 얘기하는 것처럼 스크럼을 적용하는 것 만으로 성공적인 결과를 항상 보여줄 수 있냐는 것은 쉽게 확신할 수는 없는 얘기도 특히 처음 도입한다면 더욱 그렇습니다. 저도 물론 애자일 방법론들이 더 좋은 방법이라고 생각은 하고 있습니다만 그건 장기적으로 익숙해 진뒤의 이야기지 적용하면 성공!식의 실버블렛은 아니라고 생각합니다.




머 책만 읽은 뒤에 비관적으로 보려는 것은 아니지만 애자일관련 책을 읽을때마다 읽으면서는 공감하지만 현실을 생각하면 한숨이 나오는 것은 어쩔수 없는것 같습니다. 책중에서 인상에 남는 말은 스크럼의 기본 원칙중 하나인 "가능한 것을 하라(the art of the possible)"입니다. 불가능한 것에 시간을 허비하기 보다는 가능한 것부터 처리하라는 것입니다.

2009/08/27 02:58 2009/08/27 02:58