Synchronized Hyperedge Replacement for Heterogeneous Systems joint work with Emilio Tuosto Dipartimento di Informatica Università di Pisa Ivan Lanese Dipartimento.

Slides:



Advertisements
Similar presentations
3° Workshop Nazionale del Gruppo di Interesse in Ingegneria del Software Genova, 2-3 ottobre 2006 CASE – Libera Università di Bolzano-Bozen RCOST – Università
Advertisements

A Workflow Engine with Multi-Level Parallelism Supports Qifeng Huang and Yan Huang School of Computer Science Cardiff University
Tintu David Joy. Agenda Motivation Better Verification Through Symmetry-basic idea Structural Symmetry and Multiprocessor Systems Mur ϕ verification system.
CommUnity, Tiles and Connectors joint work with Roberto Bruni José Luiz Fiadeiro Antónia Lopes Ugo Montanari Ivan Lanese Dipartimento di Informatica Università.
Connectors and Concurrency joint work with Ugo Montanari Roberto Bruni Dipartimento di Informatica Università di Pisa Dagstuhl Seminar #04241, September.
Schema Matching and Query Rewriting in Ontology-based Data Integration Zdeňka Linková ICS AS CR Advisor: Július Štuller.
1 Ivan Lanese Computer Science Department University of Bologna Italy Managing faults and compensations in SOCK Joint work with Claudio Guidi, Fabrizio.
Architecture Representation
A formalisation of Adaptable Pervasive Flows A. Bucchiarone 1, A. Lluch Lafuente 2, A. Marconi 1 and M. Pistore 1 1 FBK-IRST of Trento (Italy) 2 Department.
1 Reversibility for Recoverability Ivan Lanese Computer Science Department FOCUS research group University of Bologna/INRIA Bologna, Italy.
An Associative Broadcast Based Coordination Model for Distributed Processes James C. Browne Kevin Kane Hongxia Tian Department of Computer Sciences The.
Course on Probabilistic Methods in Concurrency (Concurrent Languages for Probabilistic Asynchronous Communication) Lecture 1 The pi-calculus and the asynchronous.
Dynamically Evolving Klaim Nets Lorenzo Bettini Joint work with Michele Loreti, Rosario Pugliese Dipartimento di Sistemi ed Informatica,
Roberto Pisa, Italy 13 June 2008 WADT Tiles for Reo Roberto Bruni Dipartimento di Informatica Università di Pisa WADT th International.
A. Bucchiarone / Pisa/ 30 Jan 2007 Dynamic Software Architectures for Global Computing Antonio Bucchiarone PhD Student – IMT Graduate School Piazza S.
A. Bucchiarone / Dagstuhl/ 2007 APL Antonio Bucchiarone PhD Student – IMT Graduate School Piazza S. Ponziano, Lucca (Italy)
SHReQ: Coordinating Application Level QoS Speaker: Ivan Lanese Dipartimento di Informatica Università di Pisa Authors: Dan Hirsch & Emilio Tuosto Dipartimento.
Adding Organizations and Roles as Primitives to the JADE Framework NORMAS’08 Normative Multi Agent Systems, Matteo Baldoni 1, Valerio Genovese 1, Roberto.
Jiannong IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 1 Architecture Description of Distributed Systems using UML and XML.
1 Ivan Lanese Computer Science Department University of Bologna Italy Exploiting user-definable synchronizations in graph transformation.
1 The SOCK SAGA Ivan Lanese Computer Science Department University of Bologna Italy Joint work with Gianluigi Zavattaro.
1 Ivan Lanese Computer Science Department University of Pisa (moved to Bologna) Synchronization strategies for global computing models Ph.D. thesis discussion.
1 Synchronization strategies for global computing models Ivan Lanese Computer Science Department University of Bologna.
1 Ivan Lanese Computer Science Department University of Bologna Roberto Bruni Computer Science Department University of Pisa A mobile calculus with parametric.
1 Formal Models for Distributed Negotiations Description Roberto Bruni Dipartimento di Informatica Università di Pisa XVII Escuela de Ciencias Informaticas.
Software Engineering and Middleware: a Roadmap by Wolfgang Emmerich Ebru Dincel Sahitya Gupta.
Synchronization Algebras with Mobility for Graph Transformations joint work with Ugo Montanari Dipartimento di Informatica Università di Pisa Ivan Lanese.
1 SOCK and JOLIE from the formal basis to a service oriented programming language Ivan Lanese Computer Science Department University of Bologna Italy Joint.
1 Ivan Lanese Computer Science Department University of Pisa (moved to Bologna) Synchronization strategies for global computing models Ph.D. thesis discussion.
1 Ivan Lanese Computer Science Department University of Bologna Italy Evolvable systems: some ideas for modelling With input from Davide Sangiorgi, Fabrizio.
Bridging the gap between Interaction- and Process-Oriented Choreographies Talk by Ivan Lanese Joint work with Claudio Guidi, Fabrizio Montesi and Gianluigi.
1 GT-VC 2005, San Francisco, August 22, 2005 Ugo Montanari Università di Pisa Ivan Lanese Università di Pisa Hoare vs. Milner: Comparing Synchronizations.
1 Ivan Lanese Dipartimento di Informatica Università di Pisa Ugo Montanari From Graph Rewriting to Logic Programming joint work with.
Software Engineering, COMP201 Slide 1 Protocol Engineering Protocol Specification using CFSM model Lecture 30.
EEC-681/781 Distributed Computing Systems Lecture 3 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
1 Mapping Fusion and Synchronized Hyperedge Replacement into Logic Programming joint work with Ugo Montanari Ivan Lanese Dipartimento di Informatica Università.
1 Static vs dynamic SAGAs Ivan Lanese Computer Science Department University of Bologna/INRIA Italy.
1 Formal Models for Transactions: Zero Safe Nets Roberto Bruni Dipartimento di Informatica Università di Pisa Models and Languages for Coordination and.
1 Ivan Lanese Computer Science Department University of Pisa Prof. Ugo Montanari Synchronization strategies for global computing Relator: Thesis Progress.
1 Ivan Lanese Computer Science Department University of Bologna Italy Concurrent and located synchronizations in π-calculus.
1 CoMeta, final workshop, /12/2003 Ivan Lanese Dipartimento di Informatica Università di Pisa Ugo Montanari A graphical Fusion Calculus Joint work.
A Klaim specification of the Handover protocol: logic-based and type-based analysis Michele Loreti and Daniele Gorla Dipartimento di Sistemi e Informatica.
An algebra of Connectors for modeling CommUnity with Tiles joint work with Roberto Bruni Ugo Montanari Dipartimento di Informatica Università di Pisa Ivan.
1 Formal Models for Transactions: BizTalk as ZSN Roberto Bruni Dipartimento di Informatica Università di Pisa Models and Languages for Coordination and.
1 Ivan Lanese Computer Science Department University of Bologna Italy Streaming Services in SSCC Joint work with Francisco Martins, Vasco Vasconcelos and.
1 Ivan Lanese Computer Science Department University of Bologna Synchronization strategies for global computing models.
Complete Axioms for Stateless Connectors joint work with Roberto Bruni and Ugo Montanari Dipartimento di Informatica Università di Pisa Ivan Lanese Dipartimento.
Synchronizations with Mobility for Graph Transformations joint work with Ugo Montanari Dipartimento di Informatica Università di Pisa Ivan Lanese Dipartimento.
THE NEXT STEP IN WEB SERVICES By Francisco Curbera,… Memtimin MAHMUT 2012.
An Introduction to Software Architecture
An Algebra for Composing Access Control Policies (2002) Author: PIERO BONATTI, SABRINA DE CAPITANI DI, PIERANGELA SAMARATI Presenter: Siqing Du Date:
RELATIONAL FAULT TOLERANT INTERFACE TO HETEROGENEOUS DISTRIBUTED DATABASES Prof. Osama Abulnaja Afraa Khalifah
Next-generation databases Active databases: when a particular event occurs and given conditions are satisfied then some actions are executed. An active.
A. Bucchiarone, Juan P. Galeotti / GT-VMT’08 Dynamic Software Architectures Verification using DynAlloy Antonio Bucchiarone IMT Graduate School of Lucca,
An Ontological Framework for Web Service Processes By Claus Pahl and Ronan Barrett.
Natallia Kokash (Accepted for PACO’2011) ACG, 31/05/ Input-output conformance testing for channel-based connectors 1.
Submodule construction in logics 1 Gregor v. Bochmann, University of Ottawa Using First-Order Logic to Reason about Submodule Construction Gregor v. Bochmann.
“Dynamic fault handling mechanisms for service-oriented applications” Fabrizio Montesi, Claudio Guidi, Ivan Lanese and Gianluigi Zavattaro Department of.
Ivan Lanese Computer Science Department University of Bologna/INRIA Italy Decidability Results for Dynamic Installation of Compensation Handlers Joint.
Scalable Grid system– VDHA_Grid: an e-Science Grid with virtual and dynamic hierarchical architecture Huang Lican College of Computer.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
1 Joint work with Claudio Antares Mezzina and Jean-Bernard Stefani Controlled Reversibility and Compensations Ivan Lanese Focus research group Computer.
Week 04 Object Oriented Analysis and Designing. What is a model? A model is quicker and easier to build A model can be used in simulations, to learn more.
1. 2 Purpose of This Presentation ◆ To explain how spacecraft can be virtualized by using a standard modeling method; ◆ To introduce the basic concept.
Architectural Design Rewriting as Architectural Description Language R. Bruni A. LLuch-Lafuente U. Montanari E. Tuosto.
Rewriting Nested Graphs, through Term Graphs Roberto Bruni, Andrea Corradini, Fabio Gadducci Alberto Lluch Lafuente and Ugo Montanari Dipartimento di Informatica,
Mobile Agents.
Internet of Things A Process Calculus Approach
Software Connectors.
An Introduction to Software Architecture
Presentation transcript:

