MicroDepGraph analyzes the service dependecies of microservices projects based on docker configuration. It produces output as neo4j graph database and also image of dependency graph as SVG format. It analyzes a project which is in local drive. It will create two folders one is "neo4jData" and another one is "output" which holds the generated image of dependency graph.
Java jdk8 or higher.
- clone a git repository containing a java project developed with a micorservice architectural style.
- execute MicroDepGraph as: java -jar microservices-dependency-check.jar <absolute_path_of_the_cloned_repository> <project_name>
An example command to run the tool from command line is, java -jar microservices-dependency-check.jar /home/myuser/ftgo-application-master ftgo-application-master
After analyzing the project, MicroDepGraph generates dependency graph in three types of export files which are,
- Neo4j database containing output graph
- GraphML file a common format for exchanging graph structure data
- An SVG file
Figure 1. Example MicroDepGraph Output (project spinnaker http://bit.ly/2YQA2S7)
A dataset with different projects analyzed is available on the MicroserviceDataset repository view
Please, cite as "The Microservice Dataset, Version 1.0 [1]"
[1] Mohammad Imranur Rahman, Sebastiano Panichella, Davide Taibi. A curated Dataset of Microservices-Based Systems. Joint Proceedings of the Summer School on Software Maintenance and Evolution. Tampere, 2019
@INPROCEEDINGS{Rahman2019,
author = {Rahman, MI.and Taibi, Davide},
title = {A curated Dataset of Microservices-Based Systems},
booktitle={Joint Proceedings of the Summer School on Software Maintenance and Evolution},
year={2019},
month={September},
publisher = {CEUR-WS}
location = {Tampere, Finland}
}