프로젝트를 시작하기 전에 “몇 명이 몇 달 일해야 하나”를 대략 가늠하는 일이 소프트웨어 비용 산정이다. 정보처리기사에서는 COCOMO의 세 가지 모드와 계수, 기능점수, 델파이 같은 산정 기법의 구분이 단골이고, 실기에서는 KLOC가 주어졌을 때 노력과 기간을 계산하게 하는 문제도 나온다. 수식 자체는 단순하니 계수를 정확히 외워 두자.
대표 기법은 크게 세 부류이다. 전문가 판단이나 델파이처럼 사람의 경험을 쓰는 방식, COCOMO나 Putnam처럼 코드 규모(LOC)를 입력으로 수식을 쓰는 방식, 기능점수(FP)처럼 입력·출력·조회·내부 논리 파일·외부 인터페이스 파일로 기능량을 세는 방식이다. 방식마다 필요한 정보가 다르므로 개발 초기에는 기능점수나 전문가 판단이, 규모가 정해진 뒤에는 COCOMO가 어울린다.
COCOMO는 Boehm이 제안한 모델로, 기본형은 노력 E = a × (KLOC)^b 인월, 개발 기간 D = c × E^d 개월로 계산한다. 계수는 프로젝트 성격에 따라 세 모드로 나뉜다.
| 모드 | 특징 | a | b | c | d |
|---|---|---|---|---|---|
| 유기형(Organic) | 소규모, 익숙한 업무, 팀 경험 풍부 | 2.4 | 1.05 | 2.5 | 0.38 |
| 반분리형(Semi-detached) | 중간 규모, 경험이 섞인 팀 | 3.0 | 1.12 | 2.5 | 0.35 |
| 내장형(Embedded) | 하드웨어·제약이 큰 복잡한 시스템 | 3.6 | 1.20 | 2.5 | 0.32 |
유기형이라면 E = 2.4 × 32^1.05 ≈ 91.3 인월, 기간 D = 2.5 × 91.3^0.38 ≈ 13.9개월이고, 평균 투입 인원은 E / D ≈ 6.6명이다. 반분리형은 E ≈ 145.5 인월, D ≈ 14.3개월, 약 10.2명이다. 내장형은 E ≈ 230.4 인월, D ≈ 14.3개월, 약 16.2명이다. 규모가 같아도 모드에 따라 노력이 두 배 넘게 차이 나는 것을 볼 수 있다. 값은 파이썬으로 검산했다. 지수 b가 1보다 크므로 규모가 커질수록 생산성이 떨어지는 규모의 불경제가 반영된다.
| 기법 | 원리 | 장점 | 한계 |
|---|---|---|---|
| COCOMO(기본) | KLOC에 계수를 곱해 노력·기간 산정 | 수식이 명확하고 모드 비교가 쉽다 | 초기에 KLOC를 알기 어렵다 |
| COCOMO II | 객체 점수·비용 요인 등으로 확장 | 현대 개발 방식에 맞춤 | 요인 평가가 주관적 |
| Putnam | Rayleigh 분포로 인력 투입 곡선 모델링 | 인력 분포와 일정을 함께 본다 | 기간 압축 시 노력이 급증 |
| 기능점수(FP) | 기능의 복잡도로 규모 산정 | 코드 언어와 무관 | 점수 계산에 숙련이 필요 |
| 델파이 | 전문가 의견을 반복 취합 | 자료가 부족해도 가능 | 시간이 걸리고 주관적 |
서술형은 산정 기법 분류 → COCOMO 수식과 세 모드 → 규모의 불경제 → 한계 순으로 쓴다. 실무에서는 한 가지 기법만 믿지 않고 기능점수와 COCOMO처럼 서로 다른 방식으로 산정해 범위를 잡는다. 계산한 인월을 그대로 인원과 기간으로 나누면 안 된다는 점도 중요하다. 인원을 늘려도 소통 비용이 늘어 기간이 비례해 줄지 않는다(브룩스의 법칙).
실전 팁으로, 계산기 사용 가능 여부와 상관없이 수식을 단계별로 적는 것이 안전하다. 먼저 KLOC 값을 거듭제곱하고, 계수를 곱해 노력을 구한 다음 그 값을 다시 거듭제곱해 기간을 구한다. 평균 인원은 노력을 기간으로 나누므로 단위가 인월과 개월임을 확인한다. 모드를 고르는 문제에서는 하드웨어 제약과 요구사항 변경이 큰 시스템이 내장형이라는 점을 기억하자.
기본 COCOMO는 E = a × KLOC^b, D = c × E^d이고, 유기형 2.4·1.05, 반분리형 3.0·1.12, 내장형 3.6·1.20으로 모드가 복잡할수록 같은 규모에서 노력이 커진다.
이 글은 학습용 정리이며 실제 시험 문항과 다를 수 있다. 출제 기준은 큐넷·KISA·한국데이터산업진흥원 등 공식 공지를 확인하라. 그림은 설명용 예시 데이터로 그린 개념도이며 실측 데이터가 아니다.
같은 계좌를 두 사용자가 동시에 건드릴 때 데이터베이스가 어디까지 서로의 작업을 보여 줄지 정하는 설정이…
배당은 회사가 번 이익을 주주에게 현금으로 나눠 주는 일이다. "배당수익률 3%"라는 숫자는 매력적으로 보이지만 세금,…
주식 기사나 증권사 리포트에서 가장 자주 만나는 지표가 PER, PBR, ROE이다. 따로 외우면 숫자의 나열에…
컴퓨터활용능력 스프레드시트 파트에서는 조건에 맞는 값만 합치고 세는 문제가 거의 매 회차 나온다. SUMIF 계열…
엑셀에서 값을 찾아 가져오는 함수 가운데 VLOOKUP은 컴퓨터활용능력 필기·실기 모두에서 가장 자주 나오는 함수이다. 문제의…