SlideShare a Scribd company logo
1 of 23
Download to read offline
Visualization of Software Architectures in Virtual
Reality and Augmented Reality
Andreas Schreiber1, Lisa Nafeie1,2, Artur Baranowski1,2,
Peter Seipel1, Martin Misiak2
1 Intelligent and Distributed Systems
German Aerospace Center (DLR)
Cologne, Germany
2 TH Köln – University of Applied
Sciences, Cologne, Germany
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 1
Intelligent and Distributed Systems – Research Topics
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 2
Machine
Learning
BlockchainsWorkflows &
Provenance
Distributed
Systems
Software
Analytics
</>
Software
Engineering
Large Software Systems for Simulation, Data Analytics, System Design, ...
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 3
OSGi-based Applications
Large applications at DLR are
based on OSGi (Eclipse RCP)
• RCE: Distributed Design
and Simulation
• VirSat: Satellite Design
Developed by Teams
• >5 members
• Usually high labor turnover
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 4
Our Use Cases
• Getting an impression of the
dimensions of the application
• Introducing a new member of the
development team
• Starting to work on a new module
• Checking for abnormalities in
the architecture
OSGi
Module system and service platform for Java
• Bundles
• Normal components (JARs) with extra
manifest headers
• Contain packages, which contain
classes
• Services
• Java objects with Java interfaces
• Connect bundles dynamically
• Dependencies
• Import and Export of code between
bundles
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 5
Source: D. Seider, A. Schreiber, T. Marquardt and M. Brüggemann, "Visualizing
Modules and Dependencies of OSGi-Based Applications," 2016 IEEE Working
Conference on Software Visualization (VISSOFT), Raleigh, NC, 2016, pp. 96-100.
Repository Mining – Scanning GIT Repositories with jQAssistant
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 6
Data Mining
Repository
git
OSGi Application
Graph Database
Neo4j
.MF
Java XML
Visualization
VR IslandViz
Unity3D / C#
Devices
Oculus Rift /
HTC Vive
Scanning and
Analysis
JQAssistant
L. Nafeie and A. Schreiber, “Visualization of Software Components and Dependency
Graphs in Virtual Reality”. 24th ACM Symposium on Virtual Reality Software and
Technology (VRST 2018), Tokyo, Japan, pp. 133:1-133:2
Data Model – Meta Graph in Neo4j
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 7
Analyzing and Querying – CYPHER Graph Query Language (Neo4j)
CYPHER „Query“ with one „Clause“
MATCH
(a)-[r:RELATIONSHIP_TYPE]->(b)
RETURN a, r, b
Nodes in our data model
• Packages: PackageFragment
• Classes: CompilationUnit
Relationships in our data model
• Dependencies: EXPORTS, IMPORTS
• Service implementations and
dependencies:
HAS_SERVICE_COMPONENT,
HAS_IMPLEMENTATION_CLASS, …
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 8
MATCH
(pf:PackageFragment)-[c:CONTAINS]->
(cu:CompilationUnit),
()-[e:EXPORTS]->(),
()-[i:IMPORTS]->(),
()-[hs:HAS_SERVICE_COMPONENT]->(),
()-[hi:HAS_IMPLEMENTATION_CLASS]->(),
()-[ps:PROVIDES_SERVICE]->(),
()-[hfh:HAS_FRAGMENT_HOST]->(),
()-[hba:HAS_BUNDLE_ACTIVATOR]->(),
()-[rb:REQUIRES_BUNDLE]->()
RETURN pf,c,cu,e,i,hs,hi,ps,hfh,hba,rb
Software Visualization
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 9
Source: L. Merino, M. Ghafari and O. Nierstrasz, "Towards Actionable Visualisation
in Software Development," 2016 IEEE Working Conference on Software Visualization
(VISSOFT), Raleigh, NC, 2016, pp. 61-70.
Island Metaphor
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 10
Classes
Multi-storey buildings with a new
storey for every n lines of codes
Packages
Continuous regions
Bundles
Islands with multiple regions;
each island with distinct shape
Dependencies
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 11
Ports
Incoming and outgoing package
dependencies
Arrows
Strength and direction of a package
dependency
Services
OSGi service interfaces and service
components
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 12
Visualization in Virtual Reality
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 13
Source: M. Misiak, D. Seider, S. Zur, A. Fuhrmann, and A. Schreiber, ”Immersive
Exploration of OSGi-based Software Systems in Virtual Reality," 25th IEEE
Conference on Virtual Reality and 3D User Interfaces (IEEE VR 2018), Reutlingen,
Germany, 2018.
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 14
Virtual Table
Services and Service Dependencies
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 15
Navigation
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 16
Virtual Tablet
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 17
Visualization in Augmented Reality
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 18
Information for Selected Bundles – Wire Frame and Information Panel
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 19
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 20
Interaction in AR – „Air Tap“ Gesture and Voice Control
Exploration of Software Systems – Example Tasks for RCE
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 21
Selecting
Bundles
Showing
Bundle
dependencies
Exploring
Service
dependencies
Showing
Services
Current and Future Work
General work for all visualizations
• User studies
(with eye tracking and questionnaires)
• Natural language interaction
(digital assistants and chatbots)
• Support for multiple users
Specific visualizations and visual concepts
• Software history (evolution)
• Understanding of rationale, intent, and
implication
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 22
> IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 23
Thank You!
Questions?
Andreas Schreiber (@onyame)
Head of Department
Andreas.Schreiber@dlr.de
Lisa Nafeie (@LisaNafeie)
Student Assistant Software Visualization
Lisa.Nafeie@dlr.de
DLR Intelligent and Distributed Systems
http://www.DLR.de/sc/ivs

