Feedback

Faculté des Sciences appliquées
Faculté des Sciences appliquées
MASTER THESIS
VIEW 54 | DOWNLOAD 0

Comparative Study of Traditional CRUD versus DDD/CQRS/Event Sourcing Architectures

Download
Léonard, Maxime ULiège
Promotor(s) : Donnet, Benoît ULiège
Date of defense : 24-Jun-2024/25-Jun-2024 • Permalink : http://hdl.handle.net/2268.2/20249
Details
Title : Comparative Study of Traditional CRUD versus DDD/CQRS/Event Sourcing Architectures
Translated title : [fr] Étude comparative des architectures CRUD traditionnelles versus DDD/CQRS/Event Sourcing
Author : Léonard, Maxime ULiège
Date of defense  : 24-Jun-2024/25-Jun-2024
Advisor(s) : Donnet, Benoît ULiège
Committee's member(s) : Fontaine, Pascal ULiège
Louveaux, Quentin ULiège
Falletta, Cédric 
Language : English
Number of pages : 64
Keywords : [en] software
[en] ddd
[en] cqrs
[en] event sourcing
Discipline(s) : Engineering, computing & technology > Computer science
Target public : Researchers
Professionals of domain
Student
Institution(s) : Université de Liège, Liège, Belgique
Degree: Master en sciences informatiques, à finalité spécialisée en "computer systems security"
Faculty: Master thesis of the Faculté des Sciences appliquées

Abstract

[en] Nubios is a software development company specializing in custom-made software and IT consulting. As such, they continually seek to improve their knowledge of new technologies and concepts.

The purpose of this master’s thesis is to provide Nubios with a comparative study between traditional CRUD-based applications and those using DDD/CQRS/ES architecture. The context for this study is the redesign of one of Nubios’ past projects, transitioning from a CRUD-based to a DDD/CQRS/ES-based architecture. This application is an enterprise resource planning system created for a company in the meal delivery business. It handles various assets such as the company’s clients, their orders, and its drivers, as well as provides vital information about the business to its owner.

This redesign can be divided into four steps. First, a panel of various solutions relying on DDD/CQRS/ES has to be implemented on a small-scale project. Then, one of these solutions has to be chosen through a qualitative assessment and performance testing. Third, a new implementation of the existing project has to be designed using the chosen solution. Finally, performance tests and qualitative evaluations have to be conducted on both designs, allowing a comparison based on these results.

The results analysis shows that the new design performs better in environments characterized by a high throughput of write operations, while both implementations have quite similar performance when handling read requests. However, due to the increased complexity of the codebase and longer development time, this architecture does not seem worth the effort for projects similar to this ERP, unless high performance is of the utmost importance.

[fr] Nubios est une entreprise spécialisée dans les logiciels sur mesure et le conseil en informatique. En tant que telle, elle cherche toujours à améliorer ses connaissances sur les nouvelles technologies et concepts.

L'objectif de ce mémoire est de fournir à Nubios une étude comparative entre les applications traditionnelles basées sur CRUD et celles utilisant DDD/CQRS/ES comme architecture. Son contexte est la refonte d'un ancien projet de Nubios, passant d'une architecture basée sur CRUD à une architecture basée sur DDD/CQRS/ES. Cette application est un système de planification de ressources conçu pour une société de livraison de repas. Elle gère divers actifs tels que les clients de l'entreprise, leurs commandes, les chauffeurs de la compagnier et fournit des informations vitales sur ses activité grâce à des statistiques.

Cette refonte peut être divisée en quatre étapes. Premièrement, un panel de diverses solutions reposant sur DDD/CQRS/ES doit être mis en œuvre sur un projet à petite échelle. Ensuite, l'une de ces solutions doit être choisie par une évaluation qualitative ainsi que des tests de performance. Troisièmement, une nouvelle implémentation du projet existant doit être conçue en utilisant la solution choisie. Enfin, des tests de performance et des évaluations qualitatives doivent être menés sur les deux designs. Une comparaison pourra alors être effectuée sur base de ces résultats.

L'analyse des résultats montre que le nouveau design offre de meilleures performances dans des environnements ayant un haut débit d'opérations d'écriture, tandis que les deux implémentations ont des performances assez similaires lors de requêtes de données. Cependant, en raison de la complexité accrue du code ainsi que de son temps de développement plus long, cette architecture ne semble pas en valoir la peine dans des projets similaires à cet ERP, à moins que des performances élevées ne soient d'une importance capitale.


File(s)

Document(s)

File
Access Comparative_Study_of_Traditional_CRUD_versus_DDD-CQRS-Event_Sourcing_Architectures.pdf
Description:
Size: 2.52 MB
Format: Adobe PDF

Author

  • Léonard, Maxime ULiège Université de Liège > Master sc. inform. fin. spéc. comput. syst. secur.

Promotor(s)

Committee's member(s)

  • Fontaine, Pascal ULiège Université de Liège - ULiège > Dép. d'électric., électron. et informat. (Inst.Montefiore) > Systèmes informatiques distribués
    ORBi View his publications on ORBi
  • Louveaux, Quentin ULiège Université de Liège - ULiège > Dép. d'électric., électron. et informat. (Inst.Montefiore) > Systèmes et modélisation : Optimisation discrète
    ORBi View his publications on ORBi
  • Falletta, Cédric
  • Total number of views 54
  • Total number of downloads 0










All documents available on MatheO are protected by copyright and subject to the usual rules for fair use.
The University of Liège does not guarantee the scientific quality of these students' works or the accuracy of all the information they contain.