DOI QR코드

DOI QR Code

Software Quality Classification Model using Virtual Training Data

가상 훈련 데이터를 사용하는 소프트웨어 품질 분류 모델

  • 홍의석 (성신여자대학교 컴퓨터정보학부)
  • Published : 2008.07.28

Abstract

Criticality prediction models to identify most fault-prone modules in the system early in the software development process help in allocation of resources and foster software quality improvement. Many models for identifying fault-prone modules using design complexity metrics have been suggested, but most of them are training models that need training data set. Most organizations cannot use these models because very few organizations have their own training data. This paper builds a prediction model based on a well-known supervised learning model, error backpropagation neural net, using design metrics quantifying SDL system specifications. To solve the problem of other models, this model is trained by generated virtual training data set. Some simulation studies have been performed to investigate feasibility of this model, and the results show that suggested model can be an alternative for the organizations without real training data to predict their software qualities.

소프트웨어 개발 프로세스의 초기 단계에서 결함경향성이 많은 모듈들을 예측하는 위험도 예측 모델은 프로젝트 자원할당에 도움을 주어 전체 시스템의 품질을 개선시키는 역할을 한다. 설계 복잡도 메트릭에 기반을 둔 여러 예측 모델들이 제안 되었지만 대부분 훈련 데이터 집합을 필요로 하는 모델들이었고 훈련 데이터 집합을 보유하고 있지 않은 대부분의 개발 집단들은 이들을 사용할 수 없다는 문제점이 있었다. 본 논문에서는 잘 알려진 감독형 학습 모델인 오류 역전파 신경망 모델에 SDL 시스템 명세를 정량화하여 적용한 예측 모델을 개발하였으며, 기존 학습 모델들의 문제점을 해결하기 위해 이 모델을 여러 제약조건을 가지고 만든 가상 훈련데이터집합으로 학습시켰다. 제안 모델의 사용가능성을 알아보기 위해 몇가지 모의실험을 수행 하였으며, 그 결과 제안 모델이 훈련 데이터 집합이 없는 개발 집단에서는 실제 데이터로 훈련된 예측 모델의 대안으로 사용될 수 있음을 보였다.

Keywords

References

  1. C. Ebert, "Fuzzy classification for software criticality analysis," Expert Systems with Applications, Vol.11, No.3, pp.323-342, 1996. https://doi.org/10.1016/S0957-4174(96)00048-6
  2. N. Ohlsson and H. Alberg, "Prediction Fault-Prone Software Modules in Telephone Switches," IEEE Trans. Software Eng., Vol.22, No.12, pp.886-894, 1996. https://doi.org/10.1109/32.553637
  3. T. M. Khosgoftaar and E. B. Allen, "Early Quality Prediction: A Case Study in Tele communications," IEEE Software, Vol.13, No.1, pp.65-71, 1996. https://doi.org/10.1109/52.476287
  4. J. Tian, A. Nguyen, C. Allen, and R. Appan, "Experience with identifying and characterizing problem-prone modules in telecommunication software systems," J. Systems Software, Vol.57, No.3, pp.207-215, 2001. https://doi.org/10.1016/S0164-1212(01)00011-5
  5. T. M. Khoshgoftaar and D. L. Lanning, "A Neural Network Approach for Early Detection of Program Modules Having High Risk in the Maintenance Phase," J. Systems Software, Vol.29, No.1, pp.85-91, 1995. https://doi.org/10.1016/0164-1212(94)00130-F
  6. K. E. Emam, W. Melo, and J. C. Machado, "The prediction of faulty classes using object oriented design metrics," J. Systems Software, Vol.56, No.1, pp.63-75, 2001. https://doi.org/10.1016/S0164-1212(00)00086-8
  7. K. E. Emam, S. Benlarbi, N. Goel, and S. N. Rai, "Comparing case-based reasoning classifiers for predicting high risk software components," J. Systems Software, Vol.55, No.3, pp.301-320, 2001. https://doi.org/10.1016/S0164-1212(00)00079-0
  8. Y. Liu and T. M. Khoshgoftaar, "Genetic programming model for software quality classification," Proc. IEEE Int'l Symp. High Assurance Systems Engineering, pp.127-136, 2001. https://doi.org/10.1109/HASE.2001.966814
  9. H. Zuse, Software Complexity Measures and Methods, Walter de Gruyter, 1991.
  10. M. M. Thwin and T. S. Quah, "Application of neural networks for software quality prediction using object-oriented metrics," J. Systems Software, Vol.76, No.2, pp.147-156, 2005. https://doi.org/10.1016/j.jss.2004.05.001
  11. N. Fenton, "Software Measurement: A Necessary Scientific Basis," IEEE Trans. Software Eng., Vol.20, No.3, pp.199-206, 1994. https://doi.org/10.1109/32.268921
  12. W. M. Zage and D. M. Zage, "Evaluating Design Metrics on Large-Scale Software," IEEE Software, Vol.10, No.4, pp.75-81, 1993. https://doi.org/10.1109/52.219620
  13. W. W. Agresti and W. M. Evanco, "Projecting Software Defects From Analyzing Ada Designs," IEEE Trans. Software Eng., Vol.18, No.11, 1992. https://doi.org/10.1109/32.177368
  14. R. W. Selby and V. R. Basili, "Analyzing error prone system structure," IEEE Trans. Software Eng., Vol.17, No.2, pp.141-152, 1991. https://doi.org/10.1109/32.67595
  15. 홍의석, "훈련데이터집합을 사용하지 않는 소프트웨어 품질예측 모델," 정보처리학회논문지, 제10-D권, 제4호, pp.689-696, 2003.
  16. L. Fausett, Fundamentals of Neural Networks, Prentice-Hall International, 1994.
  17. T. M. Khoshgoftaar, N. Seliya and A. Herzberg, "Resource-oriented software quality classification models," J. Systems Software, Vol.76, No.2, pp.111-126, 2005. https://doi.org/10.1016/j.jss.2004.04.027