Synchronized Hyperedge Replacement for Heterogeneous Systems joint work with Emilio Tuosto Dipartimento di Informatica Università di Pisa Ivan Lanese Dipartimento di Informatica Università di Pisa COORDINATION 2005, Namur, April 2005

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Which kind of systems? Usually not cats and dogs Entities on huge networks applications web services computers …

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Features of the systems Systems composed by interacting components pre-existing, off-the-shelf heterogeneous different computational power, features, owner, … Interaction via middleware for communication many primitives for communication complex protocols Mobile/reconfigurable systems

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Classical formal tools Frameworks in literature usually have one simple primitive for communication e.g.  -calculus uses message passing Other primitives must be encoded not always an easy task No primitives modeling complex protocols useful for abstract models of coordination

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Our approach Two level modeling Modeling the primitives provided by the middleware synchronization algebras with mobility (SAMs) Modeling the system hypergraphs evolution via synchronized hyperedge replacement (SHR) synchronization uses SAMs

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Roadmap Our approach A simple example A less simple example What else?

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Roadmap Our approach A simple example A less simple example What else?

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Basics of system modeling Hyperedges are system components Nodes are communication channels or ports Nodes can be global or local

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Basics of hyperedge replacement Productions rewrite an edge into a general graph attached to the same nodes Context free mechanism Limited expressivity  synchronization is needed 

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Basics of synchronization Specified via constraints on nodes adjacent to the rewritten edge A set of productions can be applied in one step iff the constraints are satisfied Problems: how to specify constraints? when constraints are satisfied?

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Synchronization: general idea A production performs actions on nodes If the actions can be composed, then constraints are satisfied Defined using a synchronization algebra (extends Winskel’s definition)  a b ε

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Synchronization algebras A tuple Act: set of actions ActComp: set of triples of actions a triple (a,b,c) specifies that a can synchronize with b giving c associative and commutative ε: action stands for “not involved in the synchronization” neutral element in the synchronization c=ε iff a=ε and b=ε Allow to specify synchronization, nondeterminism, asynchronous execution and incompatibility between actions

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Example: Milner (CCS) SA Actions {a, a, , ε} Synchronizations (a,a,  ) and symmetric (,ε, ) and symmetric Other synchronizations (broadcast, mutual exclusion,…) can be easily modeled

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Adding mobility Each action is equipped with a tuple of node references During synchronization we compute the references attached to the resulting action compute a fusion among nodes mobility in the Fusion Calculus style apply the fusion to the graph and to the references of the resulting action

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Modeling mobility Actions have an arity (number of attached references) We extend the tuple (a,b,c) to (a,b,(c,Mob)) Mob: partial function {1,…,ar(a)} + {1,…,ar(b)}  {1,…} Parameters of c computed using Mob surjective on {1,…,ar(c)} Elements that are mapped to the same position are merged abc 2 32 …

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Other issues Some channels are local only actions that do not require further interactions are meaningful here modeled by a subset Fin of actions May have many SAMs with the same formal structure SAMs are named to distinguish them

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Example: Milner (Fusion) SAM Actions {a, a, , ε} ar(a)=ar(a), ar(  )=ar(ε)=0 Synchronizations (a,a,  ) and symmetric corresponding names are merged (,ε, ) and symmetric names of the non-ε action are propagated Fin= { , ε}

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Managing multiple SAMs SAMs label nodes For new nodes a SAM must be specified When merging nodes, SAMs must be composed SAMs form a programmer-defined commutative monoid monoidal operation used for composition

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Roadmap Our approach A simple example A less simple example What else?

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Example: graph S1S1 Au C … x:Mil u:Mil SnSn

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Example: productions C x:Mil C y:Mil  Au x u:Mil x:Mil  u:Mil auth,y:Mil auth,u:Mil

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Example: synchronization S1S1 Au C … x:Mil u:Mil SnSn auth,y:Mil auth,u:Mil

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Example: final graph S1S1 Au C … x:Mil u:Mil SnSn Assumption: Mil Mil = Mil

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto The full power of our approach Suppose servers are search engines and some clients want to submit the request to all of them Want to use broadcast synchronization between client and servers but Milner synchronization to interact with Au Just change the production for the client with y:Bdc and define Mil Bdc = Bdc

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Example: synchronization again S1S1 Au C … x:Mil u:Mil SnSn auth,y:Bdc auth,u:Mil

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Example: final graph again S1S1 Au C … x:Mil u:Bdc SnSn Assumption: Mil Bdc = Bdc

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Roadmap Our approach A simple example A less simple example What else?

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto A network example Network with routers and clients Channels can have 4Kb/16Kb packets error detection/no error detection To communicate a client creates a virtual communication channel that uses the underlying infrastructure The communication channel supports 16Kb packets/error detection only if all the underlying channels do

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Modeling the scenario Eight different SAMs with all the combinations of 4Kb < 16Kb no error detection < error detection communication < control SAMs provide variants of Milner synchronization e.g. action for detecting errors SAMs form a partial order (pointwise) SAM composition corresponds to glb

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Building a virtual channel C RR C R R 16,√ 4,× 16,× 4,√ 16,√ 16,× 4,√ comm,16,× Act

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Ideas on the productions Each production creates a node labelled with a SAM for communication with the features provided by the nearby channels During synchronization these nodes are merged to build the communication node it is automatically labelled with the desired SAM

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Roadmap Our approach A simple example A less simple example What else?

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Behind graphic A textual representation for hypergraphs, transitions, productions A labelled transition system for system evolution Inference rules to derive transitions from productions Production schemas to define classes of similar productions

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Only for the most proud

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Conclusions A general framework for modeling heterogeneous systems SAMs to model synchronization/complex interaction protocols SHR to model system evolution Different synchronizations can be used Synchronization policy can be changed dynamically Sound mathematical foundations

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto Future work Use SHR+SAMs to model real protocols/heterogeneous systems Use SAMs for QoS [see Emilio’s poster] Study the expressivity of the framework Implement SHR (someone wants to do that?) Apply SAMs to process calculi [paper submitted to CONCUR] Study the relationships between SAMs (composition/refinement)

COORDINATION 2005, April, Namur, Belgium Ivan Lanese and Emilio Tuosto