Schlick, Philip and Klingler, Timo (2024) Event-Driven Architecture Lab. Other thesis, OST Ostschweizer Fachhochschule.
Full text not available from this repository.Abstract
Event-Driven Architecture (EDA) is a software architecture paradigm that enables systems to process and react to events as they occur.
In this paradigm, an event is defined as any meaningful alteration in the state of a system.
The goal of applying EDA is to decouple components and systems; event producers do not need to know the event consumers. Scalability, flexibility, and maintainability are enhanced as software grows in size, scope, and complexity.
However, the decoupling comes at a price:
How to ensure reliability?
How to reconstruct the application state?
How to deal with increased variability?
The goal of this thesis was to construct a set of sample programs that explore selected EDA concepts, starting from a simple Publish-Subscribe System and eventually using the production-grade middleware Apache Kafka.
Four distinct sample programs were built, each of which is based on the preceding one.
Each program consists of a scenario revolving around a fictitious construction company, Skyline Construction Company (SCC).
SCC has experienced growth which places demands on its software systems.
Its main business application is a monolith written in Java that uses the Spring Boot framework.
To scale the existing system, the architects at SCC have decided to introduce EDA principles while maintaining operational continuity.
For each of these scenarios, we identified a feature and re-implemented it according to a EDA principles within the fictitious but realistic sample application.
A hybrid approach combining theory with practical implementation demonstrates how to integrate the abstract concepts of EDA into a Web-based monolithic backend application supported by a container framework.
The approach provides an accessible introduction to the subject while highlighting the trade-offs software architects and developers face when pursuing such an integration.
Item Type: | Thesis (Other) |
---|---|
Subjects: | Topics > Software > Software Modeling Area of Application > Academic and Education Technologies > Programming Languages > Java Technologies > Databases > SQLite Technologies > Web > HTML Metatags > IFS (Institute for Software) |
Divisions: | Bachelor of Science FHO in Informatik > Student Research Project |
Depositing User: | OST Deposit User |
Contributors: | Contribution Name Email Thesis advisor Zimmermann, Olaf UNSPECIFIED |
Date Deposited: | 18 Feb 2025 12:29 |
Last Modified: | 18 Feb 2025 12:29 |
URI: | https://eprints.ost.ch/id/eprint/1278 |