Complexity Metrics for Analysis Classes in the Unified Software Development Process

Unified Process의 분석 클래스에 대한 복잡도 척도

  • 김유경 (숙명여자대학교 대학원 컴퓨터과학과) ;
  • 박재년 (숙명여자대학교 컴퓨터과학과)
  • Published : 2001.02.01

Abstract

Object-Oriented (OO) methodology to use the concept like encapsulation, inheritance, polymorphism, and message passing demands metrics that are different from structured methodology. There are many studies for OO software metrics such as program complexity or design metrics. But the metrics for the analysis class need to decrease the complexity in the analysis phase so that greatly reduce the effort and the cost of system development. In this paper, we propose new metrics to measure the complexity of analysis classes which draw out in the analysis phase based on Unified Process. By the collaboration complexity, is denoted by CC, we mean the maximum number of the collaborations can be achieved with each of the collaborator and detennine the potential complexity. And the interface complexity, is denoted by IC, shows the difficulty related to understand the interface of collaborators each other. We prove mathematically that the suggested metrics satisfy OO characteristics such as class size and inheritance. And we verify it theoretically for Weyuker' s nine properties. Moreover, we show the computation results for analysis classes of the system which automatically respond to questions of the it's user using the text mining technique. As we compared CC and IC to CBO and WMC, the complexity can be represented by CC and IC more than CBO and WMC. We expect to develop the cost-effective OO software by reviewing the complexity of analysis classes in the first stage of SDLC (Software Development Life Cycle).

References

  1. Clark A., Michael S., 'Object-Oriented Software Measures,' CMU/SEI 95-TR-002, April 1995
  2. D. H. Abbott, T. D. Korson, and J. D. McGregor, 'A Proposed Design Complexity Metric for Object-Oriented Development,' Technical Report TR-105, Clemson University, 1994
  3. G. Booch, J. Rumbaugh, and I. Jacobson, The Unified Modeling Language User Guide, Addison-Wesley Longman, 1998
  4. G. Booch, J. Rumbaugh, and I. Jacobson, The Unified Software Development Process, Addison-Wesley Longman, 1998
  5. Ivan P. Paltor, Johan L., 'Digital Sound Recorder : A case study on designing systems using the UML notation,' TUCS Technical Report No.234, January 1999
  6. Chidamber S. R., C.F. Kemerer, 'A Metrics Suite for Object-Oriented Design,' IEEE Trans. Software Engineering, Vol.20, No.6, pp.476-493, June 1994 https://doi.org/10.1109/32.295895
  7. Li, Wei and S. Henry, 'Maintenance Metrics for the Object-Oriented Paradigm,' Proceedings of First International Software Metrics Symposium, IEEE Computer Society Press, pp.52-60, 1993 https://doi.org/10.1109/METRIC.1993.263801
  8. R. Sharble, S. Cohen, 'The Object-Oriented Brewery : A Comparison of Two Object-Oriented Development Methods,' SIGSOFT Software Engineering Notes, Vol.18, No.4, pp.60-73, 1993 https://doi.org/10.1145/159420.155839
  9. 김유경, 박재년, '객체지향 설계의 특성을 고려한 품질 평가 메트릭스', 한국정보과학회 논문지, 제7권, 제2호, 2000
  10. 이종석, 우치수, '객체지향 시스템에서의 클래스 응집도와 결합도 메트릭', 한국정보과학회 논문지, 제27권 제6호, pp.595-606, 2000
  11. 김은미, 전형수, 장옥배, S. KUSUMOTOD, T. KIKUNO, Y. TAKADA, 'C++ 프로그램의 복잡도 척도 및 평가 도구',정보과학회 논문지, 제3권 제6호, pp.656-665, 1997
  12. R. Wirfs-Brock, B. Wilkerson, and L. Weiner, 'Designing Object-Oriented Software,' Prentice-Hall, 1990
  13. E. J. Weyuker, 'Evaluating software complexity measures,' IEEE Tran. on SE, Vol.14 No.9, pp.1357-1365, 1988 https://doi.org/10.1109/32.6178
  14. J. C. Cherniavsky and C. H. Smith, 'On Weyuker's axioms for software complexity measures,' IEEE Tran. on SE, Vol.17 No.6, pp.636-638, June 1991 https://doi.org/10.1109/32.87287
  15. B. Henderson S., Object-Oriented Metrics: Measures of Complexity, Prentice-Hall, 1996
  16. 채홍석, 권용래, 배두환, '객체지향 시스템의 클래스에 대한 응집도', 정보과학회 논문지, 제26권 제9호, pp.1095-1104, 1999