프로젝트 공수 산정 - peulojegteu gongsu sanjeong

S/W사업 대가산정의 목적
 소프트웨어(이하 ‘S/W’) 사업 대가산정은 국가?지방자치단체?국가 또는 지방차치단체가 투자하거나 출연한 법인, 기타 공공단체 등에서 S/W의 기획, 구현, 운영 등 수명주기 전체 단계에 대한 사업을 추진함에 있어 예산수립, 사업발주, 계약 시 적정대가를 산정하기 위한 기준을 제공하는 것을 목적으로 한다.

S/W사업 대가산정 수명주기 및 사업유형
 S/W사업 사업유형은 크게 기획단계 및 구현단계, 운영단계로 구분된다. 기획단계는 정보전략계획(ISP), 정보전략계획 및 업무재설계(ISP/BPR), 전사적아키텍쳐(EA/ITA), 정보시스템 마스터플랜(ISMP), 정보보안컨설팅이 포함되고 구현단계로는 S/W개발, 운영단계로는 S/W유지관리, S/W운영, S/W 재개발이 포함된다.
 

프로젝트 공수 산정 - peulojegteu gongsu sanjeong


 S/W사업 단계별 대가산정 방법의 이해

S/W사업 기획단계
 S/W사업 대가산정 방법의 경우 기획단계에서는 정보화전략계획(ISP)수립을 제외한 부분은 대부분 ‘투입공수에 의한 사업대가방식’으로 산정된다. ‘투입공수에 의한 사업대가방식’은 통상적으로 말하는 M/M(Man-Month)방식을 말하며 이 방식은 엔지니어링기술진흥법 제31조의 규정에 의한 엔지니어링 대가의 기준을 준용하여 산정하는 방식이다. 정보화전략계획 수립 시 과거의 유사한 사업이 없어서 투입공수에 대한 정보를 파악할 수 없는 경우나 수주자의 투입공수에 대한 정보를 파악할 수 없을 때 ‘컨설팅지수에 의한 방법’을 준용할 수 있다. 이 방식은 조직의 규모나 계획수립 범위를 기준으로 한 업무별 가중치와, 사업의 특성에 의해 결정되는 업무의 난이도를 바탕으로 컨설팅 지수를 산정하며 그 지수에 따라 대가를 산정한다.

