[发明专利]一种面向模式的软件架构重构方法有效
申请号: | 201910254644.6 | 申请日: | 2019-03-31 |
公开(公告)号: | CN109976802B | 公开(公告)日: | 2022-08-12 |
发明(设计)人: | 李必信;苏晓威;王璐璐;孔祥龙;周颖;廖力 | 申请(专利权)人: | 东南大学 |
主分类号: | G06F8/72 | 分类号: | G06F8/72 |
代理公司: | 南京众联专利代理有限公司 32206 | 代理人: | 杜静静 |
地址: | 210096 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 面向 模式 软件 架构 方法 | ||
本发明公布了一种面向模式的软件架构重构方法,利用模式能阐述项目中特定设计情形下反复出现的问题以及提供的解决方案的特性,定位与识别软件架构图中设计缺陷的重构点,并对这些重构点进行面向模式的重构,实施重构操作,继而得到重构效果图。针对得到的重构后的架构图,计算重构后的度量指标,分析与比较重构前后的好坏,提供给项目开发人员架构建议参考,便与开发人员实施重构。模式作为长期开发过程中对最佳实践方式的总结和提炼,包含了前人的大量劳动和智慧,为软件的重构提供了良好的指导方向。
技术领域
本发明涉及一种重构方法,具体涉及一种面向模式的软件架构重构方法,属于软件工程学软件架构重构技术领域。
背景技术
软件质量是“反映实体满足明确的和隐含的需求的能力的特性的总和”,具体地说,软件质量是软件符合明确叙述的功能和性能需求、文档中明确描述的开发标准、以及所有专业开发的软件都应具有的和隐含特征相一致的程度,同时,随着软件变更,软件质量也会相应的变动。目前,软件经常面临所处环境时常变化以及需求不断变更的情况,随之而来的影响是软件规模逐渐增大,业务复杂性提高,软件质量持续走低,这些情况使得软件维护成本高昂。
重构是指能够在不改变程序外部表现的情况下,改善程序的内部表现,从而有效地改善软件质量。重构不是简单的修改代码,而是一种能够确保一致性的软件修改方式。重构技术的出现,改善了软件的设计与质量,使得软件更容易理解与维护。目前重构包括源代码重构,架构重构和需求重构等。其中,由于架构能够反映系统的蓝图,刻画系统的结构和行为,相比于其他两种重构,通过架构重构重新调整架构的结构层次和组件间依赖关系提高软件质量,能更有效提高架构的可理解性、可维护性,可扩展性等方面。
目前,软件重构包括基于不定式,基于文本等重构技术。这些技术大都对源代码进行重构点识别与定位,没有利用到架构层次的信息(如组件间依赖关系),找到重构点具有局部性,很难找到软件的设计缺陷,无法全面的提高软件质量。
发明内容
本发明的目的是提供一种能够利用模式阐述软件架构设计问题并给出相应解决方案的方法,该方法具有较高精确性的识别出软件架构的设计缺陷,依据模式的规范指导软件架构重构的方法,该发明依据开发人员对自身的架构特点了解,从模式库中选择相应的模式进行自动化重构。由于模式是从大量的实际经验中得到的结论,具有良好的重构效果,且根据不同的软件架构特性,添加了不同的模式选择进行重构,有效避免了方法不够通用的弊端。
为了实现上述目的,本发明的技术方案如下:一种面向模式的软件架构重构方法,通过模式的阐述特定问题并有效解决的特性,运用模式来指导重构,使得软件架构设计与质量得以提升;该方法包括如下步骤:
步骤1)输入软件架构图ArcGraph,并进行软件质量指标度量。
所述步骤1)
输入软件架构图ArcGraph,并对ArcGraph进行质量指标度量,具体如下,软件架构图由组件集合Comset{Com1,Com2,…,Comn}和组件间依赖集合Edgeset{Edgeij}组成,其中n为组件数量,其中Comi表示组件i,Edgeij表示组件i依赖组件j;对ArcGraph进行质量指标度量,度量结果表示为
QualifyIndexSetOld={ModifiesIndexValue,ReplaceableIndexValue,UnderstandabilityIn dexValue,TestabilityIndexValue,ExtensibilityIndexValue},即质量指标公式包括可扩展性、可替换性、易理解性、易测试性以及可修改性,由李必信,王桐,孔祥龙,张心悦在《一种基于软件架构的可演进性度量方法》,一文中提出,其公开号为:CN107368303A,公开日为:2017-11-21,度量结果表示为
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东南大学,未经东南大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910254644.6/2.html,转载请声明来源钻瓜专利网。