[发明专利]分层架构软件中代码评估方法、装置及存储介质有效
申请号: | 201810968938.0 | 申请日: | 2018-08-23 |
公开(公告)号: | CN110858141B | 公开(公告)日: | 2023-07-28 |
发明(设计)人: | 高亮;任文科;彭飞;韩捷 | 申请(专利权)人: | 西门子股份公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F8/75 |
代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 赵冬梅 |
地址: | 德国*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分层 架构 软件 代码 评估 方法 装置 存储 介质 | ||
本发明实施例中公开了一种分层架构软件中代码评估方法、装置及存储介质。其中,方法包括:获取待检测分层架构软件的包括层信息及层内组件信息的层定义信息;扫描所述待检测分层架构软件的代码,获取所述代码的包括组件信息、组件内的文件信息、以及文件内的代码度量信息的基本信息;将所述基本信息与所述层定义信息进行映射,得到所述待检测分层架构软件的每层内各组件的文件信息以及文件内的代码度量信息;根据所述每层内各组件的文件信息以及文件内的代码度量信息计算得到所述待检测分层架构软件的代码评估参数。本发明实施例中的技术方案能够获取分层架构软件的关于层的度量信息。
技术领域
本发明涉及软件评估领域,特别是一种分层架构软件中代码评估方法、装置及存储介质。
背景技术
软件在人们生活的各个方面都发挥了非常重要的作用。其中,分层架构软件是一种比较常见的软件实现。例如,包括用户界面层、应用层和数据管理层的软件等,又如包括呈现层、接口层、业务层和留存层的软件等。在每个层内又包括多个组件。不同的软件可能具有不同的分层架构,具体采用怎样的分层架构以及每层内包括哪些组件可以根据实际需要确定。但无论哪种分层架构软件,在进行代码开发时或完成代码开发之后,可能都会需要对代码进行评估,以得到关于代码的一些相关描述信息,如代码质量信息等。
发明内容
有鉴于此,本发明实施例中一方面提出了一种分层架构软件中代码评估方法,另一方面提出了一种分层架构软件中代码评估装置及存储介质,用以得到关于分层架构软件中层的相关度量信息。
本发明实施例中提出的一种分层架构软件中代码评估方法,包括:获取待检测分层架构软件的层定义信息;所述层定义信息包括所述待检测分层架构软件的分层信息及每层内所包含组件的信息;扫描所述待检测分层架构软件的代码,获取所述代码的基本信息;所述基本信息包括组件信息、组件内的文件信息、以及文件内的代码度量信息;所述代码度量信息包括代码行数和/或函数个数;将所述基本信息与所述层定义信息进行映射,得到所述待检测分层架构软件的每层内各组件的文件信息以及文件内的代码度量信息;根据所述每层内各组件的文件信息以及文件内的代码度量信息计算得到所述待检测分层架构软件的代码评估参数;所述代码评估参数包括:表征层软件规模的层厚和/或每层内的表征各组件软件规模的组件厚度。可见,本实施例中通过根据层内包括的组件确定组件内的文件信息以及各文件内的代码度量信息,进而计算得到层厚和/或层内的组件厚度,实现了待检测分层架构软件的代码评估。
在一个实施方式中,所述代码评估参数进一步包括:层复杂度和/或组件复杂度;该方法进一步包括:根据所述层厚及设定的层厚阈值确定所述待检测分层架构软件的层复杂度;和/或,根据每层内的各组件的厚度和设定的组件厚度阈值确定所述待检测分层架构软件每层内各组件的复杂度。可见,本实施例中,通过根据层厚和/或每层内的各组件的厚度进一步确定了层复杂度和/或每层内各组件的复杂度,为层重构和/或组件重构提供参考。
在一个实施方式中,所述代码评估参数进一步包括:组件的耦合度;所述代码度量信息进一步包括:圈复杂度和依赖数;该方法进一步包括:将每个组件的厚度与一设定的组件厚度阈值进行比较,在存在高于所述组件厚度阈值的组件时,将所述高于所述组件厚度阈值的组件作为待重构组件,并从所述基本信息中获取所述待重构组件内的各文件的圈复杂度和依赖数;利用所述待重构组件内各文件的圈复杂度和依赖数表征所述待重构组件的耦合度。可见,本实施例中,通过根据层厚和/或每层内的各组件的厚度进一步确定了复杂组件的耦合度,为层重构和/或组件重构提供进一步的参考。
在一个实施方式中,所述扫描待检测分层架构软件的代码,获取所述代码的基本信息包括:根据所述待检测分层架构软件的存储类型,指示对应类型的扫描器扫描所述待检测分层架构软件的代码,获取所述扫描器扫描得到的代码的基本信息。本实施例中给出了一种获取基本信息的具体实现装置,且方便实现。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西门子股份公司,未经西门子股份公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810968938.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:天然气原级标准装置用质量测定系统
- 下一篇:一种新型智能封片机