diff --git a/project-charter.md b/project-charter.md index fc8dc26..0f3e7de 100644 --- a/project-charter.md +++ b/project-charter.md @@ -1,14 +1,24 @@ +--- +title: Project Charter +subtitle: Software Engineering 1 +geometry: + - margin=2cm + - top=3cm + - bottom=2cm +linestretch: 1.2 +papersize: a4 +--- + # Project Charter ## Software Engineering 1 - -| | | -|---|---| -| **Projektname** | ** | +| Feld | Wert | +|------|------| +| **Projektname** | | | **Version** | 1.0 | | **Status** | Entwurf | | **Datum** | *[Datum]* | -| **Hochschule / Kurs** | *[Hochschule] – Software Engineering 1* | +| **Hochschule / Kurs** | *[Hochschule]*
*Software Engineering 1* | --- @@ -16,7 +26,7 @@ ### 1.1 Projektzweck -*Kurze Beschreibung des Projekts (2–4 Sätze): Was wird entwickelt? Welches Problem löst die Software? Für wen?* +*Kurze Beschreibung des Projekts (2-4 Sätze): Was wird entwickelt? Welches Problem löst die Software? Für wen?* > **Beispiel:** Im Rahmen des Moduls Software Engineering 1 wird eine Webanwendung zur Verwaltung von Studierenden-Lerngruppen entwickelt. Die Anwendung soll es Studierenden ermöglichen, Gruppen zu erstellen, beizutreten und Lernmaterialien zu teilen. @@ -30,8 +40,8 @@ ### 2.1 Projektziele -| Nr. | Ziel | Messbare Erfolgskriterien | -|-----|------|--------------------------| +| Nr. | Ziel | Erfolgskriterien | +|---|---|---| | Z-01 | *[Ziel 1]* | *[Kriterium]* | | Z-02 | *[Ziel 2]* | *[Kriterium]* | | Z-03 | *[Ziel 3]* | *[Kriterium]* | @@ -48,7 +58,7 @@ Die folgenden Punkte sind **explizit nicht** Teil dieses Projekts: ## 3. Stakeholder | Rolle | Name | Verantwortlichkeit | -|-------|------|--------------------| +|---|---|---| | Auftraggeber / Betreuer | *[Dozent/in]* | Anforderungen, Abnahme, Bewertung | | Projektleiter:in | *[Name]* | Koordination, Planung, Kommunikation | | Entwickler:in | *[Name]* | Implementierung, Testing | @@ -62,17 +72,17 @@ Die folgenden Punkte sind **explizit nicht** Teil dieses Projekts: ### 4.1 Teamstruktur -| Teammitglied | Matrikelnummer | Primäre Rolle | Technischer Schwerpunkt | -|---|---|---|---| -| *[Name]* | *[Nr.]* | Projektleitung | *[z. B. Backend]* | -| *[Name]* | *[Nr.]* | Entwicklung | *[z. B. Frontend]* | -| *[Name]* | *[Nr.]* | Entwicklung | *[z. B. Datenbank]* | -| *[Name]* | *[Nr.]* | QA / Testing | *[z. B. Testing, CI/CD]* | +| Bezeichnung | Details | +|---|---| +| **Projektleitung** | *[Name]* (Matrikel: *[Nr.]*)
Schwerpunkt: *[z. B. Backend]* | +| **Entwicklung 1** | *[Name]* (Matrikel: *[Nr.]*)
Schwerpunkt: *[z. B. Frontend]* | +| **Entwicklung 2** | *[Name]* (Matrikel: *[Nr.]*)
Schwerpunkt: *[z. B. Datenbank]* | +| **QA / Testing** | *[Name]* (Matrikel: *[Nr.]*)
Schwerpunkt: *[z. B. Testing, CI/CD]* | ### 4.2 Kommunikation | Kanal | Zweck | Frequenz | -|-------|-------|----------| +|---|---|---| | *[z. B. Discord]* | Team-Kommunikation | täglich | | *[z. B. GitHub Issues]* | Aufgabenverwaltung | kontinuierlich | | *[z. B. Weekly Meeting]* | Fortschrittsbesprechung | wöchentlich | @@ -85,7 +95,7 @@ Die folgenden Punkte sind **explizit nicht** Teil dieses Projekts: ### 5.1 Funktionale Anforderungen | ID | Anforderung | Priorität | -|----|-------------|-----------| +|---|---|---| | FA-01 | *[Funktionale Anforderung 1]* | Hoch | | FA-02 | *[Funktionale Anforderung 2]* | Hoch | | FA-03 | *[Funktionale Anforderung 3]* | Mittel | @@ -94,7 +104,7 @@ Die folgenden Punkte sind **explizit nicht** Teil dieses Projekts: ### 5.2 Nicht-funktionale Anforderungen | ID | Anforderung | Kategorie | -|----|-------------|-----------| +|---|---|---| | NFA-01 | *[z. B. Antwortzeit < 2 Sekunden]* | Performance | | NFA-02 | *[z. B. Responsives Design]* | Usability | | NFA-03 | *[z. B. HTTPS, Passwort-Hashing]* | Sicherheit | @@ -104,15 +114,15 @@ Die folgenden Punkte sind **explizit nicht** Teil dieses Projekts: ## 6. Technologie-Stack -| Bereich | Technologie / Tool | Begründung | -|---------|--------------------|------------| -| Frontend | *[z. B. React, Vue, HTML/CSS]* | *[Begründung]* | -| Backend | *[z. B. Spring Boot, Node.js, Django]* | *[Begründung]* | -| Datenbank | *[z. B. PostgreSQL, MySQL, MongoDB]* | *[Begründung]* | -| Versionskontrolle | Git / GitHub | Standard, Kollaboration | -| Projektmanagement | *[z. B. GitHub Projects, Trello]* | *[Begründung]* | -| CI/CD | *[z. B. GitHub Actions]* | *[Begründung]* | -| Kommunikation | *[z. B. Discord, Teams]* | *[Begründung]* | +| Bereich | Technologie / Tool | +|---|---| +| **Frontend** | *[z. B. React, Vue, HTML/CSS]*
*Begründung: [Begründung]* | +| **Backend** | *[z. B. Spring Boot, Node.js, Django]*
*Begründung: [Begründung]* | +| **Datenbank** | *[z. B. PostgreSQL, MySQL, MongoDB]*
*Begründung: [Begründung]* | +| **Versionskontrolle** | Git / GitHub
*(Standard, Kollaboration)* | +| **Projektmanagement** | *[z. B. GitHub Projects, Trello]*
*Begründung: [Begründung]* | +| **CI/CD** | *[z. B. GitHub Actions]*
*Begründung: [Begründung]* | +| **Kommunikation** | *[z. B. Discord, Teams]*
*Begründung: [Begründung]* | --- @@ -121,55 +131,55 @@ Die folgenden Punkte sind **explizit nicht** Teil dieses Projekts: ### 7.1 Projektphasen ``` -Phase 1 – Planung & Analyse - ├── Anforderungserhebung - ├── Technologiewahl - └── Project Charter ✓ +Phase 1 - Planung & Analyse + +-- Anforderungserhebung + +-- Technologiewahl + +-- Project Charter -Phase 2 – Design & Architektur - ├── Systemarchitektur - ├── UI/UX Mockups - └── Datenbankdesign +Phase 2 - Design & Architektur + +-- Systemarchitektur + +-- UI/UX Mockups + +-- Datenbankdesign -Phase 3 – Implementierung - ├── Sprint 1: [Funktionen] - ├── Sprint 2: [Funktionen] - └── Sprint 3: [Funktionen] +Phase 3 - Implementierung + +-- Sprint 1: [Funktionen] + +-- Sprint 2: [Funktionen] + +-- Sprint 3: [Funktionen] -Phase 4 – Testing & QA - ├── Unit Tests - ├── Integrationstests - └── User Acceptance Tests +Phase 4 - Testing & QA + +-- Unit Tests + +-- Integrationstests + +-- User Acceptance Tests -Phase 5 – Abgabe & Präsentation - ├── Dokumentation finalisieren - └── Abschlusspräsentation +Phase 5 - Abgabe & Präsentation + +-- Dokumentation finalisieren + +-- Abschlusspräsentation ``` ### 7.2 Meilensteinplan -| Meilenstein | Beschreibung | Geplantes Datum | Status | -|-------------|--------------|-----------------|--------| -| M-01 | Project Charter abgeschlossen | *[Datum]* | ✅ Abgeschlossen | -| M-02 | Anforderungsanalyse & Architektur | *[Datum]* | 🔄 In Bearbeitung | -| M-03 | Prototyp / MVP fertig | *[Datum]* | ⬜ Offen | -| M-04 | Feature-Complete | *[Datum]* | ⬜ Offen | -| M-05 | Testing abgeschlossen | *[Datum]* | ⬜ Offen | -| M-06 | Abgabe & Präsentation | *[Datum]* | ⬜ Offen | +| Meilenstein | Beschreibung | Datum | Status | +|---|---|---|---| +| M-01 | Project Charter abgeschlossen | *[Datum]* | Abgeschlossen | +| M-02 | Anforderungsanalyse & Architektur | *[Datum]* | In Bearbeitung | +| M-03 | Prototyp / MVP fertig | *[Datum]* | Offen | +| M-04 | Feature-Complete | *[Datum]* | Offen | +| M-05 | Testing abgeschlossen | *[Datum]* | Offen | +| M-06 | Abgabe & Präsentation | *[Datum]* | Offen | --- ## 8. Risikomanagement -| ID | Risiko | Wahrscheinlichkeit | Auswirkung | Gegenmaßnahme | -|----|--------|--------------------|------------|----------------| -| R-01 | Ausfall eines Teammitglieds | Mittel | Hoch | Wissensteilung, Pair Programming | -| R-02 | Technische Komplexität unterschätzt | Mittel | Hoch | Frühzeitige Spikes, Scope-Reduktion | -| R-03 | Anforderungsänderungen | Niedrig | Mittel | Klare Change-Request-Prozesse | -| R-04 | Integrationsprobleme | Mittel | Mittel | Frühzeitige Integrationstests | -| R-05 | *[Projektspezifisches Risiko]* | *[W]* | *[A]* | *[Maßnahme]* | +| ID | Risiko | W/A | Gegenmaßnahme | +|---|---|---|---| +| R-01 | Ausfall eines Teammitglieds | M/H | Wissensteilung, Pair Programming | +| R-02 | Technische Komplexität unterschätzt | M/H | Frühzeitige Spikes, Scope-Reduktion | +| R-03 | Anforderungsänderungen | N/M | Klare Change-Request-Prozesse | +| R-04 | Integrationsprobleme | M/M | Frühzeitige Integrationstests | +| R-05 | *[Projektspezifisches Risiko]* | *[W/A]* | *[Maßnahme]* | -**Legende:** Wahrscheinlichkeit / Auswirkung: Hoch / Mittel / Niedrig +**Legende:** W/A = Wahrscheinlichkeit/Auswirkung; H = Hoch, M = Mittel, N = Niedrig --- @@ -179,7 +189,7 @@ Phase 5 – Abgabe & Präsentation - **Teamgröße:** *[Anzahl]* Personen - **Verfügbare Zeit pro Person:** ca. *[x]* Stunden/Woche -- **Gesamtprojektlaufzeit:** *[Startdatum]* – *[Enddatum]* +- **Gesamtprojektlaufzeit:** *[Startdatum]* - *[Enddatum]* - **Budget:** kein monetäres Budget (studentisches Projekt) - **Infrastruktur:** *[z. B. GitHub Free, lokale Entwicklung, Uni-Server]* @@ -196,12 +206,12 @@ Phase 5 – Abgabe & Präsentation Ein Feature gilt als **fertiggestellt**, wenn: -- [ ] Der Code ist implementiert und funktioniert lokal -- [ ] Unit Tests sind geschrieben und bestehen -- [ ] Der Code wurde von mindestens einem anderen Teammitglied reviewed (Pull Request) -- [ ] Die Änderungen sind in den `main`-Branch gemergt -- [ ] Die relevante Dokumentation wurde aktualisiert -- [ ] Das Feature wurde manuell getestet +- Der Code ist implementiert und funktioniert lokal +- Unit Tests sind geschrieben und bestehen +- Der Code wurde von mindestens einem anderen Teammitglied reviewed (Pull Request) +- Die Änderungen sind in den `main`-Branch gemergt +- Die relevante Dokumentation wurde aktualisiert +- Das Feature wurde manuell getestet --- @@ -221,13 +231,15 @@ Das Projekt gilt als erfolgreich abgeschlossen, wenn: Mit ihrer Unterschrift bestätigen alle Beteiligten, dass sie den Inhalt dieses Project Charters gelesen haben und damit einverstanden sind. -| Rolle | Name | Unterschrift | Datum | -|-------|------|--------------|-------| -| Betreuer/in | | | | -| Projektleiter:in | | | | -| Teammitglied | | | | -| Teammitglied | | | | -| Teammitglied | | | | +**Betreuer/in:** ________________________________________ Datum: ____________ + +**Projektleiter:in:** ________________________________________ Datum: ____________ + +**Teammitglied:** ________________________________________ Datum: ____________ + +**Teammitglied:** ________________________________________ Datum: ____________ + +**Teammitglied:** ________________________________________ Datum: ____________ --- @@ -236,10 +248,10 @@ Mit ihrer Unterschrift bestätigen alle Beteiligten, dass sie den Inhalt dieses ### A. Glossar | Begriff | Definition | -|---------|------------| -| MVP | Minimum Viable Product – minimale, lauffähige Version des Produkts | +|---|---| +| MVP | Minimum Viable Product - minimale, lauffähige Version des Produkts | | Spike | Zeitlich begrenzter Forschungs- / Lernaufwand zur Risikoreduktion | -| DoD | Definition of Done – Kriterien, wann ein Feature als abgeschlossen gilt | +| DoD | Definition of Done - Kriterien, wann ein Feature als abgeschlossen gilt | | *[Begriff]* | *[Definition]* | ### B. Referenzen @@ -250,7 +262,7 @@ Mit ihrer Unterschrift bestätigen alle Beteiligten, dass sie den Inhalt dieses ### C. Änderungshistorie | Version | Datum | Autor | Änderung | -|---------|-------|-------|----------| +|---|---|---|---| | 1.0 | *[Datum]* | *[Name]* | Initiale Erstellung | --- diff --git a/projetc-charter.pdf b/projetc-charter.pdf new file mode 100644 index 0000000..17caa82 Binary files /dev/null and b/projetc-charter.pdf differ