Most of the trace-checking tools only yield a Boolean verdict. However, when a property is violated by a trace, engineers usually inspect the trace to understand the cause of the violation; such manual diagnostic is time-consuming and error-prone. Existing approaches that complement trace-checking tools with diagnostic capabilities either produce low-level explanations that are hardly comprehensible by engineers or do not support complex signal-based temporal properties. In this paper, we propose TD-SB-TemPsy, a trace-diagnostic approach for properties expressed using SB-TemPsy-DSL. Given a property and a trace that violates the property, TD-SB-TemPsy determines the root cause of the property violation. TD-SB-TemPsy relies on the concepts of violation cause, which characterizes one of the behaviors of the system that may lead to a property violation, and diagnoses, which are associated with violation causes and provide additional information to help engineers understand the violation cause. As part of TD-SB-TemPsy, we propose a language-agnostic methodology to define violation causes and diagnoses. In our context, its application resulted in a catalog of 34 violation causes, each associated with one diagnosis, tailored to properties expressed in SB-TemPsy-DSL. We assessed the applicability of TD-SB-TemPsy on two datasets, including one based on a complex industrial case study.The results show that TD-SB-TemPsy could finish within a timeout of 1 min for ~83.66% of the trace-property combinations in the industrial dataset, yielding a diagnosis in ~99.84% of these cases. Moreover, it also yielded a diagnosis for all the trace-property combinations in the other dataset. These results suggest that our tool is applicable and efficient in most cases.
翻译:大部分跟踪检查工具仅产生布尔语判决。 但是, 当财产被跟踪破坏时, 工程师通常会检查追踪, 以了解违法行为的原因; 这种人工诊断耗时且容易出错。 现有的方法, 以诊断能力补充追踪检查工具, 要么产生工程师难以理解的低层次解释, 要么不支持基于信号的复杂时间属性。 在本文中, 我们提议TD-SB- TemPsy- DSSL, 一种对使用SB- TemPsy- DSSL 表达的属性进行追踪诊断的方法。 由于财产和痕迹违反财产的原因, TD- SB- TemPsy 通常会检查; TD- SB- TemPsy 诊断是时间错误的根源; TDSB- TemPsy 利用现有的一种语言诊断方法 。 TDSB 中, 也显示其内部的一个数据序列, 也显示STDSB 中的一种数据 。