• search hit 27 of 51
Back to Result List

Aggregationsschnitt einer Checkout-Software auf Basis einer Hexagonalen Architektur mit Domain-Driven Design

  • Softwareprojekte im E-Commerce-Bereich erfüllen komplexe Businessanforderungen und benötigen aufgrund dessen eine stabile Architektur. Dieses Projekt untersucht die Domain eines Onlineshop-Checkouts und wie der Bounded-Context mithilfe einer Hexagonalen Architektur und Domain-Driven Design implementiert werden kann. Besonders liegt der Aggregationsschnitt im Fokus, wobei unterschiedliche Datenmodelle analysiert und anhand von Komplexität, Performance, Parallelität und Client-Freundlichkeit bewertet werden. Große Aggregates leiden generell unter verringerter Parallelität, jedoch bietet ein zusammengehöriges Datenmodell eine vereinfachte Umsetzung von Businessanforderungen, da stets alle Informationen aus der Datenbank geladen werden. Die Aufteilung in mehrere Aggregates erzwingt die Anwendung von Eventueller Konsistenz oder einer Transaktion über mehrere Aggregates. Eventuelle Konsistenz erhöht die Komplexität der Checkout-Software, wohingegen eine aggregate-übergreifende Transaktion die Verwendung von unterschiedlichen Datenbank-HostsSoftwareprojekte im E-Commerce-Bereich erfüllen komplexe Businessanforderungen und benötigen aufgrund dessen eine stabile Architektur. Dieses Projekt untersucht die Domain eines Onlineshop-Checkouts und wie der Bounded-Context mithilfe einer Hexagonalen Architektur und Domain-Driven Design implementiert werden kann. Besonders liegt der Aggregationsschnitt im Fokus, wobei unterschiedliche Datenmodelle analysiert und anhand von Komplexität, Performance, Parallelität und Client-Freundlichkeit bewertet werden. Große Aggregates leiden generell unter verringerter Parallelität, jedoch bietet ein zusammengehöriges Datenmodell eine vereinfachte Umsetzung von Businessanforderungen, da stets alle Informationen aus der Datenbank geladen werden. Die Aufteilung in mehrere Aggregates erzwingt die Anwendung von Eventueller Konsistenz oder einer Transaktion über mehrere Aggregates. Eventuelle Konsistenz erhöht die Komplexität der Checkout-Software, wohingegen eine aggregate-übergreifende Transaktion die Verwendung von unterschiedlichen Datenbank-Hosts erschwert. Anhand eines Lasttests wird die Performance der Designansätze betrachtet. Im Durchschnitt verarbeitet die Applikation mit einem zusammengehörigen Datenmodell mehr Anfragen pro Sekunde als unter Verwendung getrennter Aggregates. Als Fazit dieser Arbeit wird argumentativ begründet, dass innerhalb einer Checkout-Software die Vorteile eines Designs mit einem einzigen Aggregate dank der erhöhten Performance und reduzierten Komplexität überwiegen. Falls eine zeitgleiche Bearbeitung einer Ressource durch unterschiedliche Prozesse ein gängiger Anwendungsfall ist, müssen die betroffenen Objekte in separate Aggregates verlagert werden.show moreshow less

Download full text files

Export metadata

Additional Services

Search Google Scholar
Metadaten
Author:Simon Thalmaier
Language:German
Document Type:Bachelor Thesis
Reviewer(s) at THI:Sebastian Apel, Franz Regensburger
Publishing Institution:Technische Hochschule Ingolstadt
Date of first Publication:2022/07/08
Year of first Publication:2022
Place of publication:Ingolstadt
Pages:XI, 49, xviii
URN:urn:nbn:de:bvb:573-34734
Faculties / Institutes / Organizations:Fakultät Informatik
Degree Programmes:Informatik (B. Sc.)
Licence (German):License Logo Urheberrechtsschutz
Release Date:2023/04/11