SlideShare uma empresa Scribd logo
1 de 43
Baixar para ler offline
Visualization of OSGi based
Software Architectures in Virtual Reality
Lisa Nafeie
Intelligent and Distributed Systems,
German Aerospace Center (DLR) &
Technische Hochschule Köln
Cologne, Germany
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 1
Introduction
Intelligent and Distributed Systems
German Aerospace Center (DLR)
University of Applied Sciences
Cologne, Germany
@LisaNafeie
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 2
Pointing out Problems
• Visualization of Software Architectures:
Large projects can become confusing
• Complex Systems: Uncluttered
• 2D Visualization: Less information
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 3
Software Dependencies
Software Projects in Space and Aerospace
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 4
Software
Analytics
Research Topics – DLR Intelligent and Distributed Systems
Machine
Learning
BlockchainsWorkflows &
Provenance
Distributed
Systems
</>
Software
Engineering
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 5
http://rcenvironment.de/
Distributed Integration System
Remote Component Environment
• Language Java
• Platform RCP
• Framework OSGi
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 6
Software Engineering
Focus on..
• Automated Testing
• Repository Mining
• Integration
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 7
Software
systems
• Quality
Developer & User
• Experience & Behavior
Development
process
• Productivity
Visualization of
information
Psychology &
Social
Sciences
Data Analysis
& Data Mining
Distributed
Computing
Software Analytics
Definition
• Human-machine-interface
• Insightful & actionable information
• Tasks
• software development
• Systems
• Users
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 8
Software Visualization
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 9
Interactive Visualization of OSGi
-based Software Architectures
Goals
• Getting an impression of the
dimensions of the application
• Introducing a new member of the
development team
• Checking for abnormalities in
the architecture
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 10
Java Framework: OSGi
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.
Components & Dependencies
• Bundle
• Package
• Service
• Class
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 11
Software Analytics – Source Code Analysis and Repository Mining
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 12
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 13
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.
Visualization in 2D:
Dependencies of Key Bundles
Pro Cons
Bundle size
visualized
Less information of all
components
• Bundle name
• Packages name
• Class name
Only 2 components
visualized
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 14
Visualization in 2D:
Package Structure of a Bundle
Pro Cons
Packages size
visualized
Class size
visualized
Less information of all components
• Bundle name
• Packages name
• Class name
Missing Relationships
• Import & Export of Packages
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 15
Visualization in 2D:
Dependencies Between Classes
Pro Cons
Shows Bundle
Dependencies
Missing Dependencies
between & inside
packages
Confusing for large
projects
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 16
Visualization in VR:
Prototype App “OSGiViewer”
Pro Cons
Less information of
all components
• Packages name
• Class name
Third dimension
Shows
depencencies
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 17
Technology
Oculus Rift
Microsoft HoloLens
Tobii Eye Tracking
HTC Vive
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 18
Virtual Reality & Augmented Reality
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 19
Virtual Reality App –
“Dependency Diver“
Software Architecture
• OSGi Framework
• RCE Project
• Android App (Beta version)
• Motion Sickness
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 20
VR Approach 1: Module Stacks
Bundle
Packages
Services
Classes
Imports
Exports
Source: A. Schreiber and M. Brüggemann, "Interactive Visualization of Software
Components with Virtual Reality Headsets," 2017 IEEE Working Conference on
Software Visualization (VISSOFT), Shanghai, 2017, pp. 119-123.
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 21
Components
• need constant positions
• need a realistic metaphor
… to reduce Motion Sickness
VR Approach 1: Prototype “Dependency Diver“
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 22
VR Approach 1: Prototype “Dependency Diver“
Components include
• Packages
• Classes
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 23
VR Approach 1: Prototype “Dependency Diver“
Pro Cons
Cheap Headsets
Interactive App
Motion Sickness
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 24
VR Approach 2: „IslandViz“
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 25
Virtual Table
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 26
Navigation
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 27
Virtual Tablet
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 28
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 29
Island Metaphor
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
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 30
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 31
Dependencies
Ports
Incoming and outgoing
package dependencies
Arrows
Strength and direction
of a package dependency
Services
OSGi service interfaces
and service components
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 32
Services
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 33
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 34
Augmented Reality
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 35
Positioning virtual surface on any surface
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 36
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 37
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 38
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 39
Approach 1: Dependency Diver Approach 2: IslandViz
Pro Cons Pro Cons
Cheap Headsets
Interactive App
Limited usage time
Motionsickness
“Any (Cheap) Headsets“
Real-world Metaphor
Interactive App
Open Source
Detailed information of
OSGi Components
Currently available
Java & OSGi
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 40
Approach 1: Dependency Diver Approach 2: IslandViz
https://github.com/DLR-SC/island-vizGooge PlayStore: “DependencyDiver“
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 41
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 42
Thanks!
Lisa.Nafeie@dlr.de
DLR.de/sc/ivs
@LisaNafeie
Links
GitHub “IslandViz”- https://github.com/DLR-SC/island-viz
DependencyDriver - https://play.google.com/store/apps/details?id=de.dlr.sc.DependencyDiver
jQAssistant - https://jqassistant.org/
RCE - http://rcenvironment.de/
VirtualSatellite- https://www.dlr.de/sc/en/desktopdefault.aspx/tabid-5135/8645_read-8374/
2D – 3D? - https://elib.dlr.de/110129/1/vissoft-toolpaper-osgivis_SeiderEtAl.pdf
DLR Jobs - https://www.dlr.de/dlr/jobs/#S:479
> EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 43

