SlideShare ist ein Scribd-Unternehmen logo
1 von 25
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
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
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
Problem
Context: Event-driven architectures
Event Publishers Event Consumers
Event
Channel/Bus
5
Problem
Context: Event-driven architectures
SmartFlow Project
6
Problem
Context: Event-driven architectures
EBBITS Project
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
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
Proposed Solution
Reducing non-determinism
event(s) event(s)
Event-based interface
input output
10
Proposed Solution
Easy-to-understand abstractions
11
Proposed Solution
Grounding on formal specifications
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
Dynamic Event-Driven Actors (DERA)
Meta-model of DERA primitives
14
Dynamic Event-Driven Actors (DERA)
DERA Primitives: Computational Unit
Event Actor
• computational unit or data
processing
eTruck
Arrived
eFreeDock
Requested
TruckMonitor
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
Dynamic Event-Driven Actors (DERA)
DERA Primitives: Synchronization Unit
Barrier
• synchronization unit
eTruck
Moved
eUnloading
Started
Synchronizer
eCamera
Received
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
Grounding DERA constructs on Petri Nets
General Petri Nets representation of DERA constructs
General Petri Nets representation of a “connection”
19
Grounding DERA constructs on Petri Nets
20
Dynamic Event-Driven Actors (DERA)
An example of mapping a DERA-based system to Petri Nets
21
DERA-based system verifications
Dead execution paths
22
DERA-based system verifications
Deadlocks (jamming before reaching the end)
23
DERA-based system verifications
Livelocks (trapping in endless cycles)
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
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

Weitere ähnliche Inhalte

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

The Art of The Event Streaming Application: Streams, Stream Processors and Sc...
The Art of The Event Streaming Application: Streams, Stream Processors and Sc...The Art of The Event Streaming Application: Streams, Stream Processors and Sc...
The Art of The Event Streaming Application: Streams, Stream Processors and Sc...
confluent
 
Kakfa summit london 2019 - the art of the event-streaming app
Kakfa summit london 2019 - the art of the event-streaming appKakfa summit london 2019 - the art of the event-streaming app
Kakfa summit london 2019 - the art of the event-streaming app
Neil Avery
 
Introduction to Streaming Analytics
Introduction to Streaming AnalyticsIntroduction to Streaming Analytics
Introduction to Streaming Analytics
Guido Schmutz
 
WS-VLAM workflow
WS-VLAM workflowWS-VLAM workflow
WS-VLAM workflow
guest6295d0
 

Ähnlich wie EDOC 2013 "Event Actors Based Approach for Supporting Analysis and Verification of Event-Driven Architectures" (20)

Monitoring as an entry point for collaboration
Monitoring as an entry point for collaborationMonitoring as an entry point for collaboration
Monitoring as an entry point for collaboration
 
Oracle Stream Explorer
Oracle Stream ExplorerOracle Stream Explorer
Oracle Stream Explorer
 
Oracle Stream Explorer - Simplifying Event/Stream Processing
Oracle Stream Explorer - Simplifying Event/Stream ProcessingOracle Stream Explorer - Simplifying Event/Stream Processing
Oracle Stream Explorer - Simplifying Event/Stream Processing
 
Oracle Stream Explorer Guido Schmutz
Oracle Stream Explorer Guido SchmutzOracle Stream Explorer Guido Schmutz
Oracle Stream Explorer Guido Schmutz
 
Global Azure Bootcamp 2017 - Performance and Health Management for Modern App...
Global Azure Bootcamp 2017 - Performance and Health Management for Modern App...Global Azure Bootcamp 2017 - Performance and Health Management for Modern App...
Global Azure Bootcamp 2017 - Performance and Health Management for Modern App...
 
Distributed Data Processing for Real-time Applications
Distributed Data Processing for Real-time ApplicationsDistributed Data Processing for Real-time Applications
Distributed Data Processing for Real-time Applications
 
Azure Service Fabric: notes from the field (Sam Vanhoute @Integrate 2016)
Azure Service Fabric: notes from the field (Sam Vanhoute @Integrate 2016)Azure Service Fabric: notes from the field (Sam Vanhoute @Integrate 2016)
Azure Service Fabric: notes from the field (Sam Vanhoute @Integrate 2016)
 
The Art of The Event Streaming Application: Streams, Stream Processors and Sc...
The Art of The Event Streaming Application: Streams, Stream Processors and Sc...The Art of The Event Streaming Application: Streams, Stream Processors and Sc...
The Art of The Event Streaming Application: Streams, Stream Processors and Sc...
 
Kakfa summit london 2019 - the art of the event-streaming app
Kakfa summit london 2019 - the art of the event-streaming appKakfa summit london 2019 - the art of the event-streaming app
Kakfa summit london 2019 - the art of the event-streaming app
 
Big data meet_up_08042016
Big data meet_up_08042016Big data meet_up_08042016
Big data meet_up_08042016
 
Introduction to Streaming Analytics
Introduction to Streaming AnalyticsIntroduction to Streaming Analytics
Introduction to Streaming Analytics
 
Siddhi: A Second Look at Complex Event Processing Implementations
Siddhi: A Second Look at Complex Event Processing ImplementationsSiddhi: A Second Look at Complex Event Processing Implementations
Siddhi: A Second Look at Complex Event Processing Implementations
 
Oracle Stream Analytics - Simplifying Stream Processing
Oracle Stream Analytics - Simplifying Stream ProcessingOracle Stream Analytics - Simplifying Stream Processing
Oracle Stream Analytics - Simplifying Stream Processing
 
EDA With Glassfish ESB Jfall IEP Intelligent Event Processing
EDA With Glassfish ESB Jfall IEP Intelligent Event ProcessingEDA With Glassfish ESB Jfall IEP Intelligent Event Processing
EDA With Glassfish ESB Jfall IEP Intelligent Event Processing
 
Building a system for machine and event-oriented data - Velocity, Santa Clara...
Building a system for machine and event-oriented data - Velocity, Santa Clara...Building a system for machine and event-oriented data - Velocity, Santa Clara...
Building a system for machine and event-oriented data - Velocity, Santa Clara...
 
Building a system for machine and event-oriented data - Data Day Seattle 2015
Building a system for machine and event-oriented data - Data Day Seattle 2015Building a system for machine and event-oriented data - Data Day Seattle 2015
Building a system for machine and event-oriented data - Data Day Seattle 2015
 
Timmons Group ArcGIS Explorer Emergency Operations Solution
Timmons Group ArcGIS Explorer Emergency Operations SolutionTimmons Group ArcGIS Explorer Emergency Operations Solution
Timmons Group ArcGIS Explorer Emergency Operations Solution
 
Deconstructing Monoliths with Domain Driven Design
Deconstructing Monoliths with Domain Driven DesignDeconstructing Monoliths with Domain Driven Design
Deconstructing Monoliths with Domain Driven Design
 
WS-VLAM workflow
WS-VLAM workflowWS-VLAM workflow
WS-VLAM workflow
 
Monitoring in 2017 - TIAD Camp Docker
Monitoring in 2017 - TIAD Camp DockerMonitoring in 2017 - TIAD Camp Docker
Monitoring in 2017 - TIAD Camp Docker
 

Kürzlich hochgeladen

Kürzlich hochgeladen (20)

Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the Classroom
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxHMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptx
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
How to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxHow to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptx
 

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