1. 수학적 산정 기법
- 경험적 추정 모형, 실험적 추정 모형 이라고도 함
- 개발 비용 산정의 자동화를 목표
- 비용의 자동산정을 위해 사용되는 공식은 과거의 유사한 프로젝트를 기반으로 유도
- 주요 수학적 산정 기법
-COCOMO 모형
-Putnam 모형
-기능 점수(FP) 모형
2. COCOMO ( COnstructive COst MOdel) 모형
- 원시 프로그램의 규모인 LOC (원시 코드 라인 수)에 의한 비용 산정 기법
- 개발할 소프트웨어의 규모(LOC)를 예측한 후 이를 소프트웨어 종류에 따라 다르게 책정되는 비용 산정 방정식에 대입하여 비용을 산정
- 비용 산정 결과는 프로젝트를 완성하는 데 필요한 노력(Man-Month)으로 나타냄
- 보헴(Bohem)이 제안
COCOMO의 소프트웨어 개발 유형
-
조직형 (Organic Mode)
-기관 내부에서 개발된 중 · 소 규모의 소프트웨어
-일괄 자료 처리나 과학기술 계산용, 비즈니스 자료 처리용 등의 5만(50KDI)라인 이하의 소프트웨어를 개발하는 유형
-사무 처리용, 업무용, 과학용 응용 소프트웨어 개발에 적합
-
반분리형 (Semi-Detached Mode)
-조직형과 내장형의 중간형 소프트웨어
-트랜잭션 처리 시스템이나 운영체제, 데이터베이스 관리 시스템 등의 30만(300KDSO) 라인 이하의 소프트웨어를 개발하는 유형
-컴파일러, 인터프리터와 같은 유틸리티 개발에 적합
-
내장형 (Embedded Mode)
-초대형 규모의 소프트웨어
-트랜잭션 처리 시스템이나 운영체제 등의 30만(300KDSI) 라인 이상의 소프트웨어를 개발하는 유형
-신호기 제어 시스템, 미사일 유도 시스템, 실시간 처리 시스템 등의 시스템 프로그램 개발에 적합
COCOMO 모형의 종류
-
기본형(Basic) COCOMO
-소프트웨어의 크기와 개발 유형만을 이용하여 비용 산정
-
중간형(Intermediate)
-기본형 COCOMO의 공식을 토대로 사용하나, 다음 4가지 특성에 의해 비용 산정
제품의 특성
컴퓨터의 특성
개발 요원의 특성
프로젝트 특성
-
발전형(Detailed) COCOMO
-중간형 COCOMO를 보완하여 만들어진 모형
-개발 공정별로 보다 자세하고 정확하게 노력을 산출하여 비용 산정
-소프트웨어 환경과 구성 요소가 사전에 정의되어 있어야 하며, 개발 과정의 후반부에 주로 사용
KDSI ( Kilo Delivered Source Instruction )
전체 라인 수를 1,000라인 단위로 묶은 것으로, KLOC (Kilo LOC)와 같은 의미
3. Putnam 모형
- 소프트웨어 생명 주기의 전 과정 동안에 사용될 노력의 분포를 예상하는 모형
- 푸트남(Putnam)이 제안한 것으로, 생명 주기 예측 모형이라고도 함
- 시간에 따른 함수로 표현되는 Rayleighg-Norden 곡선의 노력 분포도를 기초로 함
- 대형 프로젝트의 노력 분포 산정에 이용
- 개발 기간이 능러날수록 프로젝트 적용 인원의 노력이 감소
Rayleigh-Norden 곡선
노든(Norden)이 소프트웨어 개발에 관한 경험적 자료를 수집하여 이를 근거로 그린 곡선
4. 기능 점수 (FP; Function Point) 모형
- 소프트웨어의 기능을 증대시키는 요인별로 가중치를 부여하고, 요인별 가중치를 합산하여 총 기능 점수를 산출하며, 총 기능 점수와 영향도를 이용하여 기능점수(FP)를 구한 후 이를 이용해서 비용을 산정하는 기법
- 알브레히트 (Albrecht)가 제안
- 소프트웨어 기능 증대 요인
-자료 입력(입력 양식)
-정보 출력(출력 보고서)
-명령어(사용자 질의수)
-데이터 파일
-필요한 외부 루틴과의 인터페이스
5. 비용 산정 자동화 추정 도구
SLIM
- Rayleight-Norden 곡선과 Putnam 예측 모델을 기초로 하여 개발된 자동화 추정 도구
ESTIMACS
- 다양한 프로젝트와 개인별 요소를 수용하도록 FP 모형을 기초로 하여 개발된 자동화 추정 도구