Preview

Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS)

Advanced search

Mining Hierarchical UML Sequence Diagrams from Event Logs of SOA Systems while Balancing between Abstracted and Detailed Models

https://doi.org/10.15514/ISPRAS-2016-28(3)-6

Abstract

In this paper, we consider an approach to reverse engineering of UML sequence diagrams from event logs of information systems with a service-oriented architecture (SOA). UML sequence diagrams are graphical models quite suitable for representing interactions in heterogeneous component systems; in particular, the latter include increasingly popular SOA-based information systems. The approach deals with execution traces of SOA systems, represented in the form of event logs. Event logs are created by almost all modern information systems primarily for debug purposes. In contrast with conventional reverse engineering techniques that require source code for analysis, our approach for inferring UML sequence diagrams deals only with available logs and some heuristic knowledge. Our method consists of several stages of building UML sequence diagrams according to different perspectives set by the analyst. They include mapping log attributes to diagram elements, thereby determining a level of abstraction, grouping several components of a diagram and building hierarchical diagrams. We propose to group some of diagram components (messages and lifelines) based on regular expressions and build hierarchical diagrams using nested fragments. The approach is evaluated in a software prototype implemented as a Microsoft Visio add-in. The add-in builds a UML sequence diagram from a given event log according to a set of customizable settings.

About the Authors

K. V. Davydova
National Research University Higher School of Economics
Russian Federation


S. A. Shershakov
National Research University Higher School of Economics
Russian Federation


References

1. OMG. OMG Unified Modeling Language (OMG UML), Superstructure, Version 2.4.1, August 2011.

2. W. M. P. van der Aalst. Process Mining: Discovery, Conformance and Enhancement of Business Processes. Springer Publishing Company, Incorporated, 1st edition, 2011.

3. V.A. Rubin, S.A. Shershakov System runs analysis with process mining. In Modeling and Analysis of Information Systems, pages 818–833, 2015.

4. A. Rountev, B. H. Connell. Object naming analysis for reverse-engineered sequence diagrams. In Proceedings of the 27th International Conference on Software Engineering, ICSE ’05, pages 254–263, New York, NY, USA, 2005. ACM.

5. A. Rountev. Static control-flow analysis for reverse engineering of uml sequence diagrams. In Proc. 6th Workshop on Program Analysis for Software Tools and Engineering (PASTE’ 05), pages 96–102. ACM Press, 2005.

6. P. Tonella, A. Potrich. Reverse engineering of the interaction diagrams from C++ code. pages 159–168. IEEE Computer Society, 2003.

7. E. Korshunova, M. Petkovic, M. G. J. van den Brand, M. R. Mousavi. Cpp2xmi: Reverse engineering of uml class, sequence, and activity diagrams from C++ source code. In WCRE, pages 297–298. IEEE Computer Society, 2006.

8. Sparx Systems’ Enterprise Architect. http://www. sparxsystems.com.au/products/ea/.

9. IBM Rational Software Architect. https://www.ibm.com/ developerworks/downloads/r/architect/.

10. Visual Paradigm. https://www.visual-paradigm.com/ features/.

11. Altova UModel. http://www.altova.com/umodel.html.

12. MagicDraw. http://www.nomagic.com/products/magicdraw.html.

13. StarUML. http://staruml.io.

14. ArgoUML. http://argouml.tigris.org.

15. H. Osman, M. R. V. Chaudron. Correctness 
and completeness of CASE tools in reverse engineering source code into UML model. The GSTF Journal on Computing (JoC), 2(1), 2012.

16. L. C. Briand, Y. Labiche, J. Leduc. Toward the reverse engineering of uml sequence diagrams for distributed java software. IEEE Trans. Softw. Eng., 32(9):642–663, September 2006.

17. R. Delamare, B. Baudry, Y. L. Traon. Reverse-engineering of UML 2.0 sequence diagrams from execution traces. In Proceedings of the workshop on Object-Oriented Reengineering at ECOOP 06, Nantes, France, July 2006.

18. T. Ziadi, M. A. A. da Silva, L. M. Hillah, M. Ziane. A fully dynamic approach to the reverse engineering of UML sequence diagrams. In Isabelle Perseil, Karin Breitman, and Roy Sterritt, editors, ICECCS, pages 107–116. IEEE Computer Society, 2011.

19. Y.-G. Guéhéneuc. Automated reverse-engineering of UML v2.0 dynamic models. In Proceedings of the 6 th ECOOP Workshop on Object-Oriented Reengineering. http://smallwiki.unibe.ch/WOOR, 2005.

20. OMG. The OMG and Service Oriented Architecture, 2006

21. S. Owens, J. Reppy, A. Turon. Regular-expression derivatives re-examined. J. Funct. Program., 19(2):173–190, March 2009.


22. Visio 2010: Software Development Kit, 2010. https://www.microsoft.com/en-us/download/details.aspx?id=12365.

23. C. W. Günther and E. Verbeek. XES Standart Definition version 2.0, 2014.

24. S.A. Shershakov. VTMine framework as applied to process mining modeling, International Journal of Computer and Communication Engineering vol. 4, no. 3, pp. 166-179, 2015.


Review

For citations:


Davydova K.V., Shershakov S.A. Mining Hierarchical UML Sequence Diagrams from Event Logs of SOA Systems while Balancing between Abstracted and Detailed Models. Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS). 2016;28(3):85-102. https://doi.org/10.15514/ISPRAS-2016-28(3)-6



Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 License.


ISSN 2079-8156 (Print)
ISSN 2220-6426 (Online)