首页 | 官方网站   微博 | 高级检索  
相似文献
 共查询到17条相似文献,搜索用时 109 毫秒
1.
本文首先介绍了面向对象软件的特征,然后具体分析了C&K度量法,着重分析了其中与类继承相关的继承树深度(DIT)和孩子数目(NOC)度量准则。在此基础上,通过分析超类与其子类中元素(方法和属性)的继承关系,提出了基于继承的内聚度度量方法,从而克服了C&K度量法中对类继承性、多态性方面度量的不足,为综合评价类的内聚度度提供了指南。  相似文献   

2.
状态依赖的类内聚度量   总被引:1,自引:0,他引:1  
类是面向对象软件中的模块,包含属性和方法。类内聚度量是对类属性和方法相关程度的度量。通过对类方法和属性的分类及其与类状态之间的关系分析,提出了类核的概念和状态依赖的类内聚度量方法。该方法有利于克服类内聚度量复杂性和判断模糊性问题,并可以在设计阶段对类的内聚进行度量。  相似文献   

3.
一种基于依赖性分析的类内聚度度量方法   总被引:8,自引:2,他引:8  
陈振强  徐宝文 《软件学报》2003,14(11):1849-1856
内聚度是指模块内各成分之间的联结强度.在面向对象程序中,内聚度主要是指类内部各成分之间的联结强度.在深入剖析了类的属性与属性、方法与属性以及方法与方法之间的关系及其性质的基础上,提出了一种基于依赖性分析的内聚度度量方法,并证明了它满足优良的内聚度度量方法应该具有的性质,从而克服了已有方法只是分析了某个方面的不足,为综合评价类内聚度提供了指南。  相似文献   

4.
周晓聪  赖蔚  温剑丰 《软件学报》2018,29(10):3051-3067
度量数据的分布信息对于理解和使用面向对象软件度量有重要意义.人们对面向对象软件规模度量、耦合度度量乃至继承维度的度量数据的分布都有研究,但对除内聚度缺乏度LCOM之外的内聚度度量数据的分布却缺乏研究.已有的实证研究表明,LCOM并不是好的内聚度度量,因此探讨其他内聚度度量数据分布很有必要.对包括内聚度缺乏度、基于连通性的内聚度度量和基于相似性的内聚度度量总共17个度量指标在112个Java开源软件项目的分布情况进行实证研究,对每个度量指标的每个项目数据使用幂律分布和对数正态分布进行拟合,并使用荟萃分析方法对拟合结果进行了分析.实证研究结果表明,非规范化的内聚度量可使用对数正态分布和幂律分布拟合,但规范化的基于相似性的内聚度量(包括CC、LSCC、SCOM和SCC)需要排除方法数小于等于1或字段数为0的特殊类才能使用对数正态分布拟合,而基于连通性的内聚度度量(包括TCC、LCC、DCD和DCI)则只有对应的非规范化版本的数据才符合对数正态分布或幂律分布.实证研究可帮助人们更好地理解和使用内聚度度量,特别是可以帮助人们如何利用已有的方法确定内聚度度量的阈值.  相似文献   

5.
齐晶晶  郭跟成 《计算机应用》2006,26(5):1183-1185
本文主要是以一种有向带权类依赖图作为面向对象系统的UML类图的抽象表示,结合信息熵技术针对软件构件进行内聚耦合性及独立性度量。通过实验表明,该方法是一种较准确的软件构件度量方法,为权衡构件的设计质量提供了可靠的数据。  相似文献   

6.
首先结合面向对象技术特性,对面向对象软件类级别的CK度量方法和系统级别的MOOD度量方法进行了分析,并就CK度量提出了优化的度量方法OCK。然后结合OCK度量和MOOD度量的优点提出了较优化的面向对象软件复杂性度量方法OSCM。OSCM度量可以有效地弥补CK度量和MOOD度量的不足,优化度量结果。  相似文献   

