크리티컬 패스(Critical Path)는 문자 그대로 위태스러운 패스… 즉, 영향도가 높은 패스를 의미하는데요, 프로젝트에서 리스크(Risk)를 가지는 부분이기도 합니다. 다른말로 중요 업무, 주요 업무 등으로 표현 할 수 있습니다.

프로젝트 관리(Project Management)에서 가장 중요한 것 중 하나가 바로 크리티컬 패스(Critical Path)를 잘 관리하는 것입니다.

본 포스트에서는 MS Project를 이용한 크리티컬 패스 관리 기법에 대해 기술하도록 하겠습니다.

 

다음과 같은 타스크(Task)가 있다고 합시다.

여기서 어떤 일(Task)가 중요한 일인지… 파악을 하고자 한다면 어찌하겠습니까? 이를 MS Project에 입력을 하면 아래와 같은 간트챠트(Gantt Chart)가 나옵니다.

이때 어떤 일이 크리티컬 패스(Critical Path)인지 알 수 있다면 프로젝트를 보다 효율적으로 관리 할 수 있을 것입니다. MS Project에서 이에 대한 설정은 진행 상황 간트(Gantt)를 통해 확인이 가능합니다.

위와 같이 설정하셨다면 간트 챠트가 아래와 같이 나올 것입니다.

여기서 크리티컬 패스(Critical Path)는 빨간색으로 표기된 선이 해당됩니다. 빨간선은 업무가 타이트하게 배치된 것이고 파란선은 널널하게 배치된 선입니다. 즉, 설계, 구현, 테스트 타스크(Task)가 가장 여유가 있고 운영준비가 가장 문제가 많다는 것을 확인 할 수 있습니다. 다른 표현으로는 일이 너무 없어서 여유가 있다고 할 수 있습니다. 즉, 파란색으로 나오는 타스크(Task)의 인력은 남는 기간 동안 놀게 되는 것이죠.

여기서 운영 인력 확보 와 운영 계약 법무팀 검토를 동시에 수행(병렬처리)하는 것으로 내용을 수정하면 크리티컬 패스가 다음과 같이 바뀝니다.

즉, 리소스가 아까보다는 좀더 효율적으로 배치된 것을 확인 할 수 있습니다. 앞에 작업보다 일정도 단축된 것을 확인하실 수 있죠? 위의 스케쥴 중 운영 계약 법무팀 검토도 조정한다면 일정을 더 단축할 수 있을지도 모르겠네요. 한번 시도해보세요.

과제 일정을 체크하다 보면 타스크(Task)가 너무 많아 어디에 어떤 문제가 있는지 눈으로 파악하기 힘든 경우가 많습니다.

이때 제일 많이 사용하는 툴이 Microsoft Project입니다. 이를 이용하면 프로젝트 추진시 전체 Task를 파악할 수 있고, 과제 추진 일정에 대한 시뮬레이션이 가능하게 됩니다.

이를 통해 크리티컬 패스(Critical Path) 파악이 가능하고 또한 이를 위해 리스크에 대한 사전 대응이 가능해지는 것입니다. MS Project를 써서 계획을 세우는 가장 큰 이유는 어떤 업무가 가장 Risk가 큰지 파악하기 위한 것이 주요합니다. 그런데, 타스크가 많으면 내용 파악이 매우 어려워지죠. 그래서 저는 아래와 같이 신호등을 사용합니다.

이를 위해서는 원래 추진 일정과 현재의 날짜를 비교하는 수식을 비교하여 상황에 따라 신호등을 보여줄 수 있어야 합니다.

이는 사용자 정의 필드라는 것을 이용하면 구현이 가능한데요, 다음과 같은 절차로 설정이 가능합니다.

 

1) 열 삽입

열을 먼저 삽입하시되 여기서 타입은 [번호1]을 선택하십시오. 참고로 [번호2]를 선택하셔도 무방합니다.

 

2) 사용자 정의 필드 설정

사용자 정의 필드가 열리면 아래와 같이 수식을 편집해 줍니다.

혹시 Copy & Paste를 하시길 우너하는 분이 계실것 같아 수식을 아래와 같이 넣어봅니다.

