复杂性
派生类数(Number of classes inherited from (base classes))
复杂性
重用率(Reuse Ration)
品质,复杂性
表1 一些流行的面向对象度量方法
面向对象软件的度量尺度结构
传统度量方法应用于面向对象解决方案时的问题是只度量软件的一个尺度,即功能。没有度量对象与对象间通信的复杂性和通过继承的重用数量,传统功能性度量忽略了软件规模至关重要的这两个方面。功能(对象的行为)是你预测工作量时一个重要的信息,但只是考虑这个方面,在设计得比较好的面向对象方案中会明显证明是错误的。在功能之外,还有基于系统对象间通信数量的复杂水平。这种复杂性充分影响项目规模。对象间的通信增加,就需要更多的详细设计和对象测试,他们就是在增加更多的系统服务。面向对象规模的第三个尺度是通过继承的重用。部分优秀的面向对象分析员潜心识别对象(动作着),将行为足够相似的分成一个相同的类或一个相同的类族。 类是通过行为和属性进行描述,实例化就有了具体的对象。一组有许多相似行为的对象常常设计为基类(或者父类),基类包含可以供派生类(或者子类)继承的一般方法,子类也可以添加新的方法和通过重载父类方法实现父类定义的方法中没有提供的功能。 继承是面向对象软件系统一个强有力的特征,在某些软件项目,它有可能大大减少项目工作量。
度量所有的三维
已经确定传统的度量方法缺少准确估计软件规模的三维中的两维,下一步的就是确定一种能合并所有三维的度量方法或者度量方法集合。预测性对象点,本文的主题,综合了最近文献中出现的几种度量面向对象的软件的方法。他们是所有关于软件系统面向对象分析和设计的度量方法。这些方法度量项目面向的最重要方面~开发的类,类的方法和类的方法对系统其他部分的作用。他们也联合度量拟定类结构的广度和深度。包含在POPs计算的度量方法有:
顶层类数(Number of Top Level Classes TLC )
每类的加权平均方法数(Average Number of Weighted Methods per Class WMC)
平均继承树深度(Average Depth of Inheritance Tree DIT )
平均每基类的子类数(Average Number of Children per Base Class NOC)
下面接着是描述上面的每一种度量并介绍他们在POPs 度量方法中为什么重要。
顶层类数 (TLC)
这个度量是计算类图中根部的类的多少,其他所有的类都是继承他们。因为POPs计算带有预测目的,所以能分析系统的顶层信息非常重要。顶层类数和NOC、DIT能提供估计面向对象系统广度和深度的计算基础。这就添加了通过继承重用的度量维到POPs计算。
每类的加权平均方法数(WMC)
文章来源于领测软件测试网 https://www.ltesting.net/