1. 작업꾸러미(Work package) 식별과 관리
프로젝트를 잘 수행하기 위해 전체 일덩어리를 적절한 크기의 일로 나누어 가게 됩니다. 이렇게 나눈 구조를 작업분해구조(WBS)라 하는데, WBS 내에서 가장 낮은 단계에 위치한 구성요소를 작업꾸러미(work package)라고 합니다. PMI의 PMBOK Guide에 따르면 작업꾸러미는 대체로 다음 항목들을 포함합니다.
작업꾸러미는 작업 관리를 위해 식별하는 것으로서 여기서 관리라는 것은 예측, 산정, 계획 수립, 작업의 할당, 시작이나 완료여부 파악 또는 진척 정도의 측정 등을 말합니다. 어느 정도 크기로 나누어야 하는가에 대해 사실 특별한 기준은 없습니다. 관리를 하는데 좋으면 어떤 수준이던 나누면 됩니다. 예를 들면 200~300 MH 정도를 기준으로 잡을 수도 있습니다. 가끔, 일정 활동(schedule activity)의 크기와 혼동할 수 있습니다. 일정 활동의 크기에 대해서는 통상적으로 알려진 규칙이 있습니다. 예를 들면, 2주를 넘지 않게 해야 한다. 보고 기간의 두배를 넘지 않아야 한다. 등…
이것들은 모두 일정 관리를 위한 모니터링 주기 등에 관련한 기준으로 알려져 있고 또 적용되고 있습니다.
WBS를 전개할 때는 즉, 일을 나눌 때는 너무 깊은 레벨로 내려가지 않도록 주의할 필요가 있습니다. 관리에 도움이 그다지 되지 않는다면 나누지 않고 나열하는 것이 좋습니다.
WBS의 Level 2에서는 보통 프로젝트 단계가 나오게 됩니다. 그와 함께 프로젝트 관리 작업 등의 관리나 지원 작업들이 추가됩니다. 그런데 이것을 생명주기작업, 비생명주기작업 이렇게 구분을 하고 하위에 배치를 하면 깊이만 깊어지게 됩니다. 두 가지 경우 모두 관리할 작업꾸러미의 개수는 동일합니다. (아래 그림 참조)
상식적인 내용이지만, 작업을 나눌 때 하위 작업의 합이 상위 작업을 100% 달성하도록 해야 합니다. 또, 나누어진 하위작업들은 서로 중복되지 않아야 합니다.
작업꾸러미를 식별할 때 작업꾸러미 간의 의존성을 파악하는 것은 도움이 될 수 있습니다. 이것들은 후속 활동(예를 들면, 일정 관리)에 도움을 줄 수 있습니다. 의존성은 작업순서 뿐만 아니라 입출력 관계나 요구-충족 관계 등을 포함할 수 있습니다.
2. 일정 활동(schedule activity) 식별과 관리
일정 활동은 작업꾸러미를 완료하기 위해 수행해야 하는 활동들이며, 작업꾸러미의 구성요소입니다.
이름 그대로 일정 관리를 위한 것으로, 일정 활동을 식별할 때는 시작과 완료를 명확하게 판단할 수 있도록 하는 등 관리가 가능한 방법으로 식별하는 것이 좋습니다.
아래 통신 관리 컴포넌트(예를 들면 CommMgr)라는 작업꾸러미에 대한 사례를 보겠습니다.
위 활동들은 하나의 컴포넌트를 완성하기 위해 필요한 활동들입니다. 컴포넌트의 요구사항을 식별하고 검토, 컴포넌트 설계를 수행하고 검토, 코드를 작성하고 검토, 시험 후 컴포넌트 릴리스까지 일련의 활동들로 구성된 흐름입니다.
이런 방식으로 활동들을 식별하는 것은 각 활동의 시작 및 완료 여부를 잘 알 수 있고 수행의 흐름 등이 명확할 때 유용할 것입니다. 그렇지만, 때로 새로운 컴포넌트를 만들어내야 할 경우 위의 활동들은 아래와 같은 형식으로 수행될 가능성이 높습니다.
즉, 설계를 검토하다가 다시 요구사항 분석 및 명세작업을 반복해야 하는 등의 상황이 빈번하게 일어날 수 있으며 테스트 수행 중에도 다시 요구사항이나 설계를 수정해야 하는 상황이 발생할 수 있습니다. 게다가 몇 번이나 반복해야 하는지 예상조차 어려울 수 있습니다. 따라서 이렇게 식별한 활동들로 일정을 관리하는 것은 곤란합니다.
사실, 개발 프로세스란 반복과 진화를 통해 완성해가는 과정이므로, 기계적인 운영 프로세스와는 다른 성격이 있기 때문입니다.
만약, 위 CommMgr를 작업하는데 240 Person Hour가 필요하고 작업자 1~2인이 수행할 수 있으며 총 6주의 기간 정도가 주어진다면 아래와 같은 4개 정도의 일정 활동으로 식별하는 것도 방법입니다.
여기서 DEVELOP은 개발만 하는 것이 아니고 디버깅 성격의 활동도 포함되며, 마찬가지로 VERIFY도 검증만 하는 것이 아닌 문제에 따른 해결과 재테스트를 포함하는 활동입니다. 활동에 대한 상세한 내용은 절차서나 가이드 등에서 찾아볼 수 있을 것입니다. MODIFY 활동은 조건부 활동입니다. 위의 활동들을 6주 정도 기간으로 계획하고 일정 관리하는 것은 타당해 보입니다. 조건부 활동에 대한 일정 수립 및 관리 기법도 확률적 분기나 조건부 분기 등 여러가지 존재하므로 적절한 방법을 적용할 수도 있습니다.
3. 결론
작업분해구조(WBS)는 작업의 관리를 잘하려고 하는 것이지 분류 체계를 멋지게 만드는 것이 아닙니다. 그러므로 실용적으로 작성하는 것이 좋습니다.
- 작업꾸러미의 크기는 관리에 용이한 것이면 됩니다. 작업꾸러미에 포함된 일정 활동(schedule activity)의 크기와는 다릅니다.
- 일정 활동은 관리가 가능하도록 식별해야 합니다. 추상적인 수준에서 식별을 하면 관리가 어렵습니다.
- 여기서 관리라는 것은 산정, 계획수립, 소요 자원의 식별과 할당, 진행여부 모니터링 및 판단 등을 말하는 것입니다.
- 본 기사에서 다루는 내용은 당사 교육 과정에 포함된 일부 내용입니다. 보다 상세한 사항은 해당 교육을 통해 접하실 수 있습니다.
참고 자료
- Automotive SPICE® Process Reference Model and Process Assessment Model V3.1
- Automotive SPICE® Process Reference Model and Process Assessment Model V4.0
- ISO/IEC/IEEE 24765:2010 Systems and software engineering — Vocabulary
- ISO/IEC/IEEE 12207:2008 Systems and software engineering — Software life cycle processes
- PMBOK Guide 6th edition
- Practice Standard for Work Breakdown Structure Third Edition