{"title":"Behavioral model synthesis of PLC programs from execution traces","authors":"Herbert Prähofer, Roland Schatz, Andreas Grimmer","doi":"10.1109/ETFA.2014.7005259","DOIUrl":null,"url":null,"abstract":"Dynamic program analysis is a technique which records a program execution for the purpose of analyzing its behavior and building high-level models and views. This paper presents an approach to build a high-level model of the behavior of a PLC program component as observed in a program execution. Based on a deterministic record and replay technique, a model is synthesized which represents the transition behavior, timing information, and input output behavior of the component. Then this model can be used to check other executions of the same or similar programs for compliance with the model. We present the synthesis techniques and two variants of trace analysis algorithms.","PeriodicalId":20477,"journal":{"name":"Proceedings of the 2014 IEEE Emerging Technology and Factory Automation (ETFA)","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"2014-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"6","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 2014 IEEE Emerging Technology and Factory Automation (ETFA)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ETFA.2014.7005259","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 6
Abstract
Dynamic program analysis is a technique which records a program execution for the purpose of analyzing its behavior and building high-level models and views. This paper presents an approach to build a high-level model of the behavior of a PLC program component as observed in a program execution. Based on a deterministic record and replay technique, a model is synthesized which represents the transition behavior, timing information, and input output behavior of the component. Then this model can be used to check other executions of the same or similar programs for compliance with the model. We present the synthesis techniques and two variants of trace analysis algorithms.