Lauffähiger Microservice als Maven-Projekt mit dem SpringBoot Framework und transaktional ausgeführter Fachlogik in Service-Beans; interne Struktur und Abhängigkeiten gemäß hexagonaler Architektur mit Dependency Inversion
Persistenzschicht (Datenbank, OR-Mapping mit JPA, Konfiguration für Test-Stage mit Testdaten, OptimisticLocking mit Retry)
Service als REST-Endpunkt erreichbar, vorgelagertes API-Gateway mit Circuit Breaker und separater Konfiguration für Test-Stage
Aufruf einer REST-Schnittstelle als Feign Client mit Resilienz (Timeout oder Retry) und separater Konfiguration für Test-Stage
Spring Security: Erzeugung oder Validierung eines Authentifizierungstokens (JWT), sowie rollenbasierte Autorisierung
Messaging: transaktionaler Versand oder Empfang von Events zur Choreographie mit Spring Cloud Stream und RabbitMQ; separate Konfiguration für Test-Stage;
Nutzung der bereitgestellten Infrastruktur mit CD-Pipeline, Unit- und Integrationstests, Staging, Postman-Systemtests mit datenbezogenen Assertions, Healthchecks mit Actuator
100% JUnit-Testabdeckung des Microservice gemäß JaCoCo Report