FP와 소프트웨어 유지보수 비용산정.

Slides:



Advertisements
Similar presentations
Copyright © 2006 The McGraw-Hill Companies, Inc. Programming Languages 프로그래밍 언어론 2nd edition Tucker and Noonan 1 장 소 개 A good programming language is a.
Advertisements

Sogang e-Biz Outsourcing Seminar ASP Network Inc. 애경 산업의 ASP 를 통한 Outsourcing 사례 June, 2001 The following material was used by ASP Network Inc. during.
설계사를 위한 Mobile 영업지원 System 설계사를 위한 Mobile 영업 지원 System 설계사를 위한 Mobile 영업 지원 System 1 Agenda Ⅰ. Mobile Project 추진 목적 Ⅱ. Mobile 환경 분석 Ⅲ.
소프트웨어 프로세스. 1 내용  소프트웨어 프로세스  생명주기의 의미  생명주기 모델 –Waterfall Model –prototyping model –Spiral Model –Iteration Model.
Dept. Computer Engineering DBLAB 정보처리개론 담당 교수 : 김정석 2009 년도 1 학기.
C 언어 Sun Moon University 1 of 25 C 언어 : 강의소개 강의실 : 산 211 담당교수 : 고경철 ( 정보통신공학과 ) 사무실 : 산학협력관 105B 면담시간 : 수업후 1 시간
MDD The Pragmatics of Model-Driven Development Bran Selic, IBM Rational Software 서강대 정보통신대학원 소프트웨어공학 차우람 (A50014) 조용성 (A49012) 최종 수정.
C ontents Ⅰ 서 론 Ⅱ 교육훈련프로그램 효과성 평가 개념 및 모형 Ⅲ 교육훈련프로그램 효과성 평가 우수 사례 Ⅳ
Scheduling in Project Management
4과목 소프트웨어 공학 강사 이 민 욱.
Introduction to Enterprise Resource Planning w/ SAP R/3
직무가치중심인사시스템 2004년 5월 발표자 : 오 영환(경영학박사) 한국능률협회컨설턴트.
Chapter 10 사람들을 괴롭히지 않는 법 게임소프트웨어공학 김정한 김연진.
Open Platform을 기반으로 한 System SW 및 Application SW 전문가
IT집중교육1 (Mobile Multimedia Service & System Design)
“자연어처리” 소개 (Natural Language Processing)
임베디드 SW 시스템 소개 - 임베디드 운영체제 - 임베디드 리눅스 - 임베디드 인터넷
6. 일반 시스템 특성.
서 론 금융소득종합과세제도 제 1 절 이자소득 제 2 절 배당소득
한국어 읽기 교육의 이론과 실제 김연이 김율희 김혜선.
㈜디알디 코리아 ㈜드림유비인터내셔날 지 명 원.
마이크로소프트 64bit 윈도우 컴퓨팅 구조와 로드맵
프로젝트 계획과 관리 1.
소프트웨어 공학 (Software Engineering)
Operating Systems Overview
알고리즘(Algorithm)  알고리즘 개요 (효율, 분석, 차수) Part 1 강원대학교 컴퓨터과학전공 문양세.
Introduction to Web Service Computing
프로그래밍 언어론 2004년 가을학기 창 병 모 숙명여대 컴퓨터과학과.
Internet Computing KUT Youn-Hee Han
국내 IT인재 일본진출 현황 및 성과 한 국 정 보 통 신 산 업 협 회 부설 한국정보통신인력개발센터.
Enterprise Data Warehouse
지식저장 및 활용사례 삼성SDS 아리샘 KMS 오승연 책임
Linux를 이용한 Embedded 장비 개발
InstallShield Professional Services ( Services Pack / Education / Consulting ) ㈜소프트뱅크 커머스.
5. 프로젝트 계획 및 통제.
과 제 명 : 소프트웨어 사업대가기준 개선사업 소프트웨어사업대가기준 개선체계 진흥컨설팅 김성수 대표
한국 건설산업의 환경변화와 대응전략 한국건설산업연구원 김민형(연구위원, 경영·博).
CRM에서의 Data Quality Management
Visual C++ Programming
임베디드 소프트웨어 동향. 임베디드 소프트웨어 동향 임베디드 S/W 시장분류 솔루션 측면 시스템 측면 운영체제 개발도구 설계도구 테스트도구 유선통신 무선통신 정보가전 자동차제어 산업자동화 사무자동화 군사/항공우주 의료장비 솔루션 공급 업체 임베디드 S/W시장 임베디드.
시스템 평가와 문서화 6.1 시스템 평가 6.2 시스템 도입 평가 6.3 시스템 문서화.
TPS : 도요타 생산방식.
이 종 수 식 신( 新 .信 .神 )바람 경영 컨설팅 ( 수탁경영/관리 )
9.1 소 개 9.2 유지보수의 특성 9.3 소프트웨어 형상 관리 9.4 소프트웨어 척도 9.5 유지보수 방법 및 도구
Parallel software Lab. 박 창 규
Lecture 01: Compiler Overview
목차 INDEX 1. 회원가입 및 로그인 2. 업체정보 3. 제조검사 신청 4. 인보이스 5. 검사진행현황(현장검사 신청)
A Web-Based Little Man Computer Simulator
소프트웨어 공학 (Software Engineering)
1. 세포의 구조와 기능 (1) 식물 세포 와 동물 세포 조영희
TPM Part-III 자주보전 매뉴얼 두산 주류BG 군산공장 제1스텝 설비 WORST 최적화 TPM
알고리즘(Algorithm)  알고리즘 개요 (효율, 분석, 차수) Part 년 봄학기
소프트웨어와 소프트웨어 개발 - Software Engineering -.
시스템 분석 및 설계 글로컬 IT 학과 김정기.
22-1 임율과 공수의 관계 임율을 구할 때 공수가 반드시 필요하다는 사실은 시샵님의 말씀을 들어 잘 알겠는데 하나 꼭 생각하셔야 될 것이 있습니다. 여기 강의실에서 임률과 아래 공수에 대한 강의가 서로 떨어져 있는데 두개를 연계해서 생각해야 합니다. 특히 표준 또는.
제1장 정리 컴퓨터소프트웨어과 2-A반 주세호.
성공적인 시간관리 전략 Wisdom21 강사 양승경
3D 프린팅 프로그래밍 04 – 도형 회전 (하트 열쇠고리 만들기) 강사: 김영준 목원대학교 겸임교수.
알기쉬운실무회계 대원과학대학 세무경영과 교육과제.
가치중심 계획보전 실천과정.
기술혁신 세미나 Technology integration: Managing technological evolution in a complex environment Marco Iansiti Research Policy 24 (1995) 기술경영학 협동과정 박사2학기.
ChapterⅢ. CMMS 구축 시 기대효과.
커뮤니케이션 스킬 UP -전화매너- ..
성전기공식(안) 식 순 1. 기공미사 2. 기 공 식 3. 축 하 연 천주교 수원교구 퇴촌성당.
Know-How 및 과정 기획 : 박 소 부 / 장 태 영 컨설턴트
ARENA Basic Process Techniques
책을 읽읍시다  탈향 진지하게 설명해드림 1303 김소희 1309박지호 1315이지수.
(Software Maintenance)
2016년 제1차 운영위원회 평택시건강가정 ∙다문화가족지원센터
Presentation transcript:

