首页> 中文学位 >大规模软件系统结构合理性的网络分析方法研究
【6h】

大规模软件系统结构合理性的网络分析方法研究

代理获取

目录

声明

致谢

摘要

1 引言

1.1 研究背景

1.2 目的及意义

1.3 研究现状

1.3.1 软件质量评估

1.3.2 社团结构挖掘

1.3.3 基于调用图分析的软件评估

1.4 研究内容

1.5 论文组织结构

2 相关理论及统计方法

2.1 复杂网络

2.1.1 基本概念及认识

2.1.2 网络拓扑结构的特征指标

2.2 基于拓扑结构的社区发现

2.2.1 社区现象

2.2.2 社团挖掘方法

2.2.3 Infomap社区划分算法

2.2.4 社区结构相似度指标

3 基于社团结构的软件质量评价指标

3.1 研究方案概述

3.2 数据采集

3.2.1 开源软件产品或应用的选择

3.2.2 数据预处理

3.3.3 数据集介绍

3.3 构建基于源码的函数调用网络

3.4 主要指标及其计算结果

3.4.1 指标字段及其取值类型

3.4.1 拓扑结构特征指标

3.4.2 相似度指标

3.5 小结

4 实验及结果分析

4.1 软件综合评分方法

4.2 评分与指标相关性

4.2.1 NMI、RI和ARI指标的相关性

4.2.2 各种指标与软件综合得分的相关性

4.3 评分与指标的Pearson相关系数

4.3.1 样本(单变量)分布类型检验

4.3.2 样本均值和标准差

4.3.3 Pearson相关系数及其显著性水平

4.4 结果分析

5 总结及展望

5.1 本文工作总结

5.2 研究展望

参考文献

作者简历及攻读硕士学位期间取得的研究成果

学位论文数据集

展开▼

摘要

对于大规模软件系统,迭代开发过程中各种因素不断发生变化,比如开发人员变更、需求变更、系统升级等,都会引起源代码、数量、质量以及系统模块结构产生变化。因此,如何衡量和确保软件源码的质量,成为软件开发人员必须面对的问题。尤其是对于大规模软件系统,其源码的结构合理性,更是直接决定了软件系统是否能够安全高效地运行。
  本文将从复杂网络的角度来研究软件系统的结构合理性问题,以此衡量大规模软件系统的源码质量。我们研究方案及实验主要分为三个步骤:
  1)将大规模软件系统的源码抽象成为一个复杂网络;
  2)设计并计算各类基于复杂网络的软件质量评价指标;
  3)设计软件质量的客观评分标准,验证各类复杂网络指标的合理性。
  首先,我们将大型复杂软件系统的源代码抽象成基于拓扑结构的复杂网络,以函数作为网络节点,函数间调用关系作为网络中的边。由于软件的迭代开发过程中,每个函数都会处于某一个功能模块中,因此我们将软件源码的这种自然功能模块划分作为软件复杂网络的原始社团结构。
  然后,我们计算各类基于拓扑结构的网络特征指标,主要包括两类:第一类是简单网络指标,比如平均聚类系数、平均路径长度、平均度、模块度、网络直径等;第二类,我们基于复杂网络社团结构,提出一种基于社团发现的网络指标,通过比较社团发现算法得到的社区结构与软件复杂网络原始社团结构的相似度(利用NMI、RI等指标)来确定软件结构的合理性。
  最后,利用采集开源网站上公开发布的大型软件系统源码作为我们的实验数据集。为了客观地反映开源软件的质量,我们基于软件的用户评论、评分和下载量,设计了一个综合客观评分标准,并通过一系列实验来验证软件综合评分与各类软件质量评价指标之间的相关性,从而验证各类软件质量评价指标的合理性。实验结果表明,本文提出的基于复杂网络社团结构的软件结构合理性评价指标,明显优于其他各类已有的软件质量评价指标。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号