7.
一种面向对象继承复杂性的综合度量   总被引:2,自引:1,他引:1       下载免费PDF全文
通过对面向对象系统和当前存在的面向对象度量方法进行分析,提取出与面向对象继承复杂性度量相关的量度。修改并整合这些量度,提出了一种类级继承复杂性和系统级继承复杂性度量方法。经过修改后得出反映继承复杂性的量度有:继承成员个数(NIM)、覆盖成员个数(NOM)、成员名重复数(NRN)、继承路径长度(LIP)、访问方式改变数(NMA)。由此,通过整合可以得到对类级继承复杂性和系统级继承复杂性度量方法。最后,通过与其他度量方法进行比较,说明了该方法对面向对象继承复杂性的度量更为适合。  相似文献   

8.
一个面向对象软件度量工具的实现和度量实验研究   总被引:26,自引:0,他引:26  
李心科  刘宗田  潘飚  邢大红 《计算机学报》2000,23(11):1220-1225
介绍了面向对象软件C&K度量学理论与方法,结合C++语言的特征,分析了C&K度量指标存在的缺点,提出了改进方法.然后描述了作者开发的基于改进C&K度量学理论与方法的针对C++的软件度量工具SMTCPP,该工具使用LL(1)分析法对源程序进行语法分析,从而提取程序中有关类、类成员、成员函数、对象等信息,计算出类的方法数、方法最大复杂度、继承树深度、子类数目、耦合度、响应集、相对内聚缺乏度等指标,以指导软件开发过程.这些度量结果还可以存放在数据库中,以便为建立软件质量评价模型收集充足的数据.论文最后对采用SMTCPP所做的3个实用软件度量实验结果进行了分析,表明了SMTCPP的实用性.  相似文献   

9.
面向对象软件度量学的研究   总被引:1,自引:0,他引:1  
姚珺 《福建电脑》2005,(12):25-26,17
软件度量学是软件工程领域的一个重要研究方向。通过软件度量,可以降低软件开发的成本,提高软件开发的效率,保证软件能满足用户的需求,开发出高质量的软件。本文分析了面向对象软件度量的特点,在著名的C&K度量方法及其它度量方法的基础上,着重阐述了针对各种不同层次的面向对象的软件度量,包括面向OO项目的度量、面向OO系统的度量、面向类继承树的度量、面向类层的度量、面向方法(操作)的度量。  相似文献   

10.
分析了面向对象软件度量学C&K方法,并结合面向对象技术的特性,对C&K方法的固有缺陷和不足进行了分析.对C&K方法在类的耦合性度量这个度量指标上进行改进,改进后的度量指标可以有效地补充C&K方法,优化度量结果.  相似文献   

11.
A Unified Framework for Cohesion Measurement in Object-Oriented Systems   总被引:5,自引:2,他引:5  
The increasing importance being placed on software measurement has led to an increased amount of research developing new software measures. Given the importance of object-oriented development techniques, one specific area where this has occurred is cohesion measurement in object-oriented systems. However, despite a very interesting body of work, there is little understanding of the motivation and empirical hypotheses behind many of these new measures. It is often difficult to determine how such measures relate to one another and for which application they can be used. As a consequence, it is very difficult for practitioners and researchers to obtain a clear picture of the state-of-the-art in order to select or define cohesion measures for object-oriented systems. This situation is addressed and clarified through several different activities. First, a standardized terminology and formalism for expressing measures is provided which ensures that all measures using it are expressed in a fully consistent and operational manner. Second, to provide a structured synthesis, a review of the existing approaches to measure cohesion in object-oriented systems takes place. Third, a unified framework, based on the issues discovered in the review, is provided and all existing measures are then classified according to this framework. Finally, a review of the empirical validation work concerning existing cohesion measures is provided. This paper contributes to an increased understanding of the state-of-the-art: a mechanism is provided for comparing measures and their potential use, integrating existing measures which examine the same concepts in different ways, and facilitating more rigorous decision making regarding the definition of new measures and the selection of existing measures for a specific goal of measurement. In addition, our review of the state-of-the-art highlights several important issues: (i) many measures are not defined in a fully operational form, (ii) relatively few of them are based on explicit empirical models as recommended by measurement theory, and (iii) an even smaller number of measures have been empirically validated; thus, the usefulness of many measures has yet to be demonstrated.  相似文献   

