Repairing legacy systems is a difficult and error-prone task: often, limited knowledge of the intricacies of these systems could make an attempted repair result in new errors. Consequently, it is desirable to repair such systems in an automated and sound way. Here, we discuss our ongoing work on the automated repair of scenario-based models: fully executable models that describe a system using scenario objects that model its individual behaviors. We show how rich, scenario-based models can be model-checked, and then repaired to prevent various safety violations. The actual repair is performed by adding new scenario objects to the model, and without altering existing ones - in a way that is well aligned with the principles of scenario-based modeling. In order to automate our repair approach, we leverage off-the-shelf SMT solvers. We describe the main principles of our approach, and discuss our plans for future work.
翻译:修复遗留系统是一项困难和容易出错的任务:对于这些系统复杂程度的有限了解往往会导致试图修复新错误。 因此,有必要以自动和可靠的方式修复这些系统。 在这里,我们讨论我们正在进行的自动修复基于假设情景的模型的工作:完全可执行模型,用以描述使用模拟其个人行为的假想对象的系统。我们展示了如何对基于假设情景的模型进行模型检查,然后加以修复,以防止各种违反安全的行为。实际修复是通过在模型中添加新的假想对象进行,而不改变现有的假想对象,其方式与基于假设情景的模型原则完全一致。为了使我们的修复方法自动化,我们利用现成的SMT解决方案。我们描述了我们方法的主要原则,并讨论了我们未来工作的计划。