현장에서의 비용산정은 아직도 공수 아니 M/M 방식의 투입인력 카운트에 의지하여 진행되고 있다. 미래창조과학부(구. 정보통신부)의 권고에 따라 기능점수 방식을 활용한 것이 벌써 9년(’04년 2월, 구. 정보통신부 고시 제 2004-8호)이 지났다. ’12년 2월 SW사업 비용산정을 기능점수로 산정하라는 권고가 ‘SW사업대가의 기준 일몰제’에 의해 고시 폐지되고 민간이양 되었지만 기획재정부의 예산편성지침에 매년 SW사업 예산편성시 기능점수를 권고하고 있어 공공부문에서는 기능점수 사용권고가 아직 유효한 상태다.
과거 제 살 깎기 경쟁에 내몰린 SW업계의 애로 해소차원에서 사업대가기준 산정 주체를 정부에서 민간으로 바꾸었지만 개선(안)을 제시하지 못해 업계혼란이 가중되고 있다. SW사업대가기준이 민간으로 이양되어 신뢰성이 떨어져 발주기관과 사업자간의 비용산정시 갈등만 더 커졌다는 것이 업계의 주장이다.
그럼에 불구하고 비용산정을 수행해야 하는 현장에선 어떻게 반응하고 있을까? 일부의 경우긴 하겠지만 사업대가기준이 없어졌다는 것을 빌미로 발주자에게 그들이 사용하고 있는 투입인력방식을 제시하고 있는 실정이다. 투입인력 방식이 나쁜 것은 아니다. 투입인력 방식을 도출하는 과정에 문제가 있기 때문에 기능점수방식을 권고한 것이다.
현장에서의 투입인력방식은 단순 인력 카운트만을 수행하고 투입인력별 노력(effort)을 산정하지 않는데 문제가있다. 'effort'를측정하는단위가바로기능점수인것이다. effort를측정하는 단위는 본수, 스텝수, 코드라인, 기능점수 등으로 분류되는데 본수와 스텝수 방식은 주관적인 요소가 포함되고, 코드라인방식은 개발자 스타일에 따라 차이가 나게 되므로 국제 표준인 기능점수를 권고하게 된 것이다.
비용산정 모델의 측면에서 보면 인력수는 결과이지 과정일수 없다. SW개발 비용의 산정은 규모파악을 통한 소요공수와 투입자원 및 소요기간을 파악하여 실행 가능한 계획을 수립하기 위해 비용을 산정하는 것이다. 발주자가 프로젝트 발주시 예정가격의 산정과 개발업자가
수주한 개발용역에 대하여 적정한 대가를 산정할 수 있는 기준으로 단위작업공수(비용)를 통한 총공수(총비용)를 산정하게 되는 것이다.
SW개발비를 산정할 때는 문제의 복잡도, 시스템의 크기, 신뢰도에 따라 프로젝트 요소를 고려하고 인적자원과 하드웨어자원에 대한 자원요소, 개발자 능력과 방법론에 따른 생산성 요소들도 고려하여야 한다.
< SW비용산정 모델시 고려요소 >
SW개발비용의 산정은 하향식 산정방법과 상향식 산정방법으로 나뉜다. 현장에서 가장 선호하는 방법은 하향식 산정방법으로 경험과 전문지식이 많은 개발자들이 참여한 회의나 토론을 통해 산정하는 방식이다. 하향식 산정방법은 전문가의 판단(expert judgment)과 델파이(Delphi)식 산정방법이 있지만 도출된 결과를 객관화하거나 정량화하기 힘들어 SW개발에서는 대략의 비용 사이즈를 도출할 때 많이 사용한다.
상향식 산정방법은 하향식 산정방법의 비과학성을 보완하기 위하여 개발할 시스템을 WBS 등으로 정의하고 각 구성요소에 대한 산정을 독립적으로 수행한 후 이를 합산하는 방식을 의미하며, 국내에서 가장 많이 활용되었던 SW사업대가기준에서 제시하고 있는 코드라인, 스텝수, 본수, 기능점수(FP) 등이 대표적인 방법이다.