Tuesday, December 21, 2010

EDA versus the Observer Pattern

One of my blog readers came up with the question:

What are the differences between Observer Pattern and Event-Driven Architecture?

My answer:

The Observer Pattern is a technical listener solution. A kind of a notification construction. Event-Drive Architecture, however, is a system design style. EDA puts events in the middle of the design. It is about recognizing business events and how to design them in terms of data modeling. It is also about how to deal with transactions between unknown endpoints. So EDA is of a much higher magnitude than the Observer Pattern is. The Observer Pattern is an implementation pattern which is useful as listener/notification component when building event-driven systems The Observer Pattern is not aware of any higher level design style such as the design of events.