Files
stadtwerke/FEATURES_BACKLOG.md
Timo Knuth fca42db4d2 Rebuild as InnungsApp project: replace stadtwerke analysis with full documentation
- PRD: vollständige Produktspezifikation (5 Module, Scope, Akzeptanzkriterien)
- ARCHITECTURE: Tech Stack, Ordnerstruktur, Multi-Tenancy, Push, Kosten
- DATABASE_SCHEMA: Vollständiges SQL-Schema mit RLS Policies und Views
- USER_STORIES: 40+ Stories nach Rolle (Admin, Mitglied, Azubi, Obermeister)
- PERSONAS: 5 detaillierte Nutzerprofile mit Alltag, Zitaten und Erwartungen
- BUSINESS_MODEL: Preistabellen, Unit Economics, Revenue-Projektionen, Distribution
- ROADMAP: 6 Phasen, Sprint-Planung, Meilensteine und KPIs
- COMPETITIVE_ANALYSIS: Wettbewerbsmatrix, USPs, Preispositionierung
- API_DESIGN: Supabase Query Patterns, Edge Functions, Realtime Subscriptions
- ONBOARDING_FLOWS: 7 User Flows von Setup bis Fehlerfall
- GTM_STRATEGY: 3-Phasen-Vertrieb, Outreach-Sequenz, Einwandbehandlung
- AZUBI_MODULE: Video-Feed, 1-Click-Apply, Chat, Berichtsheft, Quiz
- DSGVO_KONZEPT: Rechtsgrundlagen, TOMs, AVV, Minderjährige, Incident Response
- FEATURES_BACKLOG: 72 Features nach MoSCoW + Technische Schulden

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-18 19:03:37 +01:00

