핵심 인사이트
- 본질: COCOMO (Constructive Cost Model)는 SW의 규모(LOC 또는 FP)를 입력으로 개발 노력(Person-Month)과 기간을 산정하는 비용 추정 모델로, 유기적(Organic)·준분리형(Semi-detached)·내장형(Embedded) 3가지 유형으로 분류된다.
- 가치: SW 개발 초기(요구사항 단계)에 비용과 일정을 객관적으로 추정하여 예산 계획과 인력 조달 결정의 근거를 제공한다.
- 판단 포인트: COCOMO II는 Early Design 모델과 Post-Architecture 모델로 확장하여 현대적 SW 개발에 적용 가능하며, 기능 점수(FP)와 연계한 비용 산정이 가능하다.
Ⅰ. 개요 및 필요성
COCOMO는 배리 뵈엠(Barry Boehm)이 1981년 제안한 알고리즘 기반 비용 추정 모델이다. 기본 COCOMO는 LOC(코드 라인 수)를 입력으로 노력(E, Person-Month)과 기간(T, Month)을 산출한다. SW 규모, 복잡도, 팀 역량, 플랫폼에 따라 비용 계수(a, b, c, d)가 달라진다.
📢 섹션 요약 비유: COCOMO는 요리 레시피 계산기다. 식재료(LOC) 양을 입력하면 조리 시간(기간)과 필요한 요리사(인원)를 자동 계산한다.
Ⅱ. 아키텍처 및 핵심 원리
┌────────────────────────────────────────────────────┐
│ COCOMO 유형별 특성 │
├──────────────┬─────────────┬───────────────────────┤
│ 유기적 │ 준분리형 │ 내장형 │
│ (Organic) │(Semi-det.) │ (Embedded) │
├──────────────┼─────────────┼───────────────────────┤
│ 5만 라인 ↓ │ 30만 라인 │ 30만 라인 ↑ │
│ 친숙한 환경 │ 혼합 환경 │ 실시간, 안전 필수 │
│ 유연성 높음 │ 중간 │ 엄격한 제약 │
│ E=2.4×KLOC¹·⁰⁵│ │ E=3.6×KLOC¹·²⁰ │
└──────────────┴─────────────┴───────────────────────┘
| 모델 | 노력 공식 | 기간 공식 |
|---|---|---|
| 기본 COCOMO | E = a × (KLOC)^b | T = c × E^d |
| COCOMO II | 15개 비용 동인 조정 | 배율 요인 조정 |
📢 섹션 요약 비유: 내장형 SW는 핵발전소 제어 소프트웨어처럼 한 줄 실수도 용납 안 되는 복잡한 개발이라 비용 계수가 높다.
Ⅲ. 비교 및 연결
| 구분 | COCOMO | 기능 점수 |
|---|---|---|
| 입력 | LOC (코드 행 수) | FP (기능 크기) |
| 산출 | Person-Month | SW 규모 |
| 언어 의존 | 예 | 아니오 |
📢 섹션 요약 비유: COCOMO는 건물 면적(LOC)으로 공사비를 산정하고, FP는 방 수와 기능으로 공사비를 산정한다. 둘 다 맞지만 관점이 다르다.
Ⅳ. 실무 적용 및 기술사 판단
실무에서 COCOMO는 초기 추정에 사용되며, 요구사항이 구체화될수록 상세 추정(Bottom-up Estimation)으로 보완한다. COCOMO II는 재사용 코드, COTS 활용을 반영하여 현대적 개발 환경에 적합하다.
📢 섹션 요약 비유: COCOMO는 부동산 시세 계산기다. 면적(LOC)을 넣으면 대략의 비용(노력)이 나오지만, 실제 거래는 여러 요인을 추가로 반영한다.
Ⅴ. 기대효과 및 결론
COCOMO 적용으로 SW 개발 초기 비용 추정의 객관성 확보, 발주자-수주자 간 비용 협상 기반 제공, 프로젝트 계획의 현실성 향상이 달성된다.
📢 섹션 요약 비유: COCOMO는 여행 계획의 경비 계산이다. 출발 전 대략의 경비를 계산하여 예산을 짠다. 정확도는 여행 중 조정된다.
📌 관련 개념 맵
| 개념 | 설명 | 연관 키워드 |
|---|---|---|
| KLOC | 천 라인 단위 LOC | 기본 COCOMO 입력 |
| Person-Month | 1인 1개월 노력 단위 | 개발 비용 |
| 비용 동인 | COCOMO II 보정 요인 | 15개 조정 변수 |
👶 어린이를 위한 3줄 비유 설명
- COCOMO는 소프트웨어를 만드는 데 사람이 얼마나 필요하고, 얼마나 걸릴지 계산하는 공식이에요.
- 코드 줄 수가 많을수록 더 많은 사람과 시간이 필요해요.
- 어려운 소프트웨어(내장형)는 같은 크기라도 훨씬 더 많은 비용이 들어요.