프로젝트 관리 (Project Management)
주어진 기간 내에 최소의 비용으로 사용자를 만족시키는 시스템을 개발하기 위한 전반적인 활동
- 관리 유형
일정 관리, 비용 관리, 인력 관리, 위험 관리, 품질 관리
비용산정기법
개발에 소요되는 인원, 자원, 기간 등으로 소프트웨어 규모를 확인하여 개발 계획 수립에 필요한 비용을 산정하는 작업
▷ 소프트웨어 비용 결정 요소
1) 프로젝트 요소 : 제품의 복잡도, 크기, 요구되는 신뢰도 ( 주어진 조건 하에 필요한 기능을 수행하는 정도 )
2) 자원 요소 : 인적 자원, 하드웨어 자원, 소프트웨어 자원
3) 생산성 요소 : 개발자 능력, 개발 기간
▷ 하향식 비용 산정 기법
과거의 경험을 바탕으로 전문 지식이 많은 개발자들이 참여한 회의를 통해 비용 산정하는 방법 ( 비과학적 )
- 전문가 감정 기법 : 두 명 이상의 전문가에게 비용 산정을 의뢰 ( 편리하지만 개인적, 주관적 )
- 델파이 기법 : 전문가 감정 기법의 주관적 편견 보완을 위한 방법, 한 명의 조정자와 여러 전문가가 참여하여 한 쪽으로 치우치지 않도록 하는 기법
▷ 상향식 비용 산정 기법
세부적인 작업 단위별로 비용을 산정 집계하여 전체 비용을 산정하는 방법
- LOC 기법 ( source Line of Code )
1) 각 기능의 원시 코드 라인 수 예측치 ( LOC ) 구하기
비관치, 낙관치, 기대치를 측정하여 공식을 통해 예측치 구하기
2) 원시 코드 라인 수 예측치를 구하면 비용 산정하기
노력(인월) = 개발기간 X 투입인원
= LOC / 1인당 월평균 생산 코드 라인 수
개발비용 = 노력(인월) X 단위비용(1인당 월평균 인건비)
개발기간 = 노력(인월) / 투입 인원
생산성 = LOC / 노력(인월)
ex) LOC 기법에 의하여 에측된 총 30,000라인(LOC), 개발에 참여한 프로그래머 5명, 프로그래머들의 평균 생산성이 300라인일때 개발에 소요되는 시간은?
개발기간 = 노력 / 투입인원 = 노력 / 5
노력 = LOC / 생산성 = 30,000 / 300 = 100
개발기간 = 100 / 5 = 20 (개월)
- 개발 단계별 인월수 ( Effort Per Task ) 기법
생명주기의 각 단계별로 기능을 구현하는데 필요한 노력을 산정한다.
LOC 기법의 보완으로 정확하다.
▷ 수학식 비용 산정 기법
상향식 비용 산정 기법 중 하나로 개발 비용 산정의 자동화를 목표로 한다.
자동화를 위한 공식은 과거의 유산한 프로젝트에서 유도된다.
COCOMO (COnstructive Cost MOdel) 모형
보헴(Bohem)이 제안한 LOC을 이용한 비용산정 기법
LOC 예측 후, 소프트웨어 종류에 따라 다르게 책정되는 비용 산정 방정식에 대입한다.
비용산정결과는 노력(인월)로 나타낸다.
- COCOMO 소프트웨어 개발유형
1) 조직형 ( Organic Mode ) 5만 라인 이하 중소 규모 소프트웨어 ( 사무 처리용, 업무용, 과학용 소프트웨어 )
2) 반분리형 ( Semi-Detached Mode ) 30만 라인 이하의 중간형 소프트웨어 ( 트랜잭션 처리 시스템, 운영체제, DBMS )
3) 내장형 ( Embeded Mode ) 30만 라인 이상의 대규모 소프트웨어 ( 운영체제, 미사일 유도, 신호기 제어 시스템 )
▷ Putnam 모형
Putnam이 제안한 소프트웨언 생명 주기 전 과정 동안에 사용될 노력의 분포를 예상하는 모형
시간에 따른 함수로 표현되는 Rayleigh-Norden 곡선의 노력 분포도를 기초로 한다.
대형 프로젝트의 노력 분포 산정에 이용
▷ 기능점수 모형 ( FP ; Function Point )
소프트웨어의 기능을 증대시키는 요인 별로 가중치를 부여하고 이를 합산하여 총 기능 점수를 산출한다. 총 기능 점수와 영향도를 이용하여 기능 점수(FP)를 구하고 이를 통해 비용산정을 하는 기법
▷ 비용 산정 자동화 추정 도구
SLIM : Rayleigh-Norden 곡선과 Putnam 예측 모델을 기초로 개발된 자동화 추정 도구
ESTIMACS : 다양한 프로젝트와 개인별 요소를 수용하도록 FP 모형을 기초로 개발된 자동화 추정도구
프로젝트 일정 계획
비용 산정을 통해 예측된 노력을 프로젝트의 소작업에 분배하여 소작업의 순서와 일정을 정하는 것
PERT ( Program Evaluation and Review Technique, 프로그램 평가 검토 기술 )
프로젝트에 필요한 전체 작업의 상호관계를 표시한 네트워크
개발 경험이 없어 소요 기간 예측이 힘든 프로젝트 일정 계획에 사용된다.
CPM ( Critical Path Method, 임계경로기법 )
작업을 나열하고 작업에 필요한 소요시간을 예측하는데 사용하는 기법
노드는 작업을 간선은 작업 사이의 전후 의존관계를 표현
간트 차트
작업 일정을 막대 도표를 이용하여 표시하는 프로젝트 일정표
참고자료
'자격증 > 정보처리기사' 카테고리의 다른 글
[정보처리기사] 데이터베이스 개념 및 설계 (0) | 2021.09.30 |
---|---|
[정보처리기사] 데이터 검증 및 오류데이터 측정 (0) | 2021.09.30 |
[정보처리기사] 소프트웨어 개발 표준 및 프레임워크 (0) | 2021.09.29 |
[정보처리기사] 소프트웨어 개발 방법론과 발전 추세 (0) | 2021.09.29 |
[정보처리기사] UML (Unified Modeling Language)의 구성요소 ( 다이어그램 ) (0) | 2021.09.29 |