기능 점수
From CS Wiki
Revision as of 07:06, 14 July 2019 by 223.38.22.53 (talk)
- Function Point; FP 비용 산정 방식
개요
- 최종 사용자 입장에서의 기능적 복잡도를 고려하는 국제 표준(ISO/IEC 14143) 소프트웨어 규모 및 비용산정 방식
특징
- 소프트웨어의 양과 질을 동시에 고려
- 최종 사용자 입장에서 소프트웨어 규모 산정
- 개발환경과 기술에 무관하게 측정 가능
등장 배경
- 추정의 어려움
- SW 개발 초기에 프로그램 LOC 측정 어려움
- 환경의 영향 고려 어려움
- 기능은 동일하여도 CS방식, 웹 환경 등에 따라 비용의 편차 발생
FP의 역사
- 1975 IBM의Alan Albrecht에 의해 Guide/Share 컨퍼런스에서 개념 소개
- 1984 IBM CI/S&A Guideline 313 “AD/M Productivity Measurements & Estimate Validation”.
- 1986 국제 기능점수 사용자 그룹(IFPUG) 조직
- 1993 CFPS(Certification for FP Specialists) 인증시작. QAI/IFPUG 합동연구
- 1994 S/W 측정을 위한 지침인 CPM(Counting Practices Manual) 4.0 발표
- 1995 ISBSG 참여, ISO/IEC JTC1 WG12 Functional Size Measurement 연구 착수
- 1998 ISO/IEC 14143-1 출판
- 2003 ISO/IEC 14143-1~5 공식 표준으로 지정
산정 방식
구성 요소
유형 | 기능 | 내용 |
---|---|---|
트랜잭션 타입 | 외부입력(EI)
(External Input) |
외부에서 입력되는 값 |
외부출력(EO)
(External Output) |
외부에 출력되는 값
(데이터 가공 수반) | |
외부조회(EQ)
(External Query) |
외부 입출력
(데이터 가공 없음) | |
데이터 기능 타입 | 내부논리파일(ILF)
(Internal Logical File) |
산정 대상 시스템이 유지/관리하는 파일 |
외부연계파일(EIF)
(External Interface File) |
산정 대상 시스템이 참조하는 파일 |
사용자 | 외부입력 ▶ | 산정 대상 어플리케이션 | 외부입력 ▶ | 타 어플리케이션 |
---|---|---|---|---|
◀ 외부출력 | ◀ 외부출력 | |||
◀ 외부조회 ▶ | ◀ 외부조회 ▶ | |||
◀ 외부연계파일 |
측정 유형
- 개발프로젝트
- 신규 개발 소프트웨어에 대한 비용 산정
- 개선프로젝트
- 기존 소프트웨어 추가 개발에 대한 비용 산정
- 애플리케이션
- 현재 사용 중 소프트웨어에 대한 기능 점수 산정
산정 범위 결정 및 경계 식별
- 범위 결정
- 산정할 대상 소프트웨어에 대한 범위 결정
- 경계 식별
- 산정 대상 소프트웨어(ILF)와 외부 소프트웨어(EIF)의 경계 구분
정규법과 간이법
구분 | 정규법 | 간이법 |
---|---|---|
개념 | 논리적인 설계를 바탕으로 상세한 기능 점수 산정 | 개략적인 사용자 요구사항을 바탕으로 대략적 기능 점수 산정 |
사용 시기 |
|
|
사용 목적 |
|
|
측정 항목 |
|
|
기반 | 기능별 복잡도 매트릭 | 평균 복잡도 |
- RET(Record Element Type) ≒ 테이블 수
- DET(Data Element Type) ≒ 고유 필드 수
- FTR(File Type Reference) ≒ 연계되는 테이블 수
= 기능 점수 계산
- 영향도(0~5)에 14개의 기술적 복잡도 요소(TCF, Technical Complexity Factor) 적용
- 데이터 통신
- 분산 데이터 처리
- 시스템 성능
- 사용 환경
- 처리율
- 온라인 데이터
- 사용자 효율성
- 온라인 갱신
- 처리 복잡도
- 재사용성
- 설치 용이성
- 운영 용이성
- 다중 사이트
- 변경 용이성
- 총 영향도 = TCF(0~14) * 영향도(0~5)
- 기술적 복잡도(TC, Technical Complexity) = 0.65 + 0.01 * 총 영향도
- 기능 점수(Function Point) = 기능 수(FC) * 기술적 복잡도(TC)