혼성 메트릭을 이용한 소프트웨어 개체 복잡도 정량화 기법

Quantification Methods for Software Entity Complexity with Hybrid Metrics

  • 홍의석 (안양대학교 디지털미디어학부) ;
  • 김태균 (부산외국어대학교 컴퓨터공학과)
  • 발행 : 2001.06.01

초록

소프트웨어 개발 기술이 발전하고 소프트웨어 정량화의 중요성이 커지면서 많은 메트릭들이 여러 시스템 개체의 정량화를 위해 제안되었다. 이들은 크게 스칼라 메트릭 형태나 벡터 형태를 취한다. 최근에 몇몇 연구들에서 스칼라 메트릭의 조합 형태에서 오는 위험성을 지적하였지만 아직도 유용성 등의 큰 이점 때문에 많은 스칼라 메트릭들이 사용되고 있다. 본 논문은 기존 메트릭 연구들의 분석 과정을 통해 스칼라 메트릭 형태는 외부 복잡도에 가중을 둔 혼성 메트릭 형태가 가장 적당하다는 결론을 얻었으며 이를 토대로 개발 방법론과 개발 시스템 형태에 의존하지 않는 일반적인 혼성 복잡도 메트릭 제작 프레임워크를 제안한다. 제안 프레임워크는 구조적 방법론의 분석 단계와 객체지향 실시간 시스템 설계 단계의 정량화 프로젝트에 사용되었으며 두 프로젝트 모두 만족할만한 결과를 얻었다. 정량화 목적을 갖는 개발 집단은 제안 프레임워크를 이용하여 단시간 내에 여러 종류의 시스템 개체를 정량화할 수 있다.

As software technology is in progress and software quantification is getting more important, many metrics have been proposed to quantify a variety of system entities. These metrics can be classified into two different forms : scalar metric and metric vector. Though some recent studies pointed out the composition problem of the scalar metric form, many scalar metrics are successfully used in software development organizations due to their practical applications. In this paper, it is concluded that hybrid metric form weighting external complexity is most suitable for scalar metric form. With this concept, a general framework for hybrid metrics construction independent of the development methodologies and target system type is proposed. This framework was successfully used in two projects that quantify the analysis phase of the structured methodology and the design phase of the object oriented real-time system, respectively. Any organization can quantify system entities in a short time using this framework.

키워드

참고문헌

  1. M. C. Paulk, B. Curtis, M. B. Chrissis, and C. V. Weber, Capability Maturity Model for Software, Version 1.1, CMU/SEI-93-TR-24, 1993
  2. International Organization for Standardization, Quality Management and Quality System Elements(Part 3) Guidelines for Development, Supply and Maintenance of Software, ISO 9000-3
  3. J. McCall, P. Richards, and G. Walters, 'Factors in Software Quality,' three volumes, NTIS AD-A049-014, 015, 055, 1997
  4. ISO/IEC JTC1/SC7/WG6, ISO/IEC 9126, Information Technology - Software quality characteristics and metrics
  5. N. Fenton, 'Software Measurement : A Necessary Scientific Basis,' IEEE Trans. Software Eng., Vol.20, No.3, pp.199-206, March 1994 https://doi.org/10.1109/32.268921
  6. B. Henderson-Sellers, Object Oriented Metrics-Measures of Complexity, Prentice Hall, 1996
  7. S. Henry and D. Kaufra, 'Software Metrics Based on Information Flow,' IEEE Trans. Software Eng., Vol.7, No.5, pp.510-518, Sept. 1981 https://doi.org/10.1109/TSE.1981.231113
  8. D. Rombach, 'Design Measurement-Some Lessons Learned,' IEEE Software, pp.17-25, March 1990 https://doi.org/10.1109/52.50770
  9. H.Zuse, 'Complexity Metrics/Analysis,' Encyclopedia of SE. Vol.1, John Wiely & Sons, pp.131-165, 1994
  10. C. E. Shannon, 'A Mathematical Theory of Communication,' Bell System Tech. J., Vol.21, pp.379-423, 1948
  11. S. Henry and C. Selig, 'Predicting Source-Code Complexity at the Design Stage,' IEEE Software, pp.36-44, March 1990 https://doi.org/10.1109/52.50772
  12. D. N. Card and W. W. Agresti, 'Measuring software design complexity,' J. Systems Software, Vol.8, pp.185-197, March 1988 https://doi.org/10.1016/0164-1212(88)90021-0
  13. W. M. Zage and D. M. Zage, 'Evaluating Design Metrics on Large-Scale Software,' IEEE Software, pp.75-80, July 1993 https://doi.org/10.1109/52.219620
  14. K. S. Lew, T. S. Dillon, and K. E. Forward, 'Software Complexity and its impact on Software reliability,' IEEE Trans. Software Eng., Vol.14, No.11, Nov. 1988 https://doi.org/10.1109/32.9052
  15. T. J. McCabe and C. W. Butler, 'Design complexity measurement and testing,' Commun. ACM, Vol.32, pp.1415-1425, Dec. 1989 https://doi.org/10.1145/76380.76382
  16. M. H. Halstead, Elements of Software Science, Elsevier Norty-Holland, 1977
  17. W. Harrison, 'An Entropy-Based Measures of Software Complexity,' IEEE Trans. Software Eng., Vol.18, No.12, pp.1025-1029, Nov. 1992 https://doi.org/10.1109/32.177371
  18. R. R. Gonzalez, 'A Unified Metric of Software Complexity : Measuring Productivity, Quality, and Value,' J. Systems Software, Vol.29, pp.17-37, 1995 https://doi.org/10.1016/0164-1212(94)00126-8
  19. M. Shepperd and D. C. Ince, 'A Critique of Three Metrics,' J. Systems Software, Vol.26, pp.197-210, 1994 https://doi.org/10.1016/0164-1212(94)90011-6
  20. 홍의석, 우치수, '프로세스 복잡도에 기초한 변환 분석기의 설계 및 구현,' 정보과학회논문지, 제22권 제9호, pp.1344-1353, 1995
  21. M. P. Jones, The practical guide to stuctured systems design, Prentice Hall/Yourdon Press, 1988
  22. B. T. Mynatt, Software Engineering with Student Project Guidance, Prentice Hall, 1990
  23. E. N. Yourdon, Modern Structured Analysis, Prentice-Hall, 1990
  24. A. M. Weaver, Using the Structured Techniques A Case Study, Yourdon Press, 1987
  25. 홍의석, 홍성백, 김갑수, 우치수, 'SDL 설계 복잡도 메트릭 집합,' 정보과학회논문지(B), 제24권 제10호, pp.1053-1062, 1997
  26. 홍의석, 정명희, 'SDL 메트릭 집합의 분석적 검증,' 정보처리학회논문지, 제7권 제4호, pp.1112-1121, 2000
  27. EuySeok Hong and ChiSu Wu, 'Criticality Prediction Models using SDL Metrics Set,' pp.23-30, Proc. APSEC'97/ICSC'97, 1997 https://doi.org/10.1109/APSEC.1997.640158