시스템 운영은 물론이고 일반적인 개발 프로젝트에서도 소프트웨어의 단가보다는 인건비 위주로 비용을 산정하는 경우가 많다. 어렵게 산정된 비용도 발주자의 과도한 절감 요구와 과다 경쟁으로 더 낮게 수정되는 경우가 많이 일어난다. 하드웨어인 경우는 적정 가격이 있어 비용산정이 쉽지만 소프트웨어는 쉽게 판단할 수 없기 때문이다.
영업이나 프로젝트관리자는 프로젝트가 시작하기 전에 적정 비용산정 때문에 자주 고민에 빠진다. 소프트웨어 비용은 직관적인 정량화가 어려워 개발 기간, 투입 인력의 경력과 인력 수 등을 고려하여 정성적으로 판단하는 경우가 많지만, 최근에는 발주자와 수주자 간의 신뢰 확보를 위해 비용산정을 위한 객관적인 산정기법이 도입되는 추세다.
이번에는 소프트웨어의 개발 비용산정 방법에 대해 살펴보고자 한다. 일차원적인 비용산정부터 세부 기술의 난이도를 고려한 비용산정까지 살펴본다.
소프트웨어 개발 비용산정의 구성
비용산정의 정의는 “소프트웨어 개발에 필요한 기능과 규모를 기반으로 직접적으로 투입이 필요한 비용을 예측하는 과학적이고 합리적인 활동”이라고 할 수 있다. 비용산정을 통해 발주자는 소프트웨어의 합리적인 가격을 확인할 수 있고, 개발자는 개발에 필요한 정당한 비용을 요구할 수 있다.
일반적인 비용산정의 구성
한국소프트웨어산업협회의 소프트웨어사업 대가산정 가이드를 보면, 소프트웨어 개발 비용은 인건비와 그에 따르는 제경비, 기술료 등으로 구성된다(그림 1 참조).
<그림 1> 소프트웨어사업 대가산정 가이드
- 직접인건비 = 투입인력 소요공수 X 노임단가
- 제경비 = 직접인건비의 110 ~ 120%
- 직접경비 = 소프트웨어 개발사업에 소요되는 직접적인 경비
- 기술료 = 직접인건비와 제경비 합의 20 ~ 40%
개발자들의 등급을 특/고/중/초로 구분하여 단가를 매기고 투입기간에 따라 인건비를 산정한다. 제경비와 직접경비, 기술료는 인건비에 따라 산정되기 때문에 소프트웨어를 고려한 항목은 거의 없다고 볼 수 있다.
보완된 비용산정의 구성
지금까지도 소프트웨어의 비용산정은 월 단위 인력투입(MM; Men per Months)로 하는 경우가 일반적이다. 이 방식은 <그림 1>을 기초로 하여 한국소프트웨어산업협회가 제시하였다. 이후, 인건비만으로 소프트웨어 개발비용을 산정할 수 없다는 의견이 많아 소프트웨어의 규모와 기술보정을 반영하여 보완되었다.
보완된 소프트웨어 개발 비용산정 방식을 살펴보면, 소프트웨어를 개발하는데 필요한 원가와 프로젝트에서 사용되는 직접경비, 이익으로 구성된다(그림 2 참조).
<그림 2> 소프트웨어 개발 비용산정 방식
- 개발원가 = 소프트웨어 개발규모 X 단가 X 기술보정
- 이익 = 개발원가의 10 ~ 20% 내외
<그림 2>의 방식은 <그림 1>의 월 단위 인력투입이 아닌 소프트웨어의 개발규모를 산정한 후 단가를 곱한다. 그러면, 소프트웨어 개발의 원가가 산정되고, 기술보정 계수를 곱하여 만들고자 하는 소프트웨어의 기술수준을 반영한다. 이 값에는 <그림 1>의 제경비, 기술료가 포함되어 있다.
<그림 2>의 이익은 <그림 1>에는 없는 항목으로 개발팀의 판단에 따라 정해지는 것이지만 일반적으로 10 ~ 20% 내외로 잡는 경우가 많다. 더 보기 >>>