Abstract

为了一致而高效地计算包内聚性,许多研究者提出了大量的包内聚性度量方法.然而,这些方法主要依赖于包内部的数据流关系,常导致度量结果与实际开发经验相悖.为了解决这一问题,首先以包的职责为基础将包划分为4类.然后,提出了共同重用内聚CRC,并根据包的分类框架讨论了CRC的适用性.CRC的核心思想是若多个类总被共同重用,则它们之间存在紧密耦合.最后,提出了度量CRC的海明内聚度HC.与现有方法相比,HC同时考虑了包内和包间的数据依赖.因而,该方法能够有效地反映包内部类间的语义关系.此外,HC利用包的使用模式提高了度量结果的可区分性.实验研究表明HC能够有效评估包的内聚程度.充分说明了作为HC基础的CRC具有较高的合理性.;A number of package cohesion metrics have been proposed in the last decade, but they mainly converge on intra-package data dependencies between classes, which are inadequate to represent the semantics of packages in many cases. To address this problem, the authors first classify packages into four categories in terms of the kinds of their tasks. Next, a new package cohesion called CRC based on client usages is proposed by considering the fact that several classes are closely related if they are always reused together. And then the application areas of CRC in terms of the package classification framework are analyzed. Finally, a CRC measure called HC is presented. Compared to existing package cohesion metrics, HC considers not only intra-package but also inter-package data dependencies. It is hence able to reveal semantic relationships between classes. Furthermore, HC takes into account how the clients of a package use the package, thereby providing a finer-grain evaluation of the cohesion of a package. Experimental results demonstrates the effectiveness of HC, which likewise proves the feasibility of CRC.

Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.