SlideShare a Scribd company logo
1 of 14
Download to read offline
TOWARDS AN OPEN SOURCE STACK TO
CREATE A UNIFIED DATA SOURCE FOR
SOFTWARE ANALYSIS AND VISUALIZATION
VISSOFT 2018
Madrid, September 24, 2018
Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche,
Markus Harrer
VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization
Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer
HOW TO GET A UNIFIED DATA SOURCE FOR
SOFTWARE ANALYSIS AND VISUALIZATION?
2
?
[Diehl 2007]
VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization
Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer
HOW TO GET A UNIFIED DATA SOURCE FOR
SOFTWARE ANALYSIS AND VISUALIZATION?
3
Software data naturally maps to a
multivariate, compound, attributed,
and time-dependent graph
[Diehl & Telea 2014]
VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization
Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer
CHALLENGES IN CREATING, STORING, AND
QUERYING SOFTWARE DATA
1. Schema
 How to model a given aspect of a software system in
terms of entities, relations, and attributes?
2. Selection
 How to select data relevant for a given task from an entire
graph?
3. Implementation
 How to store the graph in a way that is efficient for quickly
reading and writing large amounts of data?
4
[Diehl & Telea 2014]
VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization
Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer
OPEN SOURCE STACK
5
VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization
Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer
DATA ACQUISITION
 Plugins scan different kinds of software
artifacts, e.g.,
 Java bytecode, Git, Jacoco, Findbugs
 The extracted data is stored as a graph in
a Neo4j database
6
VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization
Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer
ANALYSIS
 Aggregation and enrichment
 Rules analyze and modify the graphs
 Concepts aggregate, enrich, and unify the data
7
VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization
Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer
ANALYSIS
 Filtering
 Cypher queries filter relevant data and
return tabular or graph results
8
VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization
Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer
VISUALIZATION
 Views are dynamically created based on the
query result using D3 visualization components
embedded in a React app
9
Hotspot analysis
view
type = nesting of
circles
loc = size of circles
commits = color of
circles
VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization
Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer
PROOF OF CONCEPT
 Software Analysis and Visualization Dashboard as one
visualization frontend for the open source stack
 Supports project leaders in decision-making
 Provides interactive views concerning architecture and
dependencies as well as resource, risk, and quality
management
 https://github.com/softvis-research/jqa-dashboard
 Screencast demonstrating the data acquisition, analysis,
and visualization of JUnit
 https://youtu.be/LebVqfzQ_KE
10
VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization
Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer
RELATED WORK
 Tools for parsing, modeling, and querying software data
 Moose [Nierstrasz et al. 2005]
 Famix, Dynamix, and Hismo [Ducasse et al. 2011, Greevy 2007, Gîrba
et al. 2005]
 Rascal [Klint et al. 2009]
 Recent approaches using a graph database for storing
and querying software data
 VerX-Combo [Yano et al. 2015]
 Swarm Debugging Prototype [Petrillo et al. 2015]
 VIMETRIK and KNIME [Khan et al. 2015, Berthold et al. 2009]
11
VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization
Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer
BENEFITS OF THE PROPOSED STACK
 Fills research gap
 Tackles the challenges in creating, storing, and querying
heterogeneous software data
 Customizable
 Is extendable with scanner plugins for further software
artifacts
 Reusable
 Has an interchangeable visualization frontend
 Open Source
 Consists of loosely coupled Open Source components
12
VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization
Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer
REFERENCES
 S. Diehl, Software Visualization: Visualizing the Structure, Behaviour, and Evolution of Software. Springer, 2007.
 S. Diehl and A. C. Telea, Multivariate Graphs in Software Engineering, ser. Lecture Notes in Computer Science. Cham:
Springer International Publishing, 2014, vol. 8380, ch. 2, pp. 13–36.
 O. Nierstrasz, S. Ducasse, and T. Gîrba, “The story of moose: an agile reengineering environment,” in Proc. 10th Eur.
Softw. Eng. Conf. held jointly with 13th SIGSOFT Int. Symp. Found. Softw. Eng., vol. 30. Lisbon, Portugal: ACM, 2005,
pp. 1–10.
 S. Ducasse, N. Anquetil, U. Bhatti, A. C. Hora, J. Laval, and T. Gˆırba, “MSE and FAMIX 3.0: an interexchange format