More Related Content

Similar to Visualization of Software Architectures in Virtual Reality and Augmented Reality

IRJET- Data Analytics and Visualization through R Programming
IRJET-  	  Data Analytics and Visualization through R ProgrammingIRJET-  	  Data Analytics and Visualization through R Programming
IRJET- Data Analytics and Visualization through R ProgrammingIRJET Journal
 
From Microservices to Serverless. A new hype or a new hope?
From Microservices to Serverless. A new hype or a new hope?From Microservices to Serverless. A new hype or a new hope?
From Microservices to Serverless. A new hype or a new hope?Davide Taibi
 
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...ijceronline
 
IRJET- Review on Intelligent System for College
IRJET- Review on Intelligent System for CollegeIRJET- Review on Intelligent System for College
IRJET- Review on Intelligent System for CollegeIRJET Journal
 
IRJET- Review on Intelligent System for College
IRJET- Review on Intelligent System for CollegeIRJET- Review on Intelligent System for College
IRJET- Review on Intelligent System for CollegeIRJET Journal
 
Your Business, as APIs Leveraging Abstractions to Drive the Experience Economy
Your Business, as APIs  Leveraging Abstractions to Drive the Experience Economy Your Business, as APIs  Leveraging Abstractions to Drive the Experience Economy
Your Business, as APIs Leveraging Abstractions to Drive the Experience Economy Asanka Abeysinghe
 
Visualizing the Maturing Global API Ecosystem
Visualizing the Maturing Global API EcosystemVisualizing the Maturing Global API Ecosystem
Visualizing the Maturing Global API EcosystemSaeidHeshmatisafa1
 
IRJET - A Framework for Tourist Identification and Analytics using Transport ...
IRJET - A Framework for Tourist Identification and Analytics using Transport ...IRJET - A Framework for Tourist Identification and Analytics using Transport ...
IRJET - A Framework for Tourist Identification and Analytics using Transport ...IRJET Journal
 
IRJET- Cost Comparison of different Grid Patterns of Floor Slab of Same Span
IRJET- Cost Comparison of different Grid Patterns of Floor Slab of Same SpanIRJET- Cost Comparison of different Grid Patterns of Floor Slab of Same Span
IRJET- Cost Comparison of different Grid Patterns of Floor Slab of Same SpanIRJET Journal
 
Vancouver Microservices Meetup - Kickoff Session
Vancouver Microservices Meetup - Kickoff SessionVancouver Microservices Meetup - Kickoff Session
Vancouver Microservices Meetup - Kickoff SessionMatt McLarty
 
An Overview of Open Source Solutions in Cloud Computing
An Overview of Open Source Solutions in Cloud ComputingAn Overview of Open Source Solutions in Cloud Computing
An Overview of Open Source Solutions in Cloud ComputingIRJET Journal
 
Seminar VU Amsterdam 2015
Seminar VU Amsterdam 2015Seminar VU Amsterdam 2015
Seminar VU Amsterdam 2015Philipp Leitner
 
Big data visualization allotting by r and python with gui tools
Big data visualization  allotting by r and python with gui toolsBig data visualization  allotting by r and python with gui tools
Big data visualization allotting by r and python with gui toolsSK Ahammad Fahad
 