S/W사업 구현단계
 S/W사업 구현단계의 S/W 개발비 산정에서는 앞서 설명한 투입공수에 의한 방식과 기능점수에 의한 방법이 있다. 5천 만 원 미만의 S/W개발사업의 경우에는 투입공수 방식이 주로 사용된다. 기능점수(FP, Function Point)방법은 사용자 관점에서 사용자가 요구하고 사용자에게 인도되는 기능을 정량적으로 산정하는 S/W 규모 측정방법(ISO/IEC 14143(FSM, Functional Size Measurement)으로 SW Size에 대한 국제표준이며, S/W 개발, 유지관리 및 운영을 위한 비용과 자원 소요를 산정하는데 가장 중요한 요소이다. 기능점수(FP)방식은 다음과 같은 특징이 있다. S/W가 사용자에게 제공하는 기능적 요구사항을 측정한다. 기능점수는 “S/W가 어떻게 구현되었는지”의 공급자 관점이 아니라 “사용자가 어떠한 기능을 요구했는지”의 수요자 관점에서 측정한다. 개발 이전에 업무량을 측정할 수 있다. 개발은 물론 기획, 운영 등 전 수명주기에 걸쳐서 측정이 가능하다. S/W 개발 및 유지관리의 업무량을 조직, 구현기술, 공수, 적용방법론, 물리적 또는 기술적 컴포넌트와 무관하게 일관성 있게 측정할 수 있다.
 기능점수 방식의 S/W 개발규모를 산정하는 방법은 일반적인 기능점수 산정방법(정통법)과 평균 복잡도를 적용하는 방법(간이법)의 두 가지로 구분할 수 있다. 정통법은 S/W의 가능을 도출하고, 각 기능의 유형별 복잡성를 고려하여 정확한 기능점수 산정을 필요로 할 경우 사용되는 일반적인 방법으로 통상적으로 S/W 개발 공정상 설계공정 후 사용된다. 간이법은 기능의 복잡도를 판단하기 어려운 경우 적용하는 방법으로 계산절차는 정통법과 동일하나 기능점수 산정 시 기능 유형별 평균 복잡도를 적용하여 기능점수를 산정한다. 통상적으로 기획 및 발주단계에서의 기능점수 측정에 사용된다. 두 기법의 차이점은 규모측정 정확도 수준과 기능점수 측정 소요시간에서 차이가 있다.

S/W사업 운영단계
 S/W사업 운영단계는 S/W 개발 이후의 유지관리, 운영, 재개발 사업이 포함된다. 유지관리 분야는 특정사유로 인하여 발생하는 S/W의 변경, 하드웨어나 OS, 네트워크 등 기술적 발전에 대항하기 위한 변경, 알고리즘의 수정 또는 기능상의 보완 등 애플리케이션 시스템을 보다 편리하게 사용 할 수 있도록 유지하고 관리하는 모든 행위를 말한다. 운영분야는 개발 완료 후 기능변경을 제외한 관리, 모니터링, 테스트, 사용자 지원 등 정상적인 운영에 필요한 제반활동을 의미하며 S/W 재개발분야는 S/W 일부를 다시 개발하거나 S/W를 재사용한 개발을 의미한다. S/W 유지관리비 및 운영비 산정은 전체 개발비 중 10~15%의 요율을 적용하여 산정하는 방법인 요율제  방법, 투입공수에 의한 방법, 고정비/변동비 방식에 의한 산정 방법, SLA(서비스 수준관리; Service Level Agreement)기반 산정방식, 최초 Licence 구매계약금액의 12%를 요율로 정하여 등급별 유지관리를 실시하는 상용소프트웨어 유지관리비 산정방식으로 구분할 수 있다.

프로젝트 공수 산정 - peulojegteu gongsu sanjeong

3. 공수의 유형(Effort Type)

① 활동의 기간(duration)은 특정 작업을 완수하는 데까지 걸리는 소요 시간을, 공수(effort 또는 노력)는 해당 작업을 완수하는 데 필요한 총 노동량 또는 활동량을 가리킨다.

공수(Effort) = 기간 × 단위 기간 당 투입 자원

② 공수의 유형은 다음과 같이 크게 세 가지로 구분한다.

독립적 공수(Discrete Effort)

• WBS의 구성 요소나 산출물과 직접적으로 연결되는 노력이다.

• WP(작업 패키지)나 산출물을 직접 분할하여 공수를 도출한다.

• 작업의 진척율 또는 획득 가치를 작업의 진척율에 기초하여 직접적으로 측정하기 때문에 측정 가능 공수(measurable effort)라고도 한다.

• 예) 교량 건설, 소프트웨어 개발, 사용자 매뉴얼 작성 등

배분적 공수(Apportioned Effort)

• WBS의 구성 요소나 산출물과 직접적으로 연결되지 않는 노력이다.

• 독립적 공수를 지원하는 공수로서 독립적 공수에 기초하여 도출한다.

• 작업의 진척율 또는 획득 가치는 독립적 공수에 비례하여 측정한다.

• 예) 품질 보증, 제품 검사, 검증 및 확인 등

보조적 공수(Level of Effort)

• 독립적 공수 또는 배분적 공수를 지원하는 행정적/관리적 노력이다.

• 지원하는 독립적 또는 배분적 공수에 기초하여 도출한다.

• 작업의 진철율 또는 획득 가치는 소요된 시간으로 측정한다.

• 보조적 공수는 핵심 경로(CP: Critical Path)에 나타나지 않는다.

• 예) 회의, 고객 관계 관리, 회계, 설비의 유지 보수 등

③ 활동 유형 간 상호 의존 관계는 다음과 같다.

④ 공수의 유형은 활동의 기간, 작업 진척율, 획득 가치(earned value) 등을 측정하는 방식에도 영향을 준다.

4. 기간의 추정

(1) 기본 개념

① 활동의 기간을 결정하는 가장 중요한 기본 요소는 공수(effort)와 단위 기간 당 투입 자원인데 각 요소의 평가와 측정은 상당 부분 전문가 판단에 의존한다.

공수(Effort): 일의 분량과 난이도 및 작업을 완수하는 데 필요한 총 노력의 크기로서 일반적으로 맨아워(man hour)로 측정한다.

투입 자원: 투입 자원의 수량, 장비의 생산성, 직원의 숙련성, 기타 투입 자원과 관련한 상황 변수를 총체적으로 고려하여 계산한 자원의 단위 기간당 생산성이다.

(2) 추가 고려 사항

① 활동 지속 시간은 공수와 투입 자원 외에도 다양한 요인들에 의해 영향을 받는데 대표적으로 다음과 같은 요인들을 고려해야 한다.

물리적 및 기술적 요인

작업의 난이도: 작업이 복잡하고 관련 변수가 많을 수록 증가한다.

자원의 생산성: 투입 장비/도구의 생산성이 높을 수록 감소한다.

