This document discusses modeling service-oriented and event-driven architectures. It proposes a language-driven approach using a domain-specific modeling language for enterprise architecture that supports components, information models, invariants, business process specifications, and events. Current modeling techniques like ArchiMate, MODAF and TOGAF are described as complex, imprecise and lacking capabilities like simulation. A case study and simulation results are also mentioned but not described.
A look at the technologies and the architecture behind the emerging real-time web. We will discuss XMPP/Jabber and AMQP protocols and explore the advantages of each over the commonly used HTTP request-response cycle. As part of the workshop we will look at the available tools and libraries and work through simple examples of creating an event driven, real-time service.
This presentation provides an overview of decision-making in organisations and introduces a new language called ESL that uses actors to create an executable model that can be analysed. A number of small examples of ESL are shown. The presentation concludes with a larger case study that addresses the recent demonetisation event in India.
A look at the technologies and the architecture behind the emerging real-time web. We will discuss XMPP/Jabber and AMQP protocols and explore the advantages of each over the commonly used HTTP request-response cycle. As part of the workshop we will look at the available tools and libraries and work through simple examples of creating an event driven, real-time service.
This presentation provides an overview of decision-making in organisations and introduces a new language called ESL that uses actors to create an executable model that can be analysed. A number of small examples of ESL are shown. The presentation concludes with a larger case study that addresses the recent demonetisation event in India.
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
A Common Basis for Modelling Service-Oriented and Event-Driven Architecture
1. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
A Common Basis for Modelling Service-Oriented
and Event-Driven Architecture
Tony Clark and Balbir S. Barn
School of Engineering and Information Sciences, Middlesex University, London,
UK
February 23, 2012
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
2. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Contents
1 Problem and Hypothesis
2 Modelling: A Language Driven Approach
Services
Events
Tooling
3 Case Study
4 Simulation
5 Conclusion
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
3. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Enterprise Architecture
What does a business do?
Why does the business do it?
How does the business operate?
Use Cases: as-is and to-be; IT alignment; governance;
resource planning; compliance; IT management; etc.
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
4. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
It’s a Puzzlement [King of Siam]
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
5. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Architectural Styles: Inversion of Control
Service Oriented Event Driven
Architecture Architecture
Messages drive Events drive
computation. computation.
Interfaces of operations. Interfaces of events.
Synchronous, Always asynchronous.
Asynchronous, Business processes
Broadcast, etc. attached to complex
Business processes events.
attached to services
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
6. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Architectural Styles: Architectural Styles
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
7. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Architectural Styles: Messages
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
8. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Architectural Styles: Messages
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
9. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Architectural Styles: Messages
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
10. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Architectural Styles: Messages
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
11. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Architectural Styles: Messages
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
12. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Architectural Styles: Messages
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
13. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Architectural Styles: Messages
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
14. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Architectural Styles: Messages
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
15. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Architectural Styles: Inversion of Control
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
16. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Architectural Styles: Events
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
17. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Architectural Styles: Events
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
18. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Architectural Styles: Events
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
19. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Architectural Styles: Events
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
20. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Architectural Styles: Events
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
21. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Technologies for EA
ArchiMate
MODAF
TOGAF
UML and SysML
All fairly complex, imprecise, not domain specific, do not support
reasoning, no simulation.
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
22. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
A Language Driven Approach to EA
A Domain Specific Language for Modelling EA:
Component architecture.
Information models.
Invariants.
Pre and post specification of Business Processes.
Events.
A Domain Specific Language for EA Simulation:
As above...
Commands for business process implementation.
Message passing.
Rules for complex event processing.
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
23. Problem and Hypothesis
Modelling: A Language Driven Approach Services
Case Study Events
Simulation Tooling
Conclusion
Contents
1 Problem and Hypothesis
2 Modelling: A Language Driven Approach
Services
Events
Tooling
3 Case Study
4 Simulation
5 Conclusion
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
24. Problem and Hypothesis
Modelling: A Language Driven Approach Services
Case Study Events
Simulation Tooling
Conclusion
EA Modelling Language
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
25. Problem and Hypothesis
Modelling: A Language Driven Approach Services
Case Study Events
Simulation Tooling
Conclusion
EA Simulation Language
component d {
port p[out]:interface {
v():void
}
port q[out]:interface {
z():void
}
operations {
y() {
p <- v();
q <- z()
}
}
}
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
26. Problem and Hypothesis
Modelling: A Language Driven Approach Services
Case Study Events
Simulation Tooling
Conclusion
EA Simulation Language
component d { component b {
port p[out]:interface { port q[in]: interface {
v():void z():void
} }
port q[out]:interface { operations {
z():void z() {
} print(’called z()’)
operations { }
y() { }
p <- v(); }
q <- z()
}
}
}
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
27. Problem and Hypothesis
Modelling: A Language Driven Approach Services
Case Study Events
Simulation Tooling
Conclusion
EA Simulation Language
component d { component b {
port p[out]:interface { port q[in]: interface {
v():void z():void
} }
port q[out]:interface { operations {
z():void z() {
} print(’called z()’)
operations { }
y() { }
p <- v(); }
q <- z() component a {
} port p[in]: interface {
} v():void;
} }
operations {
v() { print(’called v()’) }
}
}
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
28. Problem and Hypothesis
Modelling: A Language Driven Approach Services
Case Study Events
Simulation Tooling
Conclusion
EA Simulation Language
component c { component a {
c = 10 port p[in]: interface {
port events[out]: interface { x(data:int):void;
x(data:int):void y(data:int):void
} }
operations { model {
x() { class X { x:int }
events <- x(c) class Y { y:int }
} class Data { d:int }
} }
} rules {
component d { x_and_y: X(x) Y(y) ?(p(x,y)) {
d = 10 v(x,y)
port events[out]: interface { }
y(data:int):void }
} operations {
operations { x(data) { new X(data) }
y() { y(data) { new Y(data) }
events <- y(d) v(x,y) { new Data(x+y) }
} }
} }
} Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
29. Problem and Hypothesis
Modelling: A Language Driven Approach Services
Case Study Events
Simulation Tooling
Conclusion
Component Connections
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
30. Problem and Hypothesis
Modelling: A Language Driven Approach Services
Case Study Events
Simulation Tooling
Conclusion
Calling Sequence
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
31. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Contents
1 Problem and Hypothesis
2 Modelling: A Language Driven Approach
Services
Events
Tooling
3 Case Study
4 Simulation
5 Conclusion
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
32. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
UK Borders Agency
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
33. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Component Dependencies
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
34. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Registry
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
35. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Student Office
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
36. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Monitor
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
37. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Contents
1 Problem and Hypothesis
2 Modelling: A Language Driven Approach
Services
Events
Tooling
3 Case Study
4 Simulation
5 Conclusion
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
38. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Case Study: Example Component
component registry {
port in[in]: interface {
register(name:str,course:str):void
}
port events[out]: interface {
register(name:str,course:str):void
}
model {
class Student {
name:str;
course:str
}
}
operations {
register(name,course) {
new Student(name,course);
events <- register(name,course)
}
}
}
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
39. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Dynamic, Parametric Components
operations {
make_department(name,courses,academic_names) {
component {
...
school_office = make_student_office(courses)
academics = [ make_academic(name) | name <- academic_names ]
}
}
make_academic(name) {
component { ... }
}
make_student_office(courses) {
component { ... }
}
}
computer_science = make_department(’Business’,[
Course(’Business and IT’,[
Module(’Marketing’,[CW(’BIT_MCW1’,4),CW(’BIT_MCW2’,6)])]),
Course(’Business Informatics’,[
Module(’Finance’,[CW(’BI_MCW1’,4),CW(’BI_MCW2’,6)])]),
],[’Dr Piercemuller’,’Prof. Plumb’])
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
40. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Simulation Architecture
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
41. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Screen Model
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
42. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Simulation: GUI
component gui {
display = jcomponent(’frames.GUI’)
operations {
show() {
let time = find Time(t) in state { t } else 0
in display.in <- display(Table([
[Text(’contacts:’)],
[Table([[Text(r.name),Text(r.contacts)] | r <- monitor.in.contacts()])],
[Text(’ ’)],
[Button(’Tick’+time,fun(e) clock_port <- tick())]
]))
}
tick(time) { delete Time(time-1); new Time(time); show() }
}
port in[in]: interface { show():void; tick(time:int):void }
port clock_port[out]:interface { tick():void }
}
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
43. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Borders Agency Simulation
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
44. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Other Examples
EA Alignment in order to comply with new UK HE
regulation for Key Information Sets.
Architecture for Sense Making using data from social
network sites.
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
45. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Contents
1 Problem and Hypothesis
2 Modelling: A Language Driven Approach
Services
Events
Tooling
3 Case Study
4 Simulation
5 Conclusion
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive
46. Problem and Hypothesis
Modelling: A Language Driven Approach
Case Study
Simulation
Conclusion
Conclusion
EA use-cases require precision to analyse designs.
Domain analysis leads to: components; information models;
messages; events.
Current technologies are very large, complex and imprecise.
A Language Driven Approach leads to a design and simulation
languages.
Design language as UML profile.
Simulation language implemented in Java.
Tested on several case studies.
Future Steps:
Support for Business Goals.
Methods to support approach and integration with existing EA
technologies.
Develop techniques for various EA analysis use-cases.
Integrate simulation language with real architectures.
Tony Clark and Balbir S. Barn A Common Basis for Modelling Service-Oriented and Event-Drive