63 lines
2.9 KiB
Markdown
63 lines
2.9 KiB
Markdown
# AP01 – Ist-Stand-Inventar und Delta-Analyse
|
||
|
||
## Ziel
|
||
|
||
Den **tatsächlichen Ist-Zustand** der bestehenden Code-Basis vollständig erfassen und ein **Delta** zum M1-Soll dokumentieren, bevor irgendetwas umgebaut wird. Ohne dieses AP besteht das Risiko, dass spätere APs an der Realität vorbeiplanen.
|
||
|
||
## Voraussetzungen
|
||
|
||
- keine (erstes AP)
|
||
|
||
## Scope IN
|
||
|
||
- vollständige Dateiliste unter `src/main/java/` und `src/test/java/` mit Kurzbeschreibung jeder Klasse (ein Satz pro Klasse)
|
||
- Auflistung aller externen Dependencies aus `pom.xml` inkl. Versionen
|
||
- Identifikation aller Stellen, an denen Log4j2-Typen (`org.apache.logging.log4j.*`) direkt importiert werden
|
||
- Identifikation aller Stellen, an denen Zeichensätze explizit gesetzt werden (Grep nach `StandardCharsets`, `Charset.forName`)
|
||
- Identifikation aller `System.exit`- und Exit-Code-Konstanten
|
||
- Delta-Tabelle: Ist-Paketstruktur vs. Soll-Paketstruktur aus `technik-und-architektur.md`
|
||
- Delta-Tabelle: Ist-Exit-Codes vs. Soll-Exit-Codes (`0/1/2`)
|
||
- Delta-Tabelle: vorhandene vs. fehlende Elemente für M1 (Befundmodell mit Spec-/Diagnose-Trennung, SLF4J-Fassade, Berichtdatei, Log-Datei, Suffix-Logik, Minimalbericht, ISO 8859-15 als Eingabe-Encoding)
|
||
- Klassifikation jedes vorhandenen Pakets: **behalten und migrieren**, **behalten und anpassen**, **neu bauen**, **später verwenden (M3+)**
|
||
|
||
## Scope OUT
|
||
|
||
- keinerlei Code-Änderungen
|
||
- keinerlei `pom.xml`-Änderungen
|
||
- keinerlei Datei-Verschiebungen
|
||
- keine neuen Dateien außer dem Bericht selbst
|
||
|
||
## Schritte
|
||
|
||
1. Repo lokal auschecken, `mvn clean verify` laufen lassen, Ergebnis festhalten (grün/rot, Anzahl Tests, Warnungen)
|
||
2. `find src/main/java -name "*.java" | sort` und jede Datei mit ein bis zwei Sätzen kurz beschreiben
|
||
3. `find src/test/java -name "*.java" | sort` analog
|
||
4. `grep -rn "org.apache.logging.log4j" src/` — alle Fundstellen auflisten
|
||
5. `grep -rn "StandardCharsets\|Charset.forName" src/` — alle Fundstellen auflisten
|
||
6. `grep -rn "System.exit\|EXIT_CODE" src/` — alle Fundstellen auflisten
|
||
7. aktuelle Paketstruktur als Baum zeichnen
|
||
8. Delta-Tabellen gemäß Scope IN erstellen
|
||
9. Klassifikation pro Paket vornehmen
|
||
10. Abschlussbericht nach `templates/ap-bericht.md` schreiben
|
||
|
||
## Abnahmekriterien
|
||
|
||
- Abschlussbericht `berichte/AP01-bericht.md` existiert und enthält:
|
||
- vollständige Dateiliste (main + test) mit Kurzbeschreibung
|
||
- Dependency-Liste
|
||
- alle Grep-Fundstellen
|
||
- Ist-vs-Soll-Paketstrukturbaum
|
||
- Delta-Tabelle Exit-Codes
|
||
- Delta-Tabelle fehlender M1-Elemente
|
||
- Klassifikationstabelle pro Paket
|
||
- `mvn clean verify` ist vor und nach diesem AP identisch (es wurde nichts geändert)
|
||
- keine neuen Dateien im Repo außer dem Abschlussbericht
|
||
|
||
## Rest-Risiken und offene Punkte
|
||
|
||
- Die Klassifikation „behalten" vs. „neu bauen" ist eine Einschätzung und kann in späteren APs revidiert werden müssen. Das ist okay, solange es dokumentiert wird.
|
||
|
||
## Bericht
|
||
|
||
`docs/arbeitspakete/m1/berichte/AP01-bericht.md` nach `templates/ap-bericht.md`.
|