Engineering 4.0: Digitization through task automation and reuse
Engineering 4.0:  Digitization through task automation and reuseEngineering 4.0:  Digitization through task automation and reuse
Engineering 4.0: Digitization through task automation and reuseCARLOS III UNIVERSITY OF MADRID
 
Cytoscape CI Chapter 2
Cytoscape CI Chapter 2Cytoscape CI Chapter 2
Cytoscape CI Chapter 2bdemchak
 
IRJET- Data Device Dashboard Design
IRJET- Data Device Dashboard DesignIRJET- Data Device Dashboard Design
IRJET- Data Device Dashboard DesignIRJET Journal
 

Similar to Visualization of Software Architectures in Virtual Reality and Augmented Reality (20)

IRJET- Data Analytics and Visualization through R Programming
IRJET-  	  Data Analytics and Visualization through R ProgrammingIRJET-  	  Data Analytics and Visualization through R Programming
IRJET- Data Analytics and Visualization through R Programming
 
SVD Based Blind Video Watermarking Algorithm
SVD Based Blind Video Watermarking AlgorithmSVD Based Blind Video Watermarking Algorithm
SVD Based Blind Video Watermarking Algorithm
 
From Microservices to Serverless. A new hype or a new hope?
From Microservices to Serverless. A new hype or a new hope?From Microservices to Serverless. A new hype or a new hope?
From Microservices to Serverless. A new hype or a new hope?
 
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
 
Resume_ALOK
Resume_ALOKResume_ALOK
Resume_ALOK
 
IRJET- Review on Intelligent System for College
IRJET- Review on Intelligent System for CollegeIRJET- Review on Intelligent System for College
IRJET- Review on Intelligent System for College
 
IRJET- Review on Intelligent System for College
IRJET- Review on Intelligent System for CollegeIRJET- Review on Intelligent System for College
IRJET- Review on Intelligent System for College
 
Your Business, as APIs Leveraging Abstractions to Drive the Experience Economy
Your Business, as APIs  Leveraging Abstractions to Drive the Experience Economy Your Business, as APIs  Leveraging Abstractions to Drive the Experience Economy
Your Business, as APIs Leveraging Abstractions to Drive the Experience Economy
 
Visualizing the Maturing Global API Ecosystem
Visualizing the Maturing Global API EcosystemVisualizing the Maturing Global API Ecosystem
Visualizing the Maturing Global API Ecosystem
 
WebEng_202107
WebEng_202107WebEng_202107
WebEng_202107
 
IRJET - A Framework for Tourist Identification and Analytics using Transport ...
IRJET - A Framework for Tourist Identification and Analytics using Transport ...IRJET - A Framework for Tourist Identification and Analytics using Transport ...
IRJET - A Framework for Tourist Identification and Analytics using Transport ...
 
Ijciet 10 01_183
Ijciet 10 01_183Ijciet 10 01_183
Ijciet 10 01_183
 
IRJET- Cost Comparison of different Grid Patterns of Floor Slab of Same Span
IRJET- Cost Comparison of different Grid Patterns of Floor Slab of Same SpanIRJET- Cost Comparison of different Grid Patterns of Floor Slab of Same Span
IRJET- Cost Comparison of different Grid Patterns of Floor Slab of Same Span
 
Vancouver Microservices Meetup - Kickoff Session
Vancouver Microservices Meetup - Kickoff SessionVancouver Microservices Meetup - Kickoff Session
Vancouver Microservices Meetup - Kickoff Session
 
An Overview of Open Source Solutions in Cloud Computing
An Overview of Open Source Solutions in Cloud ComputingAn Overview of Open Source Solutions in Cloud Computing
An Overview of Open Source Solutions in Cloud Computing
 
Seminar VU Amsterdam 2015
Seminar VU Amsterdam 2015Seminar VU Amsterdam 2015
Seminar VU Amsterdam 2015
 
Big data visualization allotting by r and python with gui tools
Big data visualization  allotting by r and python with gui toolsBig data visualization  allotting by r and python with gui tools
Big data visualization allotting by r and python with gui tools
 
Engineering 4.0: Digitization through task automation and reuse
Engineering 4.0:  Digitization through task automation and reuseEngineering 4.0:  Digitization through task automation and reuse
Engineering 4.0: Digitization through task automation and reuse
 
Cytoscape CI Chapter 2
Cytoscape CI Chapter 2Cytoscape CI Chapter 2
Cytoscape CI Chapter 2
 
