Reverse engineering abstract components for model-based development and verification of embedded software

Yunja Choi, Hoon Jang

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

Model-driven development (MDD) and verification approaches are highly desirable in the development of (safety-critical) embedded systems, since they help to identify functional or non-functional issues from the early development stage when verification complexity is relatively lower than that of the implemented systems. Nevertheless, MDD approaches have not been widely adopted in practice mainly due to the difficulty and high initial cost of switching the development paradigm from code-centric to model-driven. This work presents a systematic method for reverse engineering abstract models from embedded codes using the notion of abstract components which act as independent units of development, validation, and verification. The recursive reverse engineering process constructs high-level Abstract components from low-level ones using synchronized Abstraction and projection abstraction, defined w.r.t. the information on port dependency and port bindings. This approach is demonstrated with reverse-engineered TinyOS, where each abstract component is validated and verified using model simulation and model checking.

Original languageEnglish
Title of host publicationProceedings - 2010 IEEE 12th International Symposium on High Assurance Systems Engineering, HASE 2010
Pages122-131
Number of pages10
DOIs
StatePublished - 2010
Event2010 IEEE 12th International Symposium on High Assurance Systems Engineering, HASE 2010 - San Jose, CA, United States
Duration: 3 Nov 20104 Nov 2010

Publication series

NameProceedings of IEEE International Symposium on High Assurance Systems Engineering
ISSN (Print)1530-2059

Conference

Conference2010 IEEE 12th International Symposium on High Assurance Systems Engineering, HASE 2010
Country/TerritoryUnited States
CitySan Jose, CA
Period3/11/104/11/10

Fingerprint

Dive into the research topics of 'Reverse engineering abstract components for model-based development and verification of embedded software'. Together they form a unique fingerprint.

Cite this