Your SlideShare is downloading. ×
  • Like
EDOC 2013 "Event Actors Based Approach for Supporting Analysis and Verification of Event-Driven Architectures"
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

EDOC 2013 "Event Actors Based Approach for Supporting Analysis and Verification of Event-Driven Architectures"

  • 97 views
Published

This is my presentation at EDOC 2013 conference in Vancouver, Canada on Sep 13, 2013.

This is my presentation at EDOC 2013 conference in Vancouver, Canada on Sep 13, 2013.

Published in Education , Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
97
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
1
Comments
0
Likes
2

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Event Actors Based Approach for Supporting Analysis and Verification of Event-Driven Architectures Huy Tran and Uwe Zdun Software Architecture Group Faculty of Computer Science University of Vienna, Austria. http://cs.univie.ac.at/swa
  • 2. 2 About Us Software Architecture Group @ University of Vienna, Austria  Founded in 2010  1 University Professor  1 Post-doctoral Researcher  7 Pre-doc Research Assistants  Research areas  software architecture, distributed systems, event-driven architecture, model-driven software development, service- oriented computing
  • 3. 3 Content Problem Verification supports for event-driven software systems 1 Proposed Solution Event actors, event-based interfaces, Petri Nets Summary Achievements, lessons learned, future directions 2 3
  • 4. 4 Problem Context: Event-driven architectures Event Publishers Event Consumers Event Channel/Bus
  • 5. 5 Problem Context: Event-driven architectures SmartFlow Project
  • 6. 6 Problem Context: Event-driven architectures EBBITS Project
  • 7. 7 Problem Summary  Event-driven architectures + Loose coupling + Independent execution + Potential for flexibility, scalability and concurrency - Inherently non-deterministic - Challenging for understanding and analyzing (esp. large architecture designs) - Limited supports for verifications (mostly low- level abstractions, i.e., pub/sub) A B event event event
  • 8. 8 Proposed Solution  Reducing non-determinism while preserving loose coupling, flexibility  Well-defined event-based interfaces  Easy-to-understand abstractions  Close to traditional constructs: sequence, branching, etc.  Textual vs. graphical  Supports for analysis by grounding on formal specifications  Process algebras, Petri Nets, etc.
  • 9. 9 Proposed Solution Reducing non-determinism event(s) event(s) Event-based interface input output
  • 10. 10 Proposed Solution Easy-to-understand abstractions
  • 11. 11 Proposed Solution Grounding on formal specifications
  • 12. 12 Dynamic Event-Driven Actors (DERA) Overview Developer develops Snapshot analyzes & verifies Execution Domain Execution Domain Execution Domain event bridge DERA Engine deploys Petri nets description (e.g., PNML) DeraLang captures translates translates
  • 13. 13 Dynamic Event-Driven Actors (DERA) Meta-model of DERA primitives
  • 14. 14 Dynamic Event-Driven Actors (DERA) DERA Primitives: Computational Unit Event Actor • computational unit or data processing eTruck Arrived eFreeDock Requested TruckMonitor
  • 15. 15 Dynamic Event-Driven Actors (DERA) DERA Primitives: Branching Unit Condition • branching unit (i.e., if-then-else) eStoring Finished isStoring Finished eUnit Stored eStoring NotFinished
  • 16. 16 Dynamic Event-Driven Actors (DERA) DERA Primitives: Synchronization Unit Barrier • synchronization unit eTruck Moved eUnloading Started Synchronizer eCamera Received
  • 17. 17 Dynamic Event-Driven Actors (DERA) DERA Primitives: Domain Bridging Unit Event Bridge • connect two domains Yard Management Domain Warehouse Management Domain YMS-to-WMS
  • 18. 18 Grounding DERA constructs on Petri Nets General Petri Nets representation of DERA constructs General Petri Nets representation of a “connection”
  • 19. 19 Grounding DERA constructs on Petri Nets
  • 20. 20 Dynamic Event-Driven Actors (DERA) An example of mapping a DERA-based system to Petri Nets
  • 21. 21 DERA-based system verifications Dead execution paths
  • 22. 22 DERA-based system verifications Deadlocks (jamming before reaching the end)
  • 23. 23 DERA-based system verifications Livelocks (trapping in endless cycles)
  • 24. 24 Summary Achievements, lessons learned, and future directions  Reducing non-determinism is important to enhance supports for understanding and analyzing event-based systems  Intuitive notational abstractions, which are  close to traditional constructs: important for lessening the learning-curve  grounded on formal specifications: enabling formal verifications  Potential future directions  additional constructs  other aspects: data, fault handling, temporal, etc.  inter-domain specifications and verifications
  • 25. 25 Many thanks for your attention! Huy Tran huy.tran@univie.ac.at Research Group Software Architecture Faculty of Computer Science University of Vienna, Austria. http://cs.univie.ac.at/swa