IRJET- Data Device Dashboard Design
IRJET- Data Device Dashboard DesignIRJET- Data Device Dashboard Design
IRJET- Data Device Dashboard Design
 

More from Andreas Schreiber

Provenance as a building block for an open science infrastructure
Provenance as a building block for an open science infrastructureProvenance as a building block for an open science infrastructure
Provenance as a building block for an open science infrastructureAndreas Schreiber
 
Raising Awareness about Open Source Licensing at the German Aerospace Center
Raising Awareness about Open Source Licensing at the German Aerospace CenterRaising Awareness about Open Source Licensing at the German Aerospace Center
Raising Awareness about Open Source Licensing at the German Aerospace CenterAndreas Schreiber
 
Open Source Licensing for Rocket Scientists
Open Source Licensing for Rocket ScientistsOpen Source Licensing for Rocket Scientists
Open Source Licensing for Rocket ScientistsAndreas Schreiber
 
Provenance for Reproducible Data Science
Provenance for Reproducible Data ScienceProvenance for Reproducible Data Science
Provenance for Reproducible Data ScienceAndreas Schreiber
 
Visualizing Provenance using Comics
Visualizing Provenance using ComicsVisualizing Provenance using Comics
Visualizing Provenance using ComicsAndreas Schreiber
 
Nachvollziehbarkeit mit Hinblick auf Privacy-Verletzungen
Nachvollziehbarkeit mit Hinblick auf Privacy-VerletzungenNachvollziehbarkeit mit Hinblick auf Privacy-Verletzungen
Nachvollziehbarkeit mit Hinblick auf Privacy-VerletzungenAndreas Schreiber
 
Reproducible Science with Python
Reproducible Science with PythonReproducible Science with Python
Reproducible Science with PythonAndreas Schreiber
 
A Provenance Model for Quantified Self Data
A Provenance Model for Quantified Self DataA Provenance Model for Quantified Self Data
A Provenance Model for Quantified Self DataAndreas Schreiber
 
Tracking after Stroke: Doctors, Dogs and All The Rest
Tracking after Stroke: Doctors, Dogs and All The RestTracking after Stroke: Doctors, Dogs and All The Rest
Tracking after Stroke: Doctors, Dogs and All The RestAndreas Schreiber
 
High Throughput Processing of Space Debris Data
High Throughput Processing of Space Debris DataHigh Throughput Processing of Space Debris Data
High Throughput Processing of Space Debris DataAndreas Schreiber
 
Bericht von der QS15 Conference & Exposition
Bericht von der QS15 Conference & ExpositionBericht von der QS15 Conference & Exposition
Bericht von der QS15 Conference & ExpositionAndreas Schreiber
 
Telemedizin: Gesundheit, messbar für jedermann
Telemedizin: Gesundheit, messbar für jedermannTelemedizin: Gesundheit, messbar für jedermann
Telemedizin: Gesundheit, messbar für jedermannAndreas Schreiber
 
Quantified Self mit Wearable Devices und Smartphone-Sensoren
Quantified Self mit Wearable Devices und Smartphone-SensorenQuantified Self mit Wearable Devices und Smartphone-Sensoren
Quantified Self mit Wearable Devices und Smartphone-SensorenAndreas Schreiber
 
Example Blood Pressure Report of BloodPressureCompanion
Example Blood Pressure Report of BloodPressureCompanionExample Blood Pressure Report of BloodPressureCompanion
Example Blood Pressure Report of BloodPressureCompanionAndreas Schreiber
 
Beispiel-Blutdruckbericht des BlutdruckBegleiter
Beispiel-Blutdruckbericht des BlutdruckBegleiterBeispiel-Blutdruckbericht des BlutdruckBegleiter
Beispiel-Blutdruckbericht des BlutdruckBegleiterAndreas Schreiber
 
Informatik für die Welt von Morgen
Informatik für die Welt von MorgenInformatik für die Welt von Morgen
Informatik für die Welt von MorgenAndreas Schreiber
 

More from Andreas Schreiber (20)

Provenance as a building block for an open science infrastructure
Provenance as a building block for an open science infrastructureProvenance as a building block for an open science infrastructure
Provenance as a building block for an open science infrastructure
 
Raising Awareness about Open Source Licensing at the German Aerospace Center
Raising Awareness about Open Source Licensing at the German Aerospace CenterRaising Awareness about Open Source Licensing at the German Aerospace Center
Raising Awareness about Open Source Licensing at the German Aerospace Center
 
