Original title:
Informační systém pro správu spotřeby kávy v kanceláři
Translated title:
Information System for Managing Coffee Consumption in an Office
Authors:
Golec, Oliver ; Kolář, Dušan (referee) ; Pluskal, Jan (advisor) Document type: Master’s theses
Year:
2026
Language:
eng Publisher:
Vysoké učení technické v Brně. Fakulta informačních technologií Abstract:
[eng][cze]
BeanShare je multiplatformní systém pro sledování sdílené spotřeby kávy a automatický výpočet spravedlivého rozdělení nákladů mezi členy kanceláře, domácnosti či jiné skupiny čerpající ze společné zásoby. Zaznamenání jednoho šálku vyžaduje dvě klepnutí na libovolném zařízení a uzavření zúčtovacího období vede k vyúčtování úměrnému skutečné spotřebě. Systém je postaven na platformě .NET 10 podle principů čisté architektury s webovým klientem v technologii Blazor Server a mobilním klientem v .NET MAUI s Blazor Hybrid, přičemž obě prezentační vrstvy sdílejí společnou knihovnu Razor komponent. Vyúčtování používá vážený průměr nákladů počítaný zvlášť pro každý druh kávy. Persistence je řešena prostřednictvím PostgreSQL a Entity Framework Core, autentizace protokolem OpenID Connect. Výsledná implementace splňuje všechny funkční a nefunkční požadavky odvozené ze zadání a je pokryta jednotkovými a integračními testy.
BeanShare is a cross-platform system for tracking shared coffee consumption and calculating fair cost distribution among members of an office or other group drawing from a common supply. Logging a cup requires two taps on any device, and closing a billing period produces a settlement proportional to actual consumption. The system is built on .NET 10 following Clean Architecture principles, with a Blazor Server web client and a .NET MAUI Blazor Hybrid mobile client sharing a common Razor component library. Settlement uses per-product weighted average costing to preserve fairness when multiple coffee varieties are available. Persistence is handled by PostgreSQL with Entity Framework Core, and authentication uses OpenID Connect. The implementation meets all functional and non-functional requirements from the assignment and is covered by unit and integration tests.
Keywords:
.NET 10; .NET MAUI; Blazor Hybrid; Blazor Server; CQRS; doménově řízený návrh; OpenID Connect; QR kód; sdílení nákladů; sledování spotřeby kávy; vážený průměr nákladů; čistá architektura; .NET 10; .NET MAUI; Blazor Hybrid; Blazor Server; Clean Architecture; coffee consumption tracking; CQRS; domain-driven design; expense sharing; OpenID Connect; QR code; weighted average costing
Institution: Brno University of Technology
(web)
Document availability information: Fulltext is available in the Brno University of Technology Digital Library. Original record: http://hdl.handle.net/11012/260413