Introduction to graph-oriented programming
The role of graph transformations in solving the technical debt problem
Olivier Rey June 26 2018
GraphApps for STAF/ICGT 2018
Introduction to graph-oriented programming The role of graph - - PowerPoint PPT Presentation
Introduction to graph-oriented programming The role of graph transformations in solving the technical debt problem Olivier Rey June 26 2018 GraphApps for STAF/ICGT 2018 Table of contents 1. Technical debt in enterprise software 2.
GraphApps for STAF/ICGT 2018
STAF/ICGT 2018 Introduction to graph-oriented programming – 2/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Technical debt in enterprise software 4/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Technical debt in enterprise software 5/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Technical debt in enterprise software 6/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Technical debt in enterprise software 7/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Technical debt in enterprise software 8/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Technical debt in enterprise software 9/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Technical debt in enterprise software 10/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Graph-oriented programming: Structural aspects 12/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Graph-oriented programming: Structural aspects 13/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Graph-oriented programming: Dynamic aspects 15/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Graph-oriented programming: Dynamic aspects 16/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Graph-oriented programming: Dynamic aspects 17/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Graph-oriented programming: Dynamic aspects 18/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Graph-oriented programming: Dynamic aspects 19/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Graph-oriented programming: Dynamic aspects 20/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Managing evolutions 22/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Managing evolutions 23/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Managing evolutions 24/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Managing evolutions 25/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Managing evolutions 26/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Managing evolutions 27/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Managing evolutions 28/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Implementation aspects 30/43
# Category Requirement Description 01 Basic Create graph from select query 02 Basic Get graph root node (when applicable) 03 Basic Add nodes and relationships inside the graph 04 Basic Delete a node or a relationship inside the graph 05 Basic Modify a node or a relationship inside the graph 06 Basic Get nodes and relationships from the graph to access them in a object-oriented or functional way 07 Advanced Assert a topology condition on the graph (returning true or false) 08 Advanced Search for nodes and relationships with some criteria (such as per attribute value) 09 Advanced Merge two different graphs 10 Advanced Persist the graph 11 Advanced Match a pattern in the graph 12 Advanced Perform some other complex operations on graphs (for instance, for two graphs G1 and G2, create the graph G3 = G1 ∩ G2)
More STAF/ICGT 2018 Introduction to graph-oriented programming – Implementation aspects 31/43
More STAF/ICGT 2018 Introduction to graph-oriented programming – High level overview of GraphApps tools 33/43
STAF/ICGT 2018 Introduction to graph-oriented programming – High level overview of GraphApps tools 34/43
STAF/ICGT 2018 Introduction to graph-oriented programming – High level overview of GraphApps tools 35/43
STAF/ICGT 2018 Introduction to graph-oriented programming – High level overview of GraphApps tools 36/43
STAF/ICGT 2018 Introduction to graph-oriented programming – High level overview of GraphApps tools 37/43
STAF/ICGT 2018 Introduction to graph-oriented programming – High level overview of GraphApps tools 38/43
Application Complexity Complex container transport sales and logistic system –Dossiers containing heterogeneous business objects –Advanced versioning of quotation system –Multiple points of view of the same business object Complex public tax collection system on enterprises –Enterprises are very complex business objects (graphs) –Corpus of thousands of business rules, some of them being “in competition” –Business rules apply or not on enterprises depending on patterns
Timelined business rules (regulatory) Aerospace maintenance information system (MIS) –Very complex “business object” (A/C configuration) –A/C templating mechanism –Timeline-oriented maintenance with versions of manuals and procedures
STAF/ICGT 2018 Introduction to graph-oriented programming – Conclusion 40/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Conclusion 41/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Conclusion 42/43
STAF/ICGT 2018 Introduction to graph-oriented programming – Conclusion 43/43
Back
Back