스크럼 정의
스크럼은 복잡한 문제에 대해 적응할 수 있는 해법(Adaptive solutions) 을 활용하여 가치를 창출하도록 도와주는 경량(Lightweight) 프레임워크이다
스크럼은 스크럼 마스터가 다음과 같은 환경을 조성하는 것
1. 프로덕트 오너는 복잡한 문제를 해결하기 위한 업무를 우선순위에 따라 프로덕트 백로그에 정렬한다.
2. 스크럼 팀은 선택한 업무를 스프린트 동안 가치의 증가분(*증가분은 스크럼 팀이 스프린트 동안 완료한 업무로서 기존 프로덕트에 새로 더해지는 프로덕트의 새로운 부분을 의미한다. - 번역자)으로 만들어 낸다.
3. 스크럼 팀과 이해관계자들은 결과물을 점검하고 다음 스프린트를 위하여 조정
4. 반복
스크럼 이론
스크럼은 경험주의와 린 씽킹을 기초로 한다. 경험주의는 경험과 관찰한 것을 기반으로 한 의사 결정으로부터 지식을 얻는 것이다. 린 씽킹은 낭비를 줄이고 본질에 초점을 맞추는 것이다.
투명성: 업무를 실행하거나 일의 결과물을 받는 사람들에게 신규 업무 프로세스와 일이 무엇인지는 반드시 가시적이어야 한다.
점검: 잠재적으로 바람직하지 않은 변화와 문제점을 발견하기 위해서는 스크럼 산출물과 달성하기로 한 목표에 대한 진척을 반드시 자주 부지런하게 점검해야 한다.
적응: 만약에 프로세스의 어떤 측면이 수용 가능한 범위를 벗어나거나 그 결과물이 받아들일 수 있는 수준이 아닌 경우, 진행하는 프로세스와 생산하고 있는 것들을 반드시 조정해야 한다
스크럼 가치
스크럼의 성공적인 활용은 사람들이 얼마나 다섯 가지 가치를 잘 지키는 가에 따라 좌우된다:
약속, 집중, 열린 마음, 존중, 용기
스크럼 팀
스크럼 팀 전체는 매 스프린트마다 가치 있고 유용한 증가분을 만들어내는 것에 책임을 진다. 스크럼은 스크럼 팀 내에 세 가지 특정한 직책을 정의한다: 개발자들, 프로덕트 오너, 스크럼 마스터
개발자들
스크럼 팀의 개발자들은 매 스프린트마다 사용 가능한 증가분의 모든 부분을 만드는 것에 전념하는 사람들이다.
개발자들은 항상 다음의 사항들에 책임을 갖는다:
⚫ 스프린트 동안의 계획을 세우는 것, 스프린트 백로그
⚫ 완료의 정의를 준수하여 품질을 높여가는 것
⚫ 스프린트 목표를 위해 그들의 계획을 매일마다 조정함
⚫ 전문가로서 서로 책임을 지는 것.
프로덕트 오너
프로덕트 오너는 스크럼 팀의 결과물인 프로덕트의 가치를 극대화하는 책임을 갖는다. 이 업무를 수행하는 방법은 조직, 스크럼 팀, 개인에 따라 다를 수 있다.
⚫ 프로덕트 목표를 세우고 명쾌하게 소통하는 것
⚫ 프로덕트 백로그 아이템을 생성하고 분명하게 소통하는 것
⚫ 프로덕트 백로그 아이템을 우선순위에 따라 정렬
⚫ 프로덕트 백로그를 반드시 투명하고 가시적이며 이해가 잘 되도록 만드는 것
프로덕트 오너는 위에 나온 일을 직접 하거나 혹은 다른 사람들에게 그 책임을 위임한다. 어떤 식으로 하든지 최종 책임은 프로덕트 오너가 갖는다.
프로덕트 오너는 한 사람이지 여럿으로 구성된 위원회가 아니다. 프로덕트 오너는 프로덕트 백로그와 연관된 많은 이해관계자들의 요구를 대표한다. 프로덕트 백로그를 변경하고 싶은 사람들은 프로덕트 오너를 설득하여야 한다.
스크럼 마스터
스크럼 마스터는 스크럼 가이드에 정의된 대로 스크럼을 확립하는 것에 책임이 있다. 스크럼 마스터는 스크럼 팀과 조직의 모든 구성원이 스크럼 이론과 실천법을 이해하도록 돕는다.
스크럼 마스터는 스크럼 팀과 더 큰 조직을 위해 봉사하는 진정한 리더이다.
스크럼 마스터는 스크럼 팀을 위해 다양한 방법으로 일하는데, 다음을 포함한다:
⚫ 팀원들이 자율관리를 하고 교차기능적이 되도록 코칭 하는 것
⚫ 스크럼 팀이 완료의 정의를 충족하여 높은 가치를 갖는 증가분을 만드는 데에 집중할 수 있도록 돕는 것
⚫ 스크럼 팀의 진척에 방해가 되는 장애물을 제거하는 것
⚫ 모든 스크럼 이벤트들이 열리는 것과 긍정적이고 생산적으로 이루어 지는 것, 그리고 정해진 시간 안에 마치는 것을 보장하는 것.
스크럼 마스터는 프로덕트 오너를 위해 다양한 방법으로 일하는데, 다음을 포함한다:
⚫ 효과적인 프로덕트 목표 정의와 프로덕트 백로그 관리를 위한 기술을 찾는 것을 돕는 것
⚫ 스크럼 팀이 명확하고 간결한 프로덕트 백로그 아이템의 필요성을 이해하도록 돕는 것
⚫ 복잡한 환경에 대해 경험주의적으로 프로덕트 계획을 수립하도록 돕는 것
⚫ 요구 또는 필요에 따라 이해관계자와의 협업을 촉진하는 것.
스크럼 마스터는 조직을 위해 다양한 방법으로 일하는데, 다음을 포함한다:
⚫ 조직이 스크럼을 채택하는 경우, 조직을 리드하고, 교육하고 코칭 하는 것
⚫ 조직 내에 스크럼을 실행하는 것을 계획하고 조언하는 것
⚫ 조직 구성원들과 이해관계자들이 복잡한 환경에 경험주의 접근법을 이해하고 활용하도록 돕는 것
⚫ 이해관계자들과 스크럼 팀들 사이의 장벽을 제거하는 것
스크럼 이벤트
스프린트는 다른 모든 이벤트들을 담는 컨테이너라 할 수 있다
복잡성을 최대한 줄이기 위해 모든 이벤트는 같은 시각 같은 장소에서 한다.
스프린트
스프린트는 아이디어를 가치로 만들어 내는 이벤트로 마치 스크럼의 심장 박동과 같다.
스프린트는 꾸준함을 갖기 위해 한달 또는 그보다 짧은 기간으로 고정된 길이의 이벤트이다. 새로운 스프린트는 직전의 스프린트가 끝나는 즉시 시작한다.
스프린트 기간 동안에는:
⚫ 스프린트 목표 달성을 저해하는 변경을 해서는 안된다
⚫ 품질을 떨어뜨려서는 안된다
⚫ 필요한 수준까지 프로덕트 백로그를 정제해야 한다
⚫ 범위를 명확하게 하고 필요한 경우 프로덕트 오너와 다시 협상을 할 수 있다.
복잡한 환경에서는 어떤 일이 일어날지 알 수가 없다. 단지 지금까지 무엇이 발생했는지를 토대로 앞으로의 결정을 내릴 수 있다.
스프린트목표가 효력이없게 되면, 스프린트를취소할 수있다. 오직프로덕트 오너만이스프린트를 취소할 결정권을 갖는다.
스프린트 계획
스프린트 계획을 통해서 해당 스프린트 동안 수행할 업무를 선정한다. 스크럼 팀 전체가 참여하여 계획을 한다.
스프린트 계획은 다음과 같은 주제를 다룬다:
주제 1: 이 스프린트가 왜 가치가 있는가?
프로덕트 오너가 이번 스프린트에서 프로덕트가 어떻게 가치와 효용성을 높일 수 있는지를 제안한다. 전체 스크럼 팀원들이 협력해서 스프린트 목표를 정의한다. 스프린트 목표를 정의할 때에는 이 스프린트가 이해관계자들에게 중요한 이유를 담아야 한다. 스프린트 목표는 반드시 스프린트 계획을 마치기 전에 결정되어야 한다.
주제 2: 이 스프린트의 완료 Done 는 무엇인가?
프로덕트 오너와 논의를 하면서 개발자들이 이번 스프린트에 포함할 프로덕트 백로그 아이템을 선정한다. 스크럼 팀은 이 과정 중에 프로덕트 백로그 아이템을 정제할 수 있다. 이를 통해 내용을 더 정확히 이해하고, 할 일에 대한 확신을 가질 수 있다.
한 스프린트 내에 얼마나 완료할 수 있을지를 정한다는 것은 쉬운 일은 아니다. 그렇지만, 개발자들이 그들의 지난 성과와 다음 번에 수용 가능한 업무량, 완료의 정의에 대해 많이 알면 알수록 그들이 스프린트를 예측할 때에 더 확신을 가질 수 있을 것이다
주제 3: 선정한 일을 어떻게 완료할 것인가?
개발자들은 선정한 모든 프로덕트 백로그 아이템들을 가지고, 완료의 정의를 충족하는 증가분을 만드는 데에 필요한 업무들을 계획한다. 대체적으로 이것은 프로덕트 백로그 아이템을 하루 안에 완료할 수 있는 크기로 더 작게 세분화하는 것으로 이루어진다. 중요한 것은 이 과정은 절대적으로 개발자들의 재량이다. 다른 누구도 개발자들에게 프로덕트 백로그 아이템을 어떻게 증가분으로 만들지에 대해 정해주어서는 안된다.
스크럼 이벤트 목록
데일리 스크럼
데일리 스크럼의 목적은 스프린트 목표 대비 진척을 점검하고, 필요하면 다음 업무 진행 계획을 변경하여 스프린트 백로그를 조정하는 것이다.
스프린트 리뷰
스프린트 리뷰의 목적은 스프린트의 결과물을 점검하고 향후에 적응할 것들을 결정하는 것이다. 스크럼 팀은 주요 이해관계자들에게 일의 결과물과 논의된 프로덕트 목표 대비 진척을 보여준다.
스프린트 회고
스프린트 회고의 목적은 품질과 효율을 높이기 위한 방법들을 계획하는 것이다
스프린트 요소
스크럼 산출물
스크럼의 산출물은 업무 또는 가치를 나타낸다.
프로덕트 백로그
프로덕트 백로그는 프로덕트를 향상시키기 위한 것으로 발생하는 업무를 우선순위에 따라 정렬한 목록이다. 프로덕트 백로그는 스크럼 팀이 실행하는 업무를 제공하는 유일한 출처이다.
스프린트 백로그
스프린트 백로그는 스프린트 목표(왜), 스프린트를 위해 선택된 프로덕트 백로그 아이템들의 모음(무엇을), 증가분을 전달하기 위한 실행할 수 있는 계획(어떻게)으로 구성되어 있다
약속: 스프린트 목표
스프린트 목표는 스프린트에 대한 단 하나의 목표이다. 스프린트 목표가 개발자들이 한 약속이지만, 그것을 달성하기 위해 정확히 어떤 일을 할지를 정하는 것에 대해서는 융통성을 가질 수 있게 한다. 스프린트 목표 또한 일관성을 유지하고 집중할 수있게 하며, 스크럼 팀이독립적으로 일하기 보다는 함께 일하는 것을 장려한다
출처: https://scrumguides.org/docs/scrumguide/v2020/2020-Scrum-Guide-Korean.pdf
'개발' 카테고리의 다른 글
평균의 함정 (0) | 2023.07.28 |
---|---|
단일 장애점 (0) | 2023.07.28 |
함수형 프로그래밍이란 무엇인가? (0) | 2022.11.05 |
graphql client에서 정규화(normalization)와 직렬화(serialization) (0) | 2022.10.20 |
배운 것의 생명주기 (0) | 2022.09.05 |