12.
Cohesion refers to the degree of the relatedness of the members in a class and several cohesion measures have been proposed to quantify the cohesiveness of classes in an object-oriented program. However, the existing cohesion measures do not differentiate write interactions from read interactions between class members, thus, do not properly reflect the cohesiveness of the class. This paper presents the revised versions of the existing five cohesion measures by considering the impact of write interactions between class members. In addition, we prove that the revised measures can be reduced into the original ones. To demonstrate the importance of write interactions, we have developed tools for automatic computation of the original and the revised cohesion measures and performed a case study where we found that write interactions are so commonly used in classes that they have much influence on cohesion measurement and the revised measures have stronger relations with change-proneness of classes than the original ones.  相似文献   

13.
The metrics suite for object-oriented design put forward by Chidamber and Kemerer (1994) is partly evaluated by applying principles of measurement theory. Using the object coupling measure (CBO) as an example, it is shown that failing to establish a sound empirical relation system can lead to deficiencies of software metrics. Similarly, for the object-oriented cohesion measure (LCOM) it is pointed out that the issue of empirically testing the representation condition must not be ignored, even if other validation principles are carefully obeyed. As a by-product, an alternative formulation for LCOM is proposed  相似文献   

14.
软件度量是保证软件质量的重要方法,该文主要针对面向对象软件经过分析度量后得出结果进行分析与评价,分析与评价主要基于面向对象程序中类的耦合度、内聚度、继承性、复杂度等进行展开,从数学的角度来分析度量指标的可信度,以保证从整体上把握面向对象软件产品的质量。  相似文献   

15.
ContextClass cohesion is an important object-oriented software quality attribute. Assessing class cohesion during the object-oriented design phase is one important way to obtain more comprehensible and maintainable software. In practice, assessing and controlling cohesion in large systems implies measuring it automatically. One issue with the few existing cohesion metrics targeted at the high-level design phase is that they are not based on realistic assumptions and do not fulfill expected mathematical properties.ObjectiveThis paper proposes a High-Level Design (HLD) class cohesion metric, which is based on realistic assumptions, complies with expected mathematical properties, and can be used to automatically assess design quality at early stages using UML diagrams.MethodThe notion of similarity between pairs of methods and pairs of attribute types in a class is introduced and used as a basis to introduce a novel high-level design class cohesion metric. The metric considers method–method, attribute–attribute, and attribute–method direct and transitive interactions. We validate this Similarity-based Class Cohesion (SCC) metric theoretically and empirically. The former includes a careful study of the mathematical properties of the metric whereas the latter investigates, using four open source software systems and 10 cohesion metrics, whether SCC is based on realistic assumptions and whether it better explains the presence of faults, from a statistical standpoint, than other comparable cohesion metrics, considered individually or in combination.ResultsResults confirm that SCC is based on clearly justified theoretical principles, relies on realistic assumptions, and is an early indicator of quality (fault occurrences).ConclusionIt is concluded that SCC is both theoretically valid and supported by empirical evidence. It is a better alternative to measure class cohesion than existing HLD class cohesion metrics.  相似文献   

16.
主要是以一种带权类依赖图作为面向对象系统的UML类图的抽象表示,其中类依赖图的各边上权值对应于类图中的相应关系。针对带权类依赖图运用代数图论中图的Laplace谱的连通特性以迭代分割的方式对其进行划分,得到所需开发的系统构件。通过实验表明,该方法是一种有效的面向对象软件系统分解方法,并且分解所得到的构件具有较高的内聚性。  相似文献   

17.
Software metrics help us to make meaningful estimates for software products and guide us in taking managerial and technical decisions. However, conventional static metrics have been found to be inadequate for modern object-oriented software due to the presence of object-oriented features such as polymorphism, dynamic binding, inheritance and unused code. This fact motivates us to focus on dynamic metrics in place of traditional static metrics. Moreover, dynamic metrics are more precise than static metrics as they are able to capture the dynamic behaviour of the software system during measurement. These dynamic metrics are usually obtained from the execution traces of the code or from the executable models. In this paper, advantages of dynamic metrics over static metrics are discussed and then a survey of the existing dynamic metrics is carried out. These metrics are characterized into different categories such as dynamic coupling metrics, dynamic cohesion metrics. Towards end of the paper, potential research challenges and opportunities in the field of dynamic metrics are identified.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司    京ICP备09084417号-23

京公网安备 11010802026262号