130 lines
6.4 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 — Feature Backlog
> Priorisiert nach MoSCoW: **M**ust | **S**hould | **C**ould | **W**on't (MVP)
> Sortiert nach Impact / Effort Score (H = Hoch, M = Mittel, N = Niedrig)
---
## MVP Must-Have (Phase 1)
| ID | Feature | Modul | Impact | Effort | Sprint |
|---|---|---|---|---|---|
| F-001 | Magic Link Login (E-Mail) | Auth | H | N | 1 |
| F-002 | Auth Guard (geschützte Routes) | Auth | H | N | 1 |
| F-003 | Mitgliederverzeichnis (Liste + Suche) | Mitglieder | H | N | 1 |
| F-004 | Mitglied-Detailansicht + Tap-to-Call | Mitglieder | H | N | 1 |
| F-005 | Filter: Sparte, Ort, Ausbildungsbetrieb | Mitglieder | M | N | 1 |
| F-006 | Admin: Mitglied anlegen / bearbeiten | Mitglieder | H | M | 1 |
| F-007 | Admin: Mitglied deaktivieren | Mitglieder | H | N | 1 |
| F-008 | CSV-Import Mitglieder | Mitglieder | H | M | 1 |
| F-009 | Einladungsmail per Resend | Mitglieder | H | N | 1 |
| F-010 | News Feed (veröffentlichte Beiträge) | News | H | N | 2 |
| F-011 | News-Detailansicht mit Markdown | News | H | N | 2 |
| F-012 | Kategoriefilter (Wichtig/Prüfung/etc.) | News | M | N | 2 |
| F-013 | Ungelesen/Gelesen-Status | News | M | N | 2 |
| F-014 | PDF-Anhang öffnen | News | H | M | 2 |
| F-015 | Push Notification bei Veröffentlichung | News | H | M | 2 |
| F-016 | Admin: Beitrag erstellen (Markdown) | News | H | M | 2 |
| F-017 | Admin: Beitrag anpinnen | News | M | N | 2 |
| F-018 | Admin: Leserate pro Beitrag | News | H | N | 2 |
| F-019 | Admin: Zeitgesteuerte Veröffentlichung | News | M | M | 2 |
| F-020 | Terminliste (chronologisch) | Termine | H | N | 3 |
| F-021 | Termin-Detailansicht | Termine | H | N | 3 |
| F-022 | Typ-Tags (Prüfung/Versammlung/etc.) | Termine | M | N | 3 |
| F-023 | An-/Abmeldung für Termin | Termine | H | N | 3 |
| F-024 | iCal-Export (Google/Outlook) | Termine | H | N | 3 |
| F-025 | Admin: Termin anlegen / bearbeiten | Termine | H | N | 3 |
| F-026 | Admin: Teilnehmerliste einsehen + CSV-Export | Termine | H | N | 3 |
| F-027 | E-Mail-Bestätigung nach Anmeldung | Termine | M | N | 3 |
| F-028 | Stellenliste öffentlich (ohne Login) | Lehrlingsbörse | H | N | 4 |
| F-029 | Stellen-Filter (Sparte, Ort, Lehrjahr) | Lehrlingsbörse | H | N | 4 |
| F-030 | Vergütungsanzeige nach Lehrjahr | Lehrlingsbörse | H | N | 4 |
| F-031 | Betrieb: Stelle anlegen | Lehrlingsbörse | H | M | 4 |
| F-032 | Betrieb: Stelle aktivieren/pausieren | Lehrlingsbörse | H | N | 4 |
| F-033 | Admin Dashboard Übersicht | Admin | H | M | 4 |
| F-034 | Admin: Innung-Setup (Logo, Sparten) | Admin | H | M | 0 |
| F-035 | Multi-Tenancy RLS | Backend | H | H | 0 |
| F-036 | Row Level Security alle Tabellen | Backend | H | M | 0 |
| F-037 | Push Token Registrierung | Backend | H | M | 2 |
| F-038 | Onboarding-Wizard (neue Innung) | Onboarding | H | M | 5 |
| F-039 | First-Use Tutorial (Mobile) | Onboarding | M | M | 5 |
| F-040 | App Store Submission (iOS + Android) | Launch | H | M | 6 |
---
## Should Have (Phase 2, Q2 2026)
| ID | Feature | Modul | Impact | Effort |
|---|---|---|---|---|
| F-041 | Push Reminder 24h vor Termin | Termine | H | M |
| F-042 | Admin: Monatsbericht als PDF | Analytics | M | H |
| F-043 | Erweiterte Analytics (DAU/WAU/MAU Charts) | Analytics | M | M |
| F-044 | Leeransicht für leere Listen | UX | M | N |
| F-045 | Offline-Modus (Cached Data) | UX | M | H |
| F-046 | Dokumentenarchiv (Upload/Download) | Dokumente | H | H |
| F-047 | Videokonferenz-Link in Terminen | Termine | M | N |
| F-048 | Mitglied: eigenes Profil bearbeiten | Mitglieder | M | M |
| F-049 | Admin: Mitteilung an Sparte gezielt | News | M | M |
| F-050 | Admin: Vorlage für häufige Beiträge | News | M | M |
| F-051 | Benachrichtigungs-Einstellungen (Nutzer) | Notifications | M | M |
| F-052 | Karten-Ansicht Mitglieder (Google Maps) | Mitglieder | N | H |
| F-053 | Bewerbungs-Kontaktformular (in App) | Lehrlingsbörse | M | M |
| F-054 | Admin: Stellen moderieren / ausblenden | Lehrlingsbörse | M | N |
---
## Could Have (Phase 3, Q3Q4 2026)
| ID | Feature | Modul | Impact | Effort |
|---|---|---|---|---|
| F-055 | TikTok-Style Video-Feed | Azubi-Modul | H | H |
| F-056 | Video-Upload für Betriebe | Azubi-Modul | H | H |
| F-057 | Bewerber-Profil (ohne CV) | Azubi-Modul | H | M |
| F-058 | 1-Click-Apply | Azubi-Modul | H | M |
| F-059 | In-App Chat (Betrieb ↔ Bewerber) | Azubi-Modul | H | H |
| F-060 | Vergütungs-Rechner | Azubi-Modul | M | M |
| F-061 | Digitales Berichtsheft | Azubi-Modul | M | H |
| F-062 | Prüfungsvorbereitung Quiz | Azubi-Modul | M | H |
| F-063 | White-Label (Subdomain, Logo) | Platform | H | H |
| F-064 | HWK-Dashboard (alle Innungen im Bezirk) | Platform | H | H |
| F-065 | API für externe Systeme (OpenAPI) | Platform | M | H |
| F-066 | Webhook-Integration | Platform | M | H |
| F-067 | Chat / Direktnachrichten (allgemein) | Kommunikation | M | H |
| F-068 | Prüfungsverwaltung (Gesellenprüfungen) | Prüfungen | H | H |
| F-069 | Obermeister-Genehmigung für Beiträge | Governance | N | M |
| F-070 | Mitgliederbeiträge / Buchhaltung | Finanzen | M | H |
| F-071 | Öffentliches Unternehmensverzeichnis | Marketing | N | H |
| F-072 | Bewertungssystem für Betriebe | Community | N | H |
---
## Won't Have (MVP — bewusste Nein-Entscheidungen)
| Feature | Begründung |
|---|---|
| Mehrsprachigkeit | Zielgruppe 100% deutsch, 2027 frühestens |
| SEPA-Lastschrift | Buchhaltungsintegration zu komplex |
| Lernmanagementsystem (LMS) | Zu komplex, eigenes Produkt |
| Öffentliche API ab Tag 1 | Erst wenn Produkt stabil |
| App für HWK (übergeordnet) | Erst nach HWK-Partnerschaft |
| Gamification (Punkte, Badges) | Nicht Kernbedürfnis der Zielgruppe |
| Social Feed (Mitglieder posten) | Moderation zu aufwendig |
| Marktplatz / E-Commerce | Separate Business Unit 2027 |
---
## Technische Schulden & Non-Feature Backlog
| ID | Aufgabe | Priorität |
|---|---|---|
| T-001 | End-to-End Tests (Playwright) für Admin-App | Hoch |
| T-002 | Unit Tests für Supabase Edge Functions | Hoch |
| T-003 | React Native E2E Tests (Maestro) | Mittel |
| T-004 | Error Monitoring (Sentry) integrieren | Hoch |
| T-005 | Performance Monitoring (Supabase Insights) | Mittel |
| T-006 | Dependency Updates automatisieren (Renovate) | Mittel |
| T-007 | API Rate Limiting (Edge Function) | Hoch |
| T-008 | Spam-Schutz Lehrstellenanzeigen | Mittel |
| T-009 | Datenbankindizes optimieren (EXPLAIN ANALYZE) | Mittel |
| T-010 | Storybook für UI-Komponenten | Niedrig |