and source code model family,” p. 40, 2011.
 O. Greevy, “Dynamix - a meta-model to support feature-centric analy- sis,” in 1st Int. Work. FAMIX Moose
Reengineering, 2007.
 T. Gîrba, J. M. Favre, and S. Ducasse, “Using meta-model transforma- tion to model software evolution,” Electron.
Notes Theor. Comput. Sci., vol. 137, no. 3, pp. 57–64, 2005.
 P. Klint, T. van der Storm, and J. Vinju, “RASCAL: A Domain Specific Language for Source Code Analysis and
Manipulation,” in 2009 9th IEEE Int. Work. Conf. Source Code Anal. Manip., 2009, pp. 168–177.
 Y. Yano, R. G. Kula, T. Ishio, and K. Inoue, “VerXCombo: An Interactive Data Visualization of Popular Library Version
Combinations,” in 23rd Int. Conf. Progr. Compr., 2015, pp. 291–294.
 F. Petrillo, G. Lacerda, M. Pimenta, and C. Freitas, “Visualizing inter- active and shared debugging sessions,” in 3rd
IEEE Work. Conf. Softw. Vis., 2015, pp. 140–144.
 T. Khan, H. Barthel, A. Ebert, and P. Liggesmeyer, “Visual analytics of software structure and metrics,” in 3rd IEEE
Work. Conf. Softw. Vis., 2015, pp. 16–25.
 M. R. Berthold, N. Cebron, F. Dill, T. R. Gabriel, T. Kötter, T. Meinl, P. Ohl, K. Thiel, and B. Wiswedel, “KNIME - the
Konstanz information miner,” ACM SIGKDD Explor. Newsl., vol. 11, no. 1, p. 26, 2009.
13
THANK YOU.
Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer
rmueller@wifa.uni-leipzig.de
@rimllr
https://github.com/softvis-research
http://softvis.wifa.uni-leipzig.de
14

More Related Content

Recently uploaded

Human & Veterinary Respiratory Physilogy_DR.E.Muralinath_Associate Professor....
Human & Veterinary Respiratory Physilogy_DR.E.Muralinath_Associate Professor....Human & Veterinary Respiratory Physilogy_DR.E.Muralinath_Associate Professor....
Human & Veterinary Respiratory Physilogy_DR.E.Muralinath_Associate Professor....muralinath2
 
Chemistry 5th semester paper 1st Notes.pdf
Chemistry 5th semester paper 1st Notes.pdfChemistry 5th semester paper 1st Notes.pdf
Chemistry 5th semester paper 1st Notes.pdfSumit Kumar yadav
 
Thyroid Physiology_Dr.E. Muralinath_ Associate Professor
Thyroid Physiology_Dr.E. Muralinath_ Associate ProfessorThyroid Physiology_Dr.E. Muralinath_ Associate Professor
Thyroid Physiology_Dr.E. Muralinath_ Associate Professormuralinath2
 
Bhiwandi Bhiwandi ❤CALL GIRL 7870993772 ❤CALL GIRLS ESCORT SERVICE In Bhiwan...
Bhiwandi Bhiwandi ❤CALL GIRL 7870993772 ❤CALL GIRLS  ESCORT SERVICE In Bhiwan...Bhiwandi Bhiwandi ❤CALL GIRL 7870993772 ❤CALL GIRLS  ESCORT SERVICE In Bhiwan...
Bhiwandi Bhiwandi ❤CALL GIRL 7870993772 ❤CALL GIRLS ESCORT SERVICE In Bhiwan...Monika Rani
 
Velocity and Acceleration PowerPoint.ppt
Velocity and Acceleration PowerPoint.pptVelocity and Acceleration PowerPoint.ppt
Velocity and Acceleration PowerPoint.pptRakeshMohan42
 
GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)Areesha Ahmad
 
Porella : features, morphology, anatomy, reproduction etc.
Porella : features, morphology, anatomy, reproduction etc.Porella : features, morphology, anatomy, reproduction etc.
Porella : features, morphology, anatomy, reproduction etc.Silpa
 
Stages in the normal growth curve
Stages in the normal growth curveStages in the normal growth curve
Stages in the normal growth curveAreesha Ahmad
 
