Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Ten Virtues of Structured Graphs (or why structured graphs can be better than flat ones) Roberto Bruni also based on join work with F. Gadducci, A. Lluch-Lafuente, U. Montanari, E. Tuosto Department of Computer Science, University of Pisa bruni@di.unipi.it Research supported by March 28-29, 2009, GT-VMT’09, York, UK Ten Virtues of Structured Graphs (GT-VMT’09) 1/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Outline Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Ten Virtues of Structured Graphs (GT-VMT’09) 2/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks GT-VMT 2009 ◮ Graph-based techniques ◮ formal semantics, concurrency, logics, verification, tools ◮ Visual modelling ◮ project planning, network management, traffic control, business processes, software architectures, www site design, and many more... ◮ Modern software and Sensoria project (service-oriented computing) ◮ key issues such as scalability, representation distance, open-endedness, dynamicity, distribution ◮ within specification, design, validation and verification phases Ten Virtues of Structured Graphs (GT-VMT’09) 3/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Sensoria Poster Collage ( http://www.sensoria-ist.eu ) Ten Virtues of Structured Graphs (GT-VMT’09) 4/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks All That Graphs n 0 n 1 n 2 n 3 n 4 n 5 n 6 n 7 n 8 n 9 n 0 a 1 a 2 a 3 a 4 n 1 a 5 a 6 a 7 a 8 a 9 a 10 n 2 a 11 a 12 a 13 a 14 a 15 n 3 a 16 a 17 a 18 a 19 a 20 a 21 a 22 a 23 a 24 n 4 a 25 a 26 a 27 a 28 n 5 a 29 a 30 a 31 a 32 a 33 n 6 a 34 a 35 n 7 a 36 a 37 a 38 n 8 a 39 a 40 a 41 a 42 a 43 n 9 a 44 a 45 a 46 a 47 a 48 Ten Virtues of Structured Graphs (GT-VMT’09) 5/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks All That Graphs Ten Virtues of Structured Graphs (GT-VMT’09) 5/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks All That Graphs Our choice Ten Virtues of Structured Graphs (GT-VMT’09) 5/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks A Scenario: Software Architectures as Graphs ◮ D. Garlan & D. Perry, 1995 ◮ “ ... the structure of the components of a program / system, their interrelationship, and principles and guidelines governing their design and evolution over time .” ◮ components (and connectors) as hyper-edges ◮ (here represented as boxes of various shapes) ◮ ports (and roles) as tentacles ◮ (here represented as arrows) ◮ attachments as nodes ◮ (here represented as smaller circles) ◮ connectors and attachments are sometimes omitted Ten Virtues of Structured Graphs (GT-VMT’09) 6/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Why “Spaghetti” Graphs are Considered Harmful ◮ When GT applied to large case studies, graphs better be structured in order to be comprehensible ◮ Analogies with structured programming and type theory ◮ it is helpful to use graphs that are conveniently formatted and annotated ◮ discard / ignore non-conformant graphs ◮ Analogies with process calculi ◮ containment and links (as in bigraphs) ◮ dynamics and reconfiguration via inductive, conditional rewrite rules Ten Virtues of Structured Graphs (GT-VMT’09) 7/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Our proposal ◮ From graphs to hierarchical hypergraphs ◮ certain hyperdeges can contain hypergraphs that can be hierarchical themselves ◮ arbitrary depth of nesting ◮ ADR (Architectural Design Rewriting) ◮ graphs + their blueprint (like binaries + source templates) ◮ exploit blueprint for applying formal methods ◮ please visit http://www.albertolluch.com/research/adr to know more Ten Virtues of Structured Graphs (GT-VMT’09) 8/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Outline Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Ten Virtues of Structured Graphs (GT-VMT’09) 9/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Visualization can Support Formal Methods Ten Virtues of Structured Graphs (GT-VMT’09) 10/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Architectural Styles ◮ IEEE standard 1471 ◮ “ ... a set of patterns or rules for creating one or more architectures in a consistent fashion .” ◮ Style = Vocabulary + Rules ◮ Used to construct and document ◮ Used to describe / explain ◮ Used to understand ◮ Used to validate ◮ Used for conformance check ◮ Used to reason about ◮ To be reused Ten Virtues of Structured Graphs (GT-VMT’09) 11/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Uhm... Can you spot some “regularity”? Ten Virtues of Structured Graphs (GT-VMT’09) 12/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Graph Re-drawing And now? Ten Virtues of Structured Graphs (GT-VMT’09) 13/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Well... Another try? Ten Virtues of Structured Graphs (GT-VMT’09) 14/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Another Graph Re-drawing Can you describe its “shape” (or style)? Ten Virtues of Structured Graphs (GT-VMT’09) 15/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Styles from Productions ◮ Legenda: titled boxes as non-terminals, ordinary boxes as terminals ◮ Several readings are possible: ◮ Refinement ◮ Types ( Pipeline ) and ops ( station and cat ( · ), based on hyperedge replacement) ◮ station : → Pipeline ◮ cat : Pipeline × Pipeline → Pipeline ◮ Abstraction Ten Virtues of Structured Graphs (GT-VMT’09) 16/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Types for Pipelines, Rings and Stars Ten Virtues of Structured Graphs (GT-VMT’09) 17/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Types and Ops for Pipelines, Rings and Stars Ten Virtues of Structured Graphs (GT-VMT’09) 18/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Simplified Memberships (for Pipelines and Stars) Ten Virtues of Structured Graphs (GT-VMT’09) 19/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks An Example of Derivation (with “Blueprint”) Ten Virtues of Structured Graphs (GT-VMT’09) 20/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks An Example of Derivation (with “Blueprint”) Ten Virtues of Structured Graphs (GT-VMT’09) 20/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks An Example of Derivation (with “Blueprint”) Ten Virtues of Structured Graphs (GT-VMT’09) 20/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks An Example of Derivation (with “Blueprint”) Ten Virtues of Structured Graphs (GT-VMT’09) 20/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks An Example of Derivation (with “Blueprint”) Ten Virtues of Structured Graphs (GT-VMT’09) 20/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks An Example of Derivation (with “Blueprint”) Ten Virtues of Structured Graphs (GT-VMT’09) 20/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks An Example of Derivation (with “Blueprint”) Ten Virtues of Structured Graphs (GT-VMT’09) 20/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks An Example of Derivation (with “Blueprint”) Ten Virtues of Structured Graphs (GT-VMT’09) 20/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Simplified Typing and Drawing (“Flattening”) Ten Virtues of Structured Graphs (GT-VMT’09) 21/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Simplified Typing and Drawing (“Flattening”) Ten Virtues of Structured Graphs (GT-VMT’09) 21/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Simplified Typing and Drawing (“Flattening”) Ten Virtues of Structured Graphs (GT-VMT’09) 21/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Simplified Typing and Drawing (“Flattening”) Ten Virtues of Structured Graphs (GT-VMT’09) 21/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Simplified Typing and Drawing (“Flattening”) Ten Virtues of Structured Graphs (GT-VMT’09) 21/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Simplified Typing and Drawing (“Flattening”) Ten Virtues of Structured Graphs (GT-VMT’09) 21/45
Introduction Styles for Visual Support Dynamics ADR Concluding Remarks Simplified Typing and Drawing (“Flattening”) Ten Virtues of Structured Graphs (GT-VMT’09) 21/45
Recommend
More recommend