소프트웨어 비용 산정 기법: 수학적 산정 기법
1. 수학적 산정 기법 개요
- 수학적 산정 기법은 통계적인 공식과 데이터를 기반으로 비용을 자동으로 산정하는 기법입니다.
- 과거의 유사한 프로젝트 데이터를 기반으로 통계적 모델을 만들어 적용합니다.
- 경험적 추정 모형 또는 실험적 추정 모형이라고도 불립니다.
2. 수학적 산정 기법의 주요 종류
(1) 코코모(COCOMO, Constructive Cost Model)
- 제안자: 배리 보임(Barry Boehm).
- 개념: 소프트웨어 규모(LOC)를 기준으로 비용을 산정하며, 개발 유형과 규모에 따라 나누어 적용.
- 개발 유형:
- 조직형: 5만 라인 이하의 소규모 소프트웨어 개발(업무 처리, 과학 계산 등).
- 반분리형: 30만 라인 이하의 중규모 소프트웨어 개발(DBMS, 운영체제 등).
- 내장형: 30만 라인 이상의 대규모 소프트웨어 개발(실시간 시스템, 미사일 유도 시스템 등).
- 모형의 종류:
- 기본형: LOC와 개발 유형만으로 비용 산정.
- 중간형: LOC 외에 제품, 프로젝트, 개발자 특성을 추가 고려.
- 발전형: 개발 공정별로 더욱 정교하고 상세하게 산정.
(2) 퍼트남 모형
- 제안자: 래리 퍼트남(Larry Putnam).
- 개념: 소프트웨어 생명주기 전체를 기준으로 노력 분포를 예측하는 모형.
- 특징:
- 대형 프로젝트에 적합.
- 시간에 따른 함수로 노력 분포를 나타냄.
- 프로젝트 기간이 짧아질수록 더 많은 자원이 필요하고 비용이 증가.
- 활용: 대규모 시스템 개발 시 적용.
(3) 기능점수(FP, Function Point) 모형
- 제안자: 알 브레히트(Allan Albrecht).
- 개념: 소프트웨어의 기능별로 점수를 매기고, 이를 가중치로 산정하여 총 비용 계산.
- 주요 특징:
- 입력, 출력, 파일, 질의, 외부 인터페이스 등의 기능별로 점수를 산정.
- 기능 점수와 영향도를 합산해 총 점수를 계산 후 비용 산정.
- 특징 비교:
- COCOMO, 퍼트남 모형은 LOC를 기준으로 산정.
- FP 모형은 소프트웨어 기능을 중심으로 비용을 산정.
3. 수학적 산정 기법의 활용
- 자동화 추정 도구:
- 퍼트남 기반: 퍼트남 모형을 기초로 한 자동화 비용 추정 도구.
- FP 기반: 기능점수 모형을 활용한 자동화 추정 도구.
- 장점:
- 객관적인 데이터와 통계를 기반으로 비용 산정 가능.
- 반복적인 프로젝트에서 정확도가 높음.
- 단점:
- 초기 데이터 수집과 분석이 필요하며, 데이터가 부족할 경우 신뢰도가 낮아질 수 있음.
4. 비교: 주요 수학적 산정 기법
| 기법 | 기준 | 적용 유형 | 특징 |
|---|
| COCOMO | LOC | 소규모~대규모 프로젝트 | 개발 유형(조직형, 반분리형, 내장형)에 따라 비용을 달리 산정. |
| 퍼트남 모형 | 노력 분포 | 대형 프로젝트 | 개발 기간에 따른 자원 분포와 비용 산정을 고려. |
| FP 모형 | 기능점수 | 모든 유형의 소프트웨어 | 기능별 점수를 통해 비용 산정. LOC보다 사용자 요구를 중심으로 평가. |
5. 수학적 산정 기법의 특징
- 정확성: 과거 데이터를 기반으로 신뢰성 높은 산정 가능.
- 유연성: 다양한 프로젝트 유형과 규모에 적합.
- 복잡성: 초기 데이터 수집과 통계적 분석 과정이 필요.
- 적용성: 대규모 프로젝트와 정형화된 시스템에서 효과적.
6. 학습 포인트
- 모형별 특징과 적용 상황:
- COCOMO는 규모와 유형에 따른 비용 산정.
- 퍼트남은 노력 분포를 활용한 대형 프로젝트 산정.
- FP는 사용자 기능 요구 중심의 비용 산정.
- 자동화 추정 도구:
수학적 산정 기법은 소프트웨어 비용 산정에서 데이터 중심의 정확성과 예측 가능성을 제공하며, 특히 대규모 프로젝트에서 그 진가를 발휘합니다.