FP와 소프트웨어 유지보수 비용산정

문헌연구 및 해외선진사례 분석 유지보수 비용은 전체 생명주기 비용의 50% ~ 80% 유지보수 프로세스와 비용에 영향을 주는 요인들의 연구 미흡 문헌 연구 및 해외선진사례 COCOMO 81 COCOMO II IFPUG Dreger’s FPA Nesma (M_Paper4.pdf) Perfective Maintenance Estimation based on FP (복사물) SMPEEM based on FP (M_Paper5.doc) Estimation based on COSMIC-FFP (M_Paper2.pdf) Maintainability Index (M_Paper1.pdf) Estimation by Analogy (M_Paper3.pdf)

COCOMO 81 50% 이상 새로운 코드를 작성하는 재설계와 재개발 배제 corrective, adaptive, perfective maintenance에 드는 노력 포함 유지보수 비용과 개발 비용의 cost driver는 동일하다고 가정 (MM)AM = (1.0)(ACT)(MM)DEV ACT: 소스 코드가 일년동안 추가나 수정을 통해 변경되는 비율 Intermediate COCOMO와 Detailed COCOMO 유지보수에서 RELY, MODP cost driver의 등급 차이 (RELY)M: 1.35(VL) 1.15(L) 1.00(N) 0.98(H) 1.10(VH) (DELY)D: 0.75(VL) 0.88(L) 1.00(N) 1.15(H) 1.40(VH) (MM)AM = (1.0)(ACT)(MM)NOM(EAF)M SCED cost driver는 유지보수 동안 사용되지 않으므로 1.00으로 가정: 유지보수 사이클은 고정된 기간 특징: 개발과 유지보수의 cost driver가 동일하고, 특정 노력 승수만 차이

