기능점수 소개 및 측정절차 한국소프트웨어진흥원 소프트웨어공학센터 SW기술적용팀 이충희 선임(chlee@software.or.kr)
Contents 1 SW사업대가기준 2 SW개발비산정 방식 현황 3 기능점수 방식 개요 4 기능점수 측정 절차 5 기능점수 측정(평균복잡도 적용)
1. SW사업대가기준의 활용 SW사업대가기준은 사업단계별 초기 비용을 추정하는 가이드라인 원가계산 단계별 사업발주 Estimation SW 계획 단계 SW 개발단계 SW 유지보수 단계 ISP 수립비 SW개발비 SW재개발비 DB구축비 시스템운용환경 구축비 SW유지보수비
2. SW사업대가기준 구성 Cost Estimation 1_SW개발비 산정 SW개발비 유지보수 2_유지보수산정 ISP 수립비 유지보수비 산정 개발규모에 의한 산정(FP, LOC) 투입인력과 기간에 의한 산정(M/M) DB구축비 산정 시스템운용환경구축비 산정 SW개발비 ISP수립비 산정 Cost Estimation 유지보수 2_유지보수산정 4_ISP수립비 산정 유지보수 시점에서의 SW개발비의 10 – 15%로 산정하는 방식 조직의 규모나 계획수립 범위를 기준으로 컨설팅 지수를 산정하고, 그 지수에 따라 대가를 산정하는 방식 ISP 수립비 DB구축비 시스템운용 환경구축비 4_시스템운용환경 구축비 네트워크 기반공사 등과 같이 시스템의 윤용환경을 신규로 구축하거나 재구축을 하는 경우에 설계비와 공사비 산정 3_DB구축비 산정 고전적 자료, 현대간행물에 대하여 DB구축 작업요소 수행비용 산정
1 2 3 4 3. 영역별 계산 방법 st st st st * SW 노임단가 : 한국소프트웨산업협회에서 매년 발표 SW개발비 O SW개발규모(FP, LOC)에 의한 산정 방식 - SW개발비 = SW개발원가 + 직접경비 + 이윤 = (FP(LOC) X 단가 X 보정계수) + 직접경비 + 이윤 * 보정계수 : 규보, 언어, 어플리케이션유형, 품질 및 특성 O 투입인력과 기간에 의한 산정 방식 - (기술자 등급별 투입인원 X 투입기간 X SW노임단가) +제경비+기술료+직접경비 * SW 노임단가 : 한국소프트웨산업협회에서 매년 발표 1 st SW개발비 FP LOC 투입인력_기간 O 유지보수대가 = 유지보수 난이도(%) X SW개발비 산정가 * 유지보수 난이도 : 유지보수횟수, 자료처리건수, 타시스템연계 실무지식 필요도, 분산처리 여부를 감안한 비율로 10 – 15%임 2 st SW유지보수 DB구축비 O DB구축비 = 인건비+제경비+직접경비+이윤 = (작업요소수행비용+상여금+퇴직급여충당금) +제경비+직접경비+이윤 * 작업요소수행비용 = 일반작업요소 소요공수 X 자료입력원노임단가 고전적 자료 현대간행물 3 st ISP 수립비 O ISP수립비 = 공수X (컨설팅지수)^0.95 + 10,000,000 * 컨설팅지수= 총 ISP수립업무가중치 X ISP수립난이도 * 공수 : 컨설턴트(기술사)가 3주에서 4주의 처리기간이 필요한 업무 단위를 반영하여 책정된 금액 4 st
Contents 1 SW사업대가기준 2 SW개발비산정 방식 현황 3 기능점수 방식 개요 4 기능점수 측정 절차 5 기능점수 측정(평균복잡도 적용)
1. SW개발비 산정 방식 및 현황 SW개발비 산정 방법 ’04년 본수방식을 폐지하고 기능점수 방식 도입, 개발 규모에 의한 산정 방식 투입인력과 기간에 의한 방식 Man/Month 본수 (本數) 기능점수 (FP) 코드라인 (LOC) ’04년 본수방식을 폐지하고 기능점수 방식 도입, 코드라인방식 및 투입 인력과 기간에 의한 방식은 이전 방식 유지
기능점수와 투입인력과 기간에 의한 방식을 많이 사용하고 있음 2. SW개발비 산정 방식 활용 추세 2005년 상반기 활용 추세 기능점수와 투입인력과 기간에 의한 방식을 많이 사용하고 있음 2006년 현재의 추세 - 기능점수 방식을 권장 : SW개발규모의 정량화 가능, 국제표준의 채택으로 해외시장 진출 발판 마련 - 기획예산처 : 05, 06년 예산심의시 SW개발비는 기능점수에 의해 산정할 것을 권장함 LOC FP M/M LOC FP M/M 현재 미래
Contents 1 SW사업대가기준 2 SW개발비산정 방식 현황 3 기능점수 방식 개요 4 기능점수 측정 절차 5 기능점수 측정(평균복잡도 적용)
[ 기능점수 개요 ] 기능점수(FP : Function Point)란 ? 기능점수(Function Point) - 어플리케이션이제공하는기능의크기를나타내는수치 (A measure, which represents the functional size of application software) 기능(Function) - 사용자가인식할수있는(user identifiable) 어플리케이션의 특징및성능 (The features or capabilities of an application as seen by user) 기능점수분석(Function Point Analysis) - 사용자관점에서, 소프트웨어개발및유지보수측정하는 표준방법 (A standard method for measuring software development and maintenance from the customer’s point of view)
기능점수 분석 이란? 어플리케이션이 사용자에게 제공하는 기능을 측정 기본 원칙 - “how”가 아닌 “what”의 문제 •구현을 위해 사용되는 기술(technology)과는 무관하게 측정 - 논리설계(logical design)에 기초 •사용자가 요청하여 제공되는 기능량(functionality)을 측정 •사용자의 biz needs 및 이에 따른 요구사항에 일치하는 application 기능을 측정 - 측정에 소요되는 총 비용을 최소화하기 위해 단위 단순화 •측정 과정의 모호함을 줄이기 위해 측정단위을 아주 상세화 - 측정기준이 일관성을 가져야함 •프로젝트 및 조직에 무관한 일관된 기준
사용자 및 사용자 관점
기능점수(FP : Function Point)방식에 의한 개발비 산정 이란 ? 개발하려는 SW 기능의 총규모(SIZE) X 단위규모당 단가 X 보정요소 = 총기능점수 X 기능점수당 단가 X 보정요소 * SW사업대가기준의 보정요소 : 규모, 언어, 어플리케이션 유형, 품질 및 특성 예 개발규모 측정 개발 Application FP 도출 100 FP FP 단가 X 보정요소 SW사업대가기준에서 제시 발주자 or 수주자 측정
기능 점수법에는 어떤 기능이 있는가? o 내부논리파일(ILF) : 개발하려는 시스템 내에서 유지되는 논리적 데이터 그룹 o 외부연계파일(EIF) : 외부의 특정 시스템에서 유지되고 개발하려는 시스템에서 참조하는 논리적 데이터 그룹 o 외부입력(EI) : 개발하려는 시스템 외부에서 들어오는 데이터나 이를 처리하는 단위 프로세스 o 외부출력(EO) & 외부조회(EQ) : 데이터 등을 시스템 밖으로 보내는 단위 프로세스 ※ 단, 수학공식, 계산 또는 파생데이터의 포함되어 있는 경우 외부출력(EO)임
Contents 1 SW사업대가기준 2 SW개발비산정 방식 현황 3 기능점수 방식 개요 4 기능점수 측정 절차 5 기능점수 측정(평균복잡도 적용)
1. 측정 절차 -> 소프트웨어 사업대가기준의 기능점수 측정 절차는 5단계임 3)데이터 기능 및 복잡도 계산 기능점수 측정유형 결정 2)범위 및 경계 식별 기능점수 계산 4)트랜잭션 기능 및 복잡도 계산 -> 소프트웨어 사업대가기준의 기능점수 측정 절차는 5단계임
1) 측정유형 결정
2) 측정 범위와 경계 식별
3) 데이터 기능과 복잡도 계산 평균복잡도 가중치 적용
4) 트랜잭션 기능과 복잡도 계산
5) 기능점수 산정 ㅇ 기능점수 = 총 데이터 기능점수 + 총 트랜잭션 기능점수 -> (내부논리파일x 내부논리파일 복잡도 가중치) + (외부연계파일x외부연계파일 복잡도가중치) -> (외부입력x 외부입력 복잡도 가중치) + (외부출력x외부출력 복잡도가중치) +(외부조회x외부조회 복잡도가중치)
Contents 1 SW사업대가기준 2 SW개발비산정 방식 현황 3 기능점수 방식 개요 4 기능점수 측정 절차 5 기능점수 측정(평균복잡도 적용)
[ 기능점수 측정 (평균복잡도 적용) ? 필요성 제기 어떻게 만들 것인가? 어디까지 만들 것인가? . . LEVEL 1 ? 필요성 제기 어떻게 만들 것인가? LEVEL 2 어디까지 만들 것인가? LEVEL 3 . . 어떤 것들을 만들 것인가? LEVEL 3
[ 기능점수 측정 (평균복잡도 적용) 범위, 경계 . . 시스템의 세부기능 도출 시스템 유형(신규개발, 재개발 등) LEVEL 2 범위, 경계 LEVEL 3 . . 시스템의 세부기능 도출 LEVEL 3
[ 기능점수 측정 (평균복잡도 적용) ? . LEVEL 1 LEVEL 2 LEVEL 3 LEVEL 4 기능목록 작성 <예시> LEVEL 2 Level2 Level3 회원관리 회원가입 관리 Level4 회원정보 등록 회원정보 수정 회원정보 조회 회원정보 삭제 회원가입여부확인 회원정보테이블 기능목록 작성 LEVEL 3 . LEVEL 4
[ 기능점수 측정 (평균복잡도 적용) 기능유형 결정 기능목록 작성 <예시> 기능목록 작성 기능 유형 외부입력 외부조회 내부논리파일 Level2 Level3 회원관리 회원가입 관리 Level4 회원정보 등록 회원정보 수정 회원정보 조회 회원정보 삭제 회원가입여부확인 회원정보테이블 기능목록 작성
[ 기능점수 측정 (평균복잡도 적용) 기능 목록 기능수 및 기능점수 결정 기능 기능 수 평균복잡도 기능점수 내부논리파일 1 기능명 기능 유형 회원관리 회원가입 관리 기능명 기능 유형 회원정보 등록 외부입력 회원정보 수정 회원정보 조회 외부조회 회원정보 삭제 회원가입여부확인 회원정보테이블 내부논리파일 기능수 및 기능점수 결정 기능 기능 수 평균복잡도 기능점수 내부논리파일 1 7.3 외부연계파일 5.4 외부입력 3 3.9 11.7 외부출력 5.0 외부조회 2 3.7 7.4 계 26.4
감사합니다.