Open Source Licensing for Rocket Scientists
Open Source Licensing for Rocket ScientistsOpen Source Licensing for Rocket Scientists
Open Source Licensing for Rocket Scientists
 
Provenance for Reproducible Data Science
Provenance for Reproducible Data ScienceProvenance for Reproducible Data Science
Provenance for Reproducible Data Science
 
Visualizing Provenance using Comics
Visualizing Provenance using ComicsVisualizing Provenance using Comics
Visualizing Provenance using Comics
 
Quantified Self Comics
Quantified Self ComicsQuantified Self Comics
Quantified Self Comics
 
Nachvollziehbarkeit mit Hinblick auf Privacy-Verletzungen
Nachvollziehbarkeit mit Hinblick auf Privacy-VerletzungenNachvollziehbarkeit mit Hinblick auf Privacy-Verletzungen
Nachvollziehbarkeit mit Hinblick auf Privacy-Verletzungen
 
Reproducible Science with Python
Reproducible Science with PythonReproducible Science with Python
Reproducible Science with Python
 
Python at Warp Speed
Python at Warp SpeedPython at Warp Speed
Python at Warp Speed
 
A Provenance Model for Quantified Self Data
A Provenance Model for Quantified Self DataA Provenance Model for Quantified Self Data
A Provenance Model for Quantified Self Data
 
Open Source im DLR
Open Source im DLROpen Source im DLR
Open Source im DLR
 
Tracking after Stroke: Doctors, Dogs and All The Rest
Tracking after Stroke: Doctors, Dogs and All The RestTracking after Stroke: Doctors, Dogs and All The Rest
Tracking after Stroke: Doctors, Dogs and All The Rest
 
High Throughput Processing of Space Debris Data
High Throughput Processing of Space Debris DataHigh Throughput Processing of Space Debris Data
High Throughput Processing of Space Debris Data
 
Bericht von der QS15 Conference & Exposition
Bericht von der QS15 Conference & ExpositionBericht von der QS15 Conference & Exposition
Bericht von der QS15 Conference & Exposition
 
Telemedizin: Gesundheit, messbar für jedermann
Telemedizin: Gesundheit, messbar für jedermannTelemedizin: Gesundheit, messbar für jedermann
Telemedizin: Gesundheit, messbar für jedermann
 
Big Python
Big PythonBig Python
Big Python
 
Quantified Self mit Wearable Devices und Smartphone-Sensoren
Quantified Self mit Wearable Devices und Smartphone-SensorenQuantified Self mit Wearable Devices und Smartphone-Sensoren
Quantified Self mit Wearable Devices und Smartphone-Sensoren
 
Example Blood Pressure Report of BloodPressureCompanion
Example Blood Pressure Report of BloodPressureCompanionExample Blood Pressure Report of BloodPressureCompanion
Example Blood Pressure Report of BloodPressureCompanion
 
Beispiel-Blutdruckbericht des BlutdruckBegleiter
Beispiel-Blutdruckbericht des BlutdruckBegleiterBeispiel-Blutdruckbericht des BlutdruckBegleiter
Beispiel-Blutdruckbericht des BlutdruckBegleiter
 
Informatik für die Welt von Morgen
Informatik für die Welt von MorgenInformatik für die Welt von Morgen
Informatik für die Welt von Morgen
 

Recently uploaded

Webinar_050417_LeClair12345666777889.ppt
Webinar_050417_LeClair12345666777889.pptWebinar_050417_LeClair12345666777889.ppt
Webinar_050417_LeClair12345666777889.pptkinjal48
 
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...OnePlan Solutions
 
ERP For Electrical and Electronics manufecturing.pptx
ERP For Electrical and Electronics manufecturing.pptxERP For Electrical and Electronics manufecturing.pptx
ERP For Electrical and Electronics manufecturing.pptxAutus Cyber Tech
 
20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.
20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.
20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.Sharon Liu
 
Cybersecurity Challenges with Generative AI - for Good and Bad
Cybersecurity Challenges with Generative AI - for Good and BadCybersecurity Challenges with Generative AI - for Good and Bad
Cybersecurity Challenges with Generative AI - for Good and BadIvo Andreev
 
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdf
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdfARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdf
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdfTobias Schneck
 
