Page 10 - 《软件学报》2021年第7期
P. 10

1928                                     Journal of Software  软件学报 Vol.32, No.7,  July 2021

                 筛选出 142 篇高质量的相关文献.然后,为了更好地回答预定义的研究问题,我们提出并定义了关于不确定性的
                 多个层面的分类标准(包括不确定性类型、开发制品的类型和不确定性处理方法的类型等).基于这些分类标准,
                 我们从这些相关文献中抽取出一系列的文献属性,并对文献属性的不一致性进行检查和校正.最后,以这些相关
                 文献及其不同的属性为数据基础,调研并回答复杂系统不确定性相关的研究问题.
                    基于对 142 篇相关文献的系统性分析,我们观察到:(1)  复杂系统不确定性相关文献在 2015 年之后的发表
                 数量呈不断上升的趋势,说明该领域逐渐成为一个研究热点;(2)  复杂系统不确定性相关的文献广泛分布在大
                 量不同的期刊和会议上,反映了这个研究领域的多学科交叉的特点;(3)  在不确定性相关文献使用的关键词方
                 面,使用频次最高的关键词为 uncertainty、cyber-physical systems 和 Internet of Things,这和我们设定的搜索字符
                 串高度吻合;(4)  在不确定性出现的复杂系统开发生命周期的不同阶段,针对复杂系统的不确定性研究主要集
                 中在其开发周期的设计定义、系统分析和运行等阶段;(5)  在不确定性应用的领域方面,研究人员主要关注信息
                 物理系统、物联网和自适应信息物理系统等;(6)  在不确定性分类方面,研究人员主要关注复杂系统的外部不确
                 定性,开发制品的不确定性类型主要集中在模型不确定性、数据不确定性和参数不确定性等上面;(7)  在应对不
                 确定性方法方面,研究人员较多关注的是不确定条件下的决策、不确定性推理和不确定性规约/建模等;(8)  在自
                 动化和软件工程领域关注的不确定性不同点方面,针对不确定性应用领域,软件工程主要关注信息物理系统、
                 物联网和自适应信息物理系统等,自动化主要关注信息物理系统和物联网;针对不确定性类型,软件工程和自动
                 化主要关注外部不确定性和内部不确定性;针对系统开发制品的不确定性类型,软件工程主要关注模型不确定
                 性和数据不确定性等,自动化主要关注模型不确定性和参数不确定性等;针对不确定性处理方法,软件工程主要
                 关注不确定性规约/建模、不确定性推理、不确定性条件下的决策和不确定性传播,自动化主要关注不确定性
                 推理和不确定性条件下的决策等.
                    本文第 2 节介绍复杂系统不确定性的背景知识.第 3 节详细描述本文采用的系统分析方法.第 4 节重点调
                 研预定义的研究问题.第 5 节讨论复杂系统的不确定性未来的研究趋势.第 6 节对全文进行总结.

                 2    背景知识和相关工作

                    不确定性通常被定义为“缺乏确定性(lack of certainty)”.针对不确定性的研究可以追溯到希腊哲学家亚里
                                                                      [5]
                 士多德在哲学范畴内对知识(knowledge)的确定性(certainty)的研究 .自此之后,不确定性在哲学、经济学等不
                                       [6]
                 同领域被赋予了不同的含义 .一种较常见且通用的不确定性分类是偶然(aleatory)和认识(epistemic)的不确定
                 性.前者通常专注于评估事件发生的倾向性,通常通过频率来度量并且归因于随机行为;后者主要专注于一个事
                 件的未来以及对错,通常通过对知识的信心(confidence)来度量并且归因于缺少信息或专业知识                            [7,8] .在过去的
                 10 多年中,不确定性,尤其是针对自适应系统的运行环境中的外部不确定性的研究引起了人们的关注                                 [9,10] .比如,
                 世界知名的信息物理系统领域专家 Manfred Broy 在与 Geisberger 共同编辑的 agendaCPS 中指出,复杂系统开
                 发面临的一个重要挑战就是保证 CPS 在日渐不确定、不可预测、开放、互联的环境中运行的鲁棒性                                    [11] .
                    近年来,工业复杂系统在不同工业领域广泛应用,复杂系统及相应的复杂性科学问题变得日益突出,这给软
                 件工程学科带来了前所未有的挑战,如高复杂度、高动态、大规模、持续集成与部署等.随着快速发展的人工
                 智能技术在越来越多的工业产品中得到应用与集成,现代及未来工业复杂系统的自身及其运行的环境会出现
                 更多的无法避免的“客观不确定性”           [12] .同时,由于系统的高复杂性及开发人员自身知识的局限性,各种假设被引
                 入到系统的开发过程中,由此带来了“主观不确定性”                 [13] .由于工业复杂系统具有持续集成与持续部署等显著特
                 征,在系统设计与开发阶段,开发人员无法完全预测未来的可能部署,从而引入了另外一个层面的主观与客观不
                 确性.此外,复杂系统的不确定性又经常被分为系统“内部不确定性”和“外部不确定性”(包括运行环境不确定
                 性) [14] .其中,较为常见的外部不确定性是“传感器不确定性”.在系统开发过程中会产生很多的制品(如需求、系统
                 架构模型、测试用例),这些制品同样可能包含不确定信息,尤其是人工开发的制品,如需求.由此可以看出,针对
                 复杂系统的不确定性分类和特征化将是多角度和多维度的.鉴于此,本综述的主要目的是系统地了解针对复杂
                 系统的不确定性研究现状,从而讨论和展望未来的研究趋势,为面向不确定性的复杂系统设计、开发、运行和
   5   6   7   8   9   10   11   12   13   14   15