Repository hosted by TU Delft Library

Home · Contact · About · Disclaimer ·

Reverse Engineering of Legacy Software Interfaces to a Model-Based Approach

Publication files not online:

Author: Schuts, M. · Hooman, J. · Kurtev, I. · Swagerman, D.J.
Source:ACSIS, Proceedings of the Federated Conference on Computer Science and Information Systems, 15, 867–876
Identifier: 814197
doi: doi:10.15439/2018F64
Keywords: Model based approach · Domain specific languages · Legacy · DSL · Software interfaces · Industrial Innovation


Cyber-physical systems consist of many hardware and software components. Over the life-cycle of these systems, components are replaced or updated. To avoid integration problems,good interface descriptions are crucial for component-based development of these systems. For new components, a Domain Specific Language (DSL) called Component Modeling & Analysis (ComMA) can be used to formally define the interface of such a component in terms of its signature, state and timing behavior. Having interfaces described in a model-based approach enables the generation of artifacts, for instance, to generate a monitor that can check interface conformance of components based on a trace of observed interface interactions during execution. The benefit of having formal interface descriptions also holds for legacy system components. Interfaces of legacy components can be reverse engineered manually. In order to reduce the manual effort, we present an automated learner. The learner can reverse engineer state and timing behavior of a legacy interface by examining event traces of the component in operation. The learner will then generate a ComMA model.