Mais conteúdo relacionado

Semelhante a Visualization of OSGi based Software Architectures in Virtual Reality - Lisa Nafeie (DLR)

Semelhante a Visualization of OSGi based Software Architectures in Virtual Reality - Lisa Nafeie (DLR) (20)

Interactive Visualization of Software Components with Virtual Reality Headsets
Interactive Visualization of Software Components with Virtual Reality HeadsetsInteractive Visualization of Software Components with Virtual Reality Headsets
Interactive Visualization of Software Components with Virtual Reality Headsets
 
Summit 16: NetIDE: Integrating and Orchestrating SDN Controllers
Summit 16: NetIDE: Integrating and Orchestrating SDN ControllersSummit 16: NetIDE: Integrating and Orchestrating SDN Controllers
Summit 16: NetIDE: Integrating and Orchestrating SDN Controllers
 
apidays Hong Kong - Event API Products: Maximizing the Value of Your Event-Dr...
apidays Hong Kong - Event API Products: Maximizing the Value of Your Event-Dr...apidays Hong Kong - Event API Products: Maximizing the Value of Your Event-Dr...
apidays Hong Kong - Event API Products: Maximizing the Value of Your Event-Dr...
 
FIWARE – 都市を成長の原動力へ変革中
FIWARE – 都市を成長の原動力へ変革中FIWARE – 都市を成長の原動力へ変革中
FIWARE – 都市を成長の原動力へ変革中
 
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
 
Quebec - 16 November 2022 - Canada CNCF Meetups.pdf
Quebec - 16 November 2022 - Canada CNCF Meetups.pdfQuebec - 16 November 2022 - Canada CNCF Meetups.pdf
Quebec - 16 November 2022 - Canada CNCF Meetups.pdf
 
The future of Prototpying
The future of PrototpyingThe future of Prototpying
The future of Prototpying
 
Project
ProjectProject
Project
 
EVERYTHING AS CODE: API-GATEWAY, DEVELOPER PORTAL UND GRAPHQL
EVERYTHING AS CODE: API-GATEWAY, DEVELOPER PORTAL UND GRAPHQLEVERYTHING AS CODE: API-GATEWAY, DEVELOPER PORTAL UND GRAPHQL
EVERYTHING AS CODE: API-GATEWAY, DEVELOPER PORTAL UND GRAPHQL
 
FIWARE Overview (University Cairo 20Aug2017)
FIWARE Overview (University Cairo 20Aug2017)FIWARE Overview (University Cairo 20Aug2017)
FIWARE Overview (University Cairo 20Aug2017)
 
20170820 FIWARE at CAMPIE
20170820 FIWARE at CAMPIE20170820 FIWARE at CAMPIE
20170820 FIWARE at CAMPIE
 
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
 
Visual programming for hybrid user interfaces
Visual programming for hybrid user interfacesVisual programming for hybrid user interfaces
Visual programming for hybrid user interfaces
 
