Over the past two decades, researchers and engineers have extensively studied the problem of how to enable a software system to deal with uncertain operating conditions. One prominent solution to this problem is self-adaptation, which equips a software system with a feedback loop that resolves uncertainties during operation and adapts the system to deal with them when necessary. Most self-adaptation approaches developed so far use decision-making mechanisms that focus on achieving a set of goals, i.e., that select for execution the adaptation option with the best estimated benefit. A few approaches have also considered the estimated (one-off) cost of executing the candidate adaptation options. We argue that besides benefit and cost, decision-making in self-adaptive systems should also consider the estimated risk the system or its users would be exposed to if an adaptation option were selected for execution. Balancing all three factors when evaluating the options for adaptation when mitigating uncertainty is essential, not only for satisfying the concerns of the stakeholders, but also to ensure safety and public acceptance of self-adaptive systems. In this paper, we present an ISO/IEC/IEEE 42010 compatible architectural viewpoint that considers the estimated benefit, cost, and risk as core factors of each adaptation option considered in self-adaptation. The viewpoint aims to support software architects responsible for designing robust decision-making mechanisms for self-adaptive systems.
翻译:在过去二十年中,研究人员和工程师广泛研究了如何使软件系统能够处理不确定的操作条件的问题,这个问题的一个突出解决办法是自我适应,使软件系统具备一个反馈循环,解决操作期间的不确定性,并在必要时调整系统以处理这些问题。大多数自适应方法迄今为止开发的自适应方法都使用侧重于实现一系列目标的决策机制,即选择执行适应选择方案并获得最佳估计效益。少数方法还考虑了执行备选适应选择方案的估计(一次性)成本。我们认为,除了效益和成本外,自适应系统的决策还应考虑系统或其用户在选择实施适应方案时可能面临的估计风险。在评估适应选择方案时,平衡所有三个因素,以缓解不确定性至关重要,这不仅是为了满足利益攸关方的关切,而且是为了确保自我适应系统的安全和公众接受。在本文件中,我们提出了一个ISO/IEC/IEEE-42010年兼容的建筑观点,其中考虑到设计稳健的自我支持选择、负责任的成本和风险。