GBSN - Microbiology (Unit 3)
GBSN - Microbiology (Unit 3)GBSN - Microbiology (Unit 3)
GBSN - Microbiology (Unit 3)Areesha Ahmad
 
Factory Acceptance Test( FAT).pptx .
Factory Acceptance Test( FAT).pptx       .Factory Acceptance Test( FAT).pptx       .
Factory Acceptance Test( FAT).pptx .Poonam Aher Patil
 
FAIRSpectra - Enabling the FAIRification of Spectroscopy and Spectrometry
FAIRSpectra - Enabling the FAIRification of Spectroscopy and SpectrometryFAIRSpectra - Enabling the FAIRification of Spectroscopy and Spectrometry
FAIRSpectra - Enabling the FAIRification of Spectroscopy and SpectrometryAlex Henderson
 
GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)Areesha Ahmad
 
Use of mutants in understanding seedling development.pptx
Use of mutants in understanding seedling development.pptxUse of mutants in understanding seedling development.pptx
Use of mutants in understanding seedling development.pptxRenuJangid3
 
PSYCHOSOCIAL NEEDS. in nursing II sem pptx
PSYCHOSOCIAL NEEDS. in nursing II sem pptxPSYCHOSOCIAL NEEDS. in nursing II sem pptx
PSYCHOSOCIAL NEEDS. in nursing II sem pptxSuji236384
 
GBSN - Microbiology (Unit 2)
GBSN - Microbiology (Unit 2)GBSN - Microbiology (Unit 2)
GBSN - Microbiology (Unit 2)Areesha Ahmad
 
module for grade 9 for distance learning
module for grade 9 for distance learningmodule for grade 9 for distance learning
module for grade 9 for distance learninglevieagacer
 
An introduction on sequence tagged site mapping
An introduction on sequence tagged site mappingAn introduction on sequence tagged site mapping
An introduction on sequence tagged site mappingadibshanto115
 
300003-World Science Day For Peace And Development.pptx
300003-World Science Day For Peace And Development.pptx300003-World Science Day For Peace And Development.pptx
300003-World Science Day For Peace And Development.pptxryanrooker
 

Recently uploaded (20)

Human & Veterinary Respiratory Physilogy_DR.E.Muralinath_Associate Professor....
Human & Veterinary Respiratory Physilogy_DR.E.Muralinath_Associate Professor....Human & Veterinary Respiratory Physilogy_DR.E.Muralinath_Associate Professor....
Human & Veterinary Respiratory Physilogy_DR.E.Muralinath_Associate Professor....
 
Chemistry 5th semester paper 1st Notes.pdf
Chemistry 5th semester paper 1st Notes.pdfChemistry 5th semester paper 1st Notes.pdf
Chemistry 5th semester paper 1st Notes.pdf
 
Thyroid Physiology_Dr.E. Muralinath_ Associate Professor
Thyroid Physiology_Dr.E. Muralinath_ Associate ProfessorThyroid Physiology_Dr.E. Muralinath_ Associate Professor
Thyroid Physiology_Dr.E. Muralinath_ Associate Professor
 
Bhiwandi Bhiwandi ❤CALL GIRL 7870993772 ❤CALL GIRLS ESCORT SERVICE In Bhiwan...
Bhiwandi Bhiwandi ❤CALL GIRL 7870993772 ❤CALL GIRLS  ESCORT SERVICE In Bhiwan...Bhiwandi Bhiwandi ❤CALL GIRL 7870993772 ❤CALL GIRLS  ESCORT SERVICE In Bhiwan...
Bhiwandi Bhiwandi ❤CALL GIRL 7870993772 ❤CALL GIRLS ESCORT SERVICE In Bhiwan...
 
Velocity and Acceleration PowerPoint.ppt
Velocity and Acceleration PowerPoint.pptVelocity and Acceleration PowerPoint.ppt
Velocity and Acceleration PowerPoint.ppt
 
GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)
 
Porella : features, morphology, anatomy, reproduction etc.
Porella : features, morphology, anatomy, reproduction etc.Porella : features, morphology, anatomy, reproduction etc.
Porella : features, morphology, anatomy, reproduction etc.
 
Stages in the normal growth curve
Stages in the normal growth curveStages in the normal growth curve
Stages in the normal growth curve
 
