stadtwerke/PRD.md

254 lines
8.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# InnungsApp — Product Requirements Document (PRD)
> **Version:** 2.0 | **Status:** In Review | **Owner:** Timo Knuth
> **Zielmarkt:** Innungen & Kreishandwerkerschaften in Deutschland
---
## 1. Problemdefinition
### 1.1 Status Quo bei Innungen
Deutsche Handwerksinnungen verwalten ihre Mitglieder und kommunizieren heute mit:
- **Excel-Tabellen** für Mitgliederverwaltung (lokal, nicht synchronisiert)
- **WhatsApp-Gruppen** für interne Kommunikation (DSGVO-Problem)
- **E-Mail-Verteiler** für Rundschreiben (kein Tracking, kein Self-Service)
- **PDF-Formulare** per Post für Anmeldungen (langsam, fehleranfällig)
- **Vereinzelte Websites** für die Lehrstellenbörse (veraltet, schlecht mobil)
### 1.2 Konkrete Pain Points
**Geschäftsführer / Admin:**
- Mitgliederdaten pflegen ist zeitaufwendig (manuelle Excel-Updates)
- Keine Ahnung, ob Rundschreiben gelesen wurden
- Terminanmeldungen kommen per Telefon und E-Mail — chaotisch
- Lehrstelleninserate manuell auf Website pflegen
**Innungsmitglied (Betrieb):**
- Verpasst wichtige Informationen, weil E-Mails übersehen werden
- Keine Möglichkeit, Ausbildungsstellen einfach zu veröffentlichen
- Muss für jede Kleinigkeit den Geschäftsführer anrufen
**Azubi-Bewerber (Gen Z):**
- Stellenangebote auf Websites sind veraltet und langweilig
- Muss PDF-Bewerbungen per E-Mail schicken (antiquiert)
- Kein Einblick in den Berufsalltag
### 1.3 Warum jetzt?
1. **Fachkräftemangel als Treiber:** ~250.000 unbesetzte Ausbildungsplätze in Deutschland (2025)
2. **Digitalisierungsdruck:** Post-Corona haben Innungen erkannt, dass digitale Tools fehlen
3. **Generationenwechsel:** Jüngere Obermeister und Geschäftsführer sind technikaffin
4. **Fördergelder:** BMWi und HWKs haben Digitalisierungsprogramme mit Budget
---
## 2. Produktvision
**Vision Statement:**
> InnungsApp wird die Standard-Infrastruktur des deutschen Handwerks — die Plattform, auf der Innungen verwalten, kommunizieren, Azubis finden und ihre Mitglieder vernetzen.
**Mission:**
> Das deutsche Handwerk digital und zukunftsfähig machen — beginnend mit dem direkten Werkzeug jeder Innung.
---
## 3. Zielgruppe & Rollen
### Primäre Käufer (B2B)
| Rolle | Beschreibung | Hauptmotivation |
|---|---|---|
| **Innungsgeschäftsführer** | Hauptadmin, verwaltet alles | Zeitersparnis, Übersicht |
| **Obermeister** | Vorsitzender der Innung | Reputation, Mitgliederservice |
### Primäre Nutzer (Enduser)
| Rolle | Beschreibung | Hauptbedürfnis |
|---|---|---|
| **Mitglied (Betrieb)** | Inhaberin/Inhaber des Mitgliedsbetriebs | Information, Azubi finden |
| **Azubi-Bewerber** | 1520 Jahre, sucht Ausbildungsplatz | Einfache, moderne Bewerbung |
| **Lernender (Azubi)** | In der Ausbildung | Berichtsheft, Prüfungsvorbereitung |
### Sekundäre Nutzer (Post-MVP)
- Prüfungsausschüsse (Gesellenprüfungen)
- HWK-Mitarbeiter (übergeordnete Verwaltung)
- Lieferanten / Hersteller (Marktplatz-Modul)
---
## 4. Feature-Scope MVP
### 4.1 Modul: Mitgliederverzeichnis
**Ziel:** Zentrales, durchsuchbares Verzeichnis aller Mitgliedsbetriebe.
**User Stories:**
- Als Mitglied möchte ich andere Betriebe in meiner Innung finden, um mich zu vernetzen
- Als Admin möchte ich Mitglieder anlegen, bearbeiten und deaktivieren
**Funktionen:**
- Liste aller Mitgliedsbetriebe mit Suche und Filter
- Filter: Sparte, Ort, Ausbildungsbetrieb ja/nein, Status
- Detailansicht: Name, Betrieb, Sparte, Ort, Telefon, E-Mail, Website, Ausbildungsbetrieb
- Direktkontakt: Tap-to-Call, Tap-to-Mail
- Admin-CRUD: Mitglied anlegen, bearbeiten, deaktivieren, Einladungs-E-Mail senden
- Status-Management: aktiv / ruhend / ausgetreten
**Nicht im MVP:**
- Öffentliches Unternehmensverzeichnis (für Endkunden)
- Bewertungssystem
- Karten-/Geo-Ansicht
- CRM-Integration
---
### 4.2 Modul: Mitteilungen & News
**Ziel:** Gesteuerter Kommunikationskanal von der Innung an ihre Mitglieder.
**User Stories:**
- Als Admin möchte ich Mitteilungen mit Push-Notification versenden, um sicherzustellen, dass alle erreicht werden
- Als Mitglied möchte ich wichtige Mitteilungen einfach finden und nicht in E-Mails suchen müssen
**Funktionen:**
- Feed aller Beiträge, chronologisch sortiert
- Kategorien: Wichtig / Prüfung / Förderung / Veranstaltung / Allgemein
- Push-Notification bei neuem Beitrag (optional konfigurierbar)
- Ungelesen/Gelesen-Status pro Nutzer und Beitrag
- PDF-Anhänge (Rundschreiben, Formulare)
- Admin: Beitrag erstellen, bearbeiten, löschen, zeitgesteuert veröffentlichen
- Admin: Leserate pro Beitrag einsehen
**Nicht im MVP:**
- Kommentarfunktion (erhöht Moderationsaufwand)
- Mitglieder-Posts (asymmetrischer Kanal gewollt)
- Direktnachrichten / Chat
---
### 4.3 Modul: Lehrlingsbörse (Basic)
**Ziel:** Ausbildungsplätze der Mitgliedsbetriebe einfach veröffentlichen und finden.
**User Stories:**
- Als Betrieb möchte ich meine Ausbildungsstellen einfach einstellen, ohne die Innung fragen zu müssen
- Als Bewerber möchte ich Stellen ohne Registrierung durchsuchen
**Funktionen (Betrieb):**
- Stelle anlegen: Sparte, Anzahl, Vergütung nach Lehrjahr, Ausbildungsstart, Kontakt
- Stelle aktivieren / pausieren / löschen
- Bewerbungskontakt: E-Mail oder Telefon
**Funktionen (Bewerber, öffentlich ohne Login):**
- Stellenliste durchsuchen
- Filter: Sparte, Ort, Lehrjahr, Ausbildungsstart
- Direktkontakt zum Betrieb (E-Mail / Telefon)
**Nicht im MVP:**
- In-App Bewerbungsformular
- Matching-Algorithmus
- Video-Feed (→ Azubi-Modul Advanced, Q2)
- Berichtsheft
---
### 4.4 Modul: Termine & Veranstaltungen
**Ziel:** Veranstaltungskalender mit An-/Abmeldefunktion und Teilnehmermanagement.
**User Stories:**
- Als Admin möchte ich Termine anlegen und die Teilnehmerliste einsehen
- Als Mitglied möchte ich mich für Veranstaltungen anmelden und den Termin in meinen Kalender exportieren
**Funktionen:**
- Terminliste mit Typ-Tags: Prüfung / Versammlung / Kurs / Event / Lossprechung
- Termindetail: Titel, Datum, Uhrzeit, Ort, Beschreibung, Typ
- An-/Abmeldung mit E-Mail-Bestätigung
- Kalenderexport: iCal / Google Calendar / Outlook
- Admin: Termin anlegen, Teilnehmerliste exportieren (CSV)
- Push-Notification 24h vor Termin
**Nicht im MVP:**
- Bezahlte Events / Ticketing
- Wartelisten-Management
- Videokonferenz-Links (Q2)
- Saalplan / Sitzordnung
---
### 4.5 Modul: Admin-Dashboard (Web)
**Ziel:** Webbasiertes Backend für Innungsgeschäftsführer.
**Funktionen:**
- Übersicht: Mitgliederzahl, aktive Nutzer, ungelesene Beiträge
- Mitgliederverwaltung: CRUD, Massenimport via CSV, Einladungsversand
- Newsroom: Beiträge erstellen, planen, Leserate sehen
- Terminverwaltung: CRUD, Teilnehmerliste
- Lehrstellenverwaltung: Alle Stellen aller Betriebe einsehen und moderieren
- Einstellungen: Innungslogo, Farbe, Kontaktdaten, Spartenverzeichnis
- Einfache Analytics: DAU/MAU, Aktivierungsrate, meistgelesene Beiträge
**Tech:** Next.js Web-App auf `app.innungsapp.de/admin`
---
## 5. Out of Scope — MVP
| Feature | Begründung | Roadmap |
|---|---|---|
| Chat / Direktnachrichten | Moderation, DSGVO-Komplexität | Q3 2026 |
| Dokumentenarchiv | Fokus zuerst auf Kernkommunikation | Q2 2026 |
| Prüfungsverwaltung | Hochreguliert, eigenes Produkt | Q4 2026 |
| Mitgliederbeiträge / Buchhaltung | Buchhaltungsintegration nötig | 2027 |
| Video-Feed (TikTok-Style) | Eigenes Azubi-Modul | Q2 2026 |
| Berichtsheft digital | Komplex, eigenes Feature | Q3 2026 |
| Mehrsprachigkeit | Zielgruppe DE-only | 2027 |
| White-Label für HWK | Post Product-Market-Fit | Q4 2026 |
| Marktplatz / Lieferantenportal | Separate Business Unit | 2027 |
---
## 6. Nicht-funktionale Anforderungen
### Performance
- App-Ladezeit (Cold Start): < 3 Sekunden
- Feed-Ladezeit: < 1 Sekunde
- Push-Notification-Delivery: > 95 % innerhalb 30 Sekunden
### Sicherheit & Datenschutz
- DSGVO-konform: Datenverarbeitung nur in EU (Frankfurt)
- AVV (Auftragsverarbeitungsvertrag) mit jeder Innung
- Row Level Security: Jede Innung sieht ausschließlich ihre eigenen Daten
- Keine Weitergabe von Mitgliederdaten an Dritte
- Datenlöschung auf Anfrage innerhalb 30 Tage
### Verfügbarkeit
- Uptime-Ziel: 99,5 % (Supabase SLA)
- Geplante Wartungsfenster: nachts 02:0004:00 Uhr
### Skalierbarkeit
- MVP-Kapazität: 100 Innungen, je bis 500 Mitglieder
- Skalierung auf 10.000 Innungen ohne Architekturänderung (Supabase managed)
### Barrierefreiheit
- iOS: Unterstützung für Dynamic Type und VoiceOver
- Mindest-Textgröße: 14pt
- Kontrastverhältnis: WCAG AA
---
## 7. Akzeptanzkriterien MVP
| Feature | Kriterium |
|---|---|
| Login | Nutzer kann sich via Magic Link in < 60 Sek. einloggen |
| Mitgliederverzeichnis | Admin kann Mitglied in < 2 Minuten anlegen |
| News | Beitrag ist nach Veröffentlichung in < 10 Sek. für alle sichtbar |
| Push-Notification | 95 % der Nutzer empfangen Push innerhalb 30 Sek. |
| Lehrlingsbörse | Stelle ist öffentlich sichtbar ohne Login |
| Termine | Anmeldung + Kalenderexport in < 3 Klicks |
| Multi-Tenancy | Kein Mitglied sieht Daten einer anderen Innung |