ALM/Task Management

엑셀 기반의 Task management (스케쥴 관리)

Terry Cho 2009. 1. 14. 15:49
ALM 프레임웍중에서, JIRA와 같은 이슈 추적 시스템을 이용하여 스케쥴 관리와 작업 추적을 할 수 있지만,
프로젝트에 따라서는 이슈 추적 시스템의 도입이 어렵거나, 별도의 프로세스 정립이나 Learning Curve가 필요한 경우가 있기 때문에, 때에 따라서는 Excel 기반의 Task관리가 효율적일 수 있다.

조엘 온 소프트웨어에서도 언급된바있는 내용인데,

엑셀 항목에
TASK # | Category | Sub task | Detail Task | Assignee | Priority | Due data | Status 를 정한다.
  • Category는 Task의 종류가 된다. 디자인,분석 같은 단계가 될 수 도 있고, Logging,Exception Handling과 같은 각 패키지가 될 수 도 있다.
  • SubTask는 Task들을 나눠서 정의하는 부분으로 Sub category정도로 생각하면 되고, 가장 좋은 단위는 독립된 기능으로 하는 것이 좋다.
  • Task는 실제 작업을 해야하는 Task인데, 보통 1일단위로 나누는 것이 좋고 최대 3일을 넘지 않아야 제대로된 관리가 가능하다.
  • Assignee는 작업이 지정된 사람을
  • Priority는 중요도를
  • Due date는 작업 예상 종료일을 지정한다.
  • Status는  New/Assigned/In Progress/Postponed/Closed 로 정하는데, New는 새로 생성된것, Assigned는 생성되고 각 개발자에게 할당된 작업, In  Progress는 실제 작업중인것, Postponed는 일정에 의해서 미뤄진 작업이고,Closed는 완료된 작업이다.
뒤에 그래프는 날짜별로 작업을 진행하는 기간을 명시한다.

프로세스
크게는 Scrum 방법론을 따르는데, 기본적으로 해야할 Task list들을 정하고 Iteration 기간을 정한다. 보통 한달 이하가 적절하다. Task list를 뽑는 것은 PM이 주도로 하고 세세한 Task는 각 구성원이 직접 작성하고 그에 필요한 시간 역시 직접 작성한다. 그래야 책임 여부가 확실해 지지만, 이것은 스케쥴이 늦어 졌을때 책임을 묻기 위함이라기 보다는 좀더 현실적인 스케쥴링을 하고 책임감을 부여하기 위함이다.
PM은 구성원이  작성한 스케쥴을 가지고, Iteration 기간내에 맞출 수 있는지 체크하고 Task 가 over되었을 경우에는 Priority에 따라서 다음 Iteration으로 넘기거나, Resource를 더 할당 한다.

Task 시간을 예측 하는데는 몇가지 규칙이 있는데,
절대 Task는 각 팀원의 Utilization을 100%로 해서 잡지 않는다. 80%가 적절한데, 80%로 잡더라도 항상 100% 근처가 되기 때문에, 낭비가 되지는 않는다.
그리고 다른 규칙은 모듈을 개발할때, 설계:구현:테스트의 비율이 실제적으로 실행해보면 1:1:1 의 비율을 갖는다. 설계 단계에서는 관련 기술을 Search하고, 테스트 하고 문서화 하는 기간, 테스트 에서는 버그 추적 및 Refactoring등의 기간이 들어가기 때문에 1:1:1의 법칙역시 많은 시간을 소요 하는 것은 아니다.

이를 바탕으로 오전에 10~20분 정도 팀원의 스케쥴을 체크하고 문제 사항이 없는지 도움을 주거나 받을 사항을 간단하게 이야기 하고 매일 Task List를 업데이트 하여 스케쥴 상에 발생할 수 있는 Risk를 관리한다.

예전에 Issue Tracking 시스템을 쓸 수 없는 프로젝트에서 한번 사용했었는데, 요즘도 참 유용하게 사용하고 있다는..