Home > SOA Tips > Guest Commentary > SOA + EDA = FUD?
SOA Tips:
EMAIL THIS
 TIPS & NEWSLETTERS TOPICS 

GUEST COMMENTARY

SOA + EDA = FUD?


Jason Bloomberg
06.09.2004
Rating: --- (out of 5)


Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us   



Guest Commentary
SOA + EDA = FUD?
by Jason Bloomberg, Senior Analyst, ZapThink, LLC

While Service-Oriented Architecture (SOA) seems to be on everybody's lips these days, some vendors and analysts are proposing an alternative approach known as Event-Driven Architecture (EDA). Some camps even go so far as to say that SOA and EDA are competitive, mutually exclusive concepts, and that enterprises have to choose between one or the other, casting Fear, Uncertainty, and Doubt (FUD) into the decisionmaking processes of IT architectural committees far and wide. Well, if you have some of this FUD yourself, you can relax. ZapThink believes that for all practical purposes, EDA is not truly a separate architectural approach, but is actually core to how companies should implement a proper SOA, and distinguishing EDA as a separate architectural approach is nothing more than a straw man.

What is event-driven rrchitecture?
To its proponents, EDA is an approach where events trigger asynchronous messages that are then sent between independent software components that are completely unaware of each other -- in other words, decoupled, autonomous objects. An event source typically sends messages through some middleware integration mechanism like a bus, and then the middleware publishes the messages to the objects that have subscribed to the events. The event itself encapsulates an activity, and is a complete description of a specific action.

SOA, on the other hand, is an architectural approach where software functionality is exposed as loosely coupled, location independent Services on the network. While Web services are not necessary for SOA, SOA based upon Web services is the approach that ZapThink focuses on, and is the architecture that ZapThink believes encompasses EDA's core concepts. In particular, ZapThink believes that SOAs should be asynchronous, because asynchrony is essential to the loose coupling between Service producers and consumers, as well as being core to the fundamental nature of business processes.

Are SOAs event-driven?
To understand why EDA is a subset of SOA, you need to get into the details of the underlying standards, beginning with SOAP. SOAP supports four interaction patterns: request-response (client to server and back), notification-response (server to client and back), one-way from client to server, and notification from server to client. In this way, SOAP by itself is able to support both remote procedure call (RPC) and document-style interactions, in either a synchronous or asynchronous fashion. In particular, the event notifications core to EDA have been a part of SOAP from the beginning.

SOAP by itself, however, does not provide all the detail needed for a full Event-Driven publish/subscribe environment. As a result, there are several initiatives working their way through vendor groups and standards bodies meant to complete this picture: one camp is working on Web Services Notification (WS-Notification), Web Services Base Notification (WS-BaseNotification), Web Services Brokered Notification (WS-BrokeredNotification) and Web Services Topics (WS-Topics), while another camp is working on Web Services Eventing (WS-Eventing), Web Services Dynamic Discovery (WS-Discovery), Web Services Coordination (WS-Coordination), Web Services Metadata Exchange (WS-MetadataExchange), and Web Services Business Activity Framework (WS-BusinessActivity). Now, it's obvious that much work remains to bring this laundry list of specifications into a single streamlined set of standards, but be that as it may, once the dust settles, SOA based on Web Services will offer a complete, robust set of Event-Driven mechanisms.

More importantly, ZapThink discusses frequently in its research that as application logic and functionality becomes more coarse grained, they become more "business-like" and less "API-like." At the highest level, all of the details of how the company operates (its processes and services) are hidden from the Service consumer. Invoking these Services then becomes a matter of sending the right messages (or events) to trigger processes to occur that in turn generate subsequent events for further Service processing.

Are all EDAs service-oriented?
If you've been reading this article closely up to this point, you will have noticed a subtle, but critical difference between SOAs and EDAs: SOAs should be loosely coupled, while EDAs can be decoupled to a much greater degree. In other words, in an SOA, Web Service producers and consumers need have no knowledge of the workings of the other except what is expressed in the Service contract (i.e., the WSDL file for the Service), while in an EDA, there is no need for any such contract. The only connection between event producers and consumers are the publish and subscribe activities themselves.

The big problem with fully decoupled EDAs, however, is that they are not particularly good for application-to-application communication. This level of decoupling works for completely unstructured information, for example, textual information intended for human consumption. When one application publishes data for another application to consume, however, in the absence of a Service contract, those data are necessarily fine-grained. In other words, a fully decoupled event might be an alert that a process is complete or might be some kind of acknowledgment, but the subscribing application would be hard pressed to make sense out of a complex, structured event in the absence of a Service contract.

The bottom line, then, is that it's possible for an EDA not to be Service-oriented, but for most practical purposes, Event-Driven interactions in an EDA should be Service-oriented. The distinction between the two approaches, therefore, is more of a technical detail than a difference that has any importance to the business. So, what we should be talking about is not a separate concept called EDA, but rather "event-driven SOAs" as a coherent melding of the two concepts.