COCOMO II 소프트웨어 유지보수의 범위는 COCOMO 81의 지침을 따름 수정된 코드 규모에 스케일 인자를 적용 유지보수 규모 (Size)M = [(Base Code Size) × MCF] × MAF 규모는 KSLOC, 기능 점수, 객체 점수 MCF는 1년 이상의 유지보수 기간 동안 추가나 수정을 통해 변경되는 비율 MAF = 1 + (SU/100) × UNFM 유지보수 비용 산정식은 SCED, RUSE를 제외하고 Post-Architecture 모델과 동일 (MM)M = A × (Size)ME ×  (EMi)M 스케일링 지수 E를 전체 레거시 시스템이 아닌 변경(추가, 수정)된 KSLOC에 적용 유지보수에서 RELY cost driver의 등급 차이 (RELY)M: 1.23(VL) 1.10(L) 1.00(N) 0.99(H) 1.07(VH) (DELY)D: 0.82(VL) 0.92(L) 1.00(N) 1.10(H) 1.26(VH) 특징: 개발과 유지보수의 cost driver가 동일하고, 특정 노력 승수만 차이

IFPUG 유지보수되는 소프트웨어 규모 특징: 개발과 유지보수의 GSC가 동일하고 유지보수 전후의 VAF가 상이하다고 가정 EFP = (ADD + CHG + CFP) × VAFa + (DEL × VAFb) 특징: 개발과 유지보수의 GSC가 동일하고 유지보수 전후의 VAF가 상이하다고 가정 UFP로 규모산정을 할 경우, 유지보수되는 소프트웨어 규모만 고려하면 됨 유지보수되는 소프트웨어 규모와 비용간의 관계 유도 필요

Dreger’s FPA 유지보수되는 전체 소프트웨어 규모 Net modification size (DEL × VAFb) + (ADD + CHGa) × VAFa Net modification size (DEL × CHGb) × VAFb + (ADD + CHGa ) × VAFa 특징: 개발과 유지보수의 GSC가 동일하고 유지보수 전후의 VAF가 상이하다고 가정 UFP로 규모산정을 할 경우, 유지보수되는 소프트웨어 규모만 고려하면 됨 유지보수되는 소프트웨어 규모와 비용간의 관계는 MM = a(FP)b으로 계산

Nesma (1) 식별된 각 기능(데이터, 트랜잭션)의 변경 정도를 반영하는 impact factor (I) 를 UFP에 적용 방법론 1. 유지보수 프로젝트의 범위 내에서 트랜잭션 기능과 데이터 기능을 식별 2. 추가될 트랜잭션 기능과 데이터 기능의 유지보수 규모를 결정 UEFPADDED = UFPADDED 3. 삭제될 트랜잭션 기능과 데이터 기능의 유지보수 규모를 결정 UEFPDELETED = UFPDELETED × 0.4 4. 변경될 데이터 기능의 유지보수 규모를 결정 UEFPCHANGED = UFPCHANGED × ICHANGED Impact factor는 DET 변경(추가, 변경, 삭제) 비율에 의해 결정 33% 이하 (0.25), 67% 이하 (0.50), 100% 이하 (0.75), 100% 초과 (1.00)

Nesma (2) 방법론 (계속) 5. 변경될 트랜잭션 기능의 유지보수 규모 결정 1) 트랜잭션이 이용하는 DET와 FTR 식별 2) 유지보수 결과로 인한 DET와 FTR 변경 비율 결정 3) DET와 FTR 변경 비율을 이용한 impact factor 결정 DET 변경 비율 FTR 변경 비율 67%이하 100%이하 100%초과 33%이하 0.25 0.50 0.75 67%이하 0.50 0.75 1.00 100%이하 0.75 1.00 1.25 100%초과 1.00 1.25 1.50 4) 트랜잭션의 유지보수 기능 점수 계산 UEFPCHANGED = UFPCHANGED × ICHANGED 6. 유지보수 프로젝트의 규모 계산 UEFPPROJECT =  UEFPADDED +  UEFPCHANGED +  UEFPDELETED

