Pfade werden in inline Code
angegeben. Die Pfade sind relativ zum Stammverzeichnis zu verstehen.
Innerhalb des Ordners /docs
befindet sich die Dokumentation der Anforderungen.
Alle Bilder im Order /docs/PNG
sind ...
- Exporte aus der
*.plantuml
-Dateien, welche in/docs/F**
Ordnern gefunden werden können - Screenshots welche im Verlauf von Cypress E2E-Tests erzeugt wurden. (Die Tests sind vom Stammverzeichnis aus in
/apps/party-time-frontend-e2e/src/e2e/
zu finden)
Sowohl die PlantUML Quellen als auch die Cypress Tests wurden im Rahmen des Praxisprojekts II von uns erstellt.
Anschauen sollten Sie sich in folgender Reihenfolge:
/docs/Anforderungen/anforderungen.pdf
-> umzusetzende Anforderungen/docs/Design-Entscheidungen/design-entscheidungen.pdf
&/docs/Glossar/glossar.pdf
-> getroffene Designentscheidungen und Begründungen (kursive Begriffe können im Glossar nachgeschlagen werden)/docs/PNG/Er-Modell/er-modell.png
-> ER-Modell der Datenbank/docs/PNG/OpenAPI-Spec/api-docs.json
-> OpenAPI-Spezifikation der REST-API
In den Ordnern /docs/PNG/F**
werden an anderer Stelle referenzierte Bilder gesammelt.
Das Sichten dieser Ordner wäre redundant.
In dem Ordner /libs
befinden sich die Dokumentation und Implementierung der Bibliotheken des Frontends.
Anschauen sollten Sie sich in folgender Reihenfolge (Sortierung nach Meilensteine):
1 - Basisfunktionalität der Plattform:
-
/libs/register
: implementiert F010/libs/register/README.pdf
: Beschreibung der Library/libs/register/src/lib/*
: Implementierung der Library -> Hier finden Sie die Implementierung der Komponenten, den State, die Services und die Routen welche in der Library/libs/register
zur Verfügung gestellt werden.
-
/libs/verify
: implementiert F014/libs/verify/README.pdf
: Beschreibung der Library/libs/verify/src/lib/*
: Implementierung der Library -> Hier finden Sie die Implementierung der Komponenten, den State, die Services und die Routen welche in der Library/libs/verify
zur Verfügung gestellt werden.
-
/libs/account
: implementiert F013, F015/libs/account/README.pdf
: Beschreibung der Library/libs/account/src/lib/*
: Implementierung der Library -> Hier finden Sie die Implementierung der Komponenten, den State, die Services und die Routen welche in der Library/libs/account
zur Verfügung gestellt werden.
-
/libs/auth
: implementiert F011, F012/libs/auth/README.pdf
: Beschreibung der Library/libs/auth/src/lib/*
: Implementierung der Library -> Hier finden Sie die Implementierung der Komponenten, den State, die Services und die Routen welche in der Library/libs/auth
zur Verfügung gestellt werden.
2 - Eventfunktionalität (Veranstalter):
/libs/event
: implementiert F001, F002, F003, F004, F005, F006, F016/libs/event/README.pdf
: Beschreibung der Library/libs/event/src/lib/*
: Implementierung der Library -> Hier finden Sie die Implementierung der Komponenten, den State, die Services und die Routen welche in der Library/libs/event
zur Verfügung gestellt werden.
3 - Eventfunktionalität (eingeladener Nutzer):
/libs/invitation
: implementiert F008, F009/libs/invitation/README.pdf
: Beschreibung der Library/libs/invitation/src/lib/*
: Implementierung der Library -> Hier finden Sie die Implementierung der Komponenten, den State, die Services und die Routen welche in der Library/libs/invitation
zur Verfügung gestellt werden.
4 - Eventfunktionalität (Teilnehmer eines Events):
/libs/event
: implementiert F018/libs/event/README.pdf
: Beschreibung der Library/libs/event/src/lib/*
: Implementierung der Library -> Hier finden Sie die Implementierung der Komponenten, den State, die Services und die Routen welche in der Library/libs/event
zur Verfügung gestellt werden.
-
/apps/party-time-frontend
: Die Libraries werden dynamisch an den benötigten Stellen in die Anwendungen eingebunden. Die Anwendung party-time-frontend ist das eigentliche Frontend./apps/party-time-frontend/src/app/app.routes.*
: Haupt-Routen der Anwendung/apps/party-time-frontend/src/app/app.component.*
: Hauptkomponente der Anwendung/apps/party-time-frontend/src/main/
: Startpunkt der Anwendung/apps/party-time-frontend/src/styles.*
: Styling der Anwendung/apps/party-time-frontend/src/assets/*
: Statische Bilder oder Icons der Anwendung/apps/party-time-frontend/src/index.html
: Root-HTML der Anwendung/apps/party-time-frontend/src/favicon.ico
: Favicon der Anwendung
-
/apps/party-time-frontend-e2e
: Testet die Anwendung auf der Oberfläche/apps/party-time-frontend-e2e/src/fixtures/*
: Statische Daten für die E2E-Tests/apps/party-time-frontend-e2e/src/support/*
: Hilfsfunktionen für die E2E-Tests/apps/party-time-frontend-e2e/src/e2e/*
: Implementierung der E2E-Tests
/package.json
-> listet die NPM Pakete auf, die das Projekt benötigt/nx.json
-> Konfiguration für den NX Workspace/tsconfig.base.json
-> Konfiguration für den Typescript Compiler/tailwind.config.ts
-> Konfiguration für TailwindCSS
Folgende Anmerkungen sind zu beachten:
- F007 (Einladung erhalten), F017 (Benachrichtigung zum Event), F019 (Kalendereintrag exportieren) haben keinen Frontend-Teil. Die entsprechenden Ablauf- und Sequenzdiagramme werden der Vollständigkeit halber trotzdem mit ausgeliefert in
/docs/PNG/F07/*
/docs/PNG/F17/*
/docs/PNG/F19/*
/libs/event
implementiert Anforderungen aus dem Meilenstein 2 - Eventfunktionalität (Veranstalter) & 4 - Eventfunktionalität (Teilnehmer eines Events)- jede Datei die sich einer Anforderung zuordnen lässt, ist mit der entsprechenden Anforderungsnummer versehen
- .html ->
<!-- implements FXXX -->
- .ts ->
// implements FXXX
- .html ->
- Folgende Daten, welche sich keinen Anforderungen direkt zuordnen lassen, haben weder Anforderungsnummer noch Kommentar:
- generierte Dateien
- config Dateien
- Basisdaten für die Anwendungen
- Testdaten für die Anwendungen
- Daten für die Dokumentation
- Model Klassen
- Interfaces
- Typen
- Code-nahe Dokumentation / Datenbankmodell ist in englisch gehalten
- Diagramme welche sich auf die Anforderungen beziehen sind in deutsch gehalten