C++模板template使用总结与规模度量规则解析

需积分: 50 35 下载量 197 浏览量 更新于2024-08-09 收藏 2.05MB PDF 举报
"COSMIC功能规模度量方法4.0.1版度量手册" COSMIC(CompositeSoftwareMetricsInternationalCommittee,通用软件度量国际联盟)是一种用于规模度量的标准化方法,常用于CMMI5级别的软件开发过程中。本摘要主要关注C++模板template的使用以及与规模度量相关的规则。 C++模板template是C++中的一个重要特性,它允许程序员创建泛型代码,即可以处理多种数据类型的函数或类。模板可以提高代码的复用性,减少代码重复,同时保持高效运行。使用模板的关键在于定义模板时的参数化,这些参数在实例化时会被具体的数据类型替换。例如,你可以定义一个模板函数`template<typename T> void swap(T& a, T& b)`,该函数可以交换任何类型的数据。 在COSMIC规模度量中,汇总度量结果是一个关键步骤,目的是计算软件功能的规模。规则a)表明,每个功能处理的规模是通过累加其输入、输出、读取和写入数据移动的规模来确定的,单位是CFP(CompositeFunctionPoint)。规则b)则解释了如何度量功能处理中的变更规模,包括增加、修改和删除的数据移动。 规则c)和d)指出,软件块的规模是其包含的功能处理规模的总和,而软件块的变更规模是所有功能处理变更规模的总和。这需要在相同的功能处理颗粒度级别上进行度量,遵循规则e),只有当度量有意义时,不同层或同层的规模才能累加,如规则f)所述。 规则g)进一步说明,软件块的规模不包括构件间的数据移动规模,并且对于发送给人类用户的错误/确认消息,只视为一个输出。此外,如果进行了COSMIC方法的本地化扩展,其度量规模应独立报告,不能与标准方法的结果相加,以避免混淆。 案例1展示了如何根据规则b)和c)计算变更规模。案例2讨论了在不同项目子团队使用不同技术开发的软件部分之间累加规模可能没有实际意义的情况。案例3则阐述了如何处理内部构件交互规模以及本地化方法与原版方法的规模累加问题。 总结来说,C++模板是C++编程中的一个重要工具,而COSMIC功能规模度量方法提供了一套规则来系统地计算软件的规模,这对于理解和评估软件项目的工作量、成本和进度具有重要意义。在进行规模度量时,必须严格遵循这些规则,确保度量的准确性和一致性。