面向对象软件度量的方法及自动化度量工具的研究.docVIP

面向对象软件度量的方法及自动化度量工具的研究.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面向对象软件度量的方法及自动化度量工具的研究

面向对象软件度量的方法及自动化度量工具的研究   摘要:度量技术是保证软件质量的重要手段,它定量地反映了软件某一方面的特征。随着面向对象技术的发展,传统的结构化度量不再适合面向对象的软件,面向对象度量是对象技术不可分割的一部分,基于对象技术的软件度量成为必然的需求,从而面向对象软件设计度量的研究与实现是文章研究的内容。文章在现有度量公式的基础上,利用正则表达式,可以简单度量出Java源代码的复杂度属性。   关键词:软件度量;面向对象;度量工具   中图分类号:TP311.5   文献标识码:A   文章编号:1006-8937(2009)16-0116-02      1 软件度量的背景和意义      软件度量(software measurement)是对软件开发项目、过程及其产品进行数据定义、收集以及分析的持续性定量化过程,目的在于对此加以理解、预测、评估、控制和改善。没有软件度量,就不能从软件开发的暗箱中跳将出来。通过软件度量可以改进软件开发过程,促进项目成功,提高软件质量。   随着面向对象开发方法和面向对象设计语言的广泛使用,用户采用面向对象技术开发的软件系统和产品日益增多,有关面向对象软件度量的研究也受到软件界的重视,面向对象技术采用数据抽象、封装、继承、多态性、信息隐藏、重用机制等。为提高软件的可重用性,增强可维护性、可靠性,提高生产效率等方面提供了可能。      2 面对对象软件度量       2.1 度量的定义   度量(Metrics)的定义是:“度量是一个函数,它的输入是软件数据,输出是单一的数值,能用以解释软件所具有的一个给定属性对软件质量影响的程度。”软件质量度量是对影响软件质量的属性所进行的定量测量。   人们已经提出的软件度量包括软件复杂性度量、模块性度量、可修改性度量、可移植性度量、可扩充性度量、可靠性度量、可维护性度量等等。尽管在IEEE的定义中,“软件数据”没明确提出,但如果评测一个软件产品,则这个被评测的产品就是输入的软件数据,这些软件数据均可以形式地予以定义。      2.2 面向对象软件度量模型   传统的非面向对象的软件度量较多的关心软件复杂度的度量。通过软件复杂性折射软件的质量。面向对象的方法学的出现带来了软件开发的革命,也带来了面向对象软件度量的革命。针对面向对象的软件生命周期和质量保证,F.B.Abem非形式的提出了七条标准:①度量应该形式化定义;②度量应该与系统大小无关;③度量应该选择合适的刻度类型;④度量应该在生命周期的早期就可用;⑤度量应该具有可扩展性;⑥度量应该易于计算;⑦度量应该独立于语言。   Abreu的七条标准对开发针对面向对象的度量具有一定的意义。近几年来涌现了大量面向对象的软件度量模型,比较有影响的如:C&K度量集,MOOD度量集,MOOD2度量集等。      3 Java软件的度量工具的设计思想与开发      3.1 Java软件度量工具(Metric Tool)的设计   所谓Java软件的质量度量,就是对Java程序源代码进行分析度量。Java软件的度量工具设计的总体思路将遵从面向对象设计的基本原则,如图1。   文章设计的软件度量工具是一个基于CK和MOOD理论的度量工具,该工具可以运行在Windows XP上,其主要功能就是通过对用户Java源程序的扫描,计算出CK度量指标:方法数、继承类的总数,接口总数,继承树深度(DIT)、孩子数目(NOC)、每个类的加权方法(WMC);MOOD度量指标:方法继承因子(MIF)、多态因子(PF)。通过所该工具得到的度量数据,可以帮助开发人员及时地了解程序的复杂性,估计出程序的稳定性及可维护性,指导测试人员进行有效的测试。      3.2 实现功能模块的简述   查看度量结果有两个入口,首先是本地工程度量,其次是历史工程查看。   3.2.1 本地工程度量(XML信息库的创建)   由于我们设计的度量工具以xml作为信息库,因此度量某工程首先必须把需要度量的信息存入xml信息库中,实现的步骤如下:   ①选择工程目录,遍历整个工程目录,提取出.java的文件名。②得到的.java的输出流(BufferedReader),将其传人语法分析器中,返回List集合类,该集合存放着XClass对象。由从该XClass对象中可以提取出这个类的继承类、实现的接口、方法个数、方法名称、变量个数及名称、子类的个数、继承数的深度等信息。③将得到的XClass传入XML创建类(XmlFileCreate)中,该类通过传入的信息返回要一定格式的Document,通过idom来构建xml信息库。JDOM是一个开源项目,它基于树型结构,利用纯JAVA的技术对

文档评论(0)

151****1926 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档