Learning of Behavioural Models and Dependency Graphs for Communicating Systems with CkTailv2


This paper presents a model learning approach to recover models from event logs for communicating systems. We refer here to systems made up of components interacting with each other by data net- works and whose communications can be monitored, e.g., Internet of Things (IoT) systems, distributed applications or Web service compositions. Our approach, called CkTailv2, is specialised in the generation of behavioural models along with dependency graphs. It generates one Input Output Labelled Transition System (IOLTS) for every component participating in the communications and one graph illustrating the directional dependencies with the other components. These models can help engineers better and quicker understand how a communicating system behaves and is structured. They can also be used for bug detection or for test generation. Com- pared to other model learning approaches specialised for communicating systems, CkTailv2 improves the precision of the generated models by integrating algorithms that better recognise sessions in event logs. CkTailv2 revisits and extends a first approach by simplifying the set of requirements and assumptions in order to increase its applicability on communicating systems. It now integrates two new trace extraction algorithms: the former segments event logs into traces by trying to detect ses- sions; the latter assumes event logs to include session identifiers and allows to quicker generate models. We re- port experimental results obtained from 10 case studies and show that CkTailv2 has the capability of producing precise models in reasonable time delays.

Software Tools for Technology Transfer Journal (STTT), 24(4), 529-548, Springer, 2022