Files
Orchestrator/bahn/project-audit/analysis/iteration-01-gitlab-erstanalyse.md
ankn a5f8fb49ab Migrate all repos into monorepo context folders
Bahn: aisupport, Analyse-O2C-C2S, awesome-bahn-mcp-servers, beam-mcp,
      Confluence_Bot, db-planet-mcp-server, O2C-Harness, project-audit,
      Projekt-KIQ-HP, teamlandkarte-mcp
Dhive: Jury-Voting
Privat: CV, NoteGraph (NOTE: NoteGraph needs complete redo after consolidation)
Shared: AI-Orchestrator, OrgMyLife, power_skills_and_more
Shared/references: symphony (read-only)

Bahn repos remain available as independent remotes - this monorepo
pulls them in via subtree, the originals are untouched.
2026-06-30 20:39:52 +02:00

135 lines
6.4 KiB
Markdown

# Erstanalyse GitLab — pathOS / Bestellsystem
> Generiert: 2026-04-22 | Basis: 167 Projekte, 9 Untergruppen
---
## Überblick
| Kennzahl | Wert |
|----------|------|
| Projekte gesamt | 167 |
| Davon aktiv (< 6 Monate) | ~109 |
| Davon inaktiv (6M+) | ~26 |
| Davon archiviert | 32 |
| Untergruppen | 9 |
| Hauptsprache | Java (47 Projekte) |
| Build-System | Maven (83 Projekte) |
| Containerisiert | 46 Projekte mit Dockerfile |
## Gruppenstruktur
```
bestellsystem1/
├── apis/ (37 Projekte) — API-Definitionen, OpenAPI-Specs, Datenmodelle
├── apps/ (19 Projekte) — Laufende Services und Anwendungen
├── docs/ (7 Projekte) — Dokumentation, Runbook, Schemas
├── infra/ (47 Projekte) — Deployment, CI/CD, Helm Charts, Keycloak, Monitoring
├── libraries/ (7 Projekte) — Shared Libraries (core-components, logging, signatures)
├── mocks/ (11 Projekte) — Mock-Services für Tests
├── qa/ (15 Projekte) — Tests (System, Integration, Performance, Security)
├── sandbox/ (13 Projekte) — Experimente, PoCs, Pipeline-Tests
└── tools/ (10 Projekte) — Hilfswerkzeuge (Camunda, Kafka, Migration)
```
## Technologie-Stack
### Backend
- **Java / Spring Boot** — Dominante Technologie (47 Projekte)
- **Maven** — Build-System (83 Projekte, inkl. API-Definitionen)
- **Kafka** — Event-Streaming (mehrere Kafka-bezogene Projekte: auftrag-service-kafka, core-components-kafka, kafka-message-replay, Kafka Topic Setup)
- **Camunda** — Workflow-Engine (camunda-events, camunda-client, Camunda Backup, steuerung-vertrieb)
- **PostgreSQL** — Datenbank (postgresql-chart, Database Setup)
### Frontend
- **TypeScript / JavaScript** — portal-ui (Angular/React?)
- **SCSS** — Styling
- Nur 1 echtes Frontend-Projekt (portal-ui), Rest ist Backend
### Infrastruktur
- **Kubernetes / Helm** — Deployment (bestellsystem-application, bestellsystem-deployment)
- **Docker** — 46 Projekte containerisiert
- **Keycloak** — Identity Management (5+ Keycloak-Projekte)
- **AWS EKS** — Kubernetes auf AWS (deployment-cdaas-agent-eks)
- **SonarQube** — Code-Qualität
- **Trivy** — Container-Security-Scanning
- **OWASP ZAP** — API-Security-Scanning
- **Grafana / Prometheus** — Monitoring (prometheus-blackbox-exporter, prometheus-pushgateway)
- **Artifactory** — Artifact-Management
- **Renovate** — Dependency-Updates
### Datenformate & Standards
- **TAF/TAP TSI** — Europäischer Standard für Trasseninformationen (taftap, taf-tap-schemas, taftap-tdm-konverter)
- **TDM** — Trassendatenmodell (data-model)
- **XML / JSON** — Konvertierung zwischen Formaten (tdm-prm-json2xml-konverter)
## Fachliche Domänen (aus Projektnamen abgeleitet)
### Kernprozess: Trassenbestellung
- `trassenanmeldung` — Trassenanmeldung
- `auftraege` / `Auftrag-Service` / `auftragsverwaltung` — Auftragsverwaltung
- `auftrags-verwaltung-trasse` — Spezifisch für Trassenbestellungen
- `steuerung-vertrieb` — Prozesssteuerung (Camunda-basiert)
- `produktionsauftrag` — Produktionsaufträge
- `versandauftrag` / `versandergebnis` — Versand von Aufträgen
- `vertriebsauftraege` — Vertriebsaufträge
### Stammdaten & Kundendaten
- `stammdaten-bereitstellung` / `stammdatenEVU` / `stammdatenPMW` / `StammdatenAdmin` — Stammdaten
- `kundendaten` / `kundendaten-bereitstellung` / `bszkundendaten` — Kundendaten
- `partnerverwaltung` / `partnerverwaltungAdmin` — Partnerverwaltung
### Externe Schnittstellen
- `ifp-connector` / `ifp-mock` / `ifp-mock-messages` — IFP-Anbindung
- `tadef-connector` — TADEF-Anbindung
- `taftap` / `taftap-tdm-konverter` — TAF/TAP TSI Konvertierung
- `common-interface` — DB-Vertrieb-spezifische TAF/TAP Implementierung
- `abrechnung` / `abrechnung-connector` — Abrechnungssystem
- `stationsportal` — Stationsportal-Anbindung
- `pzp` — (unklar, zu klären)
- `nvntool` — (unklar, zu klären)
- `imcrdservice` / `imordnungsrahmen` / `imstammdaten` — Infrastrukturmanager-Anbindung
### Portal & UI
- `portal-ui` — Benutzeroberfläche (einziges Frontend)
- `portal-middleware` / `portal` — Portal-Backend/Middleware
### Sicherheit & Abrechnung
- `tbv-absicherung` / `tbv-absicherung-konverter` — Tunnelbegegnungsverbot
- `abrechnung` — Abrechnungsanbindung
- `rabattnummern-bereitstellung` / `rabattnummernPMW` — Rabattsystem
## Erste Auffälligkeiten & Risiken
### 🔴 Kritisch
1. **Viele Projekte ohne Beschreibung** — Ca. 60% der Projekte haben keine Beschreibung. Das erschwert Onboarding und Verständnis massiv.
2. **Infra-Overhead** — 47 Infra-Projekte (28% aller Projekte!) deuten auf komplexes, möglicherweise fragmentiertes Deployment hin. Passt zu deiner Aussage "Deployment ist sehr zeitaufwändig".
3. **Keycloak-Fragmentierung** — 5+ separate Keycloak-Projekte (keycloak, keycloak-config-cli-image, Keycloak Deployment, keycloak-scripts, keycloak-theme, Keycloak Setup). Konsolidierungspotenzial.
### 🟡 Hoch
4. **32 archivierte Projekte** — Noch in der Gruppe, erzeugen Rauschen. Aufräumen oder in eigene Archiv-Gruppe verschieben.
5. **21 inaktive Projekte (6M+)** — Unklar ob noch relevant oder vergessen.
6. **Mock-Explosion** — 11 separate Mock-Projekte. Könnte auf fehlende Contract-Testing-Strategie hindeuten.
7. **Sandbox mit 13 Projekten** — Einige davon archiviert, aber "pathOS MCP" und "kiro-test-review" sind interessant (KI-Integration?).
### 🟢 Positiv
8. **Klare Gruppenstruktur** — APIs, Apps, Infra, Libraries, QA, Tools ist eine sinnvolle Aufteilung.
9. **Security-Tooling vorhanden** — Trivy, OWASP ZAP, Fortify sind im Einsatz.
10. **Renovate aktiv** — Automatische Dependency-Updates.
11. **Aktive Entwicklung** — Die meisten Kernprojekte wurden in den letzten Tagen aktualisiert.
## Offene Fragen für nächste Iteration
1. Was ist **IFP**? (ifp-connector, ifp-mock)
2. Was ist **TADEF**? (tadef-connector)
3. Was ist **PZP**? (pzp)
4. Was ist **NVN**? (nvntool)
5. Was ist **PMW**? (Portal Middleware? stammdatenPMW, rabattnummernPMW)
6. Was ist **IM**? (imcrdservice, imordnungsrahmen, imstammdaten — Infrastrukturmanager?)
7. Was ist **NuR**? (nur-mock — "Nutzer- und Rechteverwaltung #Einfachbahn")
8. Was ist **BEP**? (bep-mock)
9. Was ist **TPS**? (tps-mock — "Rabatt")
10. Wie sieht die Camunda-Prozesslandschaft aus? (steuerung-vertrieb)
11. Wie viele Umgebungen gibt es? (umgebungs-konfiguration, staging)
12. Wie sieht die Kafka-Topic-Landschaft aus? (msk-topic-permissions)