ITAT Challenge 2024
Mit erfolgreich bestandener Challenge können Sie Ihr Klausurergebnis um 0,3 Notenpunkte verbessern, sofern die Klausur grundsätzlich bestanden ist (4,0 oder besser)!
- Die Challenge ist freiwillig
- Team bis zu 3 Studierende (1-3 möglich)
- Alle sitzen in einem Boot (Gruppe besteht oder nicht)
Aufgabe
Entwickeln Sie ein Tool, dass Prof. Barth eine Übersicht mindestens einer Sportart (Olympia, z.B. 100 Meter-Lauf) oder des Turniers (EM 2024) gibt:
- Tabellen
- Mannschaften, Sportler*innen
- Rankings etc.
Die teilnehmenden Sportler*innen (Olympia) bzw. Mannschaften (EM) können bereits von Ihnen implementiert werden.
Die Ergebnisse müssen von Prof. Barth eingetragen werden können.
Die resultierenden Standings, Tabellen, Statistiken sollen von Ihrer Software generiert und dargestellt werden.
Zusätzlich soll Ihre Software Statistiken generieren, wie hoch die Siegwahrscheinlichkeit eines/r Sportler*in oder eines Teams auf Basis des Verlaufs ist.
Anforderungen
- Saubere Nutzung von git (branching, commit messages, merging) in einem private Repository auf der KIT GitLab Instanz mit dem Namen "ITAT_Challenge_2024_"
- Arbeit in einer Gruppe von bis zu 3 Personen ist erlaubt
- Das Programm muss für die Prüfer kompilierbar sein ohne zusätzliche Hardware- oder Softwareanforderungen (also keine Einbindung von Bibliotheken, die zusätzlich installiert werden müssten)
- Ausnahme ist die Nutzung von Qt6 als Framework zur Erstellung einer grafischen Benutzeroberfläche (graphical user interface, GUI), falls das gewünscht ist (Command-Line Ausgaben sind für Bestehen vollkommen ausreichend)
- ansonsten nur die C++ Standard Libraries
- C++17
- g++ Compiler
- Das Programm sollte sinnvolle Verwendung der Vorlesungs- und Übungskonzepte aufweisen (d.h. es wird OOP, Vererbung, Pointer und Datenstrukturen erwartet)
- Ausfürliche Dokumentation in der README.md
- Projektname
- Namen und Matrikelnummern der Ersteller
- textuelle Beschreibung
- Was macht das Programm und wie ist es zu bedienen?
- Was der Unique Selling Point (USP) der vorgestellten Lösung? --> Was macht ihr Projekt besonders?
- UML-Modelle mit zumindest einem Klassendiagramm
Teilnahme
- Fügen Sie Marcel Auer (marcel.auer) und Marwin Madsen (marwin.madsen) bis 28.06.2024 zu ihrem Repository hinzu.
- Erstellen Sie in ihrem Repository bis zum 16.08.2024 einen Release, der mit Abgabe getagt ist (nur der Stand zum Release wird betrachtet). Nähere Infos zum Erstellen von Releases: GitLab - Releases
Beispiele und Hinweise:
UML Klassendiagramm
UML Klassendiagramme können sehr einfach z.B. mit DrawIO oder Papyrus erstellt werden:

Projekt-Dokumentation
Beschreiben Sie hier, wie ihre Software zu nutzen ist.
- Wie erfolgen die Eingaben?
- Für statistische Auswertung der Ergebnisse: Wie erfolgt die Berechung?
- Wie könnte ihr Projekt noch erweitert werden?
Als Inspriation: Mermaid - Github
.gitignore
In diesem Repository ist eine Datei mit dem Namen .gitignore hinterlegt. Wir raten ihnen diese Datei in der obersten Ebene (dort, wo auch README.md liegt) ihrem Projekt hinzuzufügen.
Die in dieser Datei aufgelisteten Dateiformate werden dann von Git nicht mehr beachtet. Das verhindert, dass Dateien getrackt werden, welche automatisch beim Kompilieren erstellt werden und in ihrem Repository keinen Mehrwert darstellen würden.
Nähere Infos: Git - gitignore