This document discusses event driven architecture (EDA). EDA consists of independent components that process asynchronous events. There are two approaches to EDA - publish/subscribe where events are sent to subscribers, and event streaming where events are written to a log. EDA provides advantages like scalability and flexibility but also challenges like increased maintenance. The document presents a case study of how EDA was used to integrate different healthcare systems for a dialysis services provider.