SlideShare une entreprise Scribd logo
1  sur  19
Télécharger pour lire hors ligne
Graph-Based Analysis and Visualization of
Software Traces
Symposium on Software Performance 2019
Würzburg, November 5, 2019
Richard Müller and Matteo Fischer
SSP 2019 | Graph-Based Analysis and Visualization of Software Traces
Information Systems Institute, Software Engineering Department
WHY GRAPHS?
2
[Diehl and Telea 2014, Müller et al. 2018]
 Software data naturally map to a multivariate,
compound, attributed, and time-dependent graph
SSP 2019 | Graph-Based Analysis and Visualization of Software Traces
Information Systems Institute, Software Engineering Department
KIEKER
 Framework to monitor, analyze, and visualize software
behavior
 Supports event-based and state-based monitoring
 Usable with Java, .NET, COBOL, and Visual Basic 6
 Provides tools
 to inspect and analyze traces
 to visualize them as UML sequence diagrams, markov
chains, dependency graphs, and trace timing diagrams
 Output writers save traces to the file system or in a
relational database
3
[van Hoorn, Waller, and Hasselbring 2012; Waller 2014; http://kieker-monitoring.net]
SSP 2019 | Graph-Based Analysis and Visualization of Software Traces
Information Systems Institute, Software Engineering Department
BUT…
 There is no output writer for a graph database
 The visualizations produced by the Kieker tools are
static images, for example,
 Deployment operation dependency graph of Bookstore
example
4
SSP 2019 | Graph-Based Analysis and Visualization of Software Traces
Information Systems Institute, Software Engineering Department
CONTRIBUTION
 jQAssistant plugin that scans event-based Kieker traces
and stores them as a graph in a Neo4j database
 The plugin supports application performance monitoring
and architecture discovery
 It complements existing Kieker tools
 Analysis
 Inspect and analyze traces with the graph query
language Cypher
 Visualization
 Use interactive visualizations of call and dependency
graphs
5
SSP 2019 | Graph-Based Analysis and Visualization of Software Traces
Information Systems Institute, Software Engineering Department
TECHNICAL BACKGROUND
6
SSP 2019 | Graph-Based Analysis and Visualization of Software Traces
Information Systems Institute, Software Engineering Department
NEO4J
 Native graph database to store, manage, and query
large amounts of connected data
 Models graph data with a labeled property graph
 Labels are used to classify nodes
 Relationships connect nodes, have a type, and can have a
direction
 Properties are attributes of nodes and relationships and
stored as key-value pairs
7
[Needham and Hodler 2019; https://neo4j.com]
SSP 2019 | Graph-Based Analysis and Visualization of Software Traces
Information Systems Institute, Software Engineering Department
CYPHER
 Graph query language of Neo4j
 Matches given patterns in the graph using a visual,
ASCII art-based syntax
 ( ) node
 -[ ]-> directed relationship
MATCH
(m1:Method)-[CALLS]->(m2:Method)
RETURN
m1.name, m2.name
8
[Francis et al. 2018; https://www.opencypher.org]
SSP 2019 | Graph-Based Analysis and Visualization of Software Traces
Information Systems Institute, Software Engineering Department
JQASSISTANT
9
 Scans software artifacts and stores
them in a Neo4j graph database
 Analyzes and modifies the graph
data with rules
 Constraints to identify violations
 Concepts to aggregate, enrich,
and filter
 Create reports
[https://jqassistant.org; https://softvis-research.github.io/jqassistant-plugins]
 Can be executed with Maven or from the command line
 Extendable through plugins, for example, Java, Jira, GitHub-
Issues, JaCoCo scanner
SSP 2019 | Graph-Based Analysis and Visualization of Software Traces
Information Systems Institute, Software Engineering Department
KIEKER PLUGIN
 Plugin for jQAssistant to scan and analyze event-based
software traces
 Published on GitHub under GPL-3.0
10
[https://github.com/softvis-research/jqa-kieker-plugin]
SSP 2019 | Graph-Based Analysis and Visualization of Software Traces
Information Systems Institute, Software Engineering Department
KIEKER GRAPH SCHEMA
11
SSP 2019 | Graph-Based Analysis and Visualization of Software Traces
Information Systems Institute, Software Engineering Department
APPLICATION EXAMPLE
12
[http://kieker-monitoring.net/documentation]
 Instrumented the Bookstore
example from the Kieker user
guide with AspectJ and activated
aspects OperationExecution
and OperationCall
 Scanned the monitored traces
with the jQAssistant command
line tool using the Kieker plugin
SSP 2019 | Graph-Based Analysis and Visualization of Software Traces
Information Systems Institute, Software Engineering Department
ANALYSIS
13
MATCH
(t:Type)-[:DECLARES]->(m:Method)
WHERE
t.fqn STARTS WITH "kieker"
RETURN
t.name as Type, m.name AS Method, m.incomingCalls AS
Calls, m.duration AS Duration ORDER BY Duration DESC
SSP 2019 | Graph-Based Analysis and Visualization of Software Traces
Information Systems Institute, Software Engineering Department
CALL GRAPH
14
[https://www.yworks.com/neo4j-explorer]
The property duration of each Method node is mapped to a color gradient
from green (short) to red (long)
SSP 2019 | Graph-Based Analysis and Visualization of Software Traces
Information Systems Institute, Software Engineering Department
DEPENDENCY GRAPH
15
[https://www.yworks.com/neo4j-explorer]
SSP 2019 | Graph-Based Analysis and Visualization of Software Traces
Information Systems Institute, Software Engineering Department
CONCLUSION
 Presented a jQAssistant plugin that scans event-based
software traces and stores them as a graph in a Neo4j
database
 Illustrated feasibility and usefulness with the Bookstore
example
 Analysis with an example Cypher query for aggregated
method calls
 Visualization of the call and dependency graphs in the
yFiles Neo4j explorer
16
SSP 2019 | Graph-Based Analysis and Visualization of Software Traces
Information Systems Institute, Software Engineering Department
FUTURE WORK
 Extend the plugin to scan further record types, for
example, state-based records
 The plugin can be used as a blueprint to contribute a
Kieker writer for graph databases
17
SSP 2019 | Graph-Based Analysis and Visualization of Software Traces
Information Systems Institute, Software Engineering Department
REFERENCES
 S. Diehl and A. C. Telea. “Multivariate Graphs in Software Engineering“. In: Multivar.
Netw. Vis. Dagstuhl Semin. #13201 Dagstuhl Castle, Ger. May 12-17, 2013 Revis.
Discuss. Ed. by A. Kerren, H. C. Purchase, and M. O. Ward. Vol. 8380. Lecture
Notes in Computer Science. Cham: Springer International Publishing, 2014. Chap. 2,
pp. 13-36.
 N. Francis et al. “Cypher: An Evolving Query Language for Property Graphs”. In:
ACM SIG-MOD Int. Conf. Manag. Data. 2018, p. 13.
 A. van Hoorn, J. Waller, and W. Hasselbring. “Kieker: A framework for application
performance monitoring and dynamic software analysis”. In: 3rd ACM/SPEC Int.
Conf. Perform. Eng. (ICPE 2012). ACM, 2012, pp. 247-248.
 R. Müller et al. “Towards an Open Source Stack to Create a Unfied Data Source for
Software Analysis and Visualization”. In: Proc. 6th IEEE Work. Conf. Softw. Vis.
Madrid, Spain: IEEE, 2018.
 M. Needham and A. E. Hodler. Graph Algorithms -Practical Examples in Apache
Spark & Neo4j. 1st ed. O'Reilly, 2019.
 J. Waller. Performance Benchmarking of Application Monitoring Frameworks. Kiel
Computer Science Series 2014/5. Department of Computer Science, Kiel University,
2014.
18
THANK YOU.
Richard Müller and Matteo Fischer
Information Systems Institute, Software Engineering Department
rmueller@wifa.uni-leipzig.de
@rimllr
https://github.com/softvis-research
http://softvis.wifa.uni-leipzig.de
19

Contenu connexe

Tendances

6 Lowpan Rpl Tutorial Code
6 Lowpan Rpl Tutorial Code6 Lowpan Rpl Tutorial Code
6 Lowpan Rpl Tutorial CodePhdtopiccom
 
Brian James Hu resume 2016 7-5
Brian James Hu resume 2016 7-5Brian James Hu resume 2016 7-5
Brian James Hu resume 2016 7-5Brian Hu
 
UpdatedResumeAdamDeLeon
UpdatedResumeAdamDeLeonUpdatedResumeAdamDeLeon
UpdatedResumeAdamDeLeonAdam De Leon
 
Satwik mishra resume
Satwik mishra resumeSatwik mishra resume
Satwik mishra resumeSatwik Mishra
 
Gospel - High-performance heterogeneous architectures for graph analytics
 Gospel - High-performance heterogeneous architectures for graph analytics Gospel - High-performance heterogeneous architectures for graph analytics
Gospel - High-performance heterogeneous architectures for graph analyticsNECST Lab @ Politecnico di Milano
 
Satwik mishra resume
Satwik mishra resumeSatwik mishra resume
Satwik mishra resumeSatwik Mishra
 
ZX_Resume_V3.1
ZX_Resume_V3.1ZX_Resume_V3.1
ZX_Resume_V3.1Zeyuan Xu
 
Integrating Sanitary Televising Data with Utility GIS Data
Integrating Sanitary Televising Data with Utility GIS DataIntegrating Sanitary Televising Data with Utility GIS Data
Integrating Sanitary Televising Data with Utility GIS DataMatt Eitrem
 
SHIVA KUMAR GANGINANI_RESUME
SHIVA KUMAR GANGINANI_RESUMESHIVA KUMAR GANGINANI_RESUME
SHIVA KUMAR GANGINANI_RESUMEshiva kumar
 
PhD Projects in Computer Graphics Research Ideas
PhD Projects in Computer Graphics Research IdeasPhD Projects in Computer Graphics Research Ideas
PhD Projects in Computer Graphics Research IdeasPhD Services
 
TIN-X v2: modernized architecture with REST API
TIN-X v2: modernized architecture with REST APITIN-X v2: modernized architecture with REST API
TIN-X v2: modernized architecture with REST APIJeremy Yang
 

Tendances (15)

6 Lowpan Rpl Tutorial Code
6 Lowpan Rpl Tutorial Code6 Lowpan Rpl Tutorial Code
6 Lowpan Rpl Tutorial Code
 
Brian James Hu resume 2016 7-5
Brian James Hu resume 2016 7-5Brian James Hu resume 2016 7-5
Brian James Hu resume 2016 7-5
 
UpdatedResumeAdamDeLeon
UpdatedResumeAdamDeLeonUpdatedResumeAdamDeLeon
UpdatedResumeAdamDeLeon
 
Vaibhav's Resume
Vaibhav's ResumeVaibhav's Resume
Vaibhav's Resume
 
Satwik mishra resume
Satwik mishra resumeSatwik mishra resume
Satwik mishra resume
 
Gospel - High-performance heterogeneous architectures for graph analytics
 Gospel - High-performance heterogeneous architectures for graph analytics Gospel - High-performance heterogeneous architectures for graph analytics
Gospel - High-performance heterogeneous architectures for graph analytics
 
My Resume
My ResumeMy Resume
My Resume
 
Satwik mishra resume
Satwik mishra resumeSatwik mishra resume
Satwik mishra resume
 
Nick_Farrel_Resume
Nick_Farrel_ResumeNick_Farrel_Resume
Nick_Farrel_Resume
 
Satwik resume
Satwik resumeSatwik resume
Satwik resume
 
ZX_Resume_V3.1
ZX_Resume_V3.1ZX_Resume_V3.1
ZX_Resume_V3.1
 
Integrating Sanitary Televising Data with Utility GIS Data
Integrating Sanitary Televising Data with Utility GIS DataIntegrating Sanitary Televising Data with Utility GIS Data
Integrating Sanitary Televising Data with Utility GIS Data
 
SHIVA KUMAR GANGINANI_RESUME
SHIVA KUMAR GANGINANI_RESUMESHIVA KUMAR GANGINANI_RESUME
SHIVA KUMAR GANGINANI_RESUME
 
PhD Projects in Computer Graphics Research Ideas
PhD Projects in Computer Graphics Research IdeasPhD Projects in Computer Graphics Research Ideas
PhD Projects in Computer Graphics Research Ideas
 
TIN-X v2: modernized architecture with REST API
TIN-X v2: modernized architecture with REST APITIN-X v2: modernized architecture with REST API
TIN-X v2: modernized architecture with REST API
 

Similaire à Graph-Based Analysis and Visualization of Software Traces [SSP 2019]

Visualization of Software Architectures in Virtual Reality and Augmented Reality
Visualization of Software Architectures in Virtual Reality and Augmented RealityVisualization of Software Architectures in Virtual Reality and Augmented Reality
Visualization of Software Architectures in Virtual Reality and Augmented RealityAndreas Schreiber
 
Mapping and visualization of source code a survey
Mapping and visualization of source code a surveyMapping and visualization of source code a survey
Mapping and visualization of source code a surveyNakul Sharma
 
statistical computation using R- report
statistical computation using R- reportstatistical computation using R- report
statistical computation using R- reportKamarudheen KV
 
Spark-MPI: Approaching the Fifth Paradigm with Nikolay Malitsky
Spark-MPI: Approaching the Fifth Paradigm with Nikolay MalitskySpark-MPI: Approaching the Fifth Paradigm with Nikolay Malitsky
Spark-MPI: Approaching the Fifth Paradigm with Nikolay MalitskyDatabricks
 
A systematic mapping study of performance analysis and modelling of cloud sys...
A systematic mapping study of performance analysis and modelling of cloud sys...A systematic mapping study of performance analysis and modelling of cloud sys...
A systematic mapping study of performance analysis and modelling of cloud sys...IJECEIAES
 
Rajas mhaskar resume2k19
Rajas mhaskar resume2k19Rajas mhaskar resume2k19
Rajas mhaskar resume2k19Rajas Mhaskar
 
Tool-Driven Technology Transfer in Software Engineering
Tool-Driven Technology Transfer in Software EngineeringTool-Driven Technology Transfer in Software Engineering
Tool-Driven Technology Transfer in Software EngineeringHeiko Koziolek
 
PriyankaDighe_Resume_new
PriyankaDighe_Resume_newPriyankaDighe_Resume_new
PriyankaDighe_Resume_newPriyanka Dighe
 
ai-conversation-solution-editable-ppt.pptx
ai-conversation-solution-editable-ppt.pptxai-conversation-solution-editable-ppt.pptx
ai-conversation-solution-editable-ppt.pptxSteve524488
 
SEMANCO - Integrating multiple data sources, domains and tools in urban ener...
SEMANCO - Integrating multiple data sources, domains and tools in  urban ener...SEMANCO - Integrating multiple data sources, domains and tools in  urban ener...
SEMANCO - Integrating multiple data sources, domains and tools in urban ener...Álvaro Sicilia
 
IRJET- A Workflow Management System for Scalable Data Mining on Clouds
IRJET- A Workflow Management System for Scalable Data Mining on CloudsIRJET- A Workflow Management System for Scalable Data Mining on Clouds
IRJET- A Workflow Management System for Scalable Data Mining on CloudsIRJET Journal
 
IRJET- Visual Information Narrator using Neural Network
IRJET- Visual Information Narrator using Neural NetworkIRJET- Visual Information Narrator using Neural Network
IRJET- Visual Information Narrator using Neural NetworkIRJET Journal
 
OpenACC and Open Hackathons Monthly Highlights May 2023.pdf
OpenACC and Open Hackathons Monthly Highlights May  2023.pdfOpenACC and Open Hackathons Monthly Highlights May  2023.pdf
OpenACC and Open Hackathons Monthly Highlights May 2023.pdfOpenACC
 
Cloud middleware and services-a systematic mapping review
Cloud middleware and services-a systematic mapping reviewCloud middleware and services-a systematic mapping review
Cloud middleware and services-a systematic mapping reviewjournalBEEI
 
Dilnoza Bobokalonova Resume | Embedded Systems Engineering | Backend Software...
Dilnoza Bobokalonova Resume | Embedded Systems Engineering | Backend Software...Dilnoza Bobokalonova Resume | Embedded Systems Engineering | Backend Software...
Dilnoza Bobokalonova Resume | Embedded Systems Engineering | Backend Software...Dilnoza Bobokalonova
 
Dilnoza Bobokalonova Resume | Embedded Systems Engineering | Backend Software...
Dilnoza Bobokalonova Resume | Embedded Systems Engineering | Backend Software...Dilnoza Bobokalonova Resume | Embedded Systems Engineering | Backend Software...
Dilnoza Bobokalonova Resume | Embedded Systems Engineering | Backend Software...Dilnoza Bobokalonova
 

Similaire à Graph-Based Analysis and Visualization of Software Traces [SSP 2019] (20)

Visualization of Software Architectures in Virtual Reality and Augmented Reality
Visualization of Software Architectures in Virtual Reality and Augmented RealityVisualization of Software Architectures in Virtual Reality and Augmented Reality
Visualization of Software Architectures in Virtual Reality and Augmented Reality
 
Mapping and visualization of source code a survey
Mapping and visualization of source code a surveyMapping and visualization of source code a survey
Mapping and visualization of source code a survey
 
Resume
ResumeResume
Resume
 
statistical computation using R- report
statistical computation using R- reportstatistical computation using R- report
statistical computation using R- report
 
Resume_ALOK
Resume_ALOKResume_ALOK
Resume_ALOK
 
Spark-MPI: Approaching the Fifth Paradigm with Nikolay Malitsky
Spark-MPI: Approaching the Fifth Paradigm with Nikolay MalitskySpark-MPI: Approaching the Fifth Paradigm with Nikolay Malitsky
Spark-MPI: Approaching the Fifth Paradigm with Nikolay Malitsky
 
Perspectives on Software Visualization
Perspectives on Software VisualizationPerspectives on Software Visualization
Perspectives on Software Visualization
 
A systematic mapping study of performance analysis and modelling of cloud sys...
A systematic mapping study of performance analysis and modelling of cloud sys...A systematic mapping study of performance analysis and modelling of cloud sys...
A systematic mapping study of performance analysis and modelling of cloud sys...
 
Rajas mhaskar resume2k19
Rajas mhaskar resume2k19Rajas mhaskar resume2k19
Rajas mhaskar resume2k19
 
Tool-Driven Technology Transfer in Software Engineering
Tool-Driven Technology Transfer in Software EngineeringTool-Driven Technology Transfer in Software Engineering
Tool-Driven Technology Transfer in Software Engineering
 
PriyankaDighe_Resume_new
PriyankaDighe_Resume_newPriyankaDighe_Resume_new
PriyankaDighe_Resume_new
 
ai-conversation-solution-editable-ppt.pptx
ai-conversation-solution-editable-ppt.pptxai-conversation-solution-editable-ppt.pptx
ai-conversation-solution-editable-ppt.pptx
 
SEMANCO - Integrating multiple data sources, domains and tools in urban ener...
SEMANCO - Integrating multiple data sources, domains and tools in  urban ener...SEMANCO - Integrating multiple data sources, domains and tools in  urban ener...
SEMANCO - Integrating multiple data sources, domains and tools in urban ener...
 
IRJET- A Workflow Management System for Scalable Data Mining on Clouds
IRJET- A Workflow Management System for Scalable Data Mining on CloudsIRJET- A Workflow Management System for Scalable Data Mining on Clouds
IRJET- A Workflow Management System for Scalable Data Mining on Clouds
 
IRJET- Visual Information Narrator using Neural Network
IRJET- Visual Information Narrator using Neural NetworkIRJET- Visual Information Narrator using Neural Network
IRJET- Visual Information Narrator using Neural Network
 
OpenACC and Open Hackathons Monthly Highlights May 2023.pdf
OpenACC and Open Hackathons Monthly Highlights May  2023.pdfOpenACC and Open Hackathons Monthly Highlights May  2023.pdf
OpenACC and Open Hackathons Monthly Highlights May 2023.pdf
 
Cloud middleware and services-a systematic mapping review
Cloud middleware and services-a systematic mapping reviewCloud middleware and services-a systematic mapping review
Cloud middleware and services-a systematic mapping review
 
Final paper
Final paperFinal paper
Final paper
 
Dilnoza Bobokalonova Resume | Embedded Systems Engineering | Backend Software...
Dilnoza Bobokalonova Resume | Embedded Systems Engineering | Backend Software...Dilnoza Bobokalonova Resume | Embedded Systems Engineering | Backend Software...
Dilnoza Bobokalonova Resume | Embedded Systems Engineering | Backend Software...
 
Dilnoza Bobokalonova Resume | Embedded Systems Engineering | Backend Software...
Dilnoza Bobokalonova Resume | Embedded Systems Engineering | Backend Software...Dilnoza Bobokalonova Resume | Embedded Systems Engineering | Backend Software...
Dilnoza Bobokalonova Resume | Embedded Systems Engineering | Backend Software...
 

Dernier

Traditional Agroforestry System in India- Shifting Cultivation, Taungya, Home...
Traditional Agroforestry System in India- Shifting Cultivation, Taungya, Home...Traditional Agroforestry System in India- Shifting Cultivation, Taungya, Home...
Traditional Agroforestry System in India- Shifting Cultivation, Taungya, Home...jana861314
 
Pests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdfPests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdfPirithiRaju
 
Formation of low mass protostars and their circumstellar disks
Formation of low mass protostars and their circumstellar disksFormation of low mass protostars and their circumstellar disks
Formation of low mass protostars and their circumstellar disksSérgio Sacani
 
Natural Polymer Based Nanomaterials
Natural Polymer Based NanomaterialsNatural Polymer Based Nanomaterials
Natural Polymer Based NanomaterialsAArockiyaNisha
 
Recombination DNA Technology (Nucleic Acid Hybridization )
Recombination DNA Technology (Nucleic Acid Hybridization )Recombination DNA Technology (Nucleic Acid Hybridization )
Recombination DNA Technology (Nucleic Acid Hybridization )aarthirajkumar25
 
Spermiogenesis or Spermateleosis or metamorphosis of spermatid
Spermiogenesis or Spermateleosis or metamorphosis of spermatidSpermiogenesis or Spermateleosis or metamorphosis of spermatid
Spermiogenesis or Spermateleosis or metamorphosis of spermatidSarthak Sekhar Mondal
 
STERILITY TESTING OF PHARMACEUTICALS ppt by DR.C.P.PRINCE
STERILITY TESTING OF PHARMACEUTICALS ppt by DR.C.P.PRINCESTERILITY TESTING OF PHARMACEUTICALS ppt by DR.C.P.PRINCE
STERILITY TESTING OF PHARMACEUTICALS ppt by DR.C.P.PRINCEPRINCE C P
 
Botany krishna series 2nd semester Only Mcq type questions
Botany krishna series 2nd semester Only Mcq type questionsBotany krishna series 2nd semester Only Mcq type questions
Botany krishna series 2nd semester Only Mcq type questionsSumit Kumar yadav
 
Broad bean, Lima Bean, Jack bean, Ullucus.pptx
Broad bean, Lima Bean, Jack bean, Ullucus.pptxBroad bean, Lima Bean, Jack bean, Ullucus.pptx
Broad bean, Lima Bean, Jack bean, Ullucus.pptxjana861314
 
Green chemistry and Sustainable development.pptx
Green chemistry  and Sustainable development.pptxGreen chemistry  and Sustainable development.pptx
Green chemistry and Sustainable development.pptxRajatChauhan518211
 
Presentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptxPresentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptxgindu3009
 
Hubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroidsHubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroidsSérgio Sacani
 
Recombinant DNA technology (Immunological screening)
Recombinant DNA technology (Immunological screening)Recombinant DNA technology (Immunological screening)
Recombinant DNA technology (Immunological screening)PraveenaKalaiselvan1
 
A relative description on Sonoporation.pdf
A relative description on Sonoporation.pdfA relative description on Sonoporation.pdf
A relative description on Sonoporation.pdfnehabiju2046
 
Nightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43b
Nightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43bNightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43b
Nightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43bSérgio Sacani
 
TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...
TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...
TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...ssifa0344
 
Bentham & Hooker's Classification. along with the merits and demerits of the ...
Bentham & Hooker's Classification. along with the merits and demerits of the ...Bentham & Hooker's Classification. along with the merits and demerits of the ...
Bentham & Hooker's Classification. along with the merits and demerits of the ...Nistarini College, Purulia (W.B) India
 
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...Sérgio Sacani
 
Orientation, design and principles of polyhouse
Orientation, design and principles of polyhouseOrientation, design and principles of polyhouse
Orientation, design and principles of polyhousejana861314
 
Biological Classification BioHack (3).pdf
Biological Classification BioHack (3).pdfBiological Classification BioHack (3).pdf
Biological Classification BioHack (3).pdfmuntazimhurra
 

Dernier (20)

Traditional Agroforestry System in India- Shifting Cultivation, Taungya, Home...
Traditional Agroforestry System in India- Shifting Cultivation, Taungya, Home...Traditional Agroforestry System in India- Shifting Cultivation, Taungya, Home...
Traditional Agroforestry System in India- Shifting Cultivation, Taungya, Home...
 
Pests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdfPests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdf
 
Formation of low mass protostars and their circumstellar disks
Formation of low mass protostars and their circumstellar disksFormation of low mass protostars and their circumstellar disks
Formation of low mass protostars and their circumstellar disks
 
Natural Polymer Based Nanomaterials
Natural Polymer Based NanomaterialsNatural Polymer Based Nanomaterials
Natural Polymer Based Nanomaterials
 
Recombination DNA Technology (Nucleic Acid Hybridization )
Recombination DNA Technology (Nucleic Acid Hybridization )Recombination DNA Technology (Nucleic Acid Hybridization )
Recombination DNA Technology (Nucleic Acid Hybridization )
 
Spermiogenesis or Spermateleosis or metamorphosis of spermatid
Spermiogenesis or Spermateleosis or metamorphosis of spermatidSpermiogenesis or Spermateleosis or metamorphosis of spermatid
Spermiogenesis or Spermateleosis or metamorphosis of spermatid
 
STERILITY TESTING OF PHARMACEUTICALS ppt by DR.C.P.PRINCE
STERILITY TESTING OF PHARMACEUTICALS ppt by DR.C.P.PRINCESTERILITY TESTING OF PHARMACEUTICALS ppt by DR.C.P.PRINCE
STERILITY TESTING OF PHARMACEUTICALS ppt by DR.C.P.PRINCE
 
Botany krishna series 2nd semester Only Mcq type questions
Botany krishna series 2nd semester Only Mcq type questionsBotany krishna series 2nd semester Only Mcq type questions
Botany krishna series 2nd semester Only Mcq type questions
 
Broad bean, Lima Bean, Jack bean, Ullucus.pptx
Broad bean, Lima Bean, Jack bean, Ullucus.pptxBroad bean, Lima Bean, Jack bean, Ullucus.pptx
Broad bean, Lima Bean, Jack bean, Ullucus.pptx
 
Green chemistry and Sustainable development.pptx
Green chemistry  and Sustainable development.pptxGreen chemistry  and Sustainable development.pptx
Green chemistry and Sustainable development.pptx
 
Presentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptxPresentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptx
 
Hubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroidsHubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroids
 
Recombinant DNA technology (Immunological screening)
Recombinant DNA technology (Immunological screening)Recombinant DNA technology (Immunological screening)
Recombinant DNA technology (Immunological screening)
 
A relative description on Sonoporation.pdf
A relative description on Sonoporation.pdfA relative description on Sonoporation.pdf
A relative description on Sonoporation.pdf
 
Nightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43b
Nightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43bNightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43b
Nightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43b
 
TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...
TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...
TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...
 
Bentham & Hooker's Classification. along with the merits and demerits of the ...
Bentham & Hooker's Classification. along with the merits and demerits of the ...Bentham & Hooker's Classification. along with the merits and demerits of the ...
Bentham & Hooker's Classification. along with the merits and demerits of the ...
 
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
 
Orientation, design and principles of polyhouse
Orientation, design and principles of polyhouseOrientation, design and principles of polyhouse
Orientation, design and principles of polyhouse
 
Biological Classification BioHack (3).pdf
Biological Classification BioHack (3).pdfBiological Classification BioHack (3).pdf
Biological Classification BioHack (3).pdf
 

Graph-Based Analysis and Visualization of Software Traces [SSP 2019]

  • 1. Graph-Based Analysis and Visualization of Software Traces Symposium on Software Performance 2019 Würzburg, November 5, 2019 Richard Müller and Matteo Fischer
  • 2. SSP 2019 | Graph-Based Analysis and Visualization of Software Traces Information Systems Institute, Software Engineering Department WHY GRAPHS? 2 [Diehl and Telea 2014, Müller et al. 2018]  Software data naturally map to a multivariate, compound, attributed, and time-dependent graph
  • 3. SSP 2019 | Graph-Based Analysis and Visualization of Software Traces Information Systems Institute, Software Engineering Department KIEKER  Framework to monitor, analyze, and visualize software behavior  Supports event-based and state-based monitoring  Usable with Java, .NET, COBOL, and Visual Basic 6  Provides tools  to inspect and analyze traces  to visualize them as UML sequence diagrams, markov chains, dependency graphs, and trace timing diagrams  Output writers save traces to the file system or in a relational database 3 [van Hoorn, Waller, and Hasselbring 2012; Waller 2014; http://kieker-monitoring.net]
  • 4. SSP 2019 | Graph-Based Analysis and Visualization of Software Traces Information Systems Institute, Software Engineering Department BUT…  There is no output writer for a graph database  The visualizations produced by the Kieker tools are static images, for example,  Deployment operation dependency graph of Bookstore example 4
  • 5. SSP 2019 | Graph-Based Analysis and Visualization of Software Traces Information Systems Institute, Software Engineering Department CONTRIBUTION  jQAssistant plugin that scans event-based Kieker traces and stores them as a graph in a Neo4j database  The plugin supports application performance monitoring and architecture discovery  It complements existing Kieker tools  Analysis  Inspect and analyze traces with the graph query language Cypher  Visualization  Use interactive visualizations of call and dependency graphs 5
  • 6. SSP 2019 | Graph-Based Analysis and Visualization of Software Traces Information Systems Institute, Software Engineering Department TECHNICAL BACKGROUND 6
  • 7. SSP 2019 | Graph-Based Analysis and Visualization of Software Traces Information Systems Institute, Software Engineering Department NEO4J  Native graph database to store, manage, and query large amounts of connected data  Models graph data with a labeled property graph  Labels are used to classify nodes  Relationships connect nodes, have a type, and can have a direction  Properties are attributes of nodes and relationships and stored as key-value pairs 7 [Needham and Hodler 2019; https://neo4j.com]
  • 8. SSP 2019 | Graph-Based Analysis and Visualization of Software Traces Information Systems Institute, Software Engineering Department CYPHER  Graph query language of Neo4j  Matches given patterns in the graph using a visual, ASCII art-based syntax  ( ) node  -[ ]-> directed relationship MATCH (m1:Method)-[CALLS]->(m2:Method) RETURN m1.name, m2.name 8 [Francis et al. 2018; https://www.opencypher.org]
  • 9. SSP 2019 | Graph-Based Analysis and Visualization of Software Traces Information Systems Institute, Software Engineering Department JQASSISTANT 9  Scans software artifacts and stores them in a Neo4j graph database  Analyzes and modifies the graph data with rules  Constraints to identify violations  Concepts to aggregate, enrich, and filter  Create reports [https://jqassistant.org; https://softvis-research.github.io/jqassistant-plugins]  Can be executed with Maven or from the command line  Extendable through plugins, for example, Java, Jira, GitHub- Issues, JaCoCo scanner
  • 10. SSP 2019 | Graph-Based Analysis and Visualization of Software Traces Information Systems Institute, Software Engineering Department KIEKER PLUGIN  Plugin for jQAssistant to scan and analyze event-based software traces  Published on GitHub under GPL-3.0 10 [https://github.com/softvis-research/jqa-kieker-plugin]
  • 11. SSP 2019 | Graph-Based Analysis and Visualization of Software Traces Information Systems Institute, Software Engineering Department KIEKER GRAPH SCHEMA 11
  • 12. SSP 2019 | Graph-Based Analysis and Visualization of Software Traces Information Systems Institute, Software Engineering Department APPLICATION EXAMPLE 12 [http://kieker-monitoring.net/documentation]  Instrumented the Bookstore example from the Kieker user guide with AspectJ and activated aspects OperationExecution and OperationCall  Scanned the monitored traces with the jQAssistant command line tool using the Kieker plugin
  • 13. SSP 2019 | Graph-Based Analysis and Visualization of Software Traces Information Systems Institute, Software Engineering Department ANALYSIS 13 MATCH (t:Type)-[:DECLARES]->(m:Method) WHERE t.fqn STARTS WITH "kieker" RETURN t.name as Type, m.name AS Method, m.incomingCalls AS Calls, m.duration AS Duration ORDER BY Duration DESC
  • 14. SSP 2019 | Graph-Based Analysis and Visualization of Software Traces Information Systems Institute, Software Engineering Department CALL GRAPH 14 [https://www.yworks.com/neo4j-explorer] The property duration of each Method node is mapped to a color gradient from green (short) to red (long)
  • 15. SSP 2019 | Graph-Based Analysis and Visualization of Software Traces Information Systems Institute, Software Engineering Department DEPENDENCY GRAPH 15 [https://www.yworks.com/neo4j-explorer]
  • 16. SSP 2019 | Graph-Based Analysis and Visualization of Software Traces Information Systems Institute, Software Engineering Department CONCLUSION  Presented a jQAssistant plugin that scans event-based software traces and stores them as a graph in a Neo4j database  Illustrated feasibility and usefulness with the Bookstore example  Analysis with an example Cypher query for aggregated method calls  Visualization of the call and dependency graphs in the yFiles Neo4j explorer 16
  • 17. SSP 2019 | Graph-Based Analysis and Visualization of Software Traces Information Systems Institute, Software Engineering Department FUTURE WORK  Extend the plugin to scan further record types, for example, state-based records  The plugin can be used as a blueprint to contribute a Kieker writer for graph databases 17
  • 18. SSP 2019 | Graph-Based Analysis and Visualization of Software Traces Information Systems Institute, Software Engineering Department REFERENCES  S. Diehl and A. C. Telea. “Multivariate Graphs in Software Engineering“. In: Multivar. Netw. Vis. Dagstuhl Semin. #13201 Dagstuhl Castle, Ger. May 12-17, 2013 Revis. Discuss. Ed. by A. Kerren, H. C. Purchase, and M. O. Ward. Vol. 8380. Lecture Notes in Computer Science. Cham: Springer International Publishing, 2014. Chap. 2, pp. 13-36.  N. Francis et al. “Cypher: An Evolving Query Language for Property Graphs”. In: ACM SIG-MOD Int. Conf. Manag. Data. 2018, p. 13.  A. van Hoorn, J. Waller, and W. Hasselbring. “Kieker: A framework for application performance monitoring and dynamic software analysis”. In: 3rd ACM/SPEC Int. Conf. Perform. Eng. (ICPE 2012). ACM, 2012, pp. 247-248.  R. Müller et al. “Towards an Open Source Stack to Create a Unfied Data Source for Software Analysis and Visualization”. In: Proc. 6th IEEE Work. Conf. Softw. Vis. Madrid, Spain: IEEE, 2018.  M. Needham and A. E. Hodler. Graph Algorithms -Practical Examples in Apache Spark & Neo4j. 1st ed. O'Reilly, 2019.  J. Waller. Performance Benchmarking of Application Monitoring Frameworks. Kiel Computer Science Series 2014/5. Department of Computer Science, Kiel University, 2014. 18
  • 19. THANK YOU. Richard Müller and Matteo Fischer Information Systems Institute, Software Engineering Department rmueller@wifa.uni-leipzig.de @rimllr https://github.com/softvis-research http://softvis.wifa.uni-leipzig.de 19