IA Generativa y Grafos de Neo4j: RAG time
IA Generativa y Grafos de Neo4j: RAG timeIA Generativa y Grafos de Neo4j: RAG time
IA Generativa y Grafos de Neo4j: RAG timeNeo4j
 
Generative AI for Cybersecurity - EC-Council
Generative AI for Cybersecurity - EC-CouncilGenerative AI for Cybersecurity - EC-Council
Generative AI for Cybersecurity - EC-CouncilVICTOR MAESTRE RAMIREZ
 
Your Vision, Our Expertise: TECUNIQUE's Tailored Software Teams
Your Vision, Our Expertise: TECUNIQUE's Tailored Software TeamsYour Vision, Our Expertise: TECUNIQUE's Tailored Software Teams
Your Vision, Our Expertise: TECUNIQUE's Tailored Software TeamsJaydeep Chhasatia
 
React 19: Revolutionizing Web Development
React 19: Revolutionizing Web DevelopmentReact 19: Revolutionizing Web Development
React 19: Revolutionizing Web DevelopmentBOSC Tech Labs
 
Streamlining Your Application Builds with Cloud Native Buildpacks
Streamlining Your Application Builds  with Cloud Native BuildpacksStreamlining Your Application Builds  with Cloud Native Buildpacks
Streamlining Your Application Builds with Cloud Native BuildpacksVish Abrams
 
online pdf editor software solutions.pdf
online pdf editor software solutions.pdfonline pdf editor software solutions.pdf
online pdf editor software solutions.pdfMeon Technology
 
Sales Territory Management: A Definitive Guide to Expand Sales Coverage
Sales Territory Management: A Definitive Guide to Expand Sales CoverageSales Territory Management: A Definitive Guide to Expand Sales Coverage
Sales Territory Management: A Definitive Guide to Expand Sales CoverageDista
 
How to Improve the Employee Experience? - HRMS Software
How to Improve the Employee Experience? - HRMS SoftwareHow to Improve the Employee Experience? - HRMS Software
How to Improve the Employee Experience? - HRMS SoftwareNYGGS Automation Suite
 
Understanding Native Mobile App Development
Understanding Native Mobile App DevelopmentUnderstanding Native Mobile App Development
Understanding Native Mobile App DevelopmentMobulous Technologies
 
Fields in Java and Kotlin and what to expect.pptx
Fields in Java and Kotlin and what to expect.pptxFields in Java and Kotlin and what to expect.pptx
Fields in Java and Kotlin and what to expect.pptxJoão Esperancinha
 
JS-Experts - Cybersecurity for Generative AI
JS-Experts - Cybersecurity for Generative AIJS-Experts - Cybersecurity for Generative AI
JS-Experts - Cybersecurity for Generative AIIvo Andreev
 
OpenChain Webinar: Universal CVSS Calculator
OpenChain Webinar: Universal CVSS CalculatorOpenChain Webinar: Universal CVSS Calculator
OpenChain Webinar: Universal CVSS CalculatorShane Coughlan
 
Enterprise Document Management System - Qualityze Inc
Enterprise Document Management System - Qualityze IncEnterprise Document Management System - Qualityze Inc
Enterprise Document Management System - Qualityze Incrobinwilliams8624
 
Deep Learning for Images with PyTorch - Datacamp
Deep Learning for Images with PyTorch - DatacampDeep Learning for Images with PyTorch - Datacamp
Deep Learning for Images with PyTorch - DatacampVICTOR MAESTRE RAMIREZ
 

Recently uploaded (20)

Webinar_050417_LeClair12345666777889.ppt
Webinar_050417_LeClair12345666777889.pptWebinar_050417_LeClair12345666777889.ppt
Webinar_050417_LeClair12345666777889.ppt
 
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...
 
ERP For Electrical and Electronics manufecturing.pptx
ERP For Electrical and Electronics manufecturing.pptxERP For Electrical and Electronics manufecturing.pptx
ERP For Electrical and Electronics manufecturing.pptx
 
20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.
20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.
20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.
 
Cybersecurity Challenges with Generative AI - for Good and Bad
Cybersecurity Challenges with Generative AI - for Good and BadCybersecurity Challenges with Generative AI - for Good and Bad
Cybersecurity Challenges with Generative AI - for Good and Bad
 
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdf
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdfARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdf
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdf
 
IA Generativa y Grafos de Neo4j: RAG time
IA Generativa y Grafos de Neo4j: RAG timeIA Generativa y Grafos de Neo4j: RAG time
IA Generativa y Grafos de Neo4j: RAG time
 
