One of the primary drivers for self-adaptation is ensuring that systems achieve their goals regardless of the uncertainties they face during operation. Nevertheless, the concept of uncertainty in self-adaptive systems is still insufficiently understood. Several taxonomies of uncertainty have been proposed, and a substantial body of work exists on methods to tame uncertainty. Yet, these taxonomies and methods do not fully convey the research community's perception on what constitutes uncertainty in self-adaptive systems and how to tackle it. To understand this perception and learn from it, we conducted a survey comprising two complementary stages. In the first stage, we focused on current research and development. In the second stage, we focused on directions for future research. The key findings of the first stage are: a) an overview of uncertainty sources considered in self-adaptive systems, b) an overview of existing methods used to tackle uncertainty in concrete applications, c) insights into the impact of uncertainty on non-functional requirements, d) insights into different opinions in the perception of uncertainty within the community, and the need for standardised uncertainty-handling processes to facilitate uncertainty management in self-adaptive systems. The key findings of the second stage are: a) the insight that over 70% of the participants believe that self-adaptive systems can be engineered to cope with unanticipated change, b) a set of potential approaches for dealing with unanticipated change, c) a set of open challenges in mitigating uncertainty in self-adaptive systems, in particular in those with safety-critical requirements. From these findings, we outline an initial reference process to manage uncertainty in self-adaptive systems.
翻译:自我适应的主要驱动因素之一是确保系统实现其目标,而不论其在运作期间面临的不确定性如何。然而,自适应系统中的不确定性概念仍然没有得到充分理解。提出了若干不确定的分类,在如何抑制不确定性方面有大量的工作。然而,这些分类和方法并不能充分传达研究界对自我适应系统中的不确定性和如何应对不确定性的看法。为了理解这种认识并从中吸取教训,我们进行了一次由两个互补阶段组成的调查。在第一阶段,我们侧重于当前的研究和开发。在第二阶段,我们侧重于未来研究的方向。第一阶段的主要结论是:(a) 概述自适应系统中考虑的不确定性来源,(b) 概述用于解决具体应用中的不确定性的现有方法,(c) 深入了解不确定性对不起作用的要求的影响,(d) 深入了解社区内对不确定性的公开认识,以及标准化的不确定性处理过程的必要性,以便利自我适应初期的不确定性管理。在初始阶段,这些自我适应阶段的自我评估阶段的关键结论是:在进行自我适应的系统中,这些自我评估阶段的自我评估阶段,我们相信这些自我评估阶段的自我评估阶段的自我变化。