36 lines
1.8 KiB
Plaintext
36 lines
1.8 KiB
Plaintext
### Iteration 1: Basisstruktur
|
|
- Projektstruktur erstellen (z. B. DomainLayer, ServiceLayer, UILayer).
|
|
- Grundlegende Klassen definieren (z. B. Medium, User, LibraryService).
|
|
- Git-Repository initialisieren und Basiscode committen.
|
|
|
|
### Iteration 2: Medienverwaltung
|
|
- Abstrakte Klasse Medium und spezifische Klassen (Book, DVD, etc.) implementieren.
|
|
- Methoden für Ausleihfrist und Verlängerungslogik hinzufügen (z. B. getBorrowPeriod, isRenewable).
|
|
- Funktion zur Anzeige eines Medienkatalogs erstellen.
|
|
|
|
### Iteration 3: Benutzerverwaltung
|
|
- Benutzerklassen (Adult, Student, Admin) mit entsprechenden Attributen und Methoden hinzufügen.
|
|
- Registrierungs- und Anmeldefunktionalität implementieren.
|
|
|
|
### Iteration 4: Ausleihe und Rückgabe
|
|
- Logik für die Ausleihe von Medien (inkl. Fälligkeitsdatum) implementieren.
|
|
- Rückgabefunktion mit Gebührenberechnung (z. B. Säumnisgebühren) hinzufügen.
|
|
|
|
### Iteration 5: Erweiterte Validierung
|
|
- Validierung: Nur berechtigte Benutzer dürfen ausgeliehene Medien verlängern oder zurückgeben.
|
|
- Überprüfen, ob Medien bereits ausgeliehen sind, bevor sie erneut ausgeliehen werden können.
|
|
|
|
### Iteration 6: Admin-Funktionalität
|
|
- Admin-Zugang implementieren: Bearbeiten von Zahlungen und Übersicht aller Benutzer.
|
|
|
|
### Iteration 7: Erweiterte Suchfunktion
|
|
- Funktion hinzufügen, um Medien nach ID, Titel oder Status (z. B. ausgeliehen) zu durchsuchen.
|
|
|
|
### Iteration 8: Benutzeroberfläche (TUI)
|
|
- Menüsystem mit allen Optionen (z. B. Medien anzeigen, ausleihen, zurückgeben).
|
|
- Benutzerfreundliche Ausgabe für Katalog und Gebühreninformationen.
|
|
- Git-Branch `feature/ui` erstellen, Änderungen committen.
|
|
|
|
### Iteration 9: Endgültige Tests und Dokumentation
|
|
- Alle Funktionen testen und sicherstellen, dass die Anforderungen erfüllt sind.
|