Generative AI for Cybersecurity - EC-Council
Generative AI for Cybersecurity - EC-CouncilGenerative AI for Cybersecurity - EC-Council
Generative AI for Cybersecurity - EC-Council
 
Your Vision, Our Expertise: TECUNIQUE's Tailored Software Teams
Your Vision, Our Expertise: TECUNIQUE's Tailored Software TeamsYour Vision, Our Expertise: TECUNIQUE's Tailored Software Teams
Your Vision, Our Expertise: TECUNIQUE's Tailored Software Teams
 
React 19: Revolutionizing Web Development
React 19: Revolutionizing Web DevelopmentReact 19: Revolutionizing Web Development
React 19: Revolutionizing Web Development
 
Streamlining Your Application Builds with Cloud Native Buildpacks
Streamlining Your Application Builds  with Cloud Native BuildpacksStreamlining Your Application Builds  with Cloud Native Buildpacks
Streamlining Your Application Builds with Cloud Native Buildpacks
 
online pdf editor software solutions.pdf
online pdf editor software solutions.pdfonline pdf editor software solutions.pdf
online pdf editor software solutions.pdf
 
Sales Territory Management: A Definitive Guide to Expand Sales Coverage
Sales Territory Management: A Definitive Guide to Expand Sales CoverageSales Territory Management: A Definitive Guide to Expand Sales Coverage
Sales Territory Management: A Definitive Guide to Expand Sales Coverage
 
How to Improve the Employee Experience? - HRMS Software
How to Improve the Employee Experience? - HRMS SoftwareHow to Improve the Employee Experience? - HRMS Software
How to Improve the Employee Experience? - HRMS Software
 
Understanding Native Mobile App Development
Understanding Native Mobile App DevelopmentUnderstanding Native Mobile App Development
Understanding Native Mobile App Development
 
Fields in Java and Kotlin and what to expect.pptx
Fields in Java and Kotlin and what to expect.pptxFields in Java and Kotlin and what to expect.pptx
Fields in Java and Kotlin and what to expect.pptx
 
JS-Experts - Cybersecurity for Generative AI
JS-Experts - Cybersecurity for Generative AIJS-Experts - Cybersecurity for Generative AI
JS-Experts - Cybersecurity for Generative AI
 
OpenChain Webinar: Universal CVSS Calculator
OpenChain Webinar: Universal CVSS CalculatorOpenChain Webinar: Universal CVSS Calculator
OpenChain Webinar: Universal CVSS Calculator
 
Enterprise Document Management System - Qualityze Inc
Enterprise Document Management System - Qualityze IncEnterprise Document Management System - Qualityze Inc
Enterprise Document Management System - Qualityze Inc
 
Deep Learning for Images with PyTorch - Datacamp
Deep Learning for Images with PyTorch - DatacampDeep Learning for Images with PyTorch - Datacamp
Deep Learning for Images with PyTorch - Datacamp
 

