基于软件开发过程的软件度量方法、系统及电子设备技术方案

技术编号:20797731 阅读:38 留言:0更新日期:2019-04-06 11:21
本发明专利技术提供一种基于软件开发过程的软件度量方法、系统及电子设备,所述系统包括:数据采集模块,用于获取软件各维度的数据,作为基本度量元;预处理模块,用于将选取的部分基本度量元转换成派生度量元;软件度量模块,用于根据预设的软件度量模型对输入的所述基本度量元和所述派生度量元进行处理,获取软件质量指数、用户活性指数、团队活性指数及健康状态感知指数等。本发明专利技术从用户活性、团队活性、软件质量等维度对开源项目进行了全面、准确的刻画,生成了基于软件开发过程的软件度量模型,使用该软件度量模型,可以快速计算出开源项目的用户活性指数、团队活性指数、软件质量指数及健康状态感知指数等,帮助软件团队客观了解软件状况,及时发现问题。

Software Metrics, Systems and Electronic Equipment Based on Software Development Process

The present invention provides a software metrics method, system and electronic equipment based on software development process, which includes: data acquisition module for acquiring data from various dimensions of software as basic metrics elements; pre-processing module for converting selected basic metrics elements into derived metrics elements; and software metrics module for transporting data according to the preset software metrics model. The basic and derived metrics are processed to obtain software quality index, user activity index, team activity index and health status perception index. The invention describes the open source project comprehensively and accurately from the dimensions of user activity, team activity and software quality, and generates a software measurement model based on software development process. Using the software measurement model, the user activity index, team activity index, software quality index and health status perception index of open source project can be quickly calculated, which helps software teams. Objectively understand the status of software and find problems in time.

【技术实现步骤摘要】
基于软件开发过程的软件度量方法、系统及电子设备
本专利技术涉及数据挖掘
,特别是涉及一种基于软件开发过程的软件度量方法、系统及电子设备。
技术介绍
主成分分析(PrincipalComponentAnalysis,简称PCA),是考察多个变量间相关性一种多元统计方法,研究如何通过少数几个主成分来揭示多个变量间的内部结构,即从原始变量中导出少数几个主成分,使它们尽可能多地保留原始变量的信息,且彼此间互不相关。通常数学上的处理就是将原来多个指标作线性组合,作为新的综合指标。爬虫技术是一种“自动化浏览网络”的程序,它按照一定的规则,自动在万维网上抓取用户需要的信息。随着互联网的发展,网络成为大量信息的载体。爬虫技术也成为数据采集的重要组成部分,是大数据分析中最为基础的一步。除了网络爬虫,众多平台也开放了自己的数据接口,方便开发者接入,如Github、微博等。在互联网+时代,开源软件开发以其免费、开放源码、过程透明、无使用限制等特征获得巨大成功,开源软件的定义、设计、开发和使用过程由众多专业的自愿者以社会化的群体并行开发的基本方式完成。与此同时,开源社区如Github等由于托管了大量优本文档来自技高网...

【技术保护点】
1.一种基于软件开发过程的软件度量系统,其特征在于,所述基于软件开发过程的软件度量系统包括:数据采集模块,用于获取软件各维度的数据,作为基本度量元;预处理模块,用于将选取的部分基本度量元转换成派生度量元;软件度量模块,用于根据预设的软件度量模型对输入的所述基本度量元和所述派生度量元进行处理,获取软件质量指数、用户活性指数、团队活性指数及健康状态感知指数。

