Page 92 - 《软件学报》2020年第10期
P. 92
3068 Journal of Software 软件学报 Vol.31, No.10, October 2020
累加所有风险的影响因子累计值得到总的可靠性评分,为保证最后的计算分值在区间[0,P max ]内,添加正则项
P
max . 显然,当捕获到负面事件时,根据公式(6)计算得到的结果将小于 P max ,且最终分值与捕获到负面事件的数
N
量呈负相关.结合第 3.3.1 节更新途径 4 所描述的更新规则,监控任务捕获到的面向不同风险类型的事件,最终会
对软件的可靠性评分产生正面或者负面的影响.
Fig.7 The flow diagram for extracting events
图 7 事件提取流程
3.4 基于可靠供应链构建操作系统
虽然以 LFS 和 Yocto 为代表的面向操作系统构建的开源项目,已经在一定程度上满足了用户构建定制化操
作系统的需求,但仍然存在很多不足和需要改进的地方,尤其是在软件生态可靠性方面.为解决可靠性问题,我
们提出一种基于开源软件供应链实现的构建方法 [22] ,该方法使用本文提出的开源软件供应链替换现有构建工
具中软件依赖关系管理方法.具体地,开源软件供应链主要有以下贡献.
• 降低学习门槛:开源软件供应链管理系统维护了软件之间的供应关系,包括不同软件之间的供应关系,以
及从上游源码到具体打包格式的供应关系.通过系统提供的检索功能,用户可以轻松获取供应关系信息,不再需
要构建人员花费大量精力去记忆这些信息,进而能够保证用户快速、准确、高效地完成工作;
• 降低维护成本:开源软件供应链管理系统能够以图形化的方式展示供应链信息,帮助用户更直观地管理
供应关系,提升工作效率;
• 提升生态可靠性:开源软件供应链管理系统通过内部实现的可靠性风险管理相关机制,为用户提供识别、
评估、处理和监控可靠性风险的功能,有效降低目标构建系统软件生态的可靠性风险,提升可靠性.
4 实验验证及结果
4.1 系统实现
基于图 1 所示的系统架构图,我们将系统按照功能组件进行拆分并分别实现,本节将从中挑出一些重要的
实现细节加以描述.为了便于管理和维护,各组件以容器的形式部署在 Kubernetes 集群上,我们使用 4 台配置相
同的服务器搭建该集群,单台服务器的配置见表 4.
Table 4 Hardware configuration
表 4 硬件配置
CPU E5 2690 V4(2×28 线程) 2.6 GHz
内存 128GB
磁盘 38.3TB