Visualization of Software Architectures in Virtual Reality and Augmented Reality

  • 1. Visualization of Software Architectures in Virtual Reality and Augmented Reality Andreas Schreiber1, Lisa Nafeie1,2, Artur Baranowski1,2, Peter Seipel1, Martin Misiak2 1 Intelligent and Distributed Systems German Aerospace Center (DLR) Cologne, Germany 2 TH Köln – University of Applied Sciences, Cologne, Germany > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 1
  • 2. Intelligent and Distributed Systems – Research Topics > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 2 Machine Learning BlockchainsWorkflows & Provenance Distributed Systems Software Analytics </> Software Engineering
  • 3. Large Software Systems for Simulation, Data Analytics, System Design, ... > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 3
  • 4. OSGi-based Applications Large applications at DLR are based on OSGi (Eclipse RCP) • RCE: Distributed Design and Simulation • VirSat: Satellite Design Developed by Teams • >5 members • Usually high labor turnover > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 4 Our Use Cases • Getting an impression of the dimensions of the application • Introducing a new member of the development team • Starting to work on a new module • Checking for abnormalities in the architecture
  • 5. OSGi Module system and service platform for Java • Bundles • Normal components (JARs) with extra manifest headers • Contain packages, which contain classes • Services • Java objects with Java interfaces • Connect bundles dynamically • Dependencies • Import and Export of code between bundles > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 5 Source: D. Seider, A. Schreiber, T. Marquardt and M. Brüggemann, "Visualizing Modules and Dependencies of OSGi-Based Applications," 2016 IEEE Working Conference on Software Visualization (VISSOFT), Raleigh, NC, 2016, pp. 96-100.
  • 6. Repository Mining – Scanning GIT Repositories with jQAssistant > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 6 Data Mining Repository git OSGi Application Graph Database Neo4j .MF Java XML Visualization VR IslandViz Unity3D / C# Devices Oculus Rift / HTC Vive Scanning and Analysis JQAssistant L. Nafeie and A. Schreiber, “Visualization of Software Components and Dependency Graphs in Virtual Reality”. 24th ACM Symposium on Virtual Reality Software and Technology (VRST 2018), Tokyo, Japan, pp. 133:1-133:2
  • 7. Data Model – Meta Graph in Neo4j > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 7
  • 8. Analyzing and Querying – CYPHER Graph Query Language (Neo4j) CYPHER „Query“ with one „Clause“ MATCH (a)-[r:RELATIONSHIP_TYPE]->(b) RETURN a, r, b Nodes in our data model • Packages: PackageFragment • Classes: CompilationUnit Relationships in our data model • Dependencies: EXPORTS, IMPORTS • Service implementations and dependencies: HAS_SERVICE_COMPONENT, HAS_IMPLEMENTATION_CLASS, … > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 8 MATCH (pf:PackageFragment)-[c:CONTAINS]-> (cu:CompilationUnit), ()-[e:EXPORTS]->(), ()-[i:IMPORTS]->(), ()-[hs:HAS_SERVICE_COMPONENT]->(), ()-[hi:HAS_IMPLEMENTATION_CLASS]->(), ()-[ps:PROVIDES_SERVICE]->(), ()-[hfh:HAS_FRAGMENT_HOST]->(), ()-[hba:HAS_BUNDLE_ACTIVATOR]->(), ()-[rb:REQUIRES_BUNDLE]->() RETURN pf,c,cu,e,i,hs,hi,ps,hfh,hba,rb
  • 9. Software Visualization > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 9 Source: L. Merino, M. Ghafari and O. Nierstrasz, "Towards Actionable Visualisation in Software Development," 2016 IEEE Working Conference on Software Visualization (VISSOFT), Raleigh, NC, 2016, pp. 61-70.
  • 10. Island Metaphor > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 10 Classes Multi-storey buildings with a new storey for every n lines of codes Packages Continuous regions Bundles Islands with multiple regions; each island with distinct shape
  • 11. Dependencies > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 11 Ports Incoming and outgoing package dependencies Arrows Strength and direction of a package dependency Services OSGi service interfaces and service components
  • 12. > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 12
  • 13. Visualization in Virtual Reality > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 13 Source: M. Misiak, D. Seider, S. Zur, A. Fuhrmann, and A. Schreiber, ”Immersive Exploration of OSGi-based Software Systems in Virtual Reality," 25th IEEE Conference on Virtual Reality and 3D User Interfaces (IEEE VR 2018), Reutlingen, Germany, 2018.
  • 14. > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 14 Virtual Table
  • 15. Services and Service Dependencies > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 15
  • 16. Navigation > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 16
  • 17. Virtual Tablet > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 17
  • 18. Visualization in Augmented Reality > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 18
  • 19. Information for Selected Bundles – Wire Frame and Information Panel > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 19
  • 20. > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 20 Interaction in AR – „Air Tap“ Gesture and Voice Control
  • 21. Exploration of Software Systems – Example Tasks for RCE > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 21 Selecting Bundles Showing Bundle dependencies Exploring Service dependencies Showing Services
  • 22. Current and Future Work General work for all visualizations • User studies (with eye tracking and questionnaires) • Natural language interaction (digital assistants and chatbots) • Support for multiple users Specific visualizations and visual concepts • Software history (evolution) • Understanding of rationale, intent, and implication > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 22
  • 23. > IEEE Aerospace 2019 > A. Schreiber, L. Nafeie, A. Baranowski, P. Seipel, M. Misiak • Visualization of Software Architectures in Virtual Reality and Augmented Reality > 03.03.2019DLR.de • Chart 23 Thank You! Questions? Andreas Schreiber (@onyame) Head of Department Andreas.Schreiber@dlr.de Lisa Nafeie (@LisaNafeie) Student Assistant Software Visualization Lisa.Nafeie@dlr.de DLR Intelligent and Distributed Systems http://www.DLR.de/sc/ivs