So why all the FUD?
To understand why this matter is an issue at all, it's important to look to the human side of such discussions. For better or worse, SOA is getting more than its fair share of hype these days, so it's natural for people to be skeptical and look for alternative approaches in order to let some air out of the SOA balloon. And while ZapThink is riding the SOA bandwagon, our loyal readers know full well we are all for letting air out of hype balloons, so the SOA/EDA hubbub does have an upside we can support.

It might also be argued that some of our fellow industry analysts have contributed to the FUD. It is the nature of the analyst business that every analyst wants a particular market category or issue that they can champion. If too many analysts are already on the SOA bandwagon, then maybe a different wagon would be less crowded. Unfortunately, such tomfoolery isn't good for IT consumers who look to analysts for insight and direction.


Copyright 2004. Originally published by ZapThink LLC, reprinted with permission. ZapThink LLC provides quality, high-value, focused research, analysis, and insight on emerging technologies that will have a high impact on the way business will be run in the future. To register for a free e-mail subscription to ZapFlash, click here.

For more information:

  • Looking for free research? Browse our comprehensive White Papers section by topic, author or keyword.
  • Are you tired of technospeak? The Web services Advisor column uses plain talk and avoids the hype.
  • For insightful opinion and commentary from today's industry leaders, read our Guest Commentary columns.
  • Hey Codeheads! Start benefiting from these time-saving XML Developer Tips and .NET Developer Tips.

  • Visit our huge Best Web Links for Web services collection for the freshest editor-selected resources.
  • Visit Ask the Experts for answers to your Web services, SOAP, WSDL, XML, .NET, Java and EAI questions.
  • Couldn't attend one of our Webcasts? Don't miss out. Visit our archive to watch at your own convenience.
  • Choking on the alphabet soup of industry acronyms? Visit our helpful Glossary for the latest lingo.
  • Discuss this article, voice your opinion or talk with your peers in the SearchWebServices Discussion Forums.

Rate this Tip
To rate tips, you must be a member of SearchSOA.com.
Register now to start rating these tips. Log in if you are already a member.




Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us   



RELATED CONTENT
Guest Commentary
Get a grip on JavaFX 1.2 for Rich Internet Applications
On the road to SOA – Part 1, Boubez on early insights
On the road to SOA – Part 2, Governance is fundamental
SpringSource approach to adding enterprise class management and deployment features to Tomcat
Canonical Schema establishes interoperability: SOA Pattern (Week 6)
Legacy: Can't Live With It, Can't Live Without It
Review of protocols for cloud services - Part 1
SOA and TOGAF: A Good Fit?
Using atomicity to gain SOA granularity
Too Many Servers: A Case for Enterprise Architecture and TOGAF 9

Service-oriented architecture (SOA) education
Sun Certified Enterprise Architect for Java EE Study Guide
SOA Books Library
SOA and business still need bridge says Harding of TOG
SOA Manifesto urges both agility and business focus
SOA skills, slings and arrows
Playbook for the SOA Red Zone
Win SOA Design Patterns book
Take part in SearchSOA.com survey. Help define the state of SOA.
New year – same old SOA tempests?
The annals of SOA Talk
Service-oriented architecture (SOA) education Research

SOA event-driven architecture (EDA)
MiniGuide: End-to-end testing for SOA and enterprise transactions
Bury SOA inside a larger architectural vision
CEP makers Aleri and Coral8 to merge
Leading an architecture-first mandate
New TOGAF framework released
Tibco takes BPM and BI into 3-D
IBM WebSphere grows to include better Business Event Processing
From mainframes to iPhones and beyond: IBM preps mobile SOA connection
IBM rules SOA/BPM with ILOG buy – analysts
SOA architect tips: Focus on business, communication

RELATED GLOSSARY TERMS
Terms from Whatis.com − the technology online dictionary
middleware  (SearchSOA.com)
Semantic Web  (SearchSOA.com)
service-oriented integration  (SearchSOA.com)
service-oriented management  (SearchSOA.com)
Web-Based Enterprise Management  (SearchSOA.com)

RELATED RESOURCES
2020software.com, trial software downloads for accounting software, ERP software, CRM software and business software systems
Search Bitpipe.com for the latest white papers and business webcasts
Whatis.com, the online computer dictionary

DISCLAIMER: Our Tips Exchange is a forum for you to share technical advice and expertise with your peers and to learn from other enterprise IT professionals. TechTarget provides the infrastructure to facilitate this sharing of information. However, we cannot guarantee the accuracy or validity of the material submitted. You agree that your use of the Ask The Expert services and your reliance on any questions, answers, information or other materials received through this Web site is at your own risk.



SOA Trends and Strategy - SOA Education, SOA Development, SOA Implementations
About Us  |  Contact Us  |  For Advertisers  |  For Business Partners  |  Site Index  |  RSS
SEARCH 
TechTarget provides technology professionals with the information they need to perform their jobs - from developing strategy, to making cost-effective purchase decisions and managing their organizations' technology projects - with its network of technology-specific websites, events and online magazines.

TechTarget Corporate Web Site  |  Media Kits  |  Site Map




All Rights Reserved, Copyright 2001 - 2010, TechTarget | Read our Privacy Policy
  TechTarget - The IT Media ROI Experts