COCOMO 모델에서 소프트웨어 재사용의 중요성 재조명
본 논문은 COCOMO81·COCOMOII에 소프트웨어 재사용 요소를 반영했을 때 비용·노력 추정 정확도가 크게 향상될 수 있음을 실증한다. 30개 실제 프로젝트 데이터를 이용해 평균 상대오차(MRE)를 계산한 결과, 기존 모델은 재사용을 충분히 고려하지 않아 오차가 크게 나타났으며, 재사용을 비용 모델에 명시적으로 포함시키는 것이 향후 추정 정확도 개선의 핵심임을 제시한다.
저자: CH.V.M.K.Hari, Prof. Prasad Reddy P.V.G.D, J.N.V.R Swarup Kumar
본 논문은 소프트웨어 비용 추정 분야에서 가장 널리 사용되는 COCOMO81과 COCOMOII 모델을 대상으로, 실제 프로젝트 데이터에 적용했을 때 발생하는 추정 오차와 그 원인을 분석한다. 서론에서는 소프트웨어 프로젝트 관리의 중요성과 비용 추정이 의사결정에 미치는 영향을 강조하고, 기존 모델들이 “소프트웨어 재사용”이라는 핵심 요소를 충분히 반영하지 못하고 있음을 문제 제기로 제시한다.
배경 섹션에서는 단일 변수 모델, COCOMO81(기본·중간·상세 모델), COCOMOII(응용·조기 설계·사후 설계 모델), SLIM, 기능 포인트(FP), Delphi 등 주요 비용 추정 기법을 개념적으로 정리한다. 특히 COCOMOII의 조기 설계 단계에서 RUSE(재사용) 비용 드라이버가 존재하지만, 실제 프로젝트에서는 재사용 비율을 정량적으로 측정하기 어려워 모델 적용에 한계가 있음을 지적한다.
연구 질문은 (1) 실제 투입 노력과 모델이 예측한 노력 사이에 차이가 발생하는 원인은 무엇인가, (2) 어떤 요인이 차이를 최소화할 수 있는가를 묻는다. 이를 위해 저자들은 30개의 실제 프로젝트(KLOC, 객체 포인트, 기능 포인트 등 다양한 규모 지표 포함)를 수집하고, 각 모델에 동일한 입력값을 적용해 예상 인월을 계산하였다. 이후 실제 인월과 비교해 평균 상대오차(MRE)를 산출했으며, 모든 모델에서 MRE가 30 % 이상으로 높은 편차를 보였다.
실험 결과는 다음과 같다. COCOMO81 기본·중간·상세 모델은 모두 KLOC 기반이므로 재사용된 코드가 포함된 경우 과대 추정하거나, 재사용을 무시하면 과소 추정한다. COCOMOII 조기 설계 모델은 객체 포인트와 재사용 비율을 고려하지만, 재사용 비율을 0~100 % 사이의 정수값으로만 입력받아 실제 복잡한 재사용 구조를 반영하지 못한다. 사후 설계 모델은 17개의 비용 드라이버와 5개의 스케일 팩터를 사용하지만, 재사용 관련 파라미터가 여전히 정성적 평가에 의존한다. SLIM과 FP 모델 역시 규모 측정 방식이 재사용을 직접 반영하지 못한다. Delphi 모델은 전문가 의견에 크게 좌우되므로 일관된 재사용 평가가 어려워 추정 정확도가 낮다.
논의에서는 이러한 오차의 근본 원인으로 (1) 규모 측정 지표가 재사용된 코드량을 정확히 반영하지 못함, (2) 비용 드라이버 중 재사용 파라미터가 정성적이고 주관적이며, (3) 현대 객체 지향·컴포넌트 기반 개발에서 상속·컴포지션을 통한 재사용이 일반화되었음에도 모델이 이를 정량화하지 못함을 제시한다. 저자들은 “소프트웨어 재사용”을 별도 비용 모델로 구축하고, 재사용 비율(%reuse)과 재사용된 객체 포인트(NOP)를 직접 비용 산정에 포함시키는 방안을 제안한다. 이를 통해 ROI가 향상되고, MRE를 현저히 낮출 수 있을 것으로 기대한다. 또한, 재사용 수준을 자동으로 추출할 수 있는 정적 분석 도구와, 재사용을 고려한 새로운 비용 드라이버 설계가 필요함을 강조한다.
결론에서는 기존 COCOMO 계열 모델이 현대 소프트웨어 개발 실태를 충분히 반영하지 못한다는 점을 재확인하고, 재사용 중심의 비용 추정 프레임워크가 향후 연구와 산업 현장에서 필수적임을 주장한다. 향후 연구 과제로는 재사용을 정량화하는 메트릭 개발, 재사용 기반 비용 모델의 검증, 그리고 도구 지원을 통한 자동화가 제시된다.
원본 논문
고화질 논문을 불러오는 중입니다...
댓글 및 학술 토론
Loading comments...
의견 남기기