IIf([완료율]=100,4,IIf(([예정된 완료 날짜]-Date())<0,0,IIf(([예정된 완료 날짜]-Date())<7,1,IIf(([예정된 시작 날짜]-Date())>30,3,2))))

그리고 가장 중요하다 할 수 있는 그래픽 표시기 설정을 아래와 같이 해주십시오.

어떻습니까? 이제 진척 내용 파악을 위해 간트차트를 일일히 보지 않아도 되죠?

많은 책들을 읽어보면 늘 성공하는 사람들은 인생의 목표를 세우고 추진하는 순서로 진행이 됩니다.

이때 그들은 대부분 어느 시점에 자기가 무엇을 성취할지를 상상합니다. 이를 영어로 스케줄링이라고 합니다.

스케줄링, 즉 계획을 세우는 순서에는 기본적으로 두 가지 방법이 있습니다. 현재를 기점으로 순차적으로 계산해 목표달성 시기를 추정하는 순행 스케줄링과 최종 목표 달성 시간, 즉 미래를 기준점으로 역산해서 지금 당장 해야 할 일을 선택하는 역산 스케줄링이 있습니다.

성공하는 사람들은 목표가 생기면 먼저 최종 달성 시한을 정합니다. 그러고 나서 현재 지점까지 전체 거리를 파악하고 역으로 계산해 지금 당장 처리해야 할 과제를 만들어냅니다. 운동선수들이 시합일정에 맞추어 훈련하는 것처럼 항상 미래의 시점에서 현재를 판단합니다.

 

반면 실패하는 사람들은 대부분 “열심히 하다 보면 어떻게 되겠지” 하며 매일 매일 손에 잡히는 대로 일을 합니다. 그래서 긴급한 일이 생기면 곧바로 옆길로 샌다. 하지만 목표달성을 기준으로 현재 상황을 역방향으로 바라보면 유혹을 쉽게 뿌리칠 수 있고, 목표와 무관한 일들을 쉽게 물리칠 수 있습니다. 당연히 스트레스도 줄어들게 됩니다.

일본의 경영 컨설턴트 간다 마사노리는 이렇게 말했습니다. “99%의 사람들은 현재를 보면서 미래가 어떻게 될지를 예측하고, 1%의 사람만이 미래를 내다보며 지금 어떻게 행동해야 할지 생각한다. 당연히 후자에 속하는 1%의 사람만이 성공한다.” 그러므로 성공하는 것은 간단합니다. 미래로부터 역산해서 현재의 행동을 선택하는 습관을 갖는다면 말입니다.

MS Project는 프로젝트 관리 툴이다.

그런데 작업이름이 막대위에 나온다거나 막대속에 나오지 않아 간트챠트만 봐서는 무슨 프로세스가 진행되는지 알기 어렵다.

난 일정을 좀더 보기 쉽게 하기 위해 위와 같이 나올 수 있도록 옵션을 조정하여 사용한다.

먼저 간트챠트를 더블클릭하면 다음과 같은 화면이 나온다.

여기서 텍스트 텝을 클릭하여 다음과 같이 입력해 준다.

잘 안보일거 같아 위의 그림을 확대해 보았다.

요주의 작업, 진행중인 요주의 작업, 작업, 작업 진행, 초기 계획, 요약등을 위와 같이 설정해주고 확인버튼을 누르면 아래와 같이 멋진 챠트가 나온다는 말씀.

이제 좀더 보기 편하지 않은가?

 

난 이렇게 하여 현재 진행중인 업무가 무엇이며 어떤일이 앞으로 할 것인지 파악하는데 매우 도움이 되었다.

① Goal(목표 설정하기)

프레젠테이션의 의미를 설정하는 단계로, 이때 발표자의 목표는 물론이고 청중의 목표 역시 알아두어야 한다.


② Outline(개요 만들기)

목표를 달성하기 위해 무엇을 전달할 것인가를 결정하는 단계로, 이때 역시 청중과의 상호 작용이 중요하다.


③ Elaborate(구체화하기)

설정한 주제를 어떻게 전달할 것인가를 결정한다.


④ Refine(정리하기)

완성된 프레젠테이션을 객관적인 시각에서 재검토한다.