【技术特征摘要】
1.一种基于软件开发过程的软件度量系统,其特征在于,所述基于软件开发过程的软件度量系统包括:数据采集模块,用于获取软件各维度的数据,作为基本度量元;预处理模块,用于将选取的部分基本度量元转换成派生度量元;软件度量模块,用于根据预设的软件度量模型对输入的所述基本度量元和所述派生度量元进行处理,获取软件质量指数、用户活性指数、团队活性指数及健康状态感知指数。2.根据权利要求1所述的基于软件开发过程的软件度量系统,其特征在于,所述基于软件开发过程的软件度量系统还包括:训练数据获取模块,用于根据过滤条件获取开源软件数据;相关性分析模块,用于基于所述开源软件数据,对派生度量元和基本度量元进行两两相关性分析,并根据相关性分析结果将各所述度量元映射到用户活性维度、团队活性维度、软件质量维度;主成分分析模块,分别对所述用户活性维度、所述团队活性维度、所述软件质量维度的度量元做主成分分析,获取用户活性指数、团队活性指数和软件质量指数的计算公式;软件度量模型生成模块,基于所述用户活性指数、团队活性指数和软件质量指数的计算公式生成所述软件度量模型。3.根据权利要求2所述的基于软件开发过程的软件度量系统,其特征在于,所述主成分分析模块包括:用户活性指数单元,对所述用户活性维度相关的度量元进行主成分分析获取用户活性主成分构成,并获取用户活性主成分的权重系数,根据所述用户活性主成分和所述用户活性主成分的权重系数获取所述用户活性指数的计算公式;团队活性指数单元,对所述团队活性维度相关的度量元进行主成分分析获取团队活性主成分构成,并获取团队活性主成分的权重系数,根据所述团队活性主成分和所述团队活性主成分的权重系数获取所述团队活性指数的计算公式;软件质量指数单元,对所述软件质量维度相关的度量元进行主成分分析,获取软件质量主成分构成,并获取所述软件质量主成分的权重系数,根据所述软件质量主成分和所述软件质量主成分的权重系数获取所述软件质量指数。4.根据权利要求3所述的基于软件开发过程的软件度量系统,其特征在于,所述用户活性主成分为用户活性,所述用户活性主成分的权重系数为1,所述用户活性指数的计算公式为:fuv=xuv1;其中,fuv为用户活性指数,xuv1为用户活性。5.根据权利要求3所述的基于软件开发过程的软件度量系统,其特征在于:所述团队活性主成分包括代码协作效率、团队开发心跳、团队代码变化速度;其中,所述代码协作效率由三个度量元构成:平均请求合并速度、平均合并速度、贡献者人数;所述团队开发心跳由两个度量元构成:发布心跳和内部开发速度;所述团队代码变化速度由两个度量元构成:代码变化速度和平均提交速度;团队活性指数ftv的计算公式如下:其中:xtv1、xtv2、xtv3分别为代码协作效率、团队开发心跳、团队代码变化速度;wtv1、wtv2、wtv3分别为代码协作效率的权重系数、团队开发心跳的权重系数、团队代码变化速度的权重系数。6.根据权利要求3所述的基于软件开发过程的软件度量系统,其特征在于,所述软件质量主成分包括:代码规模及质量、软件可靠性及社区维护能力、软件运维能力;其中,所述代码规模及质量由两个度量元构成:代码行数和千行误码率;所述软件可靠性及社区维护能力由两个度量元构成:缺陷关闭速度和问题评论热度;所述软件运维能力由缺陷关闭率构成;软件质量指数fsq的计算公式如下:其中:xsq1、xsq2、xsq3分别为代码规模及质量、软件可靠性及社区维护能力、软件运维能力;wsq1、wsq2、wsq3分别为代码规模及质量的权重系数、软件可靠性及社区维护能力的权重系数、软件运维能力的权重系数。7.根据权利要求2至6任一权利要求所述的基于软件开发过程的软件度量系统,其特征在于,所述软件度量模型包括:用户活性指数的计算公式、团队活性指数的计算公式和软件质量指数的计算公式;基于用户活性指数、团队活性指数、软件质量指数的健康状态感知指数计算公式。8.根据权利要求1所述的基于软件开发过程的软件度量系统,其特征在于,所述数据采集模块通过网络爬虫方法和存储库API方法从软件存储库中获取所述软件各维度的数据。9.一种基于软件开发过程的软件度量方法,其特征在于,所述基于软件开发过程的软件度量方法包括:获取软件各维度的数...

【专利技术属性】
技术研发人员:宁德军王煜
申请(专利权)人:中国科学院上海高等研究院
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1