In this presentation, I will explain event driven architecture, describe the different types of events, demonstrate how events can be related and orchestrated, and provide a basic understanding of how this method can drive the architecture of enterprise systems. In addition to understanding the concepts of event driven architecture, we will explore a working sample built using an open-source .NET messaging framework called MassTransit.
We have identified issues related to composition of a business process and discussed the requirements for event-driven composition and event-driven service-oriented architecture.
How can the concepts of event-driven linked with the concepts of serivce-oriented architectures. and what is the added value of such a combination?
What do events mean in the context of Business Process Management (BPM) and Business Activity Monitoring (BAM), and how can such architectures/solutions be enhanced with the concepts of Complex Event Processing?
In this presentation, I will explain event driven architecture, describe the different types of events, demonstrate how events can be related and orchestrated, and provide a basic understanding of how this method can drive the architecture of enterprise systems. In addition to understanding the concepts of event driven architecture, we will explore a working sample built using an open-source .NET messaging framework called MassTransit.
We have identified issues related to composition of a business process and discussed the requirements for event-driven composition and event-driven service-oriented architecture.
How can the concepts of event-driven linked with the concepts of serivce-oriented architectures. and what is the added value of such a combination?
What do events mean in the context of Business Process Management (BPM) and Business Activity Monitoring (BAM), and how can such architectures/solutions be enhanced with the concepts of Complex Event Processing?
Service Oriented Architecture and Business Process Modeling OverviewJean Ferguson
Overview of Service Oriented Architecture and Business Process Modeling as it applies to the Open Library Environment Project as presented at the Regional Design Workshops.
Event-driven architecture (EDA) is a software architecture pattern promoting the production, detection, consumption of, and reaction to events.
This architectural pattern may be applied by the design and implementation of applications and systems which transmit events among loosely coupled software components and services.
In this session you’ll learn how to create a loosely coupled architecture for your business that has the domain at the core. You’ll learn the basics of EDA, and also learn how we are transforming our architecture at Unibet.com to become event driven, and what benefits it will bring to our business. The session will cover technologies such as JMS, XML, JSON, Google Protocol Buffers, ActiveMQ and Spring.
Impact 2014 1147 - Bridging Business Process Management and Integration use c...Brian Petrini
IBM Integration Bus makes it easy to integrate connectivity logic with business processes. This session explains everything teams need to know about using IBM Integration Bus in conjunction with IBM Business Process Manager Standard and Advanced. Presenters also provide insight into how this easy-to-use technology will evolve.
Impact 2012 1640 - BPM Design considerations when optimizing business process...Brian Petrini
Whilst it is not always possible to remove and automate human tasks in a process, if it can be done, it often leads to the most dramatic optimization, leading to fully straight through processing. The challenge is that if straight through processing is the goal, we may need to design the process differently from the beginning, with automation in mind. This lecture uses tried and tested techniques for assessing processes to establish whether they are likely to be able to evolve to full automation, and recommends design patterns to be used to simplify the progression from manual to decision supported to completely automated.
Impact 2008 1994A - Exposing services people want to consume: a model-driven ...Brian Petrini
Where did my SOA budget go? I just spent 80% of it on integration and I still haven't got an SOA! We used to call it Enterprise Application Integration (EAI), now we call it service exposition. EAI is still there, it's still hard, and it still takes the vast majority of implementation time on SOA projects. Most companies hadn't finished their EAI when SOA came along. This session discusses how to capture and model the true complexity of an integration interface, and how to relate that to product capabilities. We'll show new techniques for how models can be used to improve estimating, aid product selection, assist designers with common integration patterns, and ultimately generate artifacts. We will discuss common integration patterns such as re-tries, healthcheck, flow control, store-forward, event sequencing and note how these are typically achieved using the current product suite, with particular reference to products such as WebSphere Process Server and WebSphere ESB.
Advanced Concepts in Software as a Service / Service Oriented ArchitectureDamon Carr
A domain-language driven approach to first understanding a common semantic set for shared understanding in SaaS/SOA.
This is critical as these technologies enable new communications far beyond \'just the bits and bytes\'. Indeed people have to communicate as well before gains can be expected. This presentation covers the technical and organization concerns.
InterConnect 2017 HBP-3394-Enable innovative cloud solutions with IBM BPM and...Brian Petrini
How can business processes be improved to use innovative new APIs quickly and easily? How can existing processes be published as APIs to easily be included as part of new cloud solutions? This session will answer these questions and present common business use cases. We will also discuss the Business Operations Connect and Process Connect aspects of IBM Connect family of solutions. This session goes into details about how a process designer would consume APIs using IBM BPM Process Designer and the REST and OpenAPI support in Process Connect. Come learn how to expose process APIs for reuse in innovative cloud solutions, and how to manage them in API Connect.
This is a presentation on the concept of "software as a service". This presentation was completed for the course Information Resources and Technology at Pepperdine\'s MBA program.
Paul's presentation at SOA Workshop,Colombo,Sri Lanka identifies how ESBs fit into a Service Oriented Architecture, discusses when to use an ESB and when not to, looks at ESB patterns and anti-patterns, covers some simple ESB approaches and investigates how ESBs can fit into EDA.
This is a talk I gave on patterns and antipatterns of SOA, based on my understandings and practices and inspired by Ron Jacobs famous webcast by the same name.
Service Oriented Architecture and Business Process Modeling OverviewJean Ferguson
Overview of Service Oriented Architecture and Business Process Modeling as it applies to the Open Library Environment Project as presented at the Regional Design Workshops.
Event-driven architecture (EDA) is a software architecture pattern promoting the production, detection, consumption of, and reaction to events.
This architectural pattern may be applied by the design and implementation of applications and systems which transmit events among loosely coupled software components and services.
In this session you’ll learn how to create a loosely coupled architecture for your business that has the domain at the core. You’ll learn the basics of EDA, and also learn how we are transforming our architecture at Unibet.com to become event driven, and what benefits it will bring to our business. The session will cover technologies such as JMS, XML, JSON, Google Protocol Buffers, ActiveMQ and Spring.
Impact 2014 1147 - Bridging Business Process Management and Integration use c...Brian Petrini
IBM Integration Bus makes it easy to integrate connectivity logic with business processes. This session explains everything teams need to know about using IBM Integration Bus in conjunction with IBM Business Process Manager Standard and Advanced. Presenters also provide insight into how this easy-to-use technology will evolve.
Impact 2012 1640 - BPM Design considerations when optimizing business process...Brian Petrini
Whilst it is not always possible to remove and automate human tasks in a process, if it can be done, it often leads to the most dramatic optimization, leading to fully straight through processing. The challenge is that if straight through processing is the goal, we may need to design the process differently from the beginning, with automation in mind. This lecture uses tried and tested techniques for assessing processes to establish whether they are likely to be able to evolve to full automation, and recommends design patterns to be used to simplify the progression from manual to decision supported to completely automated.
Impact 2008 1994A - Exposing services people want to consume: a model-driven ...Brian Petrini
Where did my SOA budget go? I just spent 80% of it on integration and I still haven't got an SOA! We used to call it Enterprise Application Integration (EAI), now we call it service exposition. EAI is still there, it's still hard, and it still takes the vast majority of implementation time on SOA projects. Most companies hadn't finished their EAI when SOA came along. This session discusses how to capture and model the true complexity of an integration interface, and how to relate that to product capabilities. We'll show new techniques for how models can be used to improve estimating, aid product selection, assist designers with common integration patterns, and ultimately generate artifacts. We will discuss common integration patterns such as re-tries, healthcheck, flow control, store-forward, event sequencing and note how these are typically achieved using the current product suite, with particular reference to products such as WebSphere Process Server and WebSphere ESB.
Advanced Concepts in Software as a Service / Service Oriented ArchitectureDamon Carr
A domain-language driven approach to first understanding a common semantic set for shared understanding in SaaS/SOA.
This is critical as these technologies enable new communications far beyond \'just the bits and bytes\'. Indeed people have to communicate as well before gains can be expected. This presentation covers the technical and organization concerns.
InterConnect 2017 HBP-3394-Enable innovative cloud solutions with IBM BPM and...Brian Petrini
How can business processes be improved to use innovative new APIs quickly and easily? How can existing processes be published as APIs to easily be included as part of new cloud solutions? This session will answer these questions and present common business use cases. We will also discuss the Business Operations Connect and Process Connect aspects of IBM Connect family of solutions. This session goes into details about how a process designer would consume APIs using IBM BPM Process Designer and the REST and OpenAPI support in Process Connect. Come learn how to expose process APIs for reuse in innovative cloud solutions, and how to manage them in API Connect.
This is a presentation on the concept of "software as a service". This presentation was completed for the course Information Resources and Technology at Pepperdine\'s MBA program.
Paul's presentation at SOA Workshop,Colombo,Sri Lanka identifies how ESBs fit into a Service Oriented Architecture, discusses when to use an ESB and when not to, looks at ESB patterns and anti-patterns, covers some simple ESB approaches and investigates how ESBs can fit into EDA.
This is a talk I gave on patterns and antipatterns of SOA, based on my understandings and practices and inspired by Ron Jacobs famous webcast by the same name.
ExperiaSphere: Open-Source Management and Orchestration--Introductiontnolle
This presentation is an annotated set of tutorial slides on the ExperiaSphere(TM) model of open-source management and orchestration. It provides an overview of how to build on open-source tools like Linked USDL, OpenTOSCA, RTG, and OpenNMS to build the basis for management and orchestration for legacy networks, SDN, NFV, and the cloud.
No SOA ROI - SOA is Dead? Getting SOA ValueAkiva Marks
This historical presentation, circa 2009, describes issues in moving and understanding SOA architecture, and moving from tactical 'just connect it together' towards an enterprise strategy for Service Oriented Architecture and a 'build it once' approach - and how many are struggling with moving from a connect-it to an 'oh no - integration spaghetti'. Did SOA die by 2009? (answer - no, it just became part of the underlying structure.)
“ The Microservices architecture has many appealing qualities, but the road towards it has painful traps for the unwary. This book will help you figure out if this path is for you, and how to avoid those traps on your journey.”
—Martin Fowler Chief Scientist, ThoughtWorks
The On-Ramp to Service-Oriented Architectureeprentise
It’s crucial for a business to be well informed when considering which system architecture to implement. Service-Oriented Architecture (SOA) has come to the forefront of IT architectures because the Internet makes it easier than ever before to connect to and subscribe to services.
View the original Blog post: http://www.eprentise.com/blog/trends-and-technology/the-on-ramp-to-service-oriented-architecture/
Website: www.eprentise.com
Twitter: @eprentise
Google+: https://plus.google.com/u/0/+Eprentise/posts
Facebook: https://www.facebook.com/eprentise
Ensure your data is Complete, Consistent, and Correct by using eprentise software to transform your Oracle® E-Business Suite.
Microservices is one of the hottest technology trends nowadays, and also one that brings the more vehement arguments regarding of what a microservice is and what's the proper way to implement them. Underlying these apparently irreconcilable arguments there is a fundamental difference in terms of the philosophy and architecture of microservices: should they be coarse level business components exposing an API or should they actually integrate all layers up to the UI? Should they connect by api call or should be event based? In this talk we explore these two approaches, their differences and also the common concepts with the intention to clarify them and help in making sound design decisions.
It is a presentation of a research paper on Component Based Software Engineering vs Service Oriented Architecture. It deals with basic comparative study of CBSE and SOA , SOA technologies and Service Components, Modern Components. It also covers discussions and justifications of performance issues of web services.
This is a presentation of a research paper on comparative study of Component based Software Engineering and Service Oriented Architecture. It covers technologies of both paradigms as well as technical discussions and justifications on SOA. It also covers modern components.
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
A tale of scale & speed: How the US Navy is enabling software delivery from l...sonjaschweigert1
Rapid and secure feature delivery is a goal across every application team and every branch of the DoD. The Navy’s DevSecOps platform, Party Barge, has achieved:
- Reduction in onboarding time from 5 weeks to 1 day
- Improved developer experience and productivity through actionable findings and reduction of false positives
- Maintenance of superior security standards and inherent policy enforcement with Authorization to Operate (ATO)
Development teams can ship efficiently and ensure applications are cyber ready for Navy Authorizing Officials (AOs). In this webinar, Sigma Defense and Anchore will give attendees a look behind the scenes and demo secure pipeline automation and security artifacts that speed up application ATO and time to production.
We will cover:
- How to remove silos in DevSecOps
- How to build efficient development pipeline roles and component templates
- How to deliver security artifacts that matter for ATO’s (SBOMs, vulnerability reports, and policy evidence)
- How to streamline operations with automated policy checks on container images
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:
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.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
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.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Welocme to ViralQR, your best QR code generator.ViralQR
Welcome to ViralQR, your best QR code generator available on the market!
At ViralQR, we design static and dynamic QR codes. Our mission is to make business operations easier and customer engagement more powerful through the use of QR technology. Be it a small-scale business or a huge enterprise, our easy-to-use platform provides multiple choices that can be tailored according to your company's branding and marketing strategies.
Our Vision
We are here to make the process of creating QR codes easy and smooth, thus enhancing customer interaction and making business more fluid. We very strongly believe in the ability of QR codes to change the world for businesses in their interaction with customers and are set on making that technology accessible and usable far and wide.
Our Achievements
Ever since its inception, we have successfully served many clients by offering QR codes in their marketing, service delivery, and collection of feedback across various industries. Our platform has been recognized for its ease of use and amazing features, which helped a business to make QR codes.
Our Services
At ViralQR, here is a comprehensive suite of services that caters to your very needs:
Static QR Codes: Create free static QR codes. These QR codes are able to store significant information such as URLs, vCards, plain text, emails and SMS, Wi-Fi credentials, and Bitcoin addresses.
Dynamic QR codes: These also have all the advanced features but are subscription-based. They can directly link to PDF files, images, micro-landing pages, social accounts, review forms, business pages, and applications. In addition, they can be branded with CTAs, frames, patterns, colors, and logos to enhance your branding.
Pricing and Packages
Additionally, there is a 14-day free offer to ViralQR, which is an exceptional opportunity for new users to take a feel of this platform. One can easily subscribe from there and experience the full dynamic of using QR codes. The subscription plans are not only meant for business; they are priced very flexibly so that literally every business could afford to benefit from our service.
Why choose us?
ViralQR will provide services for marketing, advertising, catering, retail, and the like. The QR codes can be posted on fliers, packaging, merchandise, and banners, as well as to substitute for cash and cards in a restaurant or coffee shop. With QR codes integrated into your business, improve customer engagement and streamline operations.
Comprehensive Analytics
Subscribers of ViralQR receive detailed analytics and tracking tools in light of having a view of the core values of QR code performance. Our analytics dashboard shows aggregate views and unique views, as well as detailed information about each impression, including time, device, browser, and estimated location by city and country.
So, thank you for choosing ViralQR; we have an offer of nothing but the best in terms of QR code services to meet business diversity!
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfPeter Spielvogel
Building better applications for business users with SAP Fiori.
• What is SAP Fiori and why it matters to you
• How a better user experience drives measurable business benefits
• How to get started with SAP Fiori today
• How SAP Fiori elements accelerates application development
• How SAP Build Code includes SAP Fiori tools and other generative artificial intelligence capabilities
• How SAP Fiori paves the way for using AI in SAP apps
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionAggregage
Join Maher Hanafi, VP of Engineering at Betterworks, in this new session where he'll share a practical framework to transform Gen AI prototypes into impactful products! He'll delve into the complexities of data collection and management, model selection and optimization, and ensuring security, scalability, and responsible use.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
1. SOA
This is in response to Jeppe Cramon’s
presentation on “SOA & EDA”
2. There are problems with
SOA
Systems are more fragile
Development and Maintenance costs are higher
Your services are not being reused
You thought SOA would solve your integration
problems, but they’ve gotten worse
No one wants to build or maintain services
System performance is worse
Source: Jeppe Cramon
3. All these symptoms can be experienced if you
do not understand what you are doing
Systems are more fragile
This is because there are more moving parts and services are
shared assets and when changes are needed it impacts/breaks more
components
Development and Maintenance costs are higher
To Quote Peter H. : “the second you introduce distributed, you
need to leverage infrastructure that addresses network latency,
fault tolerance, message serialization, unreliable networks,
asynchronicity, versioning, varying loads within the application tiers
etc […] Takes top level talent at the moment, not something all
enterprises have access to.”
4. All these symptoms can be experienced if you
do not understand what you are doing
Your services are not being reused
In SOA reuse happens the other way around, when a new
consumer wants to reuse a service, there is a very low
probability that the service will be reused as is.
It generally requires some small changes, when you change the
service, what happens is that it is the old consumer which reuses
the new version of the services, unless you adopt a “compatible
versioning” strategy where new versions of services are
compatible with older consumers.
5. All these symptoms can be experienced if you
do not understand what you are doing
“You thought SOA would solve your integration problems,
but they’ve gotten worse”
Well, following what you say, would certainly create a massive
mess with events flying every where and everyone write code to
correlate their content world class encapsulation, cohesion
and lose coupling
“No one wants to build or maintain services”
That’s why you need a dedicated service team
It also fit well the architectural paradigm of intent / consistency
with SoR exposing Integration Points
“System performance is worse”
Not quite sure about that. I did some measurements on Synapse
for instance and the added latency is less than 50 ms (measured
around 10 ms, but just to be safe, I say 50)
6. If you have arrived at the realization that
SOA is a pain and costs too much
without enabling business agility or
reducing your costs, you are not the only
one.
You will have to change your approach
to achieve the benefits of SOA
If only no one would listen to hipsters, pundits and
other self proclaimed experts
7. Have our mindset changed
over the last 40 years?
Clearly yours has not
8. To be clear – none of the examples
represent in my opinion SOA
The 4 tenets of SOA
1. Services are autonomous
– Encapsulation & Cohesion at a bigger scale.
– A service is autonomous if it doesn’t rely on other services to complete
its job
2. Services have explicit boundaries
– Services should not be too familiar with each other. There’s a clear
boundary to where the responsibilities of each services starts and ends
– Boundaries are made unclear when a service rely on other services to
complete its job
3. Services share contract and schema, not class or type
– Encapsulation improved. We need not worry about how things are
implemented (languages or platform dependent information)
4. Service interaction is controlled by a policy
– Controls under which rules/form of technical communication between
services take place (e.g. using encryption incl. algorithm and keys)
Services ensure
consistency
Service Interfaces are
Intentional
Ok
Whatever
9. WebServices and in general
synchronous integration has
nothing to do with real SOA
Some call this pattern for SOA 1.0 to
distinguish them selves from the old
approach and the mess it causes
Because “real” SOA
is a protocol?
10. Layered Architectures typically leaves all
orchestration to a central manager (ESB)
where business processes are coordinated
through spaghetti code (BPEL)
I am actually the (pre) author of that figure coming
from BPMN. There is no ESB and no BPEL in it,
this is actually a collaboration diagram, which I
can be credited for pushing into BPMN
BPEL is actually the only technology available today
to achieve consistency at a reasonable cost. You simply
have no freaking clue as to what you are talking about
11. These BPEL processes typically
break all Service encapsulation
as they are data and feature
envious
This hurts our coupling an autonomy even
further
BPEL is actually the only technology available today to
achieve consistency at a reasonable cost. You simply
have no freaking clue as to what you are talking about
These past two slides is the reason why I am so mad at Jeppe. It shows
that no only he has no understanding whatsoever as to what he is talking
about, and he has no restraint in what he is claiming
12. What we have with classic
layered SOA is a HARD
COUPLED
architecture
You have no understanding as to what coupling means
13. Service reuse multiplies our direct and
especially indirect dependencies which
creates high coupling
My new
Service
that wants
to reuse
other
services
Service
that is
going to
be reused
Reusa
ble
Servic
e
Reusa
ble
Servic
e
Reusa
ble
Servic
e
Reusa
ble
Servic
e
Reusa
ble
Servic
e
DB
servi
ce
Another
Service
that is
going to
be reused
Could please create the same picture with code
duplication? Specially the stateful code that is needed for
achieving consistency
14. A Service is
A technical authority for a specific business
capability – very similar to Bounded Contexts
The owner of all the data and business rules that
support this business capability – like Bounded
Contexts
A Service is equivalent to a
Bounded Context
When you have 500 apps, can you please show me
where the bounded contexts are? There is the “theory”
and the practice. Each app is a bounded context?
15. The more autonomous services are,
the more loosely coupled they are.
Loose coupling is what drives
business agility – which is why we
wanted SOA in the first place
Yes, we all know that autonomy and lose coupling are
synonymous to consistency
The CAR theorem postulates that you can’t have
Consistency, Agility and a high degree of Relationality at
the same time. You have to pick two.
16. Loose coupling
Requires good encapsulation and high
cohesion
We of course all know that encapsulation and high
cohesion drive consistency
17. Business Events help us achieve
autonomy, loose coupling and
encapsulation
Encapsulation - because we don’t need to supply our
services internal data (because no on else needs to
know them) – internal data will only be accessible
through the Services UI (which takes part in a
Composite UI)
Events only need to explain WHAT happened and
what it relates to and very few business data (which
are typically only needed for replication scenarios)
And so, how do you do exception handling and roll back
with business events? You emit more message events?
Shit happens you know. Where is the context?
18. Business Events Messages
and
Business Processes
By publishing Events messages from our
Services we can communicate with each
other and also drive Business Processes
Events drive business processes? You must be a
candidate for the Turing Award.
19. Business Events
example
Sales Service
Order
Accepted
Invoicing Service
Retail System
Order
Accepted
Customer
Billed
MessageChannel
We use the Order Accepted event message published from the Sales Service
to drive the Invoicing/Billing of the customer.
The billing part of the process also use Business Events, in this case Customer Billed
Event, to indicate that its part of the process is completed.
Because we use asynchronous messaging we can still accept orders in the sales service even though
the invoicing services is down. The Order Accepted event message will remain in the Message
Channel until the Invoicing Service is ready to process it.
The problem with SOA discussions is that when
you take simplistic examples everything works.
You need to “scale” these examples, real world
stuff, not just PowerPoint Architectures
Please provide end-to-end sequence diagrams
including the implementation of the services,
which you will discover is best implemented by …
an orchestration that waits on the proper events
20. Domain Events can also be
used for data replication
This is typically used for read-mostly master
data that is needed in many business-
domains. This way we avoid having to call a
synchronous services to query the latest
value(s)
The response to any business event must be coordinated,
Pub/Sub does not work in the business world
21. Understanding SOA is actually
pretty simple
Services provides a normalized interface to the systems of
record
They ensure consistency of both the Queries and Command
Services serve data from the Systems of Truth
They make sure all SoRs are properly updated (or rolled-back)
Services call Integration Points on the SoR (not services)
Service interfaces are intentional, they express the intent of the
consumer, how this intent is realized is under the control of the
service
Technically there are two software paradigms that are essential
to SOA
Mediation (e.g. Apache Synapse)
Orchestration (e.g. Apache ODE)
None of which are part of Jeppe’s presentation,
Yes, events are also part of the picture but only to reflect
changes in the SoR when these changes are not “intentional”
The response to events is coordinated … by an orchestration