2025-03-09 08:16:30 +00:00

88 lines
2.6 KiB
Markdown

# Spezifikation Zeiterfassungs-Tool
## Technologie-Stack
### Backend
- Go mit fp-go
- PostgreSQL mit ORM (GORM oder Bun)
- Swagger/OpenAPI
- JWT-basierte Authentifizierung
### Frontend
- Next.js mit fp-ts
- React und Tailwind CSS
- Responsive Webdesign
- Progressive Web App (PWA)
## Multi-Tenancy & Rollen
- **Mandantenfähigkeit**: Isolation von Daten je Unternehmen (Tenant)
- **Rollen:** Admin, Company-Admin, Manager, Auditor, User
## Datenmodelle
- **Company** (Tenant)
- **User** (mit Rollen, Stundenrate)
- **Kunde**
- **Projekt** (mit Kundenreferenz)
- **Tätigkeit** (Verrechnungspreis)
- **Buchung** (Zeit, User, Projekt, Tätigkeit, Beschreibung optional, Abrechenbarkeit 0-100%)
## Funktionale Anforderungen
### Version 1
- Stammdatenverwaltung (Kunden, Projekte, Tätigkeiten, User)
- Zeiterfassung mit Start/Stopp-Funktion und Parameterübernahme aus letzter Buchung
- Übersichtliches Dashboard mit letzten Buchungen und Tracker
- Aggregierte Reports nach Zeitraum, Projekt, Kunde, Mitarbeiter mit PDF-Export
- Grafische Dashboards (Diagramme)
### Version 2
- Projektverwaltung mit Sprints, Tasks
- Kanban-Boards zur Aufgabenverwaltung
- Direkte Verknüpfung von Tasks mit Zeitbuchungen
## Sicherheit und Datenschutz
- Tenant-Isolation
- TLS-Verschlüsselung und verschlüsselte Speicherung sensibler Daten
- Audit-Logs (lückenlose Protokollierung)
- DSGVO-konform (Datenexport, Recht auf Vergessen)
## Technische Umsetzung
### Backend-Architektur
- Modulare Pakete:
- Auth
- Tenant
- User
- TimeTracking
- Customer
- Project
- Billing
- Reporting
- RESTful API mit Middleware zur Tenant-Isolation
### Frontend-Komponenten
- Dashboard (Tracker, letzte Buchungen)
- Buchungsformular und Historie
- Stammdatenverwaltung (Kunden, Projekte, Tätigkeiten)
- Reporting-Seiten mit PDF-Export
- Admin-Oberfläche
## Deployment & DevOps
- Docker, Docker-Compose (Entwicklung)
- Kubernetes-Manifeste für Produktion
- CI/CD mit automatischen Tests und Deployment
- Monitoring und Logging (Prometheus, Grafana, ELK)
- Regelmäßige Backups, Disaster-Recovery
## Erweiterbarkeit und Integrationen
- API für externe Abrechnungssysteme und Kalenderintegration
- Single Sign-On (Google, Microsoft, SAML)
- Plugin-System und Custom Fields für Erweiterbarkeit
- Analytics und BI-Export
## Zusätzliche Funktionen
- Audit-Logs wichtiger Aktionen
- Benachrichtigungssystem (E-Mail, In-App)
- Lokalisierung (Mehrsprachigkeit, Zeit- und Datumsformate)
Diese aktualisierte Spezifikation berücksichtigt alle relevanten Punkte für eine modulare, erweiterbare und sichere Implementierung.