▣ COCOMO (Constructive Cost Model)_KDSI, Organic, Semi-Detached, Embedded
■ 3가지 모델 유형
Basic COCOMO
기본형 COCOMO
- SW 개발 노력과 비용을 LOC 형태로 추정한 후 비용을 산정하는 고정 단일값 모형(Static Single-valued Mode)
- 산정공식
- 개발 노력(Effort, MM) = a × (KDSI)^b
- 개발 기간(TDEV) = c × (MM)^d
- 적정 투입 인원(FPS) = MM / TDEV
- 인적 비용(COST) = MM × 인당 월평균 급여
Intermediate COCOMO
중간형 COOCMO
- 프로젝트 형태, 개발환경, 개발인력 요소에 따라 15개의 특성치를 적용한 방식
- 제품속성(Product) 3가지: SW 신뢰도, DB크기, 제품의 복잡성
- HW속성(Computer) 4가지: 응답시간, 실행시간 제약, 기억장치 제약, 가상기계 환경의 휘발성
- 인적속성(Personal) 5가지: 분석가의 자질, 프로그래머의 자질, 응용분야의 경험, 컴퓨터와의 친숙성, 프로그래밍 언어 경험
- 프로젝트 속성(Project) 3가지: 개발 기간의 산정, 개발도구 사용, 방법론 응용
- 산정공식
- 개발 노력(Effort, MM) = Basic COCOMO의 MM × 요인별 노력 승수
- 개발 기간(TDEV) = c × (MM)^d
- 적정 투입 인원(FPS) = MM / TDEV
- 인적 비용(COST) = MM × 인당 월평균 급여
Detailed COCOMO
발전형 COCOMO
- 대형 시스템에 대하여 서브시스템의 상이한 특성을 반영하여 비용을 개별 산정한 후 합산하는 방식
- 3단계 비용 산정: 모듈, 서브시스템, 시스템 레벨
- 개발 단계별(SDLC)로 비용 산정방식을 달리 할 수 있음
- 산정공식
- 중간형 COCOMO 산정 공식 그대로 사용
- 노력 승수 = 개발 공정별 노력 승수 × 개발 공정별 가중치
■ 3가지 프로젝트 유형
구분 | 내용 | 산정공식 |
Organic Mode (유기적 모드) |
-50,000 소스라인(50KDSI) 이하의 비교적 작은 크기의 제품(Scientific, Business 등의 SW) -비교적 작은 소규모 개발팀 -훌륭한 현장 경험을 갖고 있는 개발팀 -기능 및 성능의 요구사항과 인수 테스트 및 인터페이스 등의 명세가 비교적 덜 엄격함 -통신을 위한 부가비용이 적음 -안정적인 개발 환경, 일정에 대한 강제성이 적음 -현존하며, 증명된 기술을 사용함 |
노력(MM) = 2.4 * (KDSI)^1.05 개발기간(TDEV) = 2.5 * (MM)^0.38 |
Semidetached Mode (반 결합 모드 프로젝트) |
-300,000 소스라인(300KDSI) 정도의 중간 크기 제품(컴파일러, 워드프로세서와 같은 개발 지원도구 개발용 프로젝트) -개발대상과 개발환경에 대하여 경험자와 비 경험자가 섞여있는 개발팀 -엄격한 명세와 덜 엄격한 명세가 섞여있음 -크기와 복잡성 면에서 중간 정도 수준의 소프트웨어 프로젝트 |
노력(MM) = 3.0 * (KDSI)^1.12 개발기간(TDEV) = 2.5 * (MM)^0.35 |
Embedded Mode (내장모드 프로젝트) |
- OS, DBMS, 통신모니터와 같이 300KDSI이상의 대형 프로젝트로서 transaction processing system 등 기능이나 성능 등에 대한 엄격한 명세 -제품이 시간 제약사항 내에서 수행되어야만 함 -제품이 엄격하며 정형적인 품질 표준을 만족해야 함 -하드웨어, 소프트웨어, 운영 등의 제약에 깊은 상호연관성이 있음 -광범위한 시험평가가 요구됨 -선도적인 기술이 사용됨 -병행되어 개발되는 다른 시스템 컴포넌트들이 사용됨 -강한 일정에 대한 제약 |
노력(MM) = 3.6 * (KDSI)^1.20 개발기간(TDEV) = 2.5 * (MM)^0.32 |
* KDSI(Kilo Delivered Source Instruction) :전체 라인 수를 1,000라인 단위로 묶은 것으로 KLOC(Kilo LOC)
2012년 32번
정답 : 3번
실행시간 제약은 HW속성임
중간형 COOCMO
- 프로젝트 형태, 개발환경, 개발인력 요소에 따라 15개의 특성치를 적용한 방식
- 제품속성(Product) 3가지: SW 신뢰도, DB크기, 제품의 복잡성
- HW속성(Computer) 4가지: 응답시간, 실행시간 제약, 기억장치 제약, 가상기계 환경의 휘발성
- 인적속성(Personal) 5가지: 분석가의 자질, 프로그래머의 자질, 응용분야의 경험, 컴퓨터와의 친숙성, 프로그래밍 언어 경험
- 프로젝트 속성(Project) 3가지: 개발 기간의 산정, 개발도구 사용, 방법론 응용
2014년 32번
정답 : 3번
노력 (MM) : 500
고정 투입 인원 수 : 10명
개발자 연봉 : 3000만원
개발자 월 급여 : 250만원(3000만원 / 12개월)
구현단계 비중 : 총 노력의 40%
프로젝트 전체 기간 : 500 / 10 = 50개월
프로젝트 전체 비용 : 개발자 명수 * 개발자 1인 월 급여 * 프로젝트 전체 기간 = 10 * 250만 * 50 = 125,000만원
구현단계 비용 : 프로젝트 전체 비용 * 구현단계 비중 = 125,000만원 * 40% = 5억원
2015년 46번
정답 : 1번
2016년 44번
정답 : 3번
COCOMO는 경험에 의해 추출된 상수와 LOC를 기반으로 노력 추정과 개발 기간을 산정함
2016년 46번
정답 : 2번
Assembly > C > Unix shell Scripts > Java > Powerbuilder
SW 사업 대가산정가이드 언어유형 구분 및 보정계수