Teil 1 Initialisierung
In diesem Kapitel wird ins Thema der Arbeit eingeführt. Es beschreibt den Hintergrund und die Relevanz des Themas. Sie definiert das Ziel der Arbeit und formuliert die zentralen Fragen. Zudem gibt die Intialisierung einen kurzen Überblick über den Aufbau der Arbeit um eine klare Orientierung zu bieten.
Versionenverzeichniss
Version | Datum | Autor | Bemerkung |
---|---|---|---|
1.0 | 05.05.2025 | Laura Dubach | Repo, Struktur, Notion erstellen |
1.1 | 06.05.2025 | Laura Dubach | Jira Zeitplan starten & Sprint Planning beginnen |
1.1 | 07.05.2025 | Laura Dubach | Jira Zeitplan & Sprint Planning fertigstellen, DoD erstellen |
1.2 | 08.05.2025 | Laura Dubach | Site Initialierung schreiben |
1.3 | 09.05.2025 | Laura Dubach | Sprint Abschluss schreiben und abschliessen |
1.4 | 13.05.2025 | Laura Dubach | Seusag starten & API Auswahl dokumentieren |
1.5 | 14.05.2025 | Laura Dubach | Seusag fertgstellen |
1.6 | 15.05.2025 | Laura Dubach | Abschnitt Entscheiden dokumentieren |
1.7 | 19.05.2025 | Laura Dubach | Ist & Soll, Implementierungsplan und Risikomatrix erstellen |
1.8 | 20.05.2025 | Laura Dubach | Ist & Soll, Implementierungsplan und Risikomatrix erstellen dokumentieren |
1.9 | 23.05.2025 | Laura Dubach | Site Konzeption fertigstellen |
2.0 | 26.05.2025 | Laura Dubach | Sprint Abschluss 2 schreiben und abschliessen |
2.1 | 28.05.2025 | Laura Dubach | Start mit Datenbank diagramm und Pipline erste tests auf Github |
2.2 | 02.06.2025 | Laura Dubach | Sprint Abschluss 2 beendet |
2.3 | 03.06.2025 | Laura Dubach | Start Sprint 3, dokumentation Vorbereiten |
2.4 | 04.06.2025 | Laura Dubach | Umsetzung starten |
2.5 | 20.06.2025 | Laura Dubach | Umsetzung fertigstellen |
2.6 | 23.06.2025 | Laura Dubach | Sprint Abschluss 3 |
2.7 | 25.06.2025 | Laura Dubach | Sprint Start 4, Umsetzung fertig dokumentieren, testing starten |
2.8 | 26.06.2025 | Laura Dubach | Tests dokumentieren |
Aufgabenstellung
Ausgangslage
In einer zunehmend vernetzten Welt sind personalisierte, ortsbezogene Event-Empfehlungen für Musikfans sehr gefragt. Bestehende Lösungen sind oft schwer erweiterbar oder bieten keine einfache Integration in bestehende Systeme. Die Herausforderung besteht darin, einen eigenständigen Microservice zu entwickeln.
Ambitioniert: Die Entwicklung eines eigenständigen Services inklusive API-Anbindung, Filterlogik und Bereitstellung via REST ist anspruchsvoll, aber machbar. Motivierend: Persönliches Interesse an Musik, Event-Technologien und Microservices. Organisiert: APIs, Tools und Frameworks sind vorhanden oder beschaffbar. Realistisch: Umfang und Zielsetzungen sind im Rahmen der verfügbaren Zeit gut umsetzbar. Echt: Der Anwendungsfall ist realitätsnah und technologisch aktuell.
Ziele
- Entwicklung eines lauffähigen Microservices mit REST-API zur Abfrage von Musikveranstaltungen
- AWS über eine Pipeline zur Verfügung stellen
- Anbindung an eine externe Event-API zur Datenbeschaffung
- Implementierung von Filterfunktionen
- Containerisierung mit Docker zur einfachen Bereitstellung
- Einbindung einer Datenbank zur Speicherung von Nutzerinformationen
Mittel und Methode
Sachmittel
- Unterrichtsressourcen
- Flask Dokumentationen
- Unterstützung der Dozenten
Programmiersprache
- Python
Werkzeuge
- SCRUM
- ChatGPT
- Visual Studio Code
- PowerPoint
- Notion
- Docker Desktop
- API`s
- Flask
- Github
- AWS
- Jira
SCRUM-Überblick
Im Rahmen der Entwicklung des Microservices für personalisierte, ortsbezogene Event-Empfehlungen wird SCRUM als agiles Projektmanagement-Framework eingesetzt, um strukturierte Fortschritte zu ermöglichen. Das Projekt wird in mehrere Sprints unterteilt, in denen jeweils konkrete Teilziele wie zum Beispiel die Anbindung der externen Event-API, die Entwicklung der Filterlogik oder die Integration der REST-API fokussiert bearbeitet werden. Zu Beginn jedes Sprints erfolgt eine Sprintplanung, in der die anstehenden Aufgaben priorisiert und aufgeteilt werden. Nach jedem Sprint wird ein Review durchgeführt. Durch den Einsatz von SCRUM bleibt man flexibel und kann trotz der technischen Komplexität effektiv auf Veränderungen und Herausforderungen reagieren.
Defenition of Done
Ein Product Backlog Item, gilt als “Done”, wenn alle folgenden Kriterien erfüllt sind:
Funktionale Umsetzung
- Die Funktionalität ist vollständig implementiert gemäß der User Story und den Akzeptanzkriterien.
- Die API-Endpunkte liefern valide, erwartete Ergebnisse.
- Filterlogiken und Datenbankzugriffe funktionieren korrekt.
Technische Qualität
- Der Code wurde dokumentiert.
- Es existieren Tests.
- Es gibt keine kritischen oder offenen Bugs.
Sicherheit & Stabilität
- Datenvalidierung wurde umgesetzt.
- Es wurden Sicherheitsaspekte berücksichtigt.
- Die Anwendung läuft stabil in Docker-Containern.
Deployment
- Die Anwendung ist containerisiert (Docker) und funktionsfähig bereitgestellt.
- Die Anwendung wird über die CI/CD-Pipeline automatisch auf AWS deployt.
- Der Deployment-Status ist dokumentiert oder im Log nachvollziehbar.
Dokumentation
- Das Feature ist in der technischen Projektdokumentation beschrieben.
- Änderungen sind nachvollziehbar.
- Bei Bedarf wurden Screenshots, Diagramme oder Abläufe ergänzt.
Review & Akzeptanz
- Die Sprint Reviews sind alle Dokumentiert
- Die Reflexion ist verständlich.
- Die Funktionalität ist im Product Backlog als „Done“ markiert.
Projektorganisation
Beteiligte Personen
Kanditatin
Laura Joana Dubach
Funktion: Projektleiterin
P: 079 355 78 24
Github: lauradubach
Business E-Mail: laura.dubach@itnetx.ch
School E-Mail: laura.dubach@edu.tbz.ch
Dozenten
Parisi Corrado
Funktion: PRJ-Dozent
Github: corrado-parisi
E-Mail: corrado.parisi@tbz.ch
Langer Boris
Funktion: Fachdozent
Github: lab-bo
E-Mail: boris.langer@tbz.ch
Datensicherung
Damit keine Daten verloren gehen, werde ich alle Dokumente auf meinem OneDrive abspeichern. Zusätzlich werde ich die Daten auf einen USB-Stick abspeichern, damit ich im Worstcase Szenario ein Backup besitze.
Back Page
Next Page