Kennt ihr dass, wenn ihr versucht einen Kollegen auf der Arbeit zu erreichen, dieser aber auf Anrufe nicht reagiert, im Kalender nichts eingetragen hat und auch nicht am Arbeitsplatz ist ? Das gehört mit TRESMENT der Vergangenheit an !
11. November 2021
Marco Studer
Ausgangslage
Bei der Planung der Absenzen benutzt jedes Team seine Tools oder Anwendungen, um sicher zu stellen, dass nicht alle zur gleichen Zeit abwesend sind. Meist verwenden die Teams eine eigens gestaltete Excel Liste oder versuchen via Outlook die An- bzw. Abwesenheiten im Griff zu haben. Mit der kommenden Umstrukturierung in die agile Softwareentwicklung führt die bisherige Umgangsweise mit den Abwesenheiten zu noch mehr Komplikationen. Es besteht die Möglichkeit, dass sich Mitarbeiter während eines Projekts aus zum Beispiel vier verschiedenen Teams zu einem Scrumteam zusammensetzen. Für die Planung muss der Projektleiter mit dem Teamleiter Rücksprache halten, um einen Überblick über die Ressourcen zu haben.
Umsetzung
In der Pflichtenheftphase wurde der Grundstein für die Umsetzung definiert. Hierbei wurde auch direkt eine erste Analyse gemacht, welche beteiligten benötigt werden.
In der Realisierungsphase wurde mittels Nutzwertanalyse geprüft welche Lösung am zutreffendsten ist, sei dies eine Webanwendung oder eine Desktopanwendung. Durch den Entscheid eine Desktopanwendung zu erstellen kam die nächste Frage auf, welche Programmiersprache wird verwendet ? Um die Einfachheit zu gewährleisten wurde alles in der Programmiersprache Python entwickelt.
Backend
Für das Backend wurde eine API und eine Datenbank benötigt, um die höchste Performance für die Applikation zu gewährleisten.
Die API wurde mittels FastAPI aufgebaut und als Datenbank Treiber wurde SQLITE3 benutzt.
Frontend
Damit das Frontend den Benutzern gerecht wird, wurde ein wöchentliches Meeting abgehalten, um neue Design Vorschläge aufzunehmen und diese Umzusetzen.
Das Graphical User Interface wurde in Python erstellt, mittels der Bibliothek "Dear PyGui" welche ich in meiner Freizeit mit entwickle.
Die Applikation verfügt über ein "Light Mode" wie auch ein "Dark Mode" und verschiedene dynamische Elemente.
TRESMENT
1/9TRESMENT Logo
2/9TRESMENT - Login
3/9TRESMENT - Einführung
4/9TRESMENT - Home
5/9TRESMENT - Neues Team
6/9TRESMENT - Team Anpassen
7/9TRESMENT - Applikation anpassen
8/9TRESMENT - Light Mode
9/9TRESMENT - In der Anwendung
1/9TRESMENT Logo
2/9TRESMENT - Login
3/9TRESMENT - Einführung
4/9TRESMENT - Home
5/9TRESMENT - Neues Team
6/9TRESMENT - Team Anpassen
7/9TRESMENT - Applikation anpassen
8/9TRESMENT - Light Mode
9/9TRESMENT - In der Anwendung
Ergebnis
Das Ergebnis ist eine Applikation, welche zuverlässig und sicher auf die interne API zugreift und die Daten korrekt und schnell Anzeigt. Die Applikation wurde so entwickelt dass neue Module einfach und schnell hinzugefügt werden können.
Schlusswort
Am Anfang war es eine nützliche Idee mit Chancen und Risiken. Die Komplexität zeigte sich in der Integrität und dem Datenschutz der Anwendung. Personenbezogene Daten, die vor dem Zugriff von aussen zu schützen sind, stellten beim Design und Entwicklung entsprechende Anforderungen. Ebenfalls war der Zeitfaktor von 5 Wochen zur Realisierung eine Prüfung und ob das Endresultat in der ersten Version den beabsichtigten Nutzen erfüllen kann.
Die Übersicht in diesem Projekt aufrecht zu erhalten, gestaltete sich als eine Herausforderung, denn die Gefahren waren die Wichtigkeiten und Prioritäten nicht schlüssig zu gestalten. Der Projektplan hatte hierbei sehr geholfen, die Pendenzen fristgerecht abzuarbeiten, so dass nicht am Ende der Erfolg ausgeblieben ist.
Marco StuderC / C++ Software Engineer und freizeitlicher Python-Entwickler