자원의 가용 일정: 자원 가용 일정이 불확실할 수록 증가한다. 

생산성 체감(Diminishing Return): 자원 투입량이 일정하게 증가하더라도 기간이 감소되는 폭은 줄어든다.

기술의 발전: 진보된 기술을 사용하면 일정을 단축할 수 있다.

인적 및 환경적 요인

숙련성(Competence): 숙련된 직원은 생산성이 더 높다.

동기 부여: 동기 부여가 잘 된 직원들은 작업을 더 빨리 끝낼 수 있다.

팀 워크 및 성숙도: 팀원 간 원숙한 협력은 작업 기간을 단축한다.

경험 및 학습: 직원들의 경험과 학습 효과는 기간 단축에 기여한다.

파킨슨의 법칙: 사람들은 데드라인에 임박해서야 작업에 집중한다.

② 기간의 추정은 더 많은 정보가 축적됨에 따라 점진적으로 정확해진다.

프로젝트 공수 산정 - peulojegteu gongsu sanjeong

5. PERT와 CPM

① PERT(Program Evaluation and Review Technique)와 CPM(Critical Path Method)은 활동 기간을 추정하고 일정을 수립/통제할 때 널리 사용된다.

② PERT는 1957년 경 미 해군이, CPM은 1958년 경 듀폰사가 개발하였다.

③ 두 기법은 공통적으로 네트워크 다이어그램을 작성하여 분석과 의사소통의 효과성을 높이고 프로젝트를 목표 일자에 마치기 위해 통제해야 하는 활동들을 식별한다.

④ PERT와 CPM을 비교하면 다음과 같다.

PERT

적용 상황

• 유사한 프로젝트 수행 경험이 없고 불확실성이 높을 때

• 추정의 정밀성이 낮을 때

• 주로 R&D(연구 개발) 프로젝트에 적용한다.

추정 기법

• 확률적(Probabilistic) 모델이다.

• 3점 추정 기법을 사용한다.

• 평균(Mean)을 활동 기간 추정치의 대푯값으로 사용한다.

활용 방안

• 일정 관리에만 사용된다.

• 일정을 단축하면 원가를 절감할 수 있다고 이해한다.

• 네트워크 크래싱이나 자원 최적화 기법을 접목하지 않는다.

네트워크 다이어그램 작성

• 이벤트(활동의 시작 및 종료 시점)부터 분석한다.

• 네트워크, 이벤트, 활동, 슬랙 등의 용어를 사용한다.

CPM

적용 상황

• 유사한 프로젝트 수행 경험이 있고 불확성이 낮을 때

• 추정의 정밀성이 높을 때

• 건축 및 조선 등 R&D 이외의 프로젝트에 적용한다.

추정 기법

• 확정적(Deterministic) 모델이다.

• 1점 추정 기법을 사용한다.

• 최빈값(Mode)을 활동 기간 추정치의 대푯값으로 사용한다.

활용 방안

• 일정과 원가를 함께 관리한다.

• 추가 자원을 투입하여 작업의 기간을 단축하는 데 관심이 있다.

• 네트워크 크래싱 및 자원 최적화 기법을 접목한다.

- 네트워크 다이어그램 작성

• 활동부터 분석한다.

• 애로우 다이어그램, 노드, 직무(job), 플롯(float) 등의 용어를 사용한다.

⑤ 두 기법은 네트워크 다이어그램을 작성할 때 원래는 ADM을 적용하였지만, PDM을 적용한다 하더라도 문제가 되지는 않는다.

6. 프로젝트 일정(Project Schedule)

① 프로젝트 일정이란 프로젝트 모델을 마일스톤 차트, 간트(Gantt) 차트, 일정 네트워크 다이어그램 등으로 표현한 결과물을 통칭한다.

② 마일스톤 차트는 최고 경영진 보고용으로 많이 사용되는 데 비해 일정 네트워크 다이어그램은 일선 실무진이 사용하며 간트 차트는 전체 직군에서 두루 사용한다.

마일스톤 차트: 프로젝트 전체 기간 중에 경영진 또는 의사결정자에게 중요한 의미가 있는 사건들, 즉 마일스톤들이 표시된다.

간트 차트: 활동 목록과 각 활동의 착수 시기와 종료 시기 및 소요 기간을 표시하지만 활동들 사이의 의존 관계는 표현하지 않는다.

일정 네트워크 다이어그램: 활동은 네모로 활동 간 의존 관계는 화살표로 묘사하고 각 활동의 소요 기간을 활동 위에 표시하는 형태를 띤다.