Choosing the Right CBSE School A Comprehensive Guide for Parents
Event-Driven Architecture Analysis Verification
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
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.
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”
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