진정한 문제는 이것이다. 건강과 행복, 그리고 풍요로운 삶을 위해 다음 사항을 명심하라.

* 유익한 정보를 읽고 들어라.

* 최선의 선택을 하라.

* 열린 자세로 다른 사람의 의견과 생각을 받아들여라.

* 자신의 성격적 취약점을 파악하고 고쳐라.

* 상대방의 말을 승인하는 것이 아니라 수용해야 한다.

* 고압적인 소수가 분위기를 장악하게 놔두지 말고 당당하게 자기 의견을 밝혀라.

* 현실적으로 도움이 되는 인간관계를 쌓아라.

* 상대방의 생각에 대한 진지한 의견을 전달하라.

* 속으로만 웃지 말고 자연스럽게 웃어라.

* 다른 사람에게 의지할 생각을 버리고 자신에게 아낌없이 투자하여 경쟁력을 키워라.

* 항상 모범적인 모습을 보여라.

* 모든 일에 책임감을 가져라.

* 수용, 회피, 변화 중 당신의 선택은 무엇인가?

* 갈등 상황에서 이기려 하지 말고 잘 해결할 길을 찾아라.

* 돈 관리에 신경 써라.

* 만나는 모든 사람이 고객이라는 마음가짐을 가져라.

* 자신이 어떤 사람인지 냉정하게 평가하라.

* 유연한 자세를 가져라. 밝게 살아라.

* 모든 것을 축복하라.

프로젝트를 추진하면서 가장 중요한 것으 커뮤니케이션이다.
소프트웨어를 개발함에 있어 팀웍은 커뮤니케이션에 많은 도움을 준다.

커뮤니케이션 스킬은 결국 소프트웨어의 품질에 영향을 미치게되므로 이들의 관계는 상당히 중요한 관계라고 할 수 있다.

커뮤니케이션이 잘 되려면 각 개인의 역량을 잘 살릴 수 있어야 하고
그러려면 이를 조율하는 사람의 테크닉이 사실상 중요하다.

이를 위해 프로젝트 매니져가 가져야 할 소양을 정의하면 다음과 같다.

1) 말하지 말고 경청하라
팀원 한사람 한사람의 말을 들어줘라. 좋은 프로젝트 매니져는 말이 적은 사람이다.
아니라고 생각하더라도 토를 달지 말고 끝까지 들어주고, 열번 되새긴다음 답변을 줘라.

2) 매주 정기적으로 앞으로 하게 될 주요 이벤트에 대해 가이드를 해라
자신이 맏은 업무에 대해 미리 준비할 수 있도록 이벤트를 미리 알려주는 것도 좋다.
Tea Meeting 같은 형태로 하는 것도 좋은 솔루션이다.

3) 좋은 일은 공개적으로 칭찬, 나쁜일은 따로 불러서 이야기하라
인간은 사회적 동물이다. 남에게 욕먹고 좋아할 사람은 없다.
나쁜일은 조용히 따로 불러서 다독거리고 좋은 일은 공개적으로 칭찬하여 사기를 북돋아 주는 것이 좋다.

4) 쉽고 하찮다고 생각되는 일은 가장 신뢰할 수 있는 이에게 맏겨라.
쉽고 하찮은 일일수록 꼼꼼하게 해야 될 필요성이 많다.
자칫 잘못하면 프로젝트의 생명에 영향을 미칠 수 있으므로 가장 협조적이고 신뢰성 있는 이에게 맏기는 것이 좋은 솔루션이 될 수 있다. 이친구야 말로 당신이 프로젝트를 성공적으로 할 수 있도록 하는데 도움을 가장 많이 주는 파트너이다. 자기 할것만 잘하는 친구보다는 동료의 가려운데를 긁어줄 줄 아는 사람이 과제에는 필요하기 때문이다. 고과를 줄 수 있으면 A+++을 이 친구에게 주라.
개발 방법도 중요하지만
나의 인생철학 중에서 제일 중요한건 인간됨됨이가 제일 중요한것 같다.

그 사람이 된놈이고,
그 사람과 같이 일하는게 즐거우면 그것으로 된거다.

그 사람과 일하는 것이 즐겁다면 협업도 즐거워진다.

+ Recent posts