Reverse Engineering Models of Software Interfaces
Computer Science and Information Systems, Tome 18 (2021) no. 3.

Voir la notice de l'article provenant de la source Computer Science and Information Systems website

Cyber-physical systems consist of many hardware and software components. Over the lifetime of these systems their components are often replaced or updated. To avoid integration problems, formal specifications of component interface behavior are crucial. Such a formal specification captures not only the set of provided operations but also the order of using them and the constraints on their timing behavior. Usually the order of operations are expressed in terms of a state machine. For new components such a formal specification can be derived from requirements. However, for legacy components such interface descriptions are usually not available. So they have to be reverse engineered from existing event logs and source code. This costs a lot of time and does not scale very well. To improve the efficiency of this process, we present a passive learning technique for interface models inspired by process mining techniques. The approach is based on representing causal relations between events present in an event log and their timing information as a timed-causal graph. The graph is further processed and eventually transformed into a state machine and a set of timing constraints. Compared to other approaches in literature which focus on the general problem of inferring state-based behavior, we exploit patterns of client-server interactions in event logs.
Keywords: passive learning, process mining, interfaces, model-driven engineering
@article{CSIS_2021_18_3_a3,
     author = {Debjyoti Bera and Mathijs Schuts and Jozef Hooman and Ivan Kurtev},
     title = {Reverse {Engineering} {Models} of {Software} {Interfaces}},
     journal = {Computer Science and Information Systems},
     publisher = {mathdoc},
     volume = {18},
     number = {3},
     year = {2021},
     url = {http://geodesic.mathdoc.fr/item/CSIS_2021_18_3_a3/}
}
TY  - JOUR
AU  - Debjyoti Bera
AU  - Mathijs Schuts
AU  - Jozef Hooman
AU  - Ivan Kurtev
TI  - Reverse Engineering Models of Software Interfaces
JO  - Computer Science and Information Systems
PY  - 2021
VL  - 18
IS  - 3
PB  - mathdoc
UR  - http://geodesic.mathdoc.fr/item/CSIS_2021_18_3_a3/
ID  - CSIS_2021_18_3_a3
ER  - 
%0 Journal Article
%A Debjyoti Bera
%A Mathijs Schuts
%A Jozef Hooman
%A Ivan Kurtev
%T Reverse Engineering Models of Software Interfaces
%J Computer Science and Information Systems
%D 2021
%V 18
%N 3
%I mathdoc
%U http://geodesic.mathdoc.fr/item/CSIS_2021_18_3_a3/
%F CSIS_2021_18_3_a3
Debjyoti Bera; Mathijs Schuts; Jozef Hooman; Ivan Kurtev. Reverse Engineering Models of Software Interfaces. Computer Science and Information Systems, Tome 18 (2021) no. 3. http://geodesic.mathdoc.fr/item/CSIS_2021_18_3_a3/