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.
Standort Hannover
newcubator GmbH
Bödekerstraße 22
30161 Hannover
Standort Dortmund
newcubator GmbH
Westenhellweg 85-89
44137 Dortmund