객체 지향 시스템에서의 클래스 응집도와 결합도 메트릭

Cohesion and Coupling Metric for Classes in Object - Oriented System

  • 발행 : 2000.06.15

초록

소프트웨어 메트릭스는 개발 과정을 평가하고, 소프트웨어 개발 노력을 측정하며 소프트웨어의 질을 효과적으로 제어할 수 있도록 한다. 더욱이 현재와 같이 재사용성이 강조되고 있는 상황에서는 재사용성을 평가하는데 중요한 역할을 하는 응집도와 결합도에 대한 연구가 반드시 필요하다고 할 수 있다. 캡슐화, 상속, 다형성과 같은 개념을 이용하는 객체 지향 방법론은 기존의 절차적 방법론과는 다른 메트릭스를 요구하는데, 이에 대한 연구가 현재 활발히 진행되고 있다. 본 논문에서는 객체 지향 시스템의 응집도와 결합도를 측정하는 메트릭스를 제안하고, 이를 Weyuker와 Briand의 복잡도 성질을 이용하여 평가하였다. 그리고 C++로 작성된 소프트웨어에 실제 적용하여 응집도와 결합도를 추출하였다.

Software metrics evaluate the development process, measure the software development effort, and control the software quality effectively. Moreover in a current status to emphasize reusability, it is necessary to study of cohesion and coupling that plays an important role in evaluating reusability. Object oriented methodology to use the concept like encapsulation, inheritance, and polymorphism demands metrics that are different from existing procedural methodology, so a study for object oriented metrics is in progress at the present time. In this paper, we propose cohesion and coupling metrics for object oriented program, evaluate the proposed metrics by using the complexity properties proposed by Weyuker and Briand, and extract cohesion and coupling from C++ code.

키워드

참고문헌

  1. W. Li, S. Henry, 'Object-Oriented Metrics That Predict Maintainability,' J. System SW, Vol 23, pp.111-122, 1993 https://doi.org/10.1016/0164-1212(93)90077-B
  2. F. B. e Abreu, R. Carapuca, 'Candidate Metrics for Object-Oriented Software within a Taxonomy Framework,' J. System SW, Vol 26, pp.87-96, 1994 https://doi.org/10.1016/0164-1212(94)90099-X
  3. V. B. Misic, S. Moser, 'Measuring Class Coupling and Cohesion : A Formal Metamodel Approach,' APSEC'97, pp.31-40, Dec., 1997 https://doi.org/10.1109/APSEC.1997.640159
  4. J. A. Lewis, 'Quantified Object-Oriented Development: Conflict and Resolution,' Proc. 4th SW Quality Conf. Vol 1, pp.220-229, 1995
  5. R. Whitty, 'Object-Oriented Metrics : A Status Report, Object Expert, pp.35-40, Jan-Feb, 1996
  6. S. R. Chidamber, C. F. Kemerer, 'A Metrics Suite for Object Oriented Design,' IEEE Tr. on SE, Vol.20, No. 6, pp.476-493, 1994 https://doi.org/10.1109/32.295895
  7. B. Henderson-Sellers, 'Identifying Internal and External Characteristics of Classes Likely to Be Useful As Structural Complexity Metrics,' Proc. 1994, Intl. Conf. OO Information Systems, OOIS'94, pp.227-230, Dec., 1994
  8. M. Hitz, B. Montazeri, 'Measuring Product Attributes of Object-Oriented Systems,' Proc. ESEC'95, pp.1-13, 1995
  9. M. Hitz, B. Montazeri, 'Measuring Coupling and Cohesion in Object-Oriented Systems,' Proc. Intl. Symp. Applied Corporating, pp.75-84, Oct., 1995
  10. B. K. Kang, J. M. Bieman, 'Cohesion and Reuse in an Object-Oriented Systems,' Proc. ACM SW Reusability Symp. SE Notes, pp.1-4, Aug., 1995 https://doi.org/10.1145/211782.211856
  11. B. Henderson-Sellers, Object-Oriented Metrics Measures of Complexity, Pretice Hall, 1996
  12. E. J. Weyuker, 'Evaluation Software Complexity Measures,' IEEE Transactions on SE, Vol.14, NO.9, pp.1357-1365, 1988 https://doi.org/10.1109/32.6178
  13. R. C. Sharble, S. S. Cohen, 'The Object-Oriented Brewery: A Comparison of Two Object-Oriented Development Methods,' ACM Sigsoft SE Notes, Vol 18, No 2, pp.60-73, Apr., 1993 https://doi.org/10.1145/159420.155839
  14. L. Briand, S. Morasca, V. R. Basili, 'Property-Based Software Engineering Measurement,' IEEE Transactions on SE, Vol.22, NO.1, pp.68-85, Jan. 1996 https://doi.org/10.1109/32.481535
  15. Sunghee Park, Pyeongsoo Mah, Gyusang Shin, 'Metrics Measuring Cohesion and Coupling to Compare Object Models,' TOOLS Pacific'97, pp.317-323, 1997
  16. 박성희, 홍의석, 이종석, 우치수, '객체 지향 개념에서의 응집도 측정을 위한 메트릭스,' 한국정보과학회 학술발표논문집(B), 제23권, 2호, pp.1503-1506, Oct., 1996
  17. 김갑수, 신영길, 우치수, '엔트로피를 이용한 객체 지향 프로그램의 복잡도 척도', 정보과학회논문지(B), 제22권, 제12호, pp1656-1666, 1995
  18. 김철진, 조은숙, 김수동, '효율적인 객체지향 설계 및 성능 측정을 위한 정적/동적 메트릭', 정보과학회논문지(B), 제25권, 제11호, pp.1657-1666, 1998