Java 프로그램의 품질평가를 지원하는 메트릭 측정 시스템

Metrics Measurement System Supporting Quality Evaluation of Java Program

  • 박옥자 (전북대학교 전산통계학과) ;
  • 유철중 (전북대학교 컴퓨터과학과, 전북대학교 영상.정보신기술연구소) ;
  • 장옥배 (전북대학교 컴퓨터과학과, 전북대학교 영상.정보신기술연구소)
  • 발행 : 2001.04.01

초록

최근 가장 대표적인 객체지향 언어로 사용되는 Java는 일반적인 애플리케이션뿐만 아니라 인터넷/인트라넷 기반 프로그램 개발, 나아가 컴포넌트 기반 개발에 이르기까지 다양한 분야에서 개발 언어로 사용되고 있다. 따라서 개발된 프로그램의 재사용 및 유지보수 관점에서 프로그램 품잘평가는 보다 중요한 쟁점이 되고 있으므로 기존의 Java 애플리케이션을 포함하여 현재 개발된 프로그램의 품질평가에 필요한 메트릭 측정이 필요하다. 하지만, 이미 제안된 객체지향 소프트에어 메트릭이 현재의 Java 프로그램의 특성에 적합한지에 대한 타당성 검증이 필요하므로 본 논문에서는 기존의 객체지향 메트릭이 Java 프로그램에 적합한지 여부를 결정하기 위해 필요한 메트릭 측정 시스템을 구축하여 Java 프로그램에 적합한 메트릭 제안을 지원하고자 한다. 본 시스템은 Briand가 기존의 객체지향 소프트웨어 메트릭을 수학적으로 정형화시켜 분류한 메트릭을 Java 프로그램에 적용시켜 제안된 메트릭이 프로그램에 타당성 있는지 검증함으써 명확한 품질평가도구 개발을 지원하고자 한다. 본 시스템을 통해 Java 소스 프로그램으로부터 정량적 정보를 보다 빠르고 정확하게 산출함으로써 기존의 객체지향 메트릭에 대한 검증을 비교 및 분석 수행할 수 있으며, 타당성 문제가 있다면 새로운 메트릭의 제안 및 보완을 고려함으로써 Java 프로그램에 적합한 메트릭 확립을 가능하게 할 것이다.

Java, used as the most representative object-oriented language, isil becoming the popular language for Internet/Intranet based program development. Moreover, it is used for development language in a variety of areas such as component based development language. In the view of reuse and maintenance of developed program, quality evaluation of program is becoming a more important issue. So, metrics measurement for quality evaluation of program that is developed at present including existing Java application is necessary. However, it is necessary that whether existing object-oriented software metrics is suitable on Java program is to be validated So, in this paper, we build an automated metrics measurement system that needs to validate on object-oriented software metrics and wish to support metrics measurement that is to determine it. The purpose of this system is to support a precise quality evaluation tool. In this system, we apply the metrics classified by Briand. Briand classified the metrics by formalizing mathematically them to verify feasibility of existing object-oriented software metrics. Using the proposed system, we can make comparison and analysis of validation on existing object-oriented metrics by calculating quantitative information more rapidly from Java source program. If there is any problem in feasibility of the metrics, we can establish a suitable metrics on Java program by considering reiJ,1forcement of the existing metrics or proposing new metrics.

키워드

