Enterprise Architecture Patterns
Autoren: Julian Bruder, Abdellah Filali, Luca Franke
Modul “Software Engineering” (Prof. Dr. Andreas Both, Wintersemester 2024/2025) an der HTWK Leipzig
Das dazugehörige Repository des Papiers kann unter Beleg-6-EAP/Belegarbeit gefunden werden.
Das dazugehörige Repository der Präsentation des Papiers kann unter Beleg-6-EAP/Presentation gefunden werden.
In diesem Papier werden verschiedene Enterprise Architektur-Muster und deren Rolle in modernen Geschäftsprozessen untersucht und anschließend unter Einbeziehung technischer und struktureller Eigenschaften anhand ihrer Agilität bewertet. Dabei orientiert sich die Reihenfolge der Betrachtung jener Architektur-Muster am historischen Verlauf derer Entwicklung und der Notwendigkeit dieser. Genauer werden die monolithische Architektur, modulare monolithische Architektur, serviceorientierte Architektur, Microservice-Architektur, Schichtenarchitektur, Event-driven Architektur, Cloud-native Architektur und die Microkernel-Architektur betrachtet.
Insgesamt zeigt sich, dass klassische Enterprise Architektur-Muster zwar mit geringer initialer Komplexität punkten, mit weiterführender Entwicklung allerdings Flexibilitätsprobleme bedingen. Dem entgegen zeichnen sich die modernen Architektur-Muster durch hohe Agilität und damit hoher Flexibilität gegenüber den in der modernen Geschäftswelt ständig wechselnden Anforderungen aus. Besonders die Cloud-native Architektur wird diesen Anforderungen gerecht.
Alle im Papier betrachteten Architekturen wurden für das im Papier erklärte E-Commerce-Beispiel aus Bestellungen, Bezahlungen und Versand implementiert. Die Code-Beispiele dienen der Demonstration und sind vollständig ausführbar und getestet. Genauere Anweisungen zu Build und Run sind in den folgenden Repositories zu finden:
Architektur | Programmiersprache/Framework | Repository |
---|---|---|
Monolithic Architecture |
Java Spring Boot |
|
Modular Monolithic Architecture |
Java Spring Boot |
|
Service-oriented Architecture |
Ruby on Rails |
|
Layered Microservice Architecture |
Kotlin Spring Boot |
|
Event-Driven Architecture |
Java Spring Boot |
|
Cloud-native Architecture |
Haskell |
|
Microkernel Architecture |
Kotlin Spring Boot |