Závěrečná práce: Michal Mrnuštík: Multiplatform .NET library for Domain-Driven Design with ES
Diplomová práce
Multiplatform .NET library for Domain-Driven Design with ES
Anotace
Cílem této práce je vytvořit knihovnu pro vývoj software, jejímž cílem je usnadnit tvorbu systémů. Toto usnadnění může být dosaženo poskytnutím dostatečné infrastruktury pro použití metodologie Domain-Driven Design v kombinaci s návrhovým vzorem Event Sourcing. První část této práce popisuje základní principy metodologie Domain-Driven Design a návrhového vzoru Event Sourcing. Dále je v práci obsažen …více
Abstract
The aim of this thesis is to create a software development library that will facilitate the writing of enterprise systems. This can be achieved by providing the necessary infrastructure to use the Domain-Driven Design methodology in combination with the Event Sourcing pattern. The first part of the thesis describes the principles of Domain-Driven Design and the building blocks of Event Sourcing. It …více
Zadání práce
Téma diplomové práce představuje návrh a implementaci multiplatformní knihovny v prostředí .NET zaměřené na podporu aplikace principů přístupu Domain-driven design (DDD) ve spojení s architektonickým vzorem Event Sourcing (ES) pro ukládání dat.
Úkolem studenta bude nastudovat problematiku návrhu software pomocí konceptu DDD a v základu popsat jeho principy a pojmy. Dále se student seznámí s architektonickým vzorem ES v kombinaci s přístupem DDD. V rámci teoretické části práce student sestaví stručnou rešerši stávajících knihoven sloužících obdobnému účelu.
Na základě získaných znalostí student navrhne a implementuje multiplatformní knihovnu, jejíchž cílem bude zjednodušení tvorby aplikací využívajících principů DDD v kombinaci s ES v prostředí .NET. Vůči příp. stávajících knihovnám svoji vymezí a porovná jejich vlastnosti.
Nová knihovna bude
- zajišťovat infrastrukturu pro práci s doménovými objekty za použití technik DDD ve spojení s ES,
- poskytovat možnost volby úložiště na základě výběru tzv. pluginu (implementováno bude ukládání do SQL databáze a do paměti procesu),
- dovolovat napojení externího zdroje událostí, např. pomocí REST API,
- a poskytovat nástroj s podporou krokování změn v doménovém modelu.
Zdrojové kódy knihovny budou veřejně k dispozici pod licencí MIT, její zkompilovaná verze bude dostupná v rámci správce balíčků NuGet.
Student představí příklad využití své knihovny na ukázkovém projektu skladového systému. V rámci projektu student ukáže využití všech výše zmíněných vlastností knihovny.
7. 6. 2021 15:42, RNDr. Mgr. Jaroslav Bayer, učo 72873
- Zadáno/změněno 22. 6. 2021 10:06, Helena Kryštofová
- Záznam založen 29. 4. 2021 13:31, Jana Zemanová, učo 9619
- Zveřejnit od 18. 5. 2021 12:09, Alena Dvořáková
- Práce převzata 18. 5. 2021 12:09, Alena Dvořáková
Literatura
- EVANS, Eric. Domain-driven design : tackling complexity in the heart of software. Edited by Martin Fowler. Boston: Addison-Wesley, 2004, xxx, 529. ISBN 0321125215.
- .NET Domain-Driven Design with C#problem, design, solution. Edited by Tim McCarthy. Indianapolis, Ind.: Wiley Publishing, 2008, xxi, 408 p. ISBN 9780470147566.
- VAUGHN, Vernon. Implementing Domain-Driven Design. Addison-Wesley Professional. USA, 2013. ISBN 978-0-321-83457-7.
Práce na příbuzné téma
Seznam prací, které mají shodná klíčová slova.
-
Domain-driven design with architectural patterns
Mgr. Marek Turis -
Architecture Design of an Ordering System
Ing. Adam Zálešák, učo 493071 -
Software Architecture Optimization in Cloud Applications
RNDr. David Gešvindr, Ph.D. -
Návrh architektúry pre univerzálnu portálovú platformu
Mgr. Dominik Holec -
SustainMap platform for supporting sustainable decisions at Masaryk University
Mgr. Josef Augustín -
Libvirt a jeho využitie pre správu virtualizovanej infraštruktúry
Mgr. Martin Jantošovič, učo 173308 -
Purkrechtní registra obce Černé Hory 1540-1721
Mgr. Dominika Packová -
Hrad Templštejn u Jamolic, analýza artefaktů z amatérských archeologických výzkumů a význam hradu jako součásti krajiny
Vojtěch Šourek




