使用运行时定量验证为自适应软件提供保证证据
1. 引言
自适应软件旨在应对各种不确定性,如简化假设、未知参数、目标变化和组件故障等。随着物联网、无人驾驶车辆和云服务等技术的发展,自适应软件在医疗、交通、金融和国防等领域的应用需求日益增长,可推动具有重大经济和社会效益的新应用开发,如应急管理、环境监测以及远程医疗和护理等。
然而,确保自适应软件满足其功能和服务质量(QoS)要求是一项巨大挑战。传统上,安全关键应用中软件的保证基于软件生命周期设计、实现和测试阶段的验证和确认活动,但由于自适应软件在生产环境中面临的不确定性,这些方法在部署前无法为其提供完整的保证证据。
为解决这一问题,近年来的研究提倡使用形式化方法以可证明正确的方式驱动自适应软件的重新配置或逻辑更改。其中,运行时定量验证(RQV)是一种有前景的方法,它使用不断更新的随机模型,在环境和系统变化后重新验证自适应软件的QoS属性,识别或预测QoS要求的违反情况,并支持软件的自适应以恢复或防止此类违反,同时为适应决策的正确性提供不可辩驳的保证证据。
2. 概述
2.1 定量验证
定量验证是一种基于数学的技术,用于分析具有随机行为的系统的正确性、可靠性、性能和其他QoS属性。它通过有限状态转换模型进行分析,模型中的状态对应不同的系统配置,边表示这些状态之间可能的转换。根据分析的QoS属性,边会标注转换概率或转换率,模型状态和转换还可能标注成本/奖励。
常见的概率标注转换模型包括离散时间马尔可夫链(DTMCs)和马尔可夫决策过程(MDPs),连续时间马尔可夫链(CTMCs)的边则标注转换率。给定一个模型和一个用扩展了概率和成本/奖励的时态逻辑变
超级会员免费看
订阅专栏 解锁全文
57

被折叠的 条评论
为什么被折叠?



