已经确定传统的度量方法缺少准确估计软件规模的三维中的两维,下一步的就是确定一种能合并所有三维的度量方法或者度量方法集合。预测性对象点,本文的主题,综合了最近文献中出现的几种度量面向对象的软件的方法。他们是所有关于软件系统面向对象分析和设计的度量方法。这些方法度量项目面向的最重要方面~开发的类,类的方法和类的方法对系统其他部分的作用。他们也联合度量拟定类结构的广度和深度。包含在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)
这是每类的方法平均数,每个方法要通过根据方法的类别,方法影响的属性数和方法提供给系统的服务数确定的复杂性不同进行加权。这是POPs 计算的核心。调查显示在决定面向对象度量方法对规模估计适合性方面有两个冲突的思想学派(记住,这个规模要联系工作量和生产力)一个是不同的对象总数(the total number of distinct objects)计算[10], [11]。另外一个用每对象类平均加权的方法数(WMC) [4], [12], [9], [16]。虽然对象数被称为一种工作量估计的好方法,但我偏好于WMC是由于以下几方面原因:
方法与行为相联系
早在分析时知道系统拟定的行为,它使得更加容易在软件生命周期早期阶段进行可信的规模估计。
WMC计算方法加强了计算过程的严密性。在POPs计算,每类的加权平均方法数体现了系统的功能和对象间通信。
平均继承树深度(DIT)
每个类要不被称为根类要不被称为派生类。那些不像根类那样,没有地方继承的类都是派生类。DIT对于一个类来说意味着它在继承树中的深度,也就是从根类到这个类的长度(层的数字),在图2中,类C的DIT是3,因为在根类A和类C 之间有三层。平均DIT和TLC、 NOC一起用来确定通过继承的重用度和整个系统的规模。
图2 继承树例子
文章来源于领测软件测试网 https://www.ltesting.net/