최근 객체지향 개발 방법론을 적용하는 소프트웨어 개발 프로젝트에서 개발 노력 추정 기법으로 사용사례점수(Use Case Point, UCP)에 대한 연구가 계속되고 있다. 기존의 연구는 기술적 요인과 환경적 요인을 적용한 AUCP(Adjusted Use Case Point)에 상수를 곱하여 개발 노력을 추정하는 선형모델을 제안하고 있다. 그러나 소프트웨어 규모가 증가하면 개발기간은 기하급수적으로 증가함으로서 비선형 회귀모델이 적합하다는 사실과 UCP 계산과정에서 TCF(Technical Complexity Factor)와 EF(Environmental Factor)를 적용함에 따른 FP(Function Point) 오차가 발생함으로서 AUCP로 규모를 추정하는 것은 비현실적이다. 이 논문은 사용사례점수 기반의 기존 연구의 문제점을 제시하고, 기존 연구의 문제점인 TCF와 EF를 고려하지 않고 직접 UUCP로 부터 개발 노력을 추정할 수 있는 모델(선형, 로그형, 다항식, 거듭제곱, 지수형)을 도출하고 평가한다. 그 결과, 기존의 선행 모델보다 비선형모델인 지수형 모델이 우수한 결과를 보였다. 따라서 개발될 소프트웨어 시스템의 UUCP를 계산한 후 제안된 모델을 이용하여 개발 노력을 추정함으로서 개발에 소요되는 직접비용 산정이 가능하다.
최근 객체지향 개발 방법론을 적용하는 소프트웨어 개발 프로젝트에서 개발 노력 추정 기법으로 사용사례점수(Use Case Point, UCP)에 대한 연구가 계속되고 있다. 기존의 연구는 기술적 요인과 환경적 요인을 적용한 AUCP(Adjusted Use Case Point)에 상수를 곱하여 개발 노력을 추정하는 선형모델을 제안하고 있다. 그러나 소프트웨어 규모가 증가하면 개발기간은 기하급수적으로 증가함으로서 비선형 회귀모델이 적합하다는 사실과 UCP 계산과정에서 TCF(Technical Complexity Factor)와 EF(Environmental Factor)를 적용함에 따른 FP(Function Point) 오차가 발생함으로서 AUCP로 규모를 추정하는 것은 비현실적이다. 이 논문은 사용사례점수 기반의 기존 연구의 문제점을 제시하고, 기존 연구의 문제점인 TCF와 EF를 고려하지 않고 직접 UUCP로 부터 개발 노력을 추정할 수 있는 모델(선형, 로그형, 다항식, 거듭제곱, 지수형)을 도출하고 평가한다. 그 결과, 기존의 선행 모델보다 비선형모델인 지수형 모델이 우수한 결과를 보였다. 따라서 개발될 소프트웨어 시스템의 UUCP를 계산한 후 제안된 모델을 이용하여 개발 노력을 추정함으로서 개발에 소요되는 직접비용 산정이 가능하다.
Recently, there has been continued research on UCP from the development effort estimation method to a software development project applying object oriented development methodology. Current research proposes a linear model estimating the developmenteffort by multiplying a constant to AUCP which appli...
Recently, there has been continued research on UCP from the development effort estimation method to a software development project applying object oriented development methodology. Current research proposes a linear model estimating the developmenteffort by multiplying a constant to AUCP which applies technical and environmental factors. However, the fact that a non-linear regression model is more appropriate as the software size increases, the development period increases exponentially. In addition, in the UCP calculation process the occurrence of FP errors due to the application of TCF and EF, it is unrealistic to estimate the size with AUCP. This paper presents the issue of current research based on UCP without considering problems of the research, for example, TCF and EF and expresses the models (linear, logarithmic, polynomial, power and exponential type) estimating the development effort directly from UUCP. Consequently, the exponential model within non-linear models exhibit more accurate results than the current linear model. Therefore, after calculating the UUCP of the developing software system, using the proposed model to estimate the development effort, it is possible to estimate the direct cost required in development.
Recently, there has been continued research on UCP from the development effort estimation method to a software development project applying object oriented development methodology. Current research proposes a linear model estimating the developmenteffort by multiplying a constant to AUCP which applies technical and environmental factors. However, the fact that a non-linear regression model is more appropriate as the software size increases, the development period increases exponentially. In addition, in the UCP calculation process the occurrence of FP errors due to the application of TCF and EF, it is unrealistic to estimate the size with AUCP. This paper presents the issue of current research based on UCP without considering problems of the research, for example, TCF and EF and expresses the models (linear, logarithmic, polynomial, power and exponential type) estimating the development effort directly from UUCP. Consequently, the exponential model within non-linear models exhibit more accurate results than the current linear model. Therefore, after calculating the UUCP of the developing software system, using the proposed model to estimate the development effort, it is possible to estimate the direct cost required in development.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
기존 연구들이 수행한 조절된 사용사례 점수에 상수를 곱한 형태의 모델들과 제안된 모델의 성능을 비교하여 보자. 기존 연구들은 10 M 시간/30으로 다양한 결과를 보였다.
본 논문에서는 사용사례점수 계산 방법을 살펴보고, 사용사례점수를 기반으로 하여 개발비용을 추정하는 기존의 선형 모델의 문제점을 제기하였다. 제안된 모델은 최종적으로 계산된 조절된 사용사례점수(UCP)에 기반하지 않고, 조절이 안 된 사용사례 점수(UUCP)에 기반하여 최적의 개발비용을 추정하는 모델을 제시하고 다야한 실측 데이터를 획득하여 이에 적합한 모델을 고찰하였다.
이후에도 유스케이스 점수에 대한 연구는 계속되고 있으나 유스케이스 점수에 기반하여 개발노력을 추정할 수 있는 모델 연구는 미미한 수준이다. 본 논문은 소프트웨어 개발에 소요되는 노력을 추정함에 있어, 객체지향 개발방법론에 적합한 유스케이스 점수로 측정된 소프트웨어 규모에 따른 개발노력을 추정할 수 있는 통계적 모델을 제시한다.
그러나 이 분야에 대한 연구가 거의 수행되지 않고 있다. 이러한 추세에 부응하고자 본 논문은 사용사례 점수에 기반한 소프트웨어 비용추정 모델을 제시하였다.
제안 방법
0222. ERCT를 UUCP를 이용한 개발노력을 추정하는 모델로 제안한다.
Ribu[4]가 제시한 사용사례 점수당 개발 소요 시간(시간/UCP) 을 15시간/UCP, 20시간/UCP, 30시간/UCP을 적용시 소요되는 노력 및 본 절에서 제시한 통계적 모델에 따른 소요되는 노력과 실제 개발에 소요되는 노력을 비교 / 분석하였다.
0085 . UUCP를 제안한다.
수 있다. 따라서 본 논문에서는 Project A 데이터를포함시킨 모델은 참고용으로 제시한다.
또한 [표 4]의 데이터는 실제 프로젝트 개발 당시 관련 문서와 개발 환경을 참조하여 TCF와 EF를 산출하였으며, 실제 투입된 노력을 제시하였다. 따라서, 이러한 데이터를 사용함으로써 일반화되고 모델로 적용될 수 있을 것이다.
또한 기존 연구들이 수행한 조절된 사용사례 점수 (AUCP)에 상수를 곱한 형태의 모델들과 제안된 모델의 성능 및 실제 프로젝트를 수행한 개발노력(실측치)에 대한 성능을 비교한다. 기존 연구들의 AUCP는 10 g 시간/SZ7CPM30으로 다양한 결과를 보였다.
본 제안 모델은 3장에서 제시한 기존 연구의 문제점 (2)에 따라 TCF와 EF를 고려하지 않고 직접 UUCP로부터 개발노력을 추정할 수 있는 통계적 모델을 제시한다. 모델 제시를 위해 Libu[4]가 유럽의 주요 소프트 웨어회사에서 수행한 4개 프로젝트와 Oslo 대학에서 수행한 10개 프로젝트에서, Nageswaren[16] 가 북미 대형소프트웨어 회사의 웹사이트 구축 프로젝트에서 수행한 프로젝트 데이터를 활용한다.
사용자에게 제공되는 응용프로그램의 규모를 계산 가능한 기능성으로 측정하기 위해, 응용 프로그램을 데이 터기능(Data Function) 과 처리기능(Transaction Function)으로 구분한다. 데이터 기능은 내부와 외부데이터 요구사항에 일치하도록 사용자에게 제공되는 것으로 화일(Internal Logical Files, ILF)과 인터페이스 (External Interface File, EIF) 가 있다.
선형 모델의 문제점을 제기하였다. 제안된 모델은 최종적으로 계산된 조절된 사용사례점수(UCP)에 기반하지 않고, 조절이 안 된 사용사례 점수(UUCP)에 기반하여 최적의 개발비용을 추정하는 모델을 제시하고 다야한 실측 데이터를 획득하여 이에 적합한 모델을 고찰하였다. 모델의 성능을 평가한 결과 지수형태의 비선형 회귀모델( E=ae eb.
다행스럽게도 국내의 IT 5개 업체에서 개발된 특정기관에 대한 경영정보체계(MIS)를 개발한 33개 프로젝트의 개발 사례를 획득할 수 있었다. 획득된 소프트웨어 프로젝트에 대하여 [표 4]와 같이 Kamer[8]가 제시한 방법에 기반하여 UCP를 계산하기 위한 액터와 사용사례를 식별하였다.
대상 데이터
모델 제시를 위해 Libu[4]가 유럽의 주요 소프트 웨어회사에서 수행한 4개 프로젝트와 Oslo 대학에서 수행한 10개 프로젝트에서, Nageswaren[16] 가 북미 대형소프트웨어 회사의 웹사이트 구축 프로젝트에서 수행한 프로젝트 데이터를 활용한다. 활용한 데이터는 사용자 요구사항을 비즈니스 수준에서 Use Case를 식별하고, 식별된 Use Case에서 상이한 Actor를 식별하였으며, 식별된 데이터 [표 1]과 같다
모델 제시를 위해 Libu[4]가 유럽의 주요 소프트 웨어회사에서 수행한 4개 프로젝트와 Oslo 대학에서 수행한 10개 프로젝트에서, Nageswaren[16] 가 북미 대형소프트웨어 회사의 웹사이트 구축 프로젝트에서 수행한 프로젝트 데이터를 활용한다. 활용한 데이터는 사용자 요구사항을 비즈니스 수준에서 Use Case를 식별하고, 식별된 Use Case에서 상이한 Actor를 식별하였으며, 식별된 데이터 [표 1]과 같다
데이터처리
그러나 일반적으로 15 ≤ 시간/UCP ≤ 30의 범위를 갖고 있으므로 AUCP당 개발시간을 15, 20과 30을 적용하여 UCP당 개발 노력과 제안된 지수 함수 모델을 적용 시 개발 노력을 산출한 결과를 [그림 8]로 비교하였다.
다음으로 제안된 모델의 적합성을 검증하기 위해 잔차분석을 하여보자. 잔차(Residual)는 실제 값과 추정된 값과의 차이로, 잔차분석은 단순회귀모델에서 설정한 등분산성, 독립성, 정규성과 직선관계의 가정이 옳은가를 검토할 때 가장 많이 사용되는 방법이다.
성능/효과
(2) UCP 계산 과정에서 VAF와 동일한 개념인 TCF 는 최종적으로 계산되는 UCP에 ±40%의 편차를 나타내며, EF는 -30 ~ +40%의 편차를 유발시킬수 있다. 그러나 기능점수 계산 과정에서 VAF는 최종적으로 계산되는 FP에 대해 ±35%의 오차를 유발시킬 수 있음에도 불구하고 효용성이 없는 것으로 연구되어 AFP 보다는 UFP를 적용하고 있다.
개발될 소프트웨어 시스템의 UUCP를 계산한 후, 제안된 모델을 이용하여 개발노력을 추정하고 개발업체의 시간당 평균 소요 비용을 곱하면 개발에 소요되는 직접비용을 구할 수 있다.
그럼으로 개발될 소프트웨어 시스템의 UUCP를 계산한 후, 제안된 모델인 지수 함수의 형태를 이용하여 개발 노력을 추정하고 개발업체의 시간당 평균 소요 비용을 곱하면 개발에 소요되는 직접비용을 구할 수 있다.
따라서 [표 5]의 실무사례를 적용한 모델 성능분석 결과를 토대로 MMRE가 25%이고 회귀식의 설명력을 판단하는 결정계수가 91%가 되는 지수함수 모델인 E= 3352.0832 . e0.
따라서 기존 연구들은 제안된 모델에 비해 상대오차측면에서 월등히 좋지 않은 결과를 나타내며, 기존 연구들을 이용할 경우 AUCP당 개발시간을 얼마로 결정할 것인가에 따라 개발비용에 큰 편차를 나타낼 수 있다.
따라서, [표 3]의 모델성능분석결과를 토대로 MMRE 가 25%이고 회귀식의 설명력을 판단하는 결정계수가 91%가 되는 지수모델인 E= 111.1054 . ε0.
지수 형태의 모델이 전반적으로 모든 데이터를 가장 잘 표현하는 모델이라 할 수 있다. 또한 지수 함수 형태의 모델이 MMRE가 가장 적고 Conte et 의 개발노력 예측 모델 선정 조건에 적합한 가장 현실적인 모델이다.
제안된 모델은 최종적으로 계산된 조절된 사용사례점수(UCP)에 기반하지 않고, 조절이 안 된 사용사례 점수(UUCP)에 기반하여 최적의 개발비용을 추정하는 모델을 제시하고 다야한 실측 데이터를 획득하여 이에 적합한 모델을 고찰하였다. 모델의 성능을 평가한 결과 지수형태의 비선형 회귀모델( E=ae eb.UUCP)이 가장 적합한 모델로 선정되었다.
검정 한 것이다. 유의수준을 0.05를 기준으로 하여 제안된 모델의 유의성 검정결과 F{a) = 328.3199 >4.76E-18로 회귀 분석이 유의함을 알 수 있다. 따라서 회귀식은 WCP를 이용하여 Effort를 설명할 수 있는 설명력은 충분하다고 판정한다.
95를 얻을 수 있다. 이는 제안된 모델의 MMRE 성능인25.85에 비해 월등히 좋지 않은 결과를 나타내며, 기존 연구들을 이용할 경우 AUCP당 개발시간을 얼마로 결정할 것인가에 따라 개발비용에 큰 편차를 나타낼 수 있다.
후속연구
실제 투입된 노력을 제시하였다. 따라서, 이러한 데이터를 사용함으로써 일반화되고 모델로 적용될 수 있을 것이다.
참고문헌 (18)
L. C. Briand, K. E. Elmam, D. Surmann, I. Wieczork, and K. D. Maxwell, "An Assessment and Comparison of Common Software Cost Estimation Modeling Techniques," International Software Engineering Research Network, Technical Report, ISERN-98-27, 1998.
L. C. Briand and I. Wieczorek, "Resource Estimation in Software Engineering," International Software Engineering Research Network, Technical Report, ISERN 00-05, 2000.
K. Johnson, "Software Cost Estimation: Metrics and Models," Department of Computer Science University of Calgary, Albreta, Canada, http://sern.ucalgary.ca/courses/seng/621/W98/johnsonk/cost.htm, 1998.
K. Ribu, "Estimating Object-oriented Software Projects with Use Cases," University of Oslo Department of Informatics, Master of Science Thesis, 2001.
J. E. Matson, B. E. Barrett, and J. M. Mellichamp, "Software Development Cost Estimation Using Function Points," IEEE Trans. on Software Eng., Vol.20, No.4, pp.275-287, 1994.
A. J. Albrecht, "Measuring Applications Development Productivity," Proceedings of IBM Application Dev., Joint SHARE/GUIDE Symposium, Monterey, CA., pp.83-92, 1979.
I. Jacobson, M. Christerson, et al., "Object-oriented Software Engineering. A Use Case Driven Approach," Addison-Wesley, 1992.
G. Karner, "Metrics for Objectory," Diploma Thesis, University of Linkoping, Sweden, No.LiTH-IDA-Ex-934421, 1993.
M. Bradley, "Function Point Counting Practices Manual, Release 4.1," International Function Point Users Group(IFPUG), 1999.
C. Symons, "COSMIC-FFP Measurement Manual, Version 2.1," Common Software Measurement International Consortium, 2001.
C. Symons, "COSMIC-FFP Measurement Manual, Version 2.2 (The COSMIC Implementation Guide for ISO/IEC 19761:2003)," Common Software Measurement International Consortium, 2003.
B. Kitchenham and K. Kansala, "Inter-item Correlation Among Function Points," National Computing Centre Ltd, UK and VTT, Finland, 1997.
G. Banerjee, "Use Case Points - An Estimation Approach," http://java.isawix.com/whitepapers/1035194512861.pdf, 2001.
L. Probasco, "Dear Dr. Use Case: What About Function Points and Use Cases?," http://www.therationaledge.com/content/aug_02/t_drUseCase_lp.jsp, Rational Software Canada, 2002.
C. Larman, "Applying UML and Patterns. An Introduction to Object-oriented Analysis and Design and the Unified Process," Prentice-Hall, 2002.
S. Nageswaren, "Test Effort Estimation Using Use Case Points," Quality Week 2001, San Francisco, California, USA, 2001.
A. Abran, C. Symons, and S. Oligny, "An Overview of COSMIC-FFP Field Trial Results," ESCOM 2001, London, England, 2001.
S. Conte, H. E. Dunsmore, and V. Y. Shen, "Software Engineering Metrics and Models," Benjamin/Cummings., 1986.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.