검수요청.png검수요청.png

맨먼스

위키원
이동: 둘러보기, 검색

맨먼스(Man / Month)는 정부기업이 발주한 프로젝트에 투입된 인력이 1개월 동안 할 수 있는 작업 분량을 뜻한다. 주로 IT 분야에서 소프트웨어 개발 사업의 대가를 계산할 때 맨먼스를 사용한다.[1] 맨먼스는 인간의 이 들어간 양을 계산하는 품셈의 일종이다.

개요[편집]

소프트웨어개발 사업의 대가를 계산하는 방식의 하나로 한 사람이 한 달 동안 할 수 있는 양을 계산해 사업비를 책정한다. 즉 사업에 투입한 인력 수를 기준으로 사업비를 책정하는 방식인 셈이다.

인력을 기준으로 사업비를 책정하기 때문에 발주자나 관리자 입장에서는 편리하다. 하지만 투입 인력의 수준에 관계없이 인력의 수에만 초점을 맞추다 보니 소프트웨어의 질을 확보하기가 쉽지 않다는 단점이 있다.[2]

개발자 노동시간 측정[편집]

맨먼스는 시간의 흐름에 따라 다양한 단위로 표현된다. Man-Hour(1시간의 노동시간), Man-Day(1일 노동시간), Man-Week(1주일 노동시간), 그리고 Man-Month(1달 노동시간)이 그 주요한 단위이다. 이를 통해 프로젝트의 작업 양과 필요한 노동시간을 명확하게 계획할 수 있다.

​예를 들어, 만약 한 사람이 10달 동안 일을 해야 한다면, 이는 10 M/M(맨먼스)로 표현된다. 또한, 1사람이 10일 동안의 작업이 필요하다면 2 M/W(Man-Week) 또는 0.5 M/M로 표현할 수 있다. M/W는 상대적으로 사용빈도가 낮지만, 다양한 시간 단위로 작업을 계획할 수 있다는 점에서 중요한 개념이라 할 수 있다.

​프로젝트를 성공적으로 이끌기 위해서는 맨먼스의 개념을 이해하고 적절히 활용하는 것이 필수적이다. 효과적인 기획과 리소스 관리를 위해서는 어떤 작업이 얼마나의 노동시간이 소요될지 정확히 파악하는 것이 프로젝트의 핵심이다. 맨먼스를 통해 더욱 효율적인 일정 관리와 개발 과정을 설계할 수 있을 것이다.

​뿐만 아니라, 맨먼스 개념은 팀의 규모를 고려할 때도 중요한 역할을 한다. 여러 명의 개발자가 협업하여 프로젝트를 진행하는 경우, 각 개발자의 맨먼스를 더해 전체 팀의 작업 양을 계산할 수 있다. 이를 통해 팀원 간의 협업 시간을 효율적으로 분배하고, 프로젝트의 전반적인 진행 상황을 정확하게 파악할 수 있다.

​또한, 맨먼스는 예상치 못한 일정 지연이나 추가 작업 발생 시에도 유용하게 활용된다. 예를 들어, 특정 모듈의 개발에 예상보다 더 많은 시간이 소요된다면, 해당 모듈의 맨먼스를 조정하고 다른 부분에 리소스를 할당함으로써 프로젝트 일정을 최대한 준수할 수 있다.

​맨먼스의 측정은 단순히 노동시간만을 고려하는 것이 아니라, 개발자의 업무 특성과 역량도 함께 고려해야 한다. 어떤 작업은 창의성과 문제 해결 능력을 요구하는 반면, 다른 작업은 단순한 반복적 업무일 수 있다. 이러한 특성을 고려하여 맨먼스를 정확하게 측정하면, 팀의 업무 효율성을 극대화할 수 있다.

​맨먼스는 단순한 숫자로만 보이지만, 실제로는 프로젝트의 성패를 좌우할 수 있는 핵심 개념 중 하나이다. 효과적인 맨먼스 관리를 통해 프로젝트 팀은 제한된 시간과 자원 내에서 최상의 결과물을 창출할 수 있을 것이다.[3]

맨먼스 미신[편집]

M/M는 현실을 고려하지 않는다. 즉, 개발자 모두가 평균적인 사람이라고 가정한 작업 물량이라는 뜻이다.

예를 들어 홈페이지를 개발한다고 하자.

어떤 사람에게는 1달이 걸릴 수도 있지만, 어떤 이에게는 일주일 만에 완성되는 물량일 수도 있다.

IT지식 산업이다. 한 가지 제품을 대량으로 생산하는 제조업이라면 대략이라도 들어맞을 수 있겠지만, 개발자 10명이 와도 해결하지 못하는 문제를 단 한 명이 손쉽게 풀어내는 IT산업에서는 소용이 없다.

애초에 가정 자체가 잘못되었으므로 숫자 자체도 의미가 없다.

