목록
- 제품 백로그 준비
- 릴리즈 계획
- 스프린트 계획
- 스프린트 관리
- 스프린트 종료
- 제품 백로그 업데이트
- 회고
스프린트 종료
정해진 기간에 스프린트가 종료되면 스프린트를 정리한다. 스프린트의 종료 조건은 팀에 따라 정할 수 있는데 크게 아래 조건들을 많이 사용한다.
- 정해진 시간
- 태스크 종료
- 예산 종료 시까지
어떤 조건을 사용하든지 가장 중요한 것은 명시적인 종료 조건을 정의해야 한다는 것이다. 좋은 종료 조건의 예는 다음과 같다.
- 구현의 경우 단위 테스트 100% 성공, 테스트 코드 커버리지(테스트 케이스가 테스트한 코드 라인 수 / 전체 코드 수) 60% 달성
- 설계 단계 메세지 채널 설계 문서 고객 확인받음
- 설계 단계 프로토타입 작성 및 A, B, C, D기능 동작 확인
스프린트 리뷰
스프린트가 종료된 후에는 스프린트에서 구현된 산출물을 리뷰하는 단계가 필요하다. 요건에 따라 적절하게 구현이 되었는지 품질은 만족 했는지 등의 검증이 필요하다.
단순히 스프린트에서 무엇을 했고, 잘됐다 안됐다가 아니라, 실제 구현 코드, 산출 문서, 테스트 결과 등의 구체적인 자산을 가지고 리뷰를 수행해야 한다.
이 과정에서는 고객을 참여시켜 자산에 대해서 간략한 데모를 고객에게 수행한다. 이 데모는 고객 보고를 위해서 별도의 PPT나 데모 준비를 하는 것이 아닌 비정규적인 리뷰이다. 정규적인 리뷰는 릴리즈(Release) 시기별로 진행하도록 하고, 스프린트 리뷰 준비를 위해서 별도의 시간이나 리소스(인원)를 낭비하지 않도록 한다.
테스트
특히 스프린트가 구현인 경우, 구현이 제대로 완료되었는지 아닌지를 확인하는 방법은 테스트밖에 없다.
스프린트 계획(Planning)에서 구현의 경우 테스트 작업을 반드시 포함시켜야 하고, 리뷰 과정에서는 이 테스트결과를 리뷰하도록 한다. 테스트는 기능적 테스트뿐만이 아니라 안정성이나 성능과 같은 비기능적 요건에 대한 테스트도 반드시 포함되어야 한다.
스프린트별 테스트를 통해서 잠재적인 문제를 빨리 찾아낼 수 있고, 필요에 따라서 디자인이나 아키텍처에 대한 변경을 가할 수 있다.
스크럼을 사용하는 실제 구현 팀에 대해서 테스팅 구현은 다음과 같은 구현을 권장한다.
- 단위 테스트(Unit Test) : 개발자가 개발 컴포넌트 단위로 테스트 수행
- 회귀 테스트(Regression Test) : 테스트했던 내용을 다음 테스트에도 포함 시켜 새로운 코드 추가나 변경이 기존 기능에 영향을 주지 않는지 매번 검증
- 테스트 자동화(Test Automation) : 테스트를 자동화하여 회귀 테스트를 지원하고, 테스팅의 효율성을 극대화 함
- 점진적 통합(Contiguous Integration) : 일일 빌드 등을 통해서 빅뱅 방식의 일시적인 코드 통합이 아닌 점진적 통합 전략을 사용함
제품 백로그 업데이트
리뷰가 끝났으면 리뷰 과정에서 나온 추가 요건이나 변경 상황을 반영하여 제품 백로그를 업데이트한다. 팀이 모여 우선순위를 다시 조정하고 요구 사항을 좀 더 구체화하며, 예상 소요시간을 업데이트한다.
사람들은 프로젝트를 수행하면서 배우게 되고 실력향상이 된다. 그래서 요구 사항이나 예측치는 그때 상황에 따라서 계속 업데이트 되어야 한다. 제품 백로그는 항상 변경되고 실상황을 반영해야 한다.
회고
스프린트가 종료되고 모든 작업이 끝나면, 팀에서 운영 중인 방법론 자체에 대한 리뷰가 필요하다. 팀에서 운영 중인 태스크 관리 시스템(Task Management Process)은 처음에 세트업되면 많은 시행착오를 겪게된다. 수행 시간 예측이나 스프린트 주기 설정, 태스크 관리 프로세스 등 많은 과제가 있는데, 스프린트의 경험을 기반으로 회고를 수행함으로써 프로세스를 발전시킬 수 있는 방향을 찾을 수 있다.
가장 간단한 수행방법으로는 PM이 이메일이나 종이를 이용하여 이번 스프린트에 "무엇이 잘되었는가?", "무엇이 잘못되었는가?"를 수집 한 뒤, 다음에 SWOT 분석 등을 통해서 개선 방안을 찾아볼 수 있다.
'가짜 개발자 Shiro > PM ( Project Manager )' 카테고리의 다른 글
태스크 관리 - 1 (0) | 2020.02.12 |
---|---|
엔터프라이즈 개발을 위한 스크럼 기반의 개발 방법론 - 3 (0) | 2020.01.20 |
엔터프라이즈 개발을 위한 스크럼 기반의 개발 방법론 - 2 (0) | 2020.01.10 |
엔터프라이즈 개발을 위한 스크럼 기반의 개발 방법론 (0) | 2020.01.09 |