skip to main content
10.1145/2351676.2351711acmconferencesArticle/Chapter ViewAbstractPublication PagesaseConference Proceedingsconference-collections
Article

Automatic recovery of statecharts from procedural code

Published: 03 September 2012 Publication History

Abstract

We have developed a static-analysis algorithm that extracts statecharts from procedural implementations of state machines. The extracted statecharts are semantically-equivalent to the original program, and can be used for further development instead of the procedural code. We have implemented this algorithm in a tool called StatRec. We report on the results of running StatRec on a number of examples, including an implementation of the TCP protocol.

References

[1]
A. Abadi, R. Ettinger, and Y. A. Feldman. Improving slice accuracy by compression of data and control flow paths. In Proc. 7th Joint Mtg. European Software Engineering Conf. (ESEC) and ACM Symp. Foundations of Software Engineering (FSE), Aug. 2009.
[2]
M. Abadi and Y. A. Feldman. Refactoring in multiple representations: Code and statecharts. In Third Workshop on Refactoring Tools, Oct. 2009.
[3]
M. Abadi and Y. A. Feldman. Refactoring of statecharts. In Proc. Seventh Conf. Next-Generation Information Technologies and Systems (NGITS), June 2009.
[4]
D. E. Comer, D. L. Stevens, and M. Evangelista. Internetworking with TCP/IP Vol. II: Design, Implementation, and Internals. Prentice Hall, 4th edition, 2004.
[5]
D. Harel. Statecharts: A visual formalism for complex systems. Science of Computer Programming, 8:231–274, 1987.
[6]
M. Samek. Practical UML Statecharts in C/C++: Event-Driven Programming for Embedded Systems. Newnes, 2nd edition, 2008.

Cited By

View all
  • (2019)Interactive Measures for Mining Understandable State Machines from Embedded Software: Experiments and Case StudiesModel-Driven Engineering and Software Development10.1007/978-3-030-11030-7_10(211-235)Online publication date: 1-Feb-2019
  • (2015)Towards behavioral programming in distributed architecturesScience of Computer Programming10.1016/j.scico.2014.03.00398:P2(233-267)Online publication date: 1-Feb-2015
  • (2013)MapIt: A Model Based Pattern Recovery ToolModel-Based Methodologies for Pervasive and Embedded Software10.1007/978-3-642-38209-3_2(19-37)Online publication date: 2013

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ASE '12: Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering
September 2012
409 pages
ISBN:9781450312042
DOI:10.1145/2351676
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: 03 September 2012

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. State machines
  2. statecharts
  3. static analysis

Qualifiers

  • Article

Conference

ASE'12
Sponsor:

Acceptance Rates

Overall Acceptance Rate 82 of 337 submissions, 24%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 03 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2019)Interactive Measures for Mining Understandable State Machines from Embedded Software: Experiments and Case StudiesModel-Driven Engineering and Software Development10.1007/978-3-030-11030-7_10(211-235)Online publication date: 1-Feb-2019
  • (2015)Towards behavioral programming in distributed architecturesScience of Computer Programming10.1016/j.scico.2014.03.00398:P2(233-267)Online publication date: 1-Feb-2015
  • (2013)MapIt: A Model Based Pattern Recovery ToolModel-Based Methodologies for Pervasive and Embedded Software10.1007/978-3-642-38209-3_2(19-37)Online publication date: 2013

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media