GBSN - Microbiology (Unit 3)
GBSN - Microbiology (Unit 3)GBSN - Microbiology (Unit 3)
GBSN - Microbiology (Unit 3)
 
Factory Acceptance Test( FAT).pptx .
Factory Acceptance Test( FAT).pptx       .Factory Acceptance Test( FAT).pptx       .
Factory Acceptance Test( FAT).pptx .
 
FAIRSpectra - Enabling the FAIRification of Spectroscopy and Spectrometry
FAIRSpectra - Enabling the FAIRification of Spectroscopy and SpectrometryFAIRSpectra - Enabling the FAIRification of Spectroscopy and Spectrometry
FAIRSpectra - Enabling the FAIRification of Spectroscopy and Spectrometry
 
GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)
 
Use of mutants in understanding seedling development.pptx
Use of mutants in understanding seedling development.pptxUse of mutants in understanding seedling development.pptx
Use of mutants in understanding seedling development.pptx
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
PSYCHOSOCIAL NEEDS. in nursing II sem pptx
PSYCHOSOCIAL NEEDS. in nursing II sem pptxPSYCHOSOCIAL NEEDS. in nursing II sem pptx
PSYCHOSOCIAL NEEDS. in nursing II sem pptx
 
GBSN - Microbiology (Unit 2)
GBSN - Microbiology (Unit 2)GBSN - Microbiology (Unit 2)
GBSN - Microbiology (Unit 2)
 
module for grade 9 for distance learning
module for grade 9 for distance learningmodule for grade 9 for distance learning
module for grade 9 for distance learning
 
PATNA CALL GIRLS 8617370543 LOW PRICE ESCORT SERVICE
PATNA CALL GIRLS 8617370543 LOW PRICE ESCORT SERVICEPATNA CALL GIRLS 8617370543 LOW PRICE ESCORT SERVICE
PATNA CALL GIRLS 8617370543 LOW PRICE ESCORT SERVICE
 
An introduction on sequence tagged site mapping
An introduction on sequence tagged site mappingAn introduction on sequence tagged site mapping
An introduction on sequence tagged site mapping
 
300003-World Science Day For Peace And Development.pptx
300003-World Science Day For Peace And Development.pptx300003-World Science Day For Peace And Development.pptx
300003-World Science Day For Peace And Development.pptx
 

Featured

Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 

