Hopps wird eine cloudbasierte Open Source Buchhaltungssoftware mit AI, damit Vereine mehr Zeit für ihre wesentlichen Ziele und Angebote haben und frustrierte Situationen mit der Buchhaltung der Vergangenheit angehören.
Als Frontend-Entwickler möchte ich eine RESTful API nutzen können, die mir die Ausgaben für jeden Bommel liefert, damit ich diese Daten in der Benutzeroberfläche anzeigen und weiterverarbeiten kann.
Akzeptanzkriterien
REST-API mit ausschließlich Lesezugriff: Die API soll nur Leseoperationen unterstützen, da das Erstellen von Daten in der Regel über BPMN-Prozesse erfolgt und direkt mittels Service Tasks abgewickelt wird.
Separater Quarkus-Service: Es wird ein eigenständiger Quarkus-Service namens app.hopps.fin entwickelt, der Kogito für die Prozessautomatisierung integriert.
Datenpersistenz mit PostgreSQL und Panache: Die Anwendung verwendet PostgreSQL als Datenbank und nutzt Panache für einen vereinfachten Datenzugriff.
Datenmodell nach Azure AI Service: Das Datenmodell orientiert sich an den Strukturen des Azure AI Service, um Kompatibilität und mögliche zukünftige Integrationen zu erleichtern.
Datenbankmigrationen mit Flyway: Flyway wird eingesetzt, um Datenbankmigrationen zu verwalten und ein konsistentes Datenbankschema über verschiedene Umgebungen hinweg sicherzustellen.
Vertragsabsicherung mit Pact.io: Die Integration und der Vertrag mit dem Organisations-Service werden mittels Pact.io getestet und abgesichert, um die Zuverlässigkeit zwischen den Services zu gewährleisten.
Zusätzliche Details
Sicherheit: Die API sollte sichere Endpunkte bereitstellen und Authentifizierung sowie Autorisierung berücksichtigen. Wir verwenden OpenFGA.
Dokumentation: Eine umfassende API-Dokumentation, idealerweise mit OpenAPI/Swagger, soll bereitgestellt werden, um die Integration für Frontend-Entwickler zu erleichtern.
Fehlerbehandlung: Angemessene Fehlermeldungen und HTTP-Statuscodes sollen implementiert werden, um eine effiziente Fehlerbehandlung zu ermöglichen.
Performance: Die API sollte performant sein und auch bei hoher Last zuverlässige Antwortzeiten bieten.
Testing: Unit-Tests und Integrationstests sollen erstellt werden, um die Qualität und Stabilität des Services sicherzustellen. Der org Service wird mit Pact gemockt.
Story
Als Frontend-Entwickler möchte ich eine RESTful API nutzen können, die mir die Ausgaben für jeden Bommel liefert, damit ich diese Daten in der Benutzeroberfläche anzeigen und weiterverarbeiten kann.
Akzeptanzkriterien
app.hopps.fin
entwickelt, der Kogito für die Prozessautomatisierung integriert.Zusätzliche Details