Delivering New Digital Experiences Fast - Introducing Choreo
Delivering New Digital Experiences Fast - Introducing ChoreoDelivering New Digital Experiences Fast - Introducing Choreo
Delivering New Digital Experiences Fast - Introducing Choreo
 
Benchmarking of distributed linked data streaming systems
Benchmarking of distributed linked data streaming systemsBenchmarking of distributed linked data streaming systems
Benchmarking of distributed linked data streaming systems
 
20170720 fiware lab_at_open_stack_days_tokyo
20170720 fiware lab_at_open_stack_days_tokyo20170720 fiware lab_at_open_stack_days_tokyo
20170720 fiware lab_at_open_stack_days_tokyo
 
BigDataEurope @BDVA Summit2016 2: Societal Pilots
BigDataEurope @BDVA Summit2016 2: Societal PilotsBigDataEurope @BDVA Summit2016 2: Societal Pilots
BigDataEurope @BDVA Summit2016 2: Societal Pilots
 
High-End Visualisation System (HEVS)
High-End Visualisation System (HEVS) High-End Visualisation System (HEVS)
High-End Visualisation System (HEVS)
 
2nd ARCADIA project newsletter
2nd ARCADIA project newsletter2nd ARCADIA project newsletter
2nd ARCADIA project newsletter
 
Iterative Architecture: Your Path to on-time Delivery
Iterative Architecture: Your Path to on-time DeliveryIterative Architecture: Your Path to on-time Delivery
Iterative Architecture: Your Path to on-time Delivery
 

Mais de mfrancis

Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
mfrancis
 
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
mfrancis
 
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
mfrancis
 
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
mfrancis
 

Mais de mfrancis (20)

Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
 
OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)
 
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
 
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank LyaruuOSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
 
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
 
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
 
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
 
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
 
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
 
OSGi CDI Integration Specification - Ray Augé (Liferay)
OSGi CDI Integration Specification - Ray Augé (Liferay)OSGi CDI Integration Specification - Ray Augé (Liferay)
OSGi CDI Integration Specification - Ray Augé (Liferay)
 
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
 
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
 
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
 
Popular patterns revisited on OSGi - Christian Schneider (Adobe)
Popular patterns revisited on OSGi - Christian Schneider (Adobe)Popular patterns revisited on OSGi - Christian Schneider (Adobe)
Popular patterns revisited on OSGi - Christian Schneider (Adobe)
 
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
 
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
 
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
 
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
 
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
 
How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)
 

Último

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Último (20)

AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 

