24.8.2022 |

Praktikumsaufgabe: Jira-Moco-Report-APl mit Spring

Die API erzeugt einen Bericht über die Aufwände eines Sprints im handlichen .csv Dateiformat und löst damit die händische Auswertung ab.

Nutzen

Bisher wurde die Sprintauswertung der Aufwände eines Tickets durch händisches zusammensuchen anhand der Einträge in Moco und Jira erstellt. Die API übernimmt diese Arbeit und erstellt für ein bestimmtes Jahr und einen bestimmten Sprint für alle in diesem Sprint bearbeiten Tickets eine Übersicht über den Vorgangstyp, den Ticket-Schlüssel, die Ticketbeschreibung, die geschätzten Storypoints, die Aufwände im Sprint, den Gesamtaufwand am Ticket, den Gesamtaufwand vs. die Storypoints, sowie die in Jira und Moco hinterlegten Referenzen.

Beispiel:

Vorgangstyp Schlüssel Zusammenfassung Story Points Aufwand (Sprint) Aufwand (Gesamt) Gesamtaufwand vs. Storypoints Jira Referenz Moco Referenz
Story JMR Implementierung Jira-Request 1.0 10 15 95% Improve Newcubator Improve Newcubator
... ... ... ... ... ... ... ... ...

Technologien

Die Implementation wurde in Java unter dem Framework Spring Boot realisiert. Bei Anforderung eines Berichts über den durch die API zur Verfügung gestellten Endpunkt /report werden die Tickets eines Sprints über die Jira-API angefragt und die verbuchten Zeiten über den Ticketschlüssel aus der Moco-API ausgelesen. Diese beiden Datensätze werden anschließend mithilfe der implementierten Logik entsprechend der oben angegebenen Spalten ausgewertet und als .csv exportiert. Um den Zugriff auf die API dabei im Rahmen einer Authentifizierung zu beschränken, wurde eine Basic Authentification implementiert. Zur Verschlüsselung der API-Tokens und Credentials wurde Jasypt verwendet.

Für das Deployment wird in einer gitlab-ci und die API mit Gradle getestet und gebaut, ein Docker-Container erstellt und auf Heroku deployed.

Philipp
Zur Übersicht

Mehr vom DevSquad...

Dennis Hundertmark

Sending web push notifications from Spring Boot

Jan Sauer

The Cascading order of CSS