Difference between revisions of "Graph Approaches for Software Engineeering"

From BITPlan Wiki
Jump to navigation Jump to search
Line 119: Line 119:
 
* [https://www.wikidata.org/wiki/Q79972 - Example - Ancestors of King James]
 
* [https://www.wikidata.org/wiki/Q79972 - Example - Ancestors of King James]
  
== ⌘⌘ Outlook: Dragtop ==
+
== ⌘⌘ SimpleGraph Dragtop ==
 
[[File:DragTopExample1.png|400px|left]]
 
[[File:DragTopExample1.png|400px|left]]
 
The [http://www.bitplan.com/index.php/Dragtop Dragtop Open Source Software] makes the [http://www.bitplan.com/index.php/SimpleGraph SimpleGraph] modules available for direct access from your Desktop.
 
The [http://www.bitplan.com/index.php/Dragtop Dragtop Open Source Software] makes the [http://www.bitplan.com/index.php/SimpleGraph SimpleGraph] modules available for direct access from your Desktop.
 
By simple drag and drop of the input onto the dragtop and then dropping a "tool" onto the dragtop you can combine the module functionality as you see fit.
 
By simple drag and drop of the input onto the dragtop and then dropping a "tool" onto the dragtop you can combine the module functionality as you see fit.
 +
== ⌘⌘ Example: The 5 Steps in SimpleGraph  ==
 +
<graphviz>
 +
digraph steps {
 +
Source [ ".java Source File" ]
 +
Class [ "Java Class" ]
 +
Binary [ ".class Compiled  Binary" ]
 +
Source -> Class -> Binary
 +
}
 +
</graphviz>
  
 
== ⌘⌘ Questions/Discussion ==
 
== ⌘⌘ Questions/Discussion ==
 
[[File:Bitplanpartner.png]]
 
[[File:Bitplanpartner.png]]
 
<youtube>PiNJZ4vg5ts</youtube>
 
<youtube>PiNJZ4vg5ts</youtube>

Revision as of 15:05, 17 February 2019

<slideshow style="bitplan" headingmark="⌘⌘" incmark="…" scaled="true" font="Comic Sans MS, Calibri, cursive" >

title

Graph Approaches for Software EngineeringProfiwikiicon.png
author
Wolfgang Fahl Wolfgang Fahl info@bitplan.com
footer
Applying the OpenSource Project SimpleGraph and it's modules to Software Engineering
subfooter
sebis Oberseminar Technische Universität München

</slideshow>

⌘⌘ Wolfgang Fahl

Wfjuggling.png
Peugeot Ion
Peugeot Ion
Giant Explore
Giant Explore

⌘⌘ Vorgeschichte

Twitter2018-08-26.png

⌘⌘ Why I am here

⌘⌘ Graph Kernels for Model Driven Software Engineering

5 Steps

  1. Decide how the model should be encoded into a graph
  2. Translate each of the models into a labeled graph
  3. Select the graph kernel algorithm to be used
  4. Load all the graphs and compute the graph kernel
  5. Exploit the information in the kernel matrix

⌘⌘ Use SimpleGraph for the 5 Steps

Toskana2019planning.png


⌘⌘ Step 1: Decide how the model should be encoded into a graph

Each SimpleGraph Module transforms data from some API to a Graph representation. The transformation is usually as "straight-forward" or "natural" as possible.

⌘⌘ Step 2: Translate each of the models into a labeled graph

Each SimpleGraph Module uses the following steps to translate from an API to the graph

  1. connect()
  2. moveTo()

⌘⌘ Step 3: Select the graph kernel algorithm to be used

SimpleGraph is based on Apache Gremlin/Tinkerpop so all the algorithm and libraries around this graph environment are directly available. If a different graph kernel and or algorithm is needed than the graph can be translated / imported via standard graph import/export formats and or import/export adapters and utilities

⌘⌘ Step 4: Load all the graphs and compute the graph kernel

MessageBroker.gif Simplegraph is based on the Hub&Spoke approach. Any combination of modules/API can be applied. Currently there are some 20 different modules to choose from.

⌘⌘ Step 5: Exploit the information in the kernel matrix

There are two modes for exploiting the information:

  1. OLAP
  2. OLTP

⌘⌘ What is Apache TinkerPop/Gremlin?

Gremlin programming language.png Apache Tinkerpop is an Open Source project.

⌘⌘ SimpleGraph Dragtop

DragTopExample1.png

The Dragtop Open Source Software makes the SimpleGraph modules available for direct access from your Desktop. By simple drag and drop of the input onto the dragtop and then dropping a "tool" onto the dragtop you can combine the module functionality as you see fit.

⌘⌘ Example: The 5 Steps in SimpleGraph

⌘⌘ Questions/Discussion

Bitplanpartner.png