Visualization of OSGi based Software Architectures in Virtual Reality - Lisa Nafeie (DLR)

  • 1. Visualization of OSGi based Software Architectures in Virtual Reality Lisa Nafeie Intelligent and Distributed Systems, German Aerospace Center (DLR) & Technische Hochschule Köln Cologne, Germany > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 1
  • 2. Introduction Intelligent and Distributed Systems German Aerospace Center (DLR) University of Applied Sciences Cologne, Germany @LisaNafeie > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 2
  • 3. Pointing out Problems • Visualization of Software Architectures: Large projects can become confusing • Complex Systems: Uncluttered • 2D Visualization: Less information > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 3 Software Dependencies
  • 4. Software Projects in Space and Aerospace > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 4
  • 5. Software Analytics Research Topics – DLR Intelligent and Distributed Systems Machine Learning BlockchainsWorkflows & Provenance Distributed Systems </> Software Engineering > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 5
  • 6. http://rcenvironment.de/ Distributed Integration System Remote Component Environment • Language Java • Platform RCP • Framework OSGi > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 6
  • 7. Software Engineering Focus on.. • Automated Testing • Repository Mining • Integration > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 7
  • 8. Software systems • Quality Developer & User • Experience & Behavior Development process • Productivity Visualization of information Psychology & Social Sciences Data Analysis & Data Mining Distributed Computing Software Analytics Definition • Human-machine-interface • Insightful & actionable information • Tasks • software development • Systems • Users > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 8
  • 9. Software Visualization > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 9
  • 10. Interactive Visualization of OSGi -based Software Architectures Goals • Getting an impression of the dimensions of the application • Introducing a new member of the development team • Checking for abnormalities in the architecture > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 10
  • 11. Java Framework: OSGi 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. Components & Dependencies • Bundle • Package • Service • Class > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 11
  • 12. Software Analytics – Source Code Analysis and Repository Mining > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 12
  • 13. > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 13
  • 14. 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. Visualization in 2D: Dependencies of Key Bundles Pro Cons Bundle size visualized Less information of all components • Bundle name • Packages name • Class name Only 2 components visualized > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 14
  • 15. Visualization in 2D: Package Structure of a Bundle Pro Cons Packages size visualized Class size visualized Less information of all components • Bundle name • Packages name • Class name Missing Relationships • Import & Export of Packages > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 15
  • 16. Visualization in 2D: Dependencies Between Classes Pro Cons Shows Bundle Dependencies Missing Dependencies between & inside packages Confusing for large projects > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 16
  • 17. Visualization in VR: Prototype App “OSGiViewer” Pro Cons Less information of all components • Packages name • Class name Third dimension Shows depencencies > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 17
  • 18. Technology Oculus Rift Microsoft HoloLens Tobii Eye Tracking HTC Vive > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 18
  • 19. Virtual Reality & Augmented Reality > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 19
  • 20. Virtual Reality App – “Dependency Diver“ Software Architecture • OSGi Framework • RCE Project • Android App (Beta version) • Motion Sickness > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 20
  • 21. VR Approach 1: Module Stacks Bundle Packages Services Classes Imports Exports Source: A. Schreiber and M. Brüggemann, "Interactive Visualization of Software Components with Virtual Reality Headsets," 2017 IEEE Working Conference on Software Visualization (VISSOFT), Shanghai, 2017, pp. 119-123. > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 21
  • 22. Components • need constant positions • need a realistic metaphor … to reduce Motion Sickness VR Approach 1: Prototype “Dependency Diver“ > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 22
  • 23. VR Approach 1: Prototype “Dependency Diver“ Components include • Packages • Classes > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 23
  • 24. VR Approach 1: Prototype “Dependency Diver“ Pro Cons Cheap Headsets Interactive App Motion Sickness > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 24
  • 25. VR Approach 2: „IslandViz“ > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 25
  • 26. Virtual Table > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 26
  • 27. Navigation > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 27
  • 28. Virtual Tablet > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 28
  • 29. > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 29
  • 30. Island Metaphor 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 > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 30
  • 31. > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 31
  • 32. Dependencies Ports Incoming and outgoing package dependencies Arrows Strength and direction of a package dependency Services OSGi service interfaces and service components > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 32
  • 33. Services > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 33
  • 34. > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 34
  • 35. Augmented Reality > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 35
  • 36. Positioning virtual surface on any surface > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 36
  • 37. > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 37
  • 38. > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 38
  • 39. > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 39
  • 40. Approach 1: Dependency Diver Approach 2: IslandViz Pro Cons Pro Cons Cheap Headsets Interactive App Limited usage time Motionsickness “Any (Cheap) Headsets“ Real-world Metaphor Interactive App Open Source Detailed information of OSGi Components Currently available Java & OSGi > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 40
  • 41. Approach 1: Dependency Diver Approach 2: IslandViz https://github.com/DLR-SC/island-vizGooge PlayStore: “DependencyDiver“ > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 41
  • 42. > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 42 Thanks! Lisa.Nafeie@dlr.de DLR.de/sc/ivs @LisaNafeie
  • 43. Links GitHub “IslandViz”- https://github.com/DLR-SC/island-viz DependencyDriver - https://play.google.com/store/apps/details?id=de.dlr.sc.DependencyDiver jQAssistant - https://jqassistant.org/ RCE - http://rcenvironment.de/ VirtualSatellite- https://www.dlr.de/sc/en/desktopdefault.aspx/tabid-5135/8645_read-8374/ 2D – 3D? - https://elib.dlr.de/110129/1/vissoft-toolpaper-osgivis_SeiderEtAl.pdf DLR Jobs - https://www.dlr.de/dlr/jobs/#S:479 > EclipseCon Europe / OSGi Community Event 2018 > Lisa Nafeie • Visualization of OSGi based Software Architectures in Virtual Reality > 23.10.2018DLR.de • Chart 43