참고문헌

  1. David M. Arnow, and Gerald Weiss, Introduction to Programming Using java, Addison Wesley, 1998
  2. Ed ROMAN, Mastering EJB and the Java 2 Platform, Enterprise Edition, Wiley, 1999
  3. Lionel C. Briand L., and Morasca S., 'Property-Based Software Engineering Measurement,' IEEE Trans. on Software Eng., Vol. 22, No.2, January. 1996 https://doi.org/10.1109/32.481535
  4. Briand L., Daly J., and Wust J., 'A Unified Framework for Cohesion Measurement in Object-Oriented Systems,' Empirical Software Engineering journal 3(1), pp. 56-117, 1993. Also avaliable as Technical Report ISERN-97-05 https://doi.org/10.1023/A:1009783721306
  5. Briand L, Daly J., Porter V., and Wust J., 'A Comprehensive Empirical Validation of Product Measures for Object-Oriented Systems,' Technical Report ISERN-98-07, 1998
  6. Roger S. Pressman, Software Engineering-A Practitioner's Approach, McGraw-Hill, 4th., 1998
  7. Bieman J. M., and Kang B. K, 'Cohesion and Reuse in an Object-Oriented System,' 111 Proc. ACM Symp. Software Reusability(SSR '94), pp. 259-262, 1995 https://doi.org/10.1145/211782.211856
  8. Bush M. E. and Fenton N., 'Software Measurement: A Conceptual Framework,' The Journal of Systems and Software, Vol.12, No.3, pp. 223-231, 1990 https://doi.org/10.1016/0164-1212(90)90043-L
  9. Lorenz, Object-Oriented Software Metrics: A Practical Guide, Prentice Hall, 1994
  10. Fenton N., Software Metrics, A Rigorous Approach, Chapman and Hall, London, 1991
  11. Chidamber S. R, and Kemerer C. F., 'Towards Metrics Suite for Object Oriented Design,' in A. Paepcke,(ed.) Proe. Conference on Object-Oriented Programming: Systems, Languages and Applications (OOPSLA'91), October 1991 https://doi.org/10.1145/117954.117970
  12. Chidamber S. R, and Kemerer C. F., 'A Metrics Suite for Object Oriented Design,' IEEE Trans. on Software Eng., 20(6), pp.476-493, 1994 https://doi.org/10.1109/32.295895
  13. Harrison R., and Steve J. Counsell, 'An Evaluation pf the MOOD set of Object-Oriented Software Metrics,' IEEE Trans. on Software Eng., Vol.24, No.6, pp. 491-496, June 1998 https://doi.org/10.1109/32.689404
  14. Weyuker E. J., 'Evaluating Software Complexity Measures,' IEEE Trans. Software Eng., Vol.14, No.9, pp. 1357-1365, September. 1998 https://doi.org/10.1109/32.6178
  15. Oveido E. I., 'Control Flow, Data Flow and Program Compleixty,' Proc. IEEE COMPSAC, pp. 146-152, November. 1980
  16. Lee Y. S., Liang B. S., Wu S.-F., and Wang F. J., 'Measuring the Coupling and Cohesion of an Object-Oriented Program Based on Information Flow,' in Proc. International Conference on Software Quality, Maribor, Slovenia, 1995
  17. Briand L., Morasca S., and Basili V., 'Defining and Validating High-level Design Metrics,' CS-TR 3301, Univ. of Maryland, College Park, Md. Submitted for publications
  18. Elliott Rusty Harold, Java Secrets, UDG Books, 1997
  19. Bill Venners, Inside the Java Virtual Machine, McGraw-Hill, New York, 1998
  20. Mitchell Waite, and Robert Lafore, Data Structure and Algorithms in Java, Gilbert & McCarty, 1998
  21. Pavel Kouznetsov, JAD v1.5.5.3, http://web.unicom.com.cy/~kpd/jad.html
  22. Brian W. Bush, BANDA Java Packages, http://www.sladen.com/Java
  23. Sun Microsystems, Java Compiler Compiler, http://www.suntest.com/JavaCC
  24. Jagdish Bnasiya, and Carl Davis, Automated Metrics and Object-Oriented Development, Dr. Dobb's Journal, Dec. 1997
  25. Andrew Cain, Rajesh Vasa, JMetric, http:// www.csse.swin.edu.au/cotar/jmetric/index.html
  26. 이선아, 최병주, '소프트웨어 개발 과정에서 제품의 품질 척도를 적용하는 방법', 정보과학회논문지 : 소프트웨어 및 응용, 제27권 3호, pp. 217-226, 2000. 3
  27. Berard, Edward V., 'Metrics for Object-Oriented Software Engineering,' an Internet Posting on Compo Software-Engneering, Jan. 28, 1995
  28. Binder, Robert V., 'Testing Object-Oriented Systems:A Status Report,' American Programmer, Vol.7, No.4, pp. 22-29, 1994
  29. Ejiou, L., Software Engineering with Formal Metrics, QED Publishing, 1991
  30. 정지환, 황선명, '자바 프로그램의 그래픽 구조 분석과 메트릭스 생성도구의 설계', 정보과학회 가을 학술발표논문집, 제26권 2호, 1999
  31. QA/C++, QA/C++ Version 3.1 Documentation, PR:QA, 1996