1 / 10

Synthesis of “correct” adaptors for protocol enhancement in component-based systems

Synthesis of “correct” adaptors for protocol enhancement in component-based systems. Marco Autili, Paola Inverardi, Massimo Tivoli and David Garlan University of L’Aquila Carnegie Mellon University Dip. Informatica 5000 Forbes Avenue

sun
Download Presentation

Synthesis of “correct” adaptors for protocol enhancement in component-based systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Synthesis of “correct” adaptors for protocol enhancement in component-based systems Marco Autili, Paola Inverardi, Massimo Tivoli and David Garlan University of L’Aquila Carnegie Mellon University Dip. Informatica 5000 Forbes Avenue via Vetoio 1, 67100 L’Aquila Pittsburgh, PA 15213-3891 {marco.autili, inverard, tivoli}@di.univaq.it garlan@cs.cmu.edu

  2. Motivation C1 C2 Deadlock C3 C4 Uncontrolled-way assembled system Coordinator Free Architecture (CFA): it might have behavioral failures such as deadlock; it might be necessary to enhance the current communication protocol; Our approach: Restrict to safe behaviors; add extra-logic to augment behaviors;

  3. Automatically derived controlled-way assembly code (the coordinator) Method overview: first step C1 C2 • deadlock-free • coordination policies satisfying CFA CBA C3 C4 The behavior of the CBA system is equivalent to the deadlock-free and coordination policies satisfyingbehavior of the CFA system

  4. K + extra-logic enhanced CBA Method overview: second step C1 C2 extra-logic specification (e.g.: data compression with C1 and C2) extra-logic specification (e.g.: encrypt/decrypt with C2) CBA K K C3 C4 C1 C2 extra-logic2 (K2) extra-logic1 (K1) The composition of K and K’ is the new coordinator of the enhanced deadlock-free and coordination policies-satisfying CBA; We achieve compose-ability in the application of extra-logic; C3 C4

  5. CBA (LTSs specification) + Desired behaviors P (Büchi Automata) Method description: existent approach • FROM CFA system TO corresponding CBA system which is deadlock-free and desired behaviors-satisfying: CFA (MSCs specification) P

  6. Server[f ] 3 CBA (LTSs specification) Server[f ] 3 + Client2[f ] Client1[f ] 2 1 Enhancement specification E (MSCs specification) Client2[f ] Client1[f ] Client3[f ] 2 1 4 Method description: novel approach • FROMdeadlock-free and P-satisfying CBA system TO the enhanceddeadlock-free CBA system which still satisfy P: We want to enhance the current communication protocol here and... ...add a new component. E

  7. Method description: novel approach • MSCs specification of the RETRY-ADD enhancement:

  8. Server[f ] 3 NOT(TOP(K”)) Env(SubK) CBA (LTSs specification) Server[f ] SubK 3 WR + Knew Client2[f ] Client1[f ] 2 1 Enhancement specification E (MSCs specification) Client2[f ] Client1[f ] Client3[f ] 2 1 4 Method description: novel approach • FROMdeadlock-free and P-satisfying CBA system TO the enhanceddeadlock-free CBA system which still satisfy P: = Ø ∩ K’’ E K’

  9. Checking enhancement consistency • We want to check if Knewstill satisfiesP. • In general we have to check if (K”|WR|K’|K) satisfies P. • BUT: • by exploiting the constraints of our architectural style, it is enough to check that (TOP(K”) | SubK) satisfies P; • by exploiting the assume-guarantee paradigm: <true>TOP(K”)<A> <A>SubK<P> <true>(TOP(K”) | SubK)<P> • What’s A? • Note that <Env(SubK)>SubK<P> holds for construction. • Thus it is enough to check <true>TOP(K”)<Env(SubK)>, that (in our context) is NOT(TOP(K”)) ∩ Env(SubK) = Ø. Env(SubK).

  10. Conclusion and future work • Conclusion: • we designed and developed a tool (called SYNTHESIS) which implements the whole approach; • we applied SYNTHESIS in the context of COM/DCOM applications; • the method is compositional in the automatic synthesis of the enhanced coordinator; • we are able to add extra-functionality to a coordinator beyond simply restricting its behavior; (SYNTHESIS is available at the URL: http://www.di.univaq.it/tivoli/SYNTHESIS/synthesis.html) • As future work, we plan to: • use a more user-friendly and expressive specification of the desired behaviors and of the enhancements: • e.g., UML2 Interaction Overview Diagrams and Sequence Diagrams; • validate the applicability of the whole approach to real-scale examples; • derive a distributed implementation of the coordinators (in order to not impose constraints on the system’s components deployment); • study compositional and algebraic properties of coordinators: • commutativity, inverse, idempotence.

More Related