Zum Hauptinhalt springen

2. Architecture Constraints

Technischer Rahmen

BedingungErklärung
3-Tier-ArchitekturDas System gliedert sich in Datenbank, Backends und Frontends.
RESTful APIDie vollständig im Backend implementierte Logik steht in Form von RESTful Schnittstellen zur Verfügung.
Kostenfreie FremdsoftwareSofern externe Software eingesetzt, insb. wenn sie als Code-Abhängigkeit in das System eingebunden wird, soll darauf geachtet werden, dass diese frei und kostenlos einsetzbar ist.
Java / SpringDas Backend besteht aus mehreren Java Services die das Spring-Framework verwenden.
AngularDas Frontend ist eine Angular Anwendung.
AWSDas gesamte System kann auf AWS gehostet werden. Der Betrieb muss auch außerhalb von AWS ohne funktionale Einschränkungen möglich sein.

Organisatorischer Rahmen

BedingungErklärung
Fachliche VerantwortungBundesschatzmeister (Leo Lüddecke)
Technische VerantwortungProduct Owner (Johannes Weigel)
TeamAktive Entwicklung von Johannes Weigel und Thomas Rosen (Onboarding)
VersionierungMonoRepository auf gitlab.com
ZeitplanDie Entwicklung ist nicht zeitlich begrenzt sondern wird fortlaufend erweitert und verbessert.
TestingBackend: UnitTests, Integrationtests pro Service
Frontend: UnitTests, Component-Tests, End-To-End-Tests

Konventionen

BedingungErklärung
DokumentationEine Dokumentation in docsify, unterteilt in Architekturdokumentation nach Arc42, Requirements, Administration und User Documentation
MehrsprachigkeitDie Hauptsprachen sind Deutsch und Englisch. Das Backend ist sprachneutral zu halten, das Frontend soll mehrere Sprachen implementieren können.