맨먼스 단위로 작업량을 잰다는 것은 위험하고도 기만적인 미신과 같다. 거기에는 사람과 일정이 서로 교환 가능하다는 인식이 깔려 있다. 사람과 일정이 교환 가능한 유일한 경우는, 어떤 일을 여러 사람에게 나눠줄 수 있으면서 서로 간에 소통할 필요가 없는 경우다. 이것은 밀을 수확 하거나 목화를 따는 일에는 들어맞겠지만, 시스템 프로그래밍에는 대략이라도 해당되지 않는다.
-맨먼스 미신, 프레더릭 브룩스-

그럼에도 맨먼스가 우리의 일상 속에서 현재까지 계속 사용되는 이유는 그저 관리자들의 눈에 보기 좋기 때문이다. 관리자 입장에서는 사람을 기계 부품으로 취급하는 편이 편하다. 그들은 어떤 한 명의 개발자라도 똑같은 다른 개발자로 대체할 수 있다고 믿으며 핵심 인력이란 존재하지 않는다고 스스로를 세뇌한다.

피터 드러커는 '측정할 수 없으면 관리할 수 없다'는 말을 남겼지만 이 또한 측정의 정확도가 받쳐주지 못한다면 제대로 관리할 수 없다는 뜻도 된다.

물론, 진보한 기술에 대비하여 이러한 물량 측정 기법은 상대적으로 덜 발달한 것도 사실이고, M/M을 대체할 수 있는 어떤 새로운 기법이 나타난 것도 아니다. 따라서 M/M을 참고만 하되, 개발자의 능력과 프로젝트의 난이도, 커뮤니케이션 채널, 이 외에 수많은 요소를 종합적으로 고려하여 일정을 계획해야 한다.

맨먼스에 집착하는 관리자는, 외국인들에게 그들이 잘 먹지 못하는 음식을 대접해 놓고 '이게 더 맛있어서요'라고 대답하는 어리석은 요리사와 다를 바 없다.[4]

m/m(맨먼스), m/d(맨데이), m/h(맨아워) 차이와 계산법[편집]

맨먼스 사전적 의미
  • Man/Month, M/M, MM 로 쓴다
  • 인월(人月) ((한 사람의 1개월간 작업량))
  • 작업량을 나타내는 개념, 작업에 필요한 인원수를 노동시간 또는 노동일 등으로 나타낸 수치 작업량 = 사람 수 x 시간
1m/m(맨먼스)는 한 사람이 100%의 효율을 발생할때 1달(22일)의 작업량을 뜻한다.
맨먼스 예시

1인 - 1달(22일)간 100%의 작업량 발생 = 1m/m

2인 - 1달(22일)간 100%의 작업량 발생 = 2m/m

1인당 최고 m/m는 12m/m이다.

맨데이, 맨아워 사전적 의미

m/d(맨데이)는 1일(8시간)업무량을 의미한다. 이는 곧 1 m/m = 22 m/d를 뜻한다.

m/h(맨아워)는 시간을 의미한다. 이는 곧 1 m/d = 8 m/h를 뜻한다.  

맨먼스 계산법

공수에 대한 계산은 m/m에 IT인력의 등급 (초급, 중급, 고급)별 계산을 통해 투입단가가 계산된다.

표현 (영문) 축약 표현 (한글) 사용빈도
man-month MM 맨먼스, 인원월, 인월 ★★★
man-week MW 맨위크, 인원주, 인주
man-day MD 맨데이, 인월일, 인일
man-hour, person-hour MH 맨아워, 인원시간, 인시
계산 예제

1 m/m(맨먼스)는 한 사람이 100%의 효율을 발생할때 1달(22일)의 작업량을 한다는전제이다.

1인 - 1달(22일)간 100%의 작업량을 발생하면 1m/m

2인 - 1달(22일)간 100%의 작업량을 발생하면 2m/m

1인당 최고 m/m는 12m/m (1년 12달)  

m/d(맨데이)는 1일(8시간) 업무량을 뜻한다.즉, 1m/m = 22m/d (1달 = 22일)  

m/h(맨아워)는 시간을 의미한다.즉, 1 m/d = 8m/h (1일 = 8시간)[5]

각주[편집]

  1. 맨먼스 (Man / Month)〉, Open Dict. PRO
  2. 맨먼스〉, 《한경 경제용어사전》
  3. 하나를 하더라도, 〈프로젝트의 핵심, 맨먼스(M/M): 개발자의 노동시간을 어떻게 측정할까?〉, 《네이버블로그》, 2023-11-22
  4. 김의선, 〈맨먼스 미신〉, 《브런치스토리》, 2022-11-14
  5. m/m(맨먼스), m/d(맨데이), m/h(맨아워) 차이와 계산법〉, 《티스토리》, 2022-04-13

참고자료[편집]

같이 보기[편집]


  검수요청.png검수요청.png 이 맨먼스 문서는 서비스에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.