적응형 접근방식 프로젝트 일정 기획 설명

적응형 접근방식 프로젝트 일정 기획 설명

적응형 접근방식 일정 기획에 대해서 설명해드리겠습니다. 적응형 접근방식 일정 기획에 대해서는 프로젝트를 진행하기 위해서 반드시 알아둘 필요가 있습니다. 적응형 개발 방식은 애자일 프로젝트 방법론을 적용해서 진행하는 것을 의미합니다.

적응형 개발은 상세 요구 사항과 상세 일정 계획을 확정하고 시작하는 것이 아니라 프로젝트를 진행하면서 요구 사항과 일정에 대해서 상세화를 진행해 나가는 방식입니다. 계획을 중요시 하는 예측형 개발의 경우, 범위와 일정 목표를 달성할 수 있는 자원 산정(에 보다 집중하고 적응형 개발은 주어진 일정과 자원으로 구축할 수 있는 최대한의 범위에 더 집중하게 됩니다. 이어서 적응형 접근 방식의 프로젝트 일정 기획에 대해서 자세히 알아보도록 하겠습니다.

적응형 접근방식 일정 기획 이해

적응형 개발 계획은 프로젝트 초기에 수립하는 상위 수준의 릴리즈 계획과 프로젝트를 진행하면서 상세화 하는 반복 계획으로 나눌 수 있습니다. 애자일 프로젝트 일정 기획을 진행할 때 릴리즈 계획에서는 몇 개의 이터레이션을 어떤 일정으로 어떤 요구 사항을 개발하는지 결정합니다. 이터레이션 계획에서는 각 이터레이션에서 구현할 요구 사항을 확정하고 반복 주기에서 수행할 상세 작업 계획을 정의하게 됩니다.

릴리즈 계획에서는 각 반복 주기에서 구현할 요구 사항들을 확정하지 않고 이터레이션을 시작하기 전에 확정할 수 있습니다. 적응형 개발 계획 수립은 릴리즈 계획을 하향식으로 정의한 다음 반복 주기 계획을 상향식으로 확정하게 됩니다. 적응형 개발 계획에서는 요구 사항을 점진적으로 상세화 하기 때문에 요구 사항 변경에 대해서 유연하게 대응할 수 있습니다. 애자일 릴리즈 기획은 상위 수준의 일정 계획입니다.

프로덕트 진화를 위한 비전과 이를 달성하기 위한 로드맵을 기준으로 릴리즈 일정과 반복을 위한 반복 계획을 수립하여 상위 수준의 프로젝트 일정을 쉽게 이해하는데 유용합니다. 프로덕트 비전은 프로덕트가 조직의 전략을 어떻게 지원할지 기술한 것으로 제품 개발의 목적이자 이를 통해서 달성하고자 하는 미래 상태를 의미하며, 애자일 프로젝트의 출발점입니다. 프로덕트 로드맵은 시간의 경과에 따라 예상되는 인도물의 순서를 표현합니다.

애자일 릴리즈 계획과 일정 기획 프로세스

애자일 릴리즈 계획은 릴리즈 계획 기반의 일정 기획 프로세스로 구성됩니다. 첫 번째 단계는 제품 백로그를 작성하는 것입니다. 두 번째 단계는 스토리 점수를 추정하는 것입니다. 세 번째는 스프린트 기간을 설정하는 것입니다. 네 번째는 평균 개발 속도를 추정하는 것입니다. 다섯 번째는 전체 일정을 추정하는 것입니다. 스토리 점수를 추정하는 것은 요구 사항의 규모를 특정 하는 단위로 스토리의 크기나 복잡도를 감안한 업무량을 의미합니다.

스토리 점수가 클 경우 투입 공수가 많이 필요하게 되는 것을 의미합니다. 스토리 점수는 상대적인 추정을 활용하는 것입니다. 예를 들어, 1점에 해당하는 평균 투입 공수를 추정합니다. 그리고 추정을 할 때 플래닝 포커 기법을 주로 활용합니다. 이후에는 지속적인 점검을 통해서 재추정이 가능해집니다. 릴리즈 계획 기반의 일정 기획 프로세스는 플래닝 포커 방법을 사용할 수 있습니다. 플래닝 포커는 가장 높고 가장 낮은 추정치를 제시한 팀원 각각이 근거를 제시한 다음 모두 재산정을 실시하고, 수렴할 때까지 프로세스를 반복하는 비교 산정 기법입니다.

프로덕트 오너가 추정해야 할 항목을 제시하면 정확하게 어떤 기능 인지를 파악하고 논의해야 합니다. 자신의 추정치가 적힌 카드 한 장을 내려 놓고 모두 카드를 내려 놓으면 동시에 카드를 뒤집습니다. 그리고 가장 높은 값과 가장 낮은 값을 제시한 팀원이 그렇게 생각한 이유에 대해서 설명하도록 합니다. 이 때 견해의 차이가 나는 부분에 대해서는 논의를 계속하여 기능을 구체화합니다. 추정치가 수렴될 때까지 계속 반복하게 됩니다.

적응형 접근방식 일정 기획에 대한 고찰

릴리즈 계획 기반의 일정 기획 프로세스에 대해서 좀 더 알아보도록 하겠습니다. 개발 속도 추정과 전체 일정 추정 방법에 대해서 이해할 필요가 있습니다. 개발 속도는 팀이 단위 스프린트에서 완료할 수 있는 스토리 점수의 합을 의미합니다. 예를 들어, 2주 스프린트 기간 안에서 20점을 완료할 수 있다면 개발 속도는 20점이 됩니다. 각 스프린트 실행을 통해 성과를 확인하면서 좀 더 정확하게 갱신 되게 됩니다. 속도는 생산성의 개념으로 특정 팀이 하나의 반복 주기에서 구현할 수 있는 평균 스토리 점수입니다.

속도는 다양하게 활용될 수 있습니다. 먼저 전체와 개발 반복 주기에서 개발 가능한 사용자 스토리 규모를 산정합니다. 그리고 투입 공수와 기간을 산정할 수 있습니다. 제품 백로그의 스토리 점수와 개발 속도를 고려해서 제품 개발에 필요한 전체 일정 계획을 수립합니다. 단위 스프린트 계획 수립 프로세스는 백로그 그루밍을 먼저 생각할 수 있습니다. 백로그 그루밍은 조정, 정제, 우선순위 재산정 영역입니다. 첫 번째는 스프린트 목표와 범위를 설정합니다. 두 번째는 스프린트 백로그를 도출합니다. 세 번째는 작업을 분할하고 인수 기준과 담당자를 지정합니다. 네 번째는 스프린트 목표 업무량을 확정합니다. 반복 기반 애자일 계획을 수립할 때 필수 고려 사항에 대해서도 알아둘 필요가 있습니다.

프로젝트 팀 마다 수용 능력이 다르고 프로덕트 오너 마다 기본적인 스토리의 크기가 다릅니다. 반복 과정에서 팀이 완료할 수 있는 수용 능력을 초과하는 스토리를 시도하지 않도록 하는 것이 중요합니다. 반복 과정에서 팀의 수용 능력이 감소됨을 인지하는 경우 이전과 동일한 양의 작업을 완료할 수 없기 때문에 축소된 수용 능력으로 완료할 수 있는 작업만 계획해야 합니다. 프로덕트 오너가 스토리를 작은 단위로 세분화하고 팀이 수행한 작업을 완제품 형태로 진척을 확인할 때 팀에서 향후 수행할 수 있는 것이 무엇인지를 파악할 수 있습니다.

애자일 프로젝트의 스프린트 계획 설명

애자일은 전체 단위로 한번에 계획을 수립하는 방식이 아니고 작은 단위의 스프린트로 계획하고 진행 과정에서 상황에 맞춰 계획을 다시 수립하는 방식입니다. 스프린트 계획을 수립할 때는 여러 가지 사항들을 유의해야 합니다. 각 스프린트에 다음 스프린트를 준비하는 활동들을 포함해야 합니다. 특정 스프린트가 끝났는데 다음에 착수할 스프린트를 준비하지 않는다면 다음 스프린트 착수가 지연되게 됩니다. 다음 스프린트 착수를 위한 준비로 요구 사항의 상세화에 대한 부분과 화면 디자인 완료 등이 가장 대표적인 활동들입니다.

특정 유형의 업무만 하는 스프린트를 진행해서는 안됩니다. 운영 업무의 비중을 감안하여 스프린트 업무 계획을 수립 합니다. 첫 번째 스프린트는 프로젝트 착수 준비를 위한 활동을 수행할 수 있습니다. 프로젝트 아키텍처를 설계하고 고객 가치를 분석하고 상세화 하며 화면 표준 설계와 데이터 설계, 개발 환경 구축 등 본격적인 개발을 준비하는 활동을 첫 번째 스프린트에서 진행할 수 있습니다. 스프린트 주기는 프로젝트 상황에 따라서 결정하되 동일 주기를 유지합니다. 일반적으로 스프린트 주기는 2주에서 4주가 일반적입니다. 프로젝트 팀원들이 애자일 방법론에 익숙하지 않는다면 처음에는 긴 스프린트 주기를 적용하다가 팀원들의 애자일 경험과 역량이 쌓이면 스프린트 주기 단축을 검토하는 방법을 사용하는 것도 좋습니다.

각 스프린트에서는 개발 내용에 대한 단위 테스트를 완료해야 합니다. 즉, 각 스프린트 계획을 수립할 대 단위 테스트와 결함 수정을 감안하여 일정 계획을 수립해야 합니다. 스프린트는 금요일에 시작할 수도 있습니다. 하지만 대부분의 스프린트는 월요일에 시작합니다. 만약 회사나 조직에 따라서 월요일에 회의나 보고 일정이 규칙적으로 배정되어 있다면 스프린트 착수를 위한 계획 수립이 어려울 수 있습니다. 이에 따라 금요일에 스프린트 계획을 수립하는 것이 효율적일 수도 있습니다. 이는 고정 관념에서 벗어날 필요가 있다는 것을 의미합니다.