Merge pull request #10 from makes-hacks-hip/fixed_workflows_and_confirmations
Fix workflows and extend data model
This commit is contained in:
commit
2196ce7b1e
1 changed files with 65 additions and 31 deletions
|
|
@ -26,6 +26,9 @@ Ein Organisator ist Mitglied des Repair-Cafés das die Termine mit den Gästen o
|
||||||
- [ ] Als Gast möchte ich mein angemeldetes Gerät und dessen Status einsehen können. (A4)
|
- [ ] Als Gast möchte ich mein angemeldetes Gerät und dessen Status einsehen können. (A4)
|
||||||
- [ ] Als Gast möchte ich Rückfragen zum Gerät empfangen und diese beantworten können. (A5)
|
- [ ] Als Gast möchte ich Rückfragen zum Gerät empfangen und diese beantworten können. (A5)
|
||||||
- [ ] Als Gast möchte ich ein Gerät für eine Folgereparatur anmelden können. (A6)
|
- [ ] Als Gast möchte ich ein Gerät für eine Folgereparatur anmelden können. (A6)
|
||||||
|
- [ ] Als Gast möchte ich meine Daten ansehen können. (A21)
|
||||||
|
- [ ] Als Gast möchte ich meine Daten löschen können. (A22)
|
||||||
|
- [ ] Als Gast möchte ich eine Geräteanmeldung löschen können. (A23)
|
||||||
|
|
||||||
### Reparateur
|
### Reparateur
|
||||||
|
|
||||||
|
|
@ -37,6 +40,7 @@ Ein Organisator ist Mitglied des Repair-Cafés das die Termine mit den Gästen o
|
||||||
- [ ] Als Reparateur möchte ich eine Benachrichtigung bekommen wenn mir ein Gerät zugeordnet wird. (A12)
|
- [ ] Als Reparateur möchte ich eine Benachrichtigung bekommen wenn mir ein Gerät zugeordnet wird. (A12)
|
||||||
- [ ] Als Reparateur möchte ich mich für ein Repair-Café anmelden können. (A13)
|
- [ ] Als Reparateur möchte ich mich für ein Repair-Café anmelden können. (A13)
|
||||||
- [ ] Als Reparateur möchte ich mich für ein Repair-Café abmelden können. (A14)
|
- [ ] Als Reparateur möchte ich mich für ein Repair-Café abmelden können. (A14)
|
||||||
|
- [ ] Als Reparateur möchte ich benachrichtigt werden wenn ein Gast eine mir zugeordnete Geräteanmeldung löscht. (A25)
|
||||||
|
|
||||||
### Organisator
|
### Organisator
|
||||||
|
|
||||||
|
|
@ -46,6 +50,7 @@ Ein Organisator ist Mitglied des Repair-Cafés das die Termine mit den Gästen o
|
||||||
- [ ] Als Organisator möchte ich ein Geräte ablehnen können. (A18)
|
- [ ] Als Organisator möchte ich ein Geräte ablehnen können. (A18)
|
||||||
- [ ] Als Organisator möchte ich ein Geräte zu einem Termin zuordnen können. (A19)
|
- [ ] Als Organisator möchte ich ein Geräte zu einem Termin zuordnen können. (A19)
|
||||||
- [ ] Als Organisator möchte ich einen Reparateur zu einem Termin zuordnen können. (A20)
|
- [ ] Als Organisator möchte ich einen Reparateur zu einem Termin zuordnen können. (A20)
|
||||||
|
- [ ] Als Organisator möchte ich benachrichtigt werden wenn ein Gast eine Geräteanmeldung löscht. (A24)
|
||||||
|
|
||||||
## Daten
|
## Daten
|
||||||
|
|
||||||
|
|
@ -96,6 +101,7 @@ Attribute:
|
||||||
- Telefon: Festnetz oder Mobilnummer des Gastes
|
- Telefon: Festnetz oder Mobilnummer des Gastes
|
||||||
- Wohnort: Wohnort des Gastes
|
- Wohnort: Wohnort des Gastes
|
||||||
- Mail: eMail-Adresse des Gastes für Benachrichtigungen
|
- Mail: eMail-Adresse des Gastes für Benachrichtigungen
|
||||||
|
- Bestätigt: Ein boolesches Flag das anzeigt ob der Gast seine eMail-Adresse bestätigt hat.
|
||||||
|
|
||||||
Technische Attribute:
|
Technische Attribute:
|
||||||
|
|
||||||
|
|
@ -110,16 +116,13 @@ Attribute:
|
||||||
- Gerät: Bezeichnung des Geräts
|
- Gerät: Bezeichnung des Geräts
|
||||||
- Fehler: Beschreibung des Defekts
|
- Fehler: Beschreibung des Defekts
|
||||||
- Folgetermin: Boolesches Flag das anzeigt ob es sich um einen Folgetermin handelt.
|
- Folgetermin: Boolesches Flag das anzeigt ob es sich um einen Folgetermin handelt.
|
||||||
|
- Bestätigt: Ein boolesches Flag das anzeigt ob der Gast die Greäteanmeldung bestätigt hat.
|
||||||
|
|
||||||
Technische Attribute:
|
Technische Attribute:
|
||||||
|
|
||||||
- Identifier: SHA256 Hash aus Gerät + Gast + Timestamp
|
- Identifier: SHA256 Hash aus Gerät + Gast + Timestamp
|
||||||
- GastId: Referenz zum Gast der das Gerät besitzt
|
- GastId: Referenz zum Gast der das Gerät besitzt
|
||||||
|
|
||||||
Annahmen:
|
|
||||||
|
|
||||||
- Für einen Folgetermin werden alle Daten neu eingegeben. Eine Folgereparatur auf Basis der ersten Anmeldung kann später umgesetzt werden.
|
|
||||||
|
|
||||||
### Termin
|
### Termin
|
||||||
|
|
||||||
Ein Termin ist eine Zuordnung von einem Gerät zu einem Zeitslot der Repair-Café Veranstaltung und einem Reparateur.
|
Ein Termin ist eine Zuordnung von einem Gerät zu einem Zeitslot der Repair-Café Veranstaltung und einem Reparateur.
|
||||||
|
|
@ -128,7 +131,7 @@ Ein Termin ist bestätigt, wenn eine Organisator eine Termineinladung gesendet h
|
||||||
Attribute:
|
Attribute:
|
||||||
|
|
||||||
- Uhrzeit: Uhrzeit des Termins
|
- Uhrzeit: Uhrzeit des Termins
|
||||||
- Betätigt: Boolesches Flag. True wenn eine Einladung gesendet und bestätigt wurde.
|
- Betätigt: Boolesches Flag. True wenn die Einladung vom Gast bestätigt wurde.
|
||||||
|
|
||||||
Technische Attribute:
|
Technische Attribute:
|
||||||
|
|
||||||
|
|
@ -151,6 +154,7 @@ Technische Attribute:
|
||||||
- OrganisatorId: Referenz zum Organisator oder NULL
|
- OrganisatorId: Referenz zum Organisator oder NULL
|
||||||
- ReparateurId: Referenz zum Reparateur oder NULL
|
- ReparateurId: Referenz zum Reparateur oder NULL
|
||||||
- GerätId: Referenz zum Gerät
|
- GerätId: Referenz zum Gerät
|
||||||
|
- Beantwortet: Boolesches Flag. True wenn die Einladung vom Gast bestätigt wurde.
|
||||||
|
|
||||||
### Kandidat
|
### Kandidat
|
||||||
|
|
||||||
|
|
@ -158,7 +162,7 @@ Ein Kandidat ist ein Geräte ohne festen Termin.
|
||||||
Diese Geräte werden von den Gästen zu Beginn des Repair-Café gebracht und am Ende abgeholt.
|
Diese Geräte werden von den Gästen zu Beginn des Repair-Café gebracht und am Ende abgeholt.
|
||||||
Falls ein Reparateur Zeit hat kann er eines dieser Geräte reparieren.
|
Falls ein Reparateur Zeit hat kann er eines dieser Geräte reparieren.
|
||||||
|
|
||||||
- Betätigt: Boolesches Flag. True wenn eine Einladung gesendet und bestätigt wurde.
|
- Betätigt: Boolesches Flag. True wenn die Einladung vom Gast bestätigt wurde.
|
||||||
|
|
||||||
Technische Attribute:
|
Technische Attribute:
|
||||||
|
|
||||||
|
|
@ -170,32 +174,70 @@ Technische Attribute:
|
||||||
|
|
||||||
### Landing Page: Repair-Cafés (S1)
|
### Landing Page: Repair-Cafés (S1)
|
||||||
|
|
||||||
Liste der Repair-Café Termine
|
Diese Seite zeigt eine Liste der zukünfigten Repair-Café Termine.
|
||||||
|
Sie enthält pro Repair-Café einen Knopf um ein Gerät für dieses Repair-Café anzumelden.
|
||||||
|
|
||||||
|
#### Sicherheit
|
||||||
|
|
||||||
|
Die Seite ist ohne Zugangsbeschränkung oder Anmeldung erreichbar.
|
||||||
|
|
||||||
### Gerät anmelden (S2)
|
### Gerät anmelden (S2)
|
||||||
|
|
||||||
Das Formular zum anmelden der Geräte hat die Felder `eMail-Adresse`, `Gerätebezeichnung`, `Fehlerbeschreibung`, eine Kontrollkästchen `Folgetermin` und einen Knopf `Absenden` zum senden des Formulars.
|
Diese Seite zeigt das Formular zum anmelden der Geräte.
|
||||||
|
Das Formular hat die Felder `eMail-Adresse`, `Gerätebezeichnung`, `Fehlerbeschreibung`, eine Kontrollkästchen `Folgetermin` und einen Knopf `Absenden` zum senden des Formulars.
|
||||||
|
|
||||||
|
Das Repair-Café zu dem die Anmeldung gehört ist über eine ID in der URL der Seite festgelegt.
|
||||||
|
|
||||||
|
#### Sicherheit
|
||||||
|
|
||||||
|
Die Seite ist ohne Zugangsbeschränkung oder Anmeldung erreichbar.
|
||||||
|
|
||||||
### Gast anmelden (S3)
|
### Gast anmelden (S3)
|
||||||
|
|
||||||
Das Formular zum anmelden eines neuen Gastes hat die Felder `Name`, `Telefon`, `Wohnort` und einen Knopf `Absenden` zum senden des Formulars.
|
Diese Seite zeigt das Formular zum anmelden eines neuen Gastes.
|
||||||
|
Das Formular hat die Felder `Name`, `Telefon`, `Wohnort` und einen Knopf `Absenden` zum senden des Formulars.
|
||||||
|
|
||||||
### Anmeldebestätigung (S4)
|
Die eMail-Adresse und das Gerät zu dem die Gast-Kontaktdaten gehören ist über IDs in der URL der Seite festgelegt.
|
||||||
|
|
||||||
Die Anmeldebestätigung zeigt die Geräte und Gast Daten erneut an, zusammen mit der Information dass das Gerät angelegt.
|
#### Sicherheit
|
||||||
Weiter enthält die Ansicht einen Link zur Geräte Detailseite und einen Link zur Gast Detailseite.
|
|
||||||
|
Die Seite ist ohne Zugangsbeschränkung oder Anmeldung erreichbar.
|
||||||
|
|
||||||
|
### Bestätigung gesendet (S4)
|
||||||
|
|
||||||
|
Die Seite Bestätigung gesendet zeigt einen Hinweis dass eine eMail gesendet wurde und die Anmeldung des Gerätes durch einen Klick auf einen Link in der eMail bestätigt werden muss.
|
||||||
|
|
||||||
|
Die eMail-Bestätigung wird während des Aufrufs dieser Seite gesendet.
|
||||||
|
|
||||||
|
Das Repair-Café, der Gast und das Gerät sind über IDs in der URL der Seite festgelegt.
|
||||||
|
|
||||||
|
#### Sicherheit
|
||||||
|
|
||||||
|
Die Seite ist ohne Zugangsbeschränkung oder Anmeldung erreichbar.
|
||||||
|
|
||||||
### Geräte Detailseite (S5)
|
### Geräte Detailseite (S5)
|
||||||
|
|
||||||
Die Geräte Detailseite hat die Felder `Gerätebezeichnung`, `Fehlerbeschreibung` und eine Kontrollkästchen `Folgetermin` die mit den Angaben des Gastes ausgefüllt sind.
|
Die Geräte Detailseite hat die Felder `Gerätebezeichnung`, `Fehlerbeschreibung` und eine Kontrollkästchen `Folgetermin` die mit den Angaben des Gastes ausgefüllt sind.
|
||||||
Weiter enthält die Seite einen Knopf `Aktualisieren` der das Formular absendet und die Daten aktualisiert und einen Link zur Detailseite des Gastes.
|
Weiter enthält die Seite einen Knopf `Aktualisieren` der das Formular absendet und die Daten aktualisiert und einen Link zur Detailseite des Gastes.
|
||||||
|
|
||||||
|
Das Gerät ist über IDs in der URL der Seite festgelegt.
|
||||||
|
|
||||||
|
#### Sicherheit
|
||||||
|
|
||||||
|
Die Seite ist ohne Zugangsbeschränkung oder Anmeldung erreichbar.
|
||||||
|
|
||||||
### Gast Detailseite (S6)
|
### Gast Detailseite (S6)
|
||||||
|
|
||||||
Die Gast Detailseite hat die Felder `Name`, `eMail`, `Telefon` und `Wohnort` die mit den Angaben des Gastes ausgefüllt sind.
|
Die Gast Detailseite hat die Felder `Name`, `eMail`, `Telefon` und `Wohnort` die mit den Angaben des Gastes ausgefüllt sind.
|
||||||
Weiter enthält die Seite einen Knopf `Aktualisieren` der das Formular absendet.
|
Weiter enthält die Seite einen Knopf `Aktualisieren` der das Formular absendet.
|
||||||
Die Ansicht enthält auch eine Liste mit Links zu allen Geräten die der Gast angemeldet hat.
|
Die Ansicht enthält auch eine Liste mit Links zu allen Geräten die der Gast angemeldet hat.
|
||||||
|
|
||||||
|
Der Gast ist über IDs in der URL der Seite festgelegt.
|
||||||
|
|
||||||
|
#### Sicherheit
|
||||||
|
|
||||||
|
Die Seite enthält persönliche Daten und ist nur nach Anmeldung erreichbar.
|
||||||
|
|
||||||
## Abläufe
|
## Abläufe
|
||||||
|
|
||||||
### Anmeldung eines defekten Gerätes
|
### Anmeldung eines defekten Gerätes
|
||||||
|
|
@ -204,25 +246,17 @@ Die Ansicht enthält auch eine Liste mit Links zu allen Geräten die der Gast an
|
||||||
|
|
||||||
Als neuer Gast der ein defekten Geräte anmelden möchte,
|
Als neuer Gast der ein defekten Geräte anmelden möchte,
|
||||||
|
|
||||||
- gehe ich auf die Seite (S1) der Repair-Café Termine.
|
- gehe ich auf die Seite (S1) der Repair-Café Termine. Dort klicke ich auf `Gerät anmelden` bei dem richtigen Repair-Café Termin. Dieser Klick bringt mich auf die nächste Seite.
|
||||||
- dort klicke ich auf `Gerät anmelden` bei dem richtigen Repair-Café Termin.
|
- Die nächste Seite (S2) enthält ein Formular mit den Feldern `eMail-Adresse`, `Gerätebezeichnung` und `Fehlerbeschreibung` und eine Kontrollkästchen `Folgetermin`. Nachdem ich die Felder ausgefüllt habe klicke auf auf `Absenden`. Dieser Klick bringt mich auf die nächste Seite.
|
||||||
- Der Link bringt mich auf eine neue Seite (S2) mit einem Formular.
|
- Die nächste Seite (S3) enthält ein Formular mit den Feldern `Name`, `Telefon` und `Wohnort`. Nachdem ich die Felder ausgefüllt habe klicke auf auf `Absenden`. Dieser Klick bringt mich auf die nächste Seite.
|
||||||
- Das Formular hat die Felder `eMail-Adresse`, `Gerätebezeichnung` und `Fehlerbeschreibung` und eine Kontrollkästchen `Folgetermin`.
|
- Die nächste Seite (S4) weißt mich darauf hin dass eine eMail gesendet wurde und ich die Anmeldung über einen Klick in der eMail bestätigen muss.
|
||||||
- Nachdem ich die Felder ausgefüllt habe klicke auf auf `Absenden`.
|
- In meinem eMail Posteingang finde ich eine Bestätigung der Geräteanmeldung die ebenfalls einen Link zur `Geräte Detailseite` (S5) und einen Link zu meinen persönlichen Daten (S6) enthält.
|
||||||
- Der Klick auf Absenden bringt mich zu einer neuen Seite (S3) mit einem Formular.
|
|
||||||
- Das Formular hat die Felder `Name`, `Telefon` und `Wohnort`.
|
|
||||||
- Nachdem ich die Felder ausgefüllt habe klicke auf auf `Absenden`.
|
|
||||||
- Der Link bringt mich auf eine neue Seite (S4) die bestätigt dass mein Gerät angemeldet wurde, die Geräte Daten und meine Daten zur Bestätigung anzeigt und einen Link zu einer `Geräte Detailseite` (S4) und einen Link zu einer `Gast Detailseite` (S6) hat.
|
|
||||||
- In meinem eMail Posteingang finde ich eine Bestätigung der Geräteanmeldung die ebenfalls den Link zur `Geräte Detailseite` und den Link zur `Gast Detailseite` enthält.
|
|
||||||
|
|
||||||
#### Variante: Existierender Gast
|
#### Variante: Bekannter Gast (existierende eMail Adresse)
|
||||||
|
|
||||||
Als neuer Gast der ein defekten Geräte anmelden möchte,
|
Als bekannter Gast der ein defekten Geräte anmelden möchte,
|
||||||
|
|
||||||
- gehe ich auf die Seite (S1) der Repair-Café Termine.
|
- gehe ich auf die Seite (S1) der Repair-Café Termine. Dort klicke ich auf `Gerät anmelden` bei dem richtigen Repair-Café Termin. Dieser Klick bringt mich auf die nächste Seite.
|
||||||
- dort klicke ich auf `Gerät anmelden` bei dem richtigen Repair-Café Termin.
|
- Die nächste Seite (S2) enthält ein Formular mit den Feldern `eMail-Adresse`, `Gerätebezeichnung` und `Fehlerbeschreibung` und eine Kontrollkästchen `Folgetermin`. Nachdem ich die Felder ausgefüllt habe klicke auf auf `Absenden`. Dieser Klick bringt mich auf die nächste Seite.
|
||||||
- Der Link bringt mich auf eine neue Seite (S2) mit einem Formular.
|
- Die nächste Seite (S4) weißt mich darauf hin dass eine eMail gesendet wurde und ich die Anmeldung über einen Klick in der eMail bestätigen muss.
|
||||||
- Das Formular hat die Felder `eMail-Adresse`, `Gerätebezeichnung` und `Fehlerbeschreibung` und eine Kontrollkästchen `Folgetermin`.
|
- In meinem eMail Posteingang finde ich eine Bestätigung der Geräteanmeldung die ebenfalls einen Link zur `Geräte Detailseite` (S5) und einen Link zu meinen persönlichen Daten (S6) enthält.
|
||||||
- Nachdem ich die Felder ausgefüllt habe klicke auf auf `Absenden`.
|
|
||||||
- Der Link bringt mich auf eine neue Seite (S4) die bestätigt dass mein Gerät angemeldet wurde, die Geräte Daten und meine Daten zur Bestätigung anzeigt und einen Link zu einer `Geräte Detailseite` (S4) und einen Link zu einer `Gast Detailseite` (S6) hat.
|
|
||||||
- In meinem eMail Posteingang finde ich eine Bestätigung der Geräteanmeldung die ebenfalls den Link zur `Geräte Detailseite` und den Link zur `Gast Detailseite` enthält.
|
|
||||||
|
|
|
||||||
Reference in a new issue