Page 89 - 《软件学报》2020年第10期
P. 89

梁冠宇  等:面向操作系统可靠性保障的开源软件供应链                                                       3065


             基于开源图谱和度量模型,我们设计并实现了图 5 所描述的数据流程,以得到对软件的可靠性评分.在目前
         的系统中,将可靠性评分限定在 0~5 分,以小数表示中间分值,并保留小数点后两位,如 3.47.可靠性评分的计算过
         程如下:
                                                 P =  f  ()e                                  (1)
                                         P =  similar (attr ,cluster ( ))G                    (2)
                                          init
                                                     i ∑  n ap
                                                P =   i  i                                    (3)
                                                     n
                                                  P +  P
                                              P =  old  updated                               (4)
                                               new
                                                      2
































                       Fig.5    The data flow diagram for generating evaluation of software’s reliability
                                          图 5   可靠性评分数据流图

              (1)  更新途径 1 如公式(1)所示,e 表示通过从互联网上抽取相关事件信息,包括软件直接相关的信息(如明
         确表示了限制使用或不再维护,或者在事实上已经处于无人维护的状态)、软件归属国籍的政治因素(如存在出
         口管制,明确限制某些国家的组织或个人使用,或者明确限制某些用途)等,f 表示具体的分值计算方法,因计算过
         程可与监控任务复用,故在第 3.3.3 节中具体描述,此外,由公式(4)可以看出,当某一软件其供应关系中包含了该
         受事件影响的软件包,其可靠性评分也会受到相应的影响;
             (2)  显然,仅仅通过途径 1 获取的可靠性评分依据将十分有限,对于尚未获得初始评分的软件包,我们基于
         度量模型提供的数据对软件包进行聚类,如公式(2)所示,这使得具有类似“可靠性特征”的软件包能够归为一类,
         之后即可基于相似度为尚未获得评分的软件赋予初始化评分;
             (3)  在途径 1 能够获取的数据极端稀少的情况下,通过途径 2 赋予的初始化评分,其参考价值十分有限,因此
         在途径 3 中,我们允许用户基于系统提供的度量信息,对任一软件的可靠性进行评分,并最终综合全部用户的评
         分,得到某一个软件的可靠性评分,如公式(3)所示,可以看出,考虑到用户不同的专业水平,我们在综合所有评分
   84   85   86   87   88   89   90   91   92   93   94