Featured (20)

Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 

Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization [VISSOFT 2018]

  • 1. TOWARDS AN OPEN SOURCE STACK TO CREATE A UNIFIED DATA SOURCE FOR SOFTWARE ANALYSIS AND VISUALIZATION VISSOFT 2018 Madrid, September 24, 2018 Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer
  • 2. VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer HOW TO GET A UNIFIED DATA SOURCE FOR SOFTWARE ANALYSIS AND VISUALIZATION? 2 ? [Diehl 2007]
  • 3. VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer HOW TO GET A UNIFIED DATA SOURCE FOR SOFTWARE ANALYSIS AND VISUALIZATION? 3 Software data naturally maps to a multivariate, compound, attributed, and time-dependent graph [Diehl & Telea 2014]
  • 4. VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer CHALLENGES IN CREATING, STORING, AND QUERYING SOFTWARE DATA 1. Schema  How to model a given aspect of a software system in terms of entities, relations, and attributes? 2. Selection  How to select data relevant for a given task from an entire graph? 3. Implementation  How to store the graph in a way that is efficient for quickly reading and writing large amounts of data? 4 [Diehl & Telea 2014]
  • 5. VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer OPEN SOURCE STACK 5
  • 6. VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer DATA ACQUISITION  Plugins scan different kinds of software artifacts, e.g.,  Java bytecode, Git, Jacoco, Findbugs  The extracted data is stored as a graph in a Neo4j database 6
  • 7. VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer ANALYSIS  Aggregation and enrichment  Rules analyze and modify the graphs  Concepts aggregate, enrich, and unify the data 7
  • 8. VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer ANALYSIS  Filtering  Cypher queries filter relevant data and return tabular or graph results 8
  • 9. VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer VISUALIZATION  Views are dynamically created based on the query result using D3 visualization components embedded in a React app 9 Hotspot analysis view type = nesting of circles loc = size of circles commits = color of circles
  • 10. VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer PROOF OF CONCEPT  Software Analysis and Visualization Dashboard as one visualization frontend for the open source stack  Supports project leaders in decision-making  Provides interactive views concerning architecture and dependencies as well as resource, risk, and quality management  https://github.com/softvis-research/jqa-dashboard  Screencast demonstrating the data acquisition, analysis, and visualization of JUnit  https://youtu.be/LebVqfzQ_KE 10
  • 11. VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer RELATED WORK  Tools for parsing, modeling, and querying software data  Moose [Nierstrasz et al. 2005]  Famix, Dynamix, and Hismo [Ducasse et al. 2011, Greevy 2007, Gîrba et al. 2005]  Rascal [Klint et al. 2009]  Recent approaches using a graph database for storing and querying software data  VerX-Combo [Yano et al. 2015]  Swarm Debugging Prototype [Petrillo et al. 2015]  VIMETRIK and KNIME [Khan et al. 2015, Berthold et al. 2009] 11
  • 12. VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer BENEFITS OF THE PROPOSED STACK  Fills research gap  Tackles the challenges in creating, storing, and querying heterogeneous software data  Customizable  Is extendable with scanner plugins for further software artifacts  Reusable  Has an interchangeable visualization frontend  Open Source  Consists of loosely coupled Open Source components 12
  • 13. VISSOFT 2018 | Towards an Open Source Stack to Create a Unified Data Source for Software Analysis and Visualization Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer REFERENCES  S. Diehl, Software Visualization: Visualizing the Structure, Behaviour, and Evolution of Software. Springer, 2007.  S. Diehl and A. C. Telea, Multivariate Graphs in Software Engineering, ser. Lecture Notes in Computer Science. Cham: Springer International Publishing, 2014, vol. 8380, ch. 2, pp. 13–36.  O. Nierstrasz, S. Ducasse, and T. Gîrba, “The story of moose: an agile reengineering environment,” in Proc. 10th Eur. Softw. Eng. Conf. held jointly with 13th SIGSOFT Int. Symp. Found. Softw. Eng., vol. 30. Lisbon, Portugal: ACM, 2005, pp. 1–10.  S. Ducasse, N. Anquetil, U. Bhatti, A. C. Hora, J. Laval, and T. Gˆırba, “MSE and FAMIX 3.0: an interexchange format and source code model family,” p. 40, 2011.  O. Greevy, “Dynamix - a meta-model to support feature-centric analy- sis,” in 1st Int. Work. FAMIX Moose Reengineering, 2007.  T. Gîrba, J. M. Favre, and S. Ducasse, “Using meta-model transforma- tion to model software evolution,” Electron. Notes Theor. Comput. Sci., vol. 137, no. 3, pp. 57–64, 2005.  P. Klint, T. van der Storm, and J. Vinju, “RASCAL: A Domain Specific Language for Source Code Analysis and Manipulation,” in 2009 9th IEEE Int. Work. Conf. Source Code Anal. Manip., 2009, pp. 168–177.  Y. Yano, R. G. Kula, T. Ishio, and K. Inoue, “VerXCombo: An Interactive Data Visualization of Popular Library Version Combinations,” in 23rd Int. Conf. Progr. Compr., 2015, pp. 291–294.  F. Petrillo, G. Lacerda, M. Pimenta, and C. Freitas, “Visualizing inter- active and shared debugging sessions,” in 3rd IEEE Work. Conf. Softw. Vis., 2015, pp. 140–144.  T. Khan, H. Barthel, A. Ebert, and P. Liggesmeyer, “Visual analytics of software structure and metrics,” in 3rd IEEE Work. Conf. Softw. Vis., 2015, pp. 16–25.  M. R. Berthold, N. Cebron, F. Dill, T. R. Gabriel, T. Kötter, T. Meinl, P. Ohl, K. Thiel, and B. Wiswedel, “KNIME - the Konstanz information miner,” ACM SIGKDD Explor. Newsl., vol. 11, no. 1, p. 26, 2009. 13
  • 14. THANK YOU. Richard Müller, Dirk Mahler, Michael Hunger, Jens Nerche, Markus Harrer rmueller@wifa.uni-leipzig.de @rimllr https://github.com/softvis-research http://softvis.wifa.uni-leipzig.de 14