摘要
软件供应链的使用始终穿插在软件系统研发过程当中,近年来关于软件供应链的安全事件频发,软件供应链安全已然成为了一个全球性问题.软件可维护性作为软件质量的重要属性之一,反映了软件维护活动的难易程度.软件供应链的开源趋势逐渐流行,但对开源软件供应链的可维护性研究还处于起步阶段.基于以上考虑,本文结合传统软件维护性风险研究方法,探究了开源软件维护性风险特有的分析视角,并提出了一个开源软件供应链维护性质量模型.该模型通过16种度量指标分别对团队健康、软件活跃度、依赖影响力、测试完整度、外部依赖度和可理解性等9种软件属性类进行度量以反映开源软件供应链的可维护性.同时基于GitHub托管平台和npm (Node.js标准的软件包管理器)子生态数据(包括软件信息、依赖关系、各个软件在开发过程中产生的行为数据等),对同一时间内不同软件的可维护性指标进行对比计算,验证了本文所提出方法的合理性.因此,使用本文所提出的可维护性质量模型可以有效地对开源软件供应链进行可维护性评估,帮助和指导软件的设计与重构,进而开发出更高质量的软件系统.
- 单位