[소공 목차]
Function Point의 개념
- 사용자 관점에서 사용자가 요구하고 사용자에게 인도되는 기능을 정량적으로 산정하여 소프트웨어 규모를 측정하는 방법
- (등장배경) LOC한계 -> 라인수 추정의 어려움, 언어마다 라인수 크게 달라짐
Function Point 특징
특징 | 설명 |
사전측정 가능 | 실제 개발 이전에 업무량 측정 가능 |
활용성 | 개발뿐만 아니라 기획, 운영 등 전 수명주기에 걸쳐 측정 가능 |
일관성 | 조직, 구현기술, 방법론과 무관하게 측정 가능 |
사용자관점 | 사용자가 요구하는 기능의 관점에서 측정 |
높은 분석능력 필요 | 기능도출을 위한 높은 분석능력 필요 |
Function Point 산정방법
Function Point 구성
유형 | 기능 | 내용 |
데이터 기능 |
내부논리파일(ILF) | - Internal Logic File - 측정 대상 어플리케이션 내부에서 유지되며 사용자가 요구한 기능을 수행하기 위해 읽히거나 참조되는 데이터 그룹의 모음(내부DB) |
외부연계파일(EIF) | - 측정 시스템 참조 데이터 집합 - 측정 대상 어플리케이션 외부에서 유지되며, 사용자가 요구한 기능을 수행하기 위해 읽히거나 참조되는 데이터 그룹(외부DB) |
|
트랜잭션 기능 | 외부입력(EI) | - 외부 입력(External Input) 값(입력 트랜잭션, 입력 화면) - 어플리케이션 외부로부터 데이터 또는 제어 정보를 받아 들여, 내부논리 파일의 유지(추가/수정/삭제 등)나, 어플리케이션의 상태에 변경을 요구하는 단위 프로세스 |
외부 출력(EO) | - 외부 출력(External Output) 값(출력 트랜잭션, 출력보고서) - 어플리케이션 내부에서 데이터 또는 제어 정보를 경계 밖으로 내보낼 것을 요구하는 단위 프로세스 |
|
외부 조회(EQ) | - External inQuery. 데이터 가공 없는 입출력 - 어플리케이션 내부에서 데이터 또는 제어 정보를 경계 밖으로 내보낼 것을 요구하는 단위 프로세스 |
Function Point 산정 절차
(유범이의데이트)
산정절차별 상세 내용
1) 측정 유형 결정
종류 | 내용 |
개발 프로젝트 (DFP) |
|
유지보수 프로젝트(EFP) |
|
어플리케이션(AFP) |
|
2) 측정 범위와 어플리케이션 경계 식별
구분 | 종류 | 내용 |
범위 및 경계 식별 | 범위결정 | 규모 계산 대상 소프트웨어의 하위 구성요소를 정의 기능점수 계산 목적에 따른 필요 기능을 식별 |
경계식별 | 내부어플리케이션과 외부 사용자 세계 간의 개념적 인터페이스 어플리케이션에 의해 유지되는 논리데이터를 둘러싸고 있음 |
3) 데이터 기능 계산
구분 | 종류 | 내용 |
데이터 기능 유형 식별 |
내부 논리 파일(ILF) | 측정 대상 어플리케이션 내부에서 유지되며 사용자가 요구한 기능을 수행하기 위해 읽히거나 참조되는 데이터 그룹의 모음(내부DB) |
외부 연계 파일(EIF) | 측정 대상 어플리케이션 외부에서 유지되며, 사용자가 요구한 기능을 수행하기 위해 잃히거나 참조되는 데이터 그룹(외부DB) | |
복잡도 및 기여도 결정 | 레코드요소유형(RET) | ILF또는 EIF 내부에 존재하는 것으로 하나의 정보를 구성하는 DB의 테이블과 같은 관련 데이터 그룹 사용자가 식별 가능한 데이터 요소의 서브 그룹 |
데이터요소유형(DET) | RET에 존재하는 것으로 RET를 구성하는 개별 데이터 필드 |
- RET와DET 값이 결정되고 나면 복잡도와 기여도Metric이 정의된 테이블을 참고하여ILF와EIF의 값이 산정
데이터 기능 복잡도Metric
DET | ||||
1~19 | 20~50 | >51 | ||
RET | 1 | Low | Low | Average |
2~5 | Low | Average | High | |
>5 | Average | High | High |
데이터 기능 기여도Metic
복잡도 | |||
Low | Average | High | |
ILF | 7 | 10 | 15 |
EIF | 5 | 7 | 10 |
- RET개수와DET 개수를 활용하여 복잡도를 먼저 구하고 기여도 테이블에 따라 기여도를 산출함
4) 트랜잭션 기능 계산
구분 | 분류 | 설명 |
트랜잭션 기능유형 식별 |
외부입력(EI) |
|
외부출력(EO) |
|
|
외부조회(EQ) |
|
|
복잡도 및 기여도 결정 | 참조 파일유형(FTR) |
|
데이터 요소유형(DET) |
|
EI기능 복잡도Metric
DET | ||||
1~4 | 5~15 | > 16 | ||
FTR | <2 | Low | Low | Average |
2 | Low | Average | High | |
>2 | Average | High | High |
EI기여도Metic
복잡도 | |||
Low | Average | High | |
EI | 3 | 4 | 6 |
EO, EQ 복잡도Metic
DET | ||||
1~5 | 6~19 | > 20 | ||
FTR | <2 | Low | Low | Average |
2 ~ 3 | Low | Average | High | |
> 3 | Average | High | High |
EO, EQ 기여도Metic
복잡도 | |||
Low | Average | High | |
EO | 4 | 5 | 7 |
EQ | 3 | 4 | 6 |
5) 미조정 기능 점수(UFP, Unadjusted Function Point) 결정
6) 조정인자 결정(VAF, Value Adjustment Factor)
- 측정되어지는 어플리케이션의 일반적 기능에 등급을 부여한14개의 일반 시스템 특성(GSC)에 기반을 두고 각 특성은 영향도 정도의 파악할 수 있도록 적용 명세를 가짐
- 영향도의 범위는 없음(0)에서 강함(5) 까지6등급으로 표시되고 조정 기능 점수는 미조정 기능점수의 ±35 %까지 조정이 가능
7) 조정 기능 점수 결정
- 최종 조정된 기능 점수인 보정 후 개발 원가는 다음과 같은 공식으로 계산
기능점수 방식에 의한 소프트웨어 개발비 산정절차
간이법 vs. 정규법
구분 | 간이법 | 정규법 |
개념 | 기능 점수 산정 시 기능 유형별 평균 복잡도를 적용하여 기능 점수를 산출하는 방법 | 기능을 도출하고, 각 기능의 유형별 복잡도 고려하여 정확한 기능점수 산정을 필요로 할 경우 사용되는 일반적 방법 |
목적 | 개략적인 기능점수 측정 | 상세 기능점수 측정 |
적용시기 | 예산 수립/제안단계 | 분석/설계 단계 이후 |
측정항목 | - 데이터 기능 - 트랜잭션 기능 |
- 데이터 : DET/RET - 트랜잭션 : DET/FTR |
복잡도 | - 평균 복잡도 | - 기능별 복잡도 |
장/단점 | - SW 규모 측정 신속성, 산출 비용 최소화 - 제한적 데이터 활용 |
- 정확한 SW 규모 측정 재활용 가능 - 사업초기 적용 어려움 |
관련기준 | - IFPUG 기능점수 측정 매뉴얼(CPM) | - SW 사업대가 기준의 평균 복잡도를 반영 |
'메가노트 > 토픽과제(정리)' 카테고리의 다른 글
PMO(이재용 부장님) (0) | 2022.10.15 |
---|---|
Project Scope Management(안혜진 선임님) (0) | 2022.10.15 |
무중단 배포(유준수 사장님) (0) | 2022.10.08 |
모듈화(황선환 이사님) (0) | 2022.10.08 |
테스트 설계(홍진택 주무관님) (0) | 2022.10.08 |