[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/1868321.1868324acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

Detection of high-level execution patterns in reactive behavior of control programs

Published: 12 July 2010 Publication History

Abstract

This paper presents an approach to extract high-level patterns from traces of programmable logic control (PLC) programs recorded with a deterministic replay debugging tool. Our deterministic replay debugging works by recording an application run in real-time with minimal overhead so that it can be reproduced afterwards. In a subsequent phase, the application is replayed in offline mode to produce a more detailed trace log with additional information about the application run. A software developer can replay the program in a debugger and use debugger features to analyze the program run and locate errors. However, due to the vast amount of data and the complex behavior of reactive control programs, a normal debugger is usually only a poor support in comprehending the program behavior. In this paper we present an approach to analyze recorded program runs of PLC applications. We present a technology to visualize the reactive behavior of a program run and find recurring high-level execution patterns in long-running applications. We give an overview of possible application scenarios to support program comprehension, testing, and debugging.

References

[1]
}}IEC, IEC 61331-3, Programmable controllers - Part 3: Programming languages. http://www.iec.ch/, 2003.
[2]
}}Prähofer, H., Schatz, R., Wirth, C., and Mössenböck, H.: Deterministic Replay Debugging of IEC 61131--3 PLC Programs. 8th IEEE International Conference on Industrial Informatics, July 13--16, 2010, Osaka, Japan (accepted).
[3]
}}Thane, H., Sundmark, D., Huselius, J., and Pettersson, A. 2003. Replay Debugging of Real-Time Systems Using Time Machines. In Proceedings of the 17th international Symposium on Parallel and Distributed Processing (April 22--26, 2003). IEEE Computer Society, 288.2.
[4]
}}Orso, A. and Kennedy, B. 2005. Selective capture and replay of program executions. SIGSOFT Softw. Eng. Notes 30, 4 (Jul. 2005), 1--7. DOI= http://doi.acm.org/10.1145/1082983.1083251.
[5]
}}Damerau, F. J. 1964. A technique for computer detection and correction of spelling errors. Commun. ACM 7, 3 (Mar. 1964), 171--176. DOI= http://doi.acm.org/10.1145/363958.363994
[6]
}}Craig G. Nevill-Manning and Ian H. Witten. 1997. Identifying Hierarchical Structure in Sequences: A lineartime algorithm, Journal of Artificial Intelligence Research 7 (1997), pp. 67--82.
[7]
}}Lang, K. J., Pearlmutter, B. A., and Price, R. A. 1998. Results of the Abbadingo One DFA Learning Competition and a New Evidence-Driven State Merging Algorithm. 4th international Colloquium on Grammatical inference (July 12--14, 1998). Lecture Notes In Computer Science, vol. 1433. Springer-Verlag, London, 1--12.
[8]
}}Dupont, P., Lambeau, B., Damas, C., and van Lamsweerde, A. 2008. The QSM Algorithm and its Application to Software Behavior Model Induction. Appl. Artif. Intell. 22, 1--2 (Jan. 2008), 77--115. DOI= http://dx.doi.org/10.1080/08839510701853200
[9]
}}De Pauw, W., Krasikov, S., and Morar, J. F. 2006. Execution patterns for visualizing web services. In Proceedings of the 2006 ACM Symposium on Software Visualization (Brighton, United Kingdom, September 04--05, 2006). SoftVis '06. ACM, New York, NY, 37--45. DOI= http://doi.acm.org/10.1145/1148493.1148499M
[10]
}}Walkinshaw, N., Bogdanov, K., Holcombe, M., and Salahuddin, S. 2007. Reverse Engineering State Machines by Interactive Grammar Inference. In Proceedings of the 14th Working Conference on Reverse Engineering (October 28--31, 2007). WCRE. IEEE Computer Society, Washington, DC, 209--218. DOI= http://dx.doi.org/10.1109/WCRE.2007.45
[11]
}}Reiss, S. P. and Renieris, M. 2001. Encoding program executions. In Proceedings of the 23rd international Conference on Software Engineering (Toronto, Ontario, Canada, May 12--19, 2001). International Conference on Software Engineering. IEEE Computer Society, Washington, DC, 221--230.
[12]
}}I. Zayour and T. C. Lethbridge, "A Cognitive and User Centric Based Approach For Reverse Engineering Tool Design", CASCON, 2000
[13]
}}Jerding, D. F., Stasko, J. T., and Ball, T. 1997. Visualizing interactions in program executions. In Proceedings of the 19th international Conference on Software Engineering (Boston, Massachusetts, United States, May 17--23, 1997). ICSE '97. ACM, New York, NY, 360--370. DOI= http://doi.acm.org/10.1145/253228.253356
[14]
}}Abdelwahab Hamou-Lhadj and Timothy C. Lethbridge: An Effcient Algorithm for Detecting Patterns in Traces of Procedure Calls. ICSE Workshop on Dynamic Analysis, ICSE'03, Portland, Oregon, May 3--11, 2003.

Cited By

View all
  • (2012)Analyzing Long-Running Controller Applications for Specification Violations Based on Deterministic ReplayProceedings of the 2012 38th Euromicro Conference on Software Engineering and Advanced Applications10.1109/SEAA.2012.10(55-62)Online publication date: 5-Sep-2012
  • (2012)A tool for trace visualization and offline debugging of PLC applicationsProceedings of 2012 IEEE 17th International Conference on Emerging Technologies & Factory Automation (ETFA 2012)10.1109/ETFA.2012.6489785(1-8)Online publication date: Sep-2012
  • (2011)A Comprehensive Solution for Deterministic Replay Debugging of SoftPLC ApplicationsIEEE Transactions on Industrial Informatics10.1109/TII.2011.21667687:4(641-651)Online publication date: Nov-2011

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
WODA '10: Proceedings of the Eighth International Workshop on Dynamic Analysis
July 2010
43 pages
ISBN:9781450301374
DOI:10.1145/1868321
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 12 July 2010

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. PLC applications
  2. diagnostics
  3. execution patterns
  4. reactive behavior
  5. real-time systems

Qualifiers

  • Research-article

Conference

ISSTA '10
Sponsor:

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)4
  • Downloads (Last 6 weeks)0
Reflects downloads up to 20 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2012)Analyzing Long-Running Controller Applications for Specification Violations Based on Deterministic ReplayProceedings of the 2012 38th Euromicro Conference on Software Engineering and Advanced Applications10.1109/SEAA.2012.10(55-62)Online publication date: 5-Sep-2012
  • (2012)A tool for trace visualization and offline debugging of PLC applicationsProceedings of 2012 IEEE 17th International Conference on Emerging Technologies & Factory Automation (ETFA 2012)10.1109/ETFA.2012.6489785(1-8)Online publication date: Sep-2012
  • (2011)A Comprehensive Solution for Deterministic Replay Debugging of SoftPLC ApplicationsIEEE Transactions on Industrial Informatics10.1109/TII.2011.21667687:4(641-651)Online publication date: Nov-2011

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media