Nesma (3) 방법론 (계속)  UEFPCHANGED × VAFAFTER + EFPPROJECT =  UEFPADDED × VAFAFTER +  UEFPCHANGED × VAFAFTER +  UEFPDELETED × VAFBEFORE 8. 유지보수 이후의 시스템 규모를 계산 UFPAFTER = UFPBEFORE + ( UFPADDED +  UFPAFTER CHANGE) - ( UFPBEFORE CHANGE +  UFPDELETED ) FPAFTER = UFPAFTER × VAFAFTER 특징: 개발과 유지보수의 GSC가 동일하고 유지보수 전후의 VAF가 상이하다고 가정

Perfective Maintenance Estimation Vianney Cote and Denis St-Pieerre E = ( MFPi × MAINi × KNOWi) × TCF × EF × SCP MFPi = UFPi × wi (i가 add이면 1.00, mod 0.80, sup 0.33, unt 0.06) 가중치는 전문가들의 DELPHI 기법으로 결정 MAIN은 maintainability factor Max. favorable: 0.76, 0.76, 0.84, 0.88 Max. unfavorable: 1.54, 1.58, 1.40, 1.27 KNOW는 분석가와 프로그래머의 knowledge level factor KNOWi = A_KNOWi × P_KNOWi 최근 3(2, 1, 0)년간 12(6, 3, 0)개월 이상의 경험 A1: 0.73, 0.69, 0.71, 0.72, A2:…, …, P1:…, …, P5:… EF는 개발과 유지보수에 공통적인 생산성 요인 SCP는 Standard Cost per FP 특징: 개발과 유지보수의 TCF가 동일 단위 FP 당 비용을 유지보수 FP에 적용하여 유지보수 비용을 구함

SMPEEM based on FP 가장 최근의 유지보수 비용산정 모델 (Journal of Software Maintenance에 게재 예정) (조작된 데이터 가능성) 새로운 VAF를 유도하여 UFP에 적용한 후 FP 계산 Engineers’s skill Knowledge of application domain Familiarity with programming language Experience with system software Technical characteristics Structuredness of software modules Independence between software modules Changeability/readability of programming language Reusability of legacy software modules Maintenance environment Up-to-dateness of documentation Conformity with software engineering standard Testability VAF = [(scores×wf/100)×(wg/100)] FP = FC × {0.80 + (0.008 × VAF)} 유지보수 비용 E = a(FP)b = 0.054(FP)1.353

COSMIC-FFP Estimation based-on COSMIC-FFP Alain Abran, Ilionar Silvar and Laura Primera 동일한 특성의 프로젝트를 대상 15 maintenance projects on an internet-based software program for linguistic applications 19 maintenance projects on a single real-time embedded software program in the defense industry 인력의 경험과 프로젝트의 난이도를 각각 반영하는 인자(3-level ratings) 적용 평균단위비용모델과 회귀모형(단순회귀모형과 다중회귀모형) 제시 다른 유형의 대규모 프로젝트에 적용하는 추가 연구 필요

Maintainability Index Maintainability index based on COCOMO Juan Carlos, Granja-Alvares and Manuel Jose Barranco-Garcia 단계 1) Maintainability 척도 설정 2) 설정된 척도와 maintainability index와의 관계를 가지는 maintainability 함수 유도 MMMAIN = MMU + MMM + MMT = ACT × MMDEV × (IU + IM + IT) Maintainability index의 적용 IU = FU(XU) : XU는 understandability metric IM = FM(XM) : XM은 modifiability metric IT = FT(XT) : XT는 testability metric 이전 프로젝트의 이력 데이터로부터 유도 실제 데이터로 입증이 어려운 이론적인 연구

Estimation by Analogy Hareton K. N. Leung 배경 다양한 기계학습 기법이 소프트웨어 비용산정에 적용됨 인공신경망, 사례기반추론, rule induction AVN(Analogy with Virtual Neighbor) 기법: CBR의 개선된 형식 cost drivers: #input, #output, #inquiry, #update, #int-itf, #ext-itf Simple: 1~9 objects Medium: 10~39 objects Complex:  40 objects cost drivers와 비용간의 관계를 회귀 분석으로 직접 유도 Skills와 expertise 요인은 포함시키지 않음 낮은 이직률을 가지는 개발팀이 그대로 유지보수 개발 비용산정에 적용된 기법을 유지보수 비용산정에 그대로 적용하는 것을 전제로 함 개발과 유지보수는 동일한 생산성 요인을 가짐