Webbasiertes Tool zur Anzeige von Beitragsdaten AO-Beitragsportal Webbasiertes Tool zur Anzeige von Beitragsdaten
Beginnen möchte ich mit einer kleinen Geschichte…
Gut ausgebildeter Mathematiker Kommt motiviert zur Arbeit
Aufgabe: Daten aus einer DB nach Excel kopieren
~ 800 Tabellen Leider nicht nur eine, sondern 800 Tabellen
Dafür habe ich nicht studiert! Demotivierend, Scheiß-Arbeit Keiner hat Bock auf den Prozess Dafür habe ich nicht studiert!
Jonas Hellmann Deswegen will ich alles besser machen Ich = Jonas Hellmann
Webbasiertes Tool zur Anzeige von Beitragsdaten AO-Beitragsportal Webbasiertes Tool zur Anzeige von Beitragsdaten
Agenda ~ 01:30 Agenda orientiert sich an Projektphasen
Unternehmen Unternehmen ALTE OLDENBURGER Krankenversicherung AG Kurz AO genannt Private Krankenversicherung Sitz in Vechta Ungefähr 240 Mitarbeiter Interne EDV, 27 Mitarbeiter Unternehmen
Projektvorstellung PUMA = Prozessunterstützung Mathematik AO-Beitragsportal ist diesem untergeordnet Projektvorstellung
Grundsätzlich: Krankenversicherung bietet versch. Tarife an Beitrag abhängig von Alter, Tarif, Risiko und evtl. Geschlecht
Zum 01. Januar und evtl. zum 01. Juli Beitragsanpassung
Portal besteht aus vier Bereichen
Beiträge Beiträge
Beiträge Kosten Kosten
Beiträge Kosten Verläufe Verläufe
Beiträge Kosten Historie Verläufe Historie
Projektziel ~ 03:15 Minuten Webanwendung zur Darstellung von Beitragsdaten und Bereitstellung dieser als Download Excel-Datei Entlastung Mathematik-Abteilung Projektziel
Projektbegründung Fehler Zeitaufwand Prüfung Betriebs-geheimnis Vorher: Momentan werden manuell Excel-Dateien gefüllt Fehler beim manuellen Übertragen → rechtl. Probleme, da Daten an Externe, hoher Korrekturaufwand Hoher zeitl. Aufwand Keine automatische fachl. Prüfung der Daten der Datenbank möglich Make or Buy Begründung Beitragskalkulation Kerngeschäft Sollen nicht an externe gegeben werden Unabhängigkeit von Dienstleistern Projektbegründung Prüfung Betriebs-geheimnis
Agenda ~ 04:15 Minuten
Beiträge Kosten Verläufe Historie Ausgehend von der definierten Bereichen Use-Cases erarbeitet Verläufe Historie
Vier Akteure mit Vererbungsbeziehung Anwendungsfälle
Methodik ~ 05:15 Minuten Wasserfall-Modell als Entwicklungsprozess Nacheinander, Rückkehr möglich Agiler Prozess durch Rücksprache: Oberfläche und Prüfung fachlicher Logik Methodik
Projektphasen 8 9 42 7 4 Abnahme/ Deployment Entwurf Analyse Insgesamt 70 Stunden, wie vorgegeben Analyse Implementierung Dokumentation Projektphasen
Auszubildender → 10 € / Std Mitarbeiter → 25 € / Std Ressourcen → 15 € / Std Pauschalen, die von Personalabteilung vorgegeben wurden Stundensätze beinhalten Bruttogehalt und Sozialaufwendungen
Projektkosten Vorgang Kosten Entwicklung 1.750,00 € Fachgespräch 120,00 € Abnahmetest 40,00 € Code-Review 80,00 € 1.990,00 € Projektkosten
Laufende Kosten Vorgang Einsparung 4.659 min Erstellung der Excel-Dateien 1.353 min Versionierung der Dateien 342 min Aufbereitung der Dateien 2.736 min Kontrolle der Daten 684 min Betrieb der Anwendung -456 min 4.659 min Aussage: überall was weg, nur Betrieb was dazu Laufende Kosten
-3.106 € Alte Lösung Neue Lösung 5.130 Minuten / Jahr 3.420 € / Jahr Zeiteinsparung: 4659 Minuten Kosteneinsparung: 3106 €
Amortisation ≈ 7 ½ Monate 7,5 Monate Ist gut → schon beim 2. Mal amortisiert Amortisation
Agenda ~ 07:15 Minuten
MVC + Grundsätzlich MCV + Komponenten aus Java EE Architektur
Daten in ER-Model modelliert Datenmodell
Mockups Mit Fachbereich abgesprochen Wunsch: einfache und schnelle Navigation Mockups
Qualitätssicherung Junit → TDD Code-Review vom Ausbilder Continious Integration mit Jenkins Nächste Seite: statische Codeanalyse Qualitätssicherung
Code Coverage → zum Beispiel Getter/Setter/hashCode/equals nicht getestet Codeanalyse unwichtige Warnungen Erstmal keine Regel deaktiviert z.B.: Variablenlänge, Javadoc-Check, Junit zu viele Asserts, Getter/Setter nicht erkannt wegen Lombok
Deployment
~ 11:15 Minuten Jenkinsfile Vorteil: Konfiguration kann versioniert und wiederverwendet werden Infrastructure as Code
Agenda
~ 11:45 Minuten Datenstrukturen
Optionals Streams Geschäftslogik
Optional<Integer> Optional.empty(); Optional.of(1); 1 Optionals
Streams 1 5 2 filter (<5) map (int to String) „2“ „1“ collect (toList) Streams
Beispiel erklären: Tarif zu Tarif ID suchen und dazu alle Kosten ermitteln
~ 13:45 Minuten Tests
sut = System under Test
BeforeEach läuft vor jedem Test → Unabhängigkeit
Arrange, Act, Assert
+ JSF Benutzeroberfläche ~ 14:25 Minuten Auf Grundlage der Mockups JSF → auch Teil vom Java EE Standard Benutzeroberfläche
Benutzerdokumentation als erster Teil
Außerdem Entwicklerdoku JavaDoc im Code geschrieben, mit Gradle HTML generiert
Klassendiagramm als Teil der Entwickler-Doku Nicht vorher, da sich Klassen während TDD ergeben
Agenda Beginn Fazit
Projektfazit Ziel wurde erreicht Deployment der Anwendung Schulungen nicht nötig, da Fachbereich in Entwicklung einbezogen Umsetzung innerhalb der 70 Stunden Projektfazit
Lessons Learned Arbeit an einem Projekt mit Phasen Strukturierte Planung Konzept des TDD CDI, JPA, JSF Test-Frameworks Lessons Learned
Ausblick Mögliche weitere Themen können auftreten Erweiterbar, da modularer Aufbau Umsetzung auch für Schwesterunternehmen PK ----- weniger generisches Foto, vielleicht Foto PK/VGH ----- Person von Anfang, diesmal happy Ausblick
Und wenn sie nicht gestorben sind, dann kalkulieren sie noch heute… ~ 15:55 Ende Danke für Aufmerksamkeit Und wenn sie nicht gestorben sind, dann kalkulieren sie noch heute…
THE JENKINS PROJECT PIXABAY PIXABAY https://commons.wikimedia.org/wiki/File:Jenkins_logo.svg CC Attribution-Share Alike 3.0 Unported Lizenz PIXABAY https://pixabay.com/en/achievement-bar-business-chart-18134/ CC0 Lizenz PIXABAY https://pixabay.com/en/puma-feline-predator-wild-portrait-2903312/ CC0 Lizenz
MARSUPILAMI PIXABAY ICON ARCHIVE https://commons.wikimedia.org/wiki/File:JBoss_logo.svg PIXABAY https://pixabay.com/en/info-icon-button-web-help-blue-1459077/ CC0 Lizenz ICON ARCHIVE http://www.iconarchive.com/show/simply-styled-icons-by-dakirby309/Eclipse-icon.html CC Attribution-Noncommercial-No Derivate 4.0 Lizenz
HANS DOCKTER PIXABAY JUNIT https://commons.wikimedia.org/wiki/File:Gradle_logo_small.png PIXABAY https://pixabay.com/en/tux-penguin-animal-cute-linux-158547/ CC0 Lizenz JUNIT http://junit.org/junit4/
Webbasiertes Tool zur Anzeige von Beitragsdaten AO-Beitragsportal Webbasiertes Tool zur Anzeige von Beitragsdaten