Event Driven Architecture (EDA) is a software architecture pattern that promotes the production, detection, consumption of and reaction to events. EDA is composed of events, event channels like message queues and pub/sub, and event processing paradigms. It supports adaptive and responsive systems through asynchronous event-based communication. EDA can help IT systems adapt to increasing business pressures and dynamics. Example use cases of EDA include the Internet of Things and cognitive computing applications.