216 lines
5.6 KiB
Markdown
216 lines
5.6 KiB
Markdown
---
|
||
marp: true
|
||
html: true
|
||
paginate: true
|
||
style: |
|
||
@import url('https://fonts.googleapis.com/css2?family=Ubuntu:wght@300;400;700&display=swap');
|
||
section {
|
||
font-family: 'Ubuntu', sans-serif;
|
||
padding-top: 55px;
|
||
font-size: 30px; /* Normaler Text */
|
||
}
|
||
.columns {
|
||
display: grid;
|
||
grid-template-columns: 1fr 1fr;
|
||
gap: 2em;
|
||
}
|
||
.grau, .grau p, .grau li, .grau ol { color: #888 !important; }
|
||
section h1 {
|
||
position: absolute;
|
||
top: 0;
|
||
left: 0;
|
||
right: 0;
|
||
margin: 0;
|
||
padding: 8px 30px;
|
||
font-size: 1.0em;
|
||
background-color: #2c3e50;
|
||
color: white;
|
||
}
|
||
section::after {
|
||
content: "S." attr(data-marpit-pagination) " / " attr(data-marpit-pagination-total);
|
||
position: absolute;
|
||
bottom: 15px;
|
||
right: 30px;
|
||
font-size: 0.75em;
|
||
color: #666;
|
||
}
|
||
|
||
---
|
||
|
||
|
||
|
||
# Zentraler Projekt-Anker: Use Cases (Epics, Sollprozesse ...)
|
||
|
||
## Notwendige Inhalte:
|
||
|
||
1. Story/ Kurzbeschreibung
|
||
|
||
2. Liste aller Akteure (Stakeholder) und deren Interessen/Ziele
|
||
|
||
3. Standard-Ablauf (primäres Erfolgsszenario)
|
||
|
||
4. Beschreibung aller Ausnahme-Szenarios
|
||
|
||
---
|
||
# Titel, Story, Beispiele
|
||
|
||
## Barabheben vom Geldautomat
|
||
|
||
- Bankkunde hebt an einem Geldautomaten einen beliebigen Geldbetrag von einem Konto ab.
|
||
|
||
## Designer creates CAD Document
|
||
|
||
- Designer creates a new CAD document from a template.
|
||
|
||
## Tester führt Testcase durch
|
||
|
||
- Tester fuhrt die Schritte eines Test Case durch und bewertet.
|
||
|
||
---
|
||
# Stakeholder und Interessen, möglich Losung
|
||
|
||
## Kunde
|
||
|
||
- will jederzeit einen möglichst beliebigen Betrag komfortabel abheben
|
||
- will, dass Ort und Zeit seiner Abhebung aus dem Kontoauszug ersichtlich sind
|
||
- will, dass kein anderer von seinem Konto abheben kann
|
||
- mochte optional eine Sprache und Stückelung vorgeben
|
||
|
||
## Bank
|
||
|
||
- muss nur auszahlen, wenn der Betrag durch das Kunden-Konto gedeckt ist
|
||
- muss sicherstellen, dass der GA nicht missbräuchlich benutzt wird
|
||
- mochte mögliche Haftungsrisiken bei Missbrauch minimieren
|
||
|
||
---
|
||
# Beispiel Standardablauf fur UC: Barabheben vom Geldautomat
|
||
|
||
1. Kunde fuhrt EC — Karte in Geldautomat (GA) ein
|
||
2. GA identifiziert und validiert Karte und Kontodaten, verlangt
|
||
Transaktionsauswahl und PIN
|
||
3. Kunde wählt Barabhebung und gibt PIN ein.
|
||
4. GA validiert PIN und präsentiert gängige Beträge zur Auswahl
|
||
5. Kunde wählt Betrag
|
||
6. GA sendet Betrag und Kontodaten zur Abhebung an Hauptsystem, erhält Freigabe und neuen Kontostand
|
||
7. GA stellt EC-Karte und Geldbetrag in beliebiger Stückelung zur Verfügung und zeigt aktuellen Kontostand.
|
||
8. Kunde entnimmt Geldbetrag und Karte
|
||
9. GA archiviert Transaktionsinformationen
|
||
|
||
---
|
||
# Für jeden Schritt im Standard-Ablauf (main flow) ...
|
||
|
||
1. Kunde führt EC-Karte in Geldautomat (GA) ein:
|
||
|
||
1.1 Kunde wählt andere Sprache (X) *
|
||
|
||
2. GA identifiziert und validiert Karte und Kontodaten,
|
||
-> verlangt Transaktionsauswahl und PIN:
|
||
|
||
2.1 Karte oder Konto nicht bekannt oder Karte nicht lesbar
|
||
-> Kunde informieren, Karte zurückgeben, Vorgang abbrechen, loggen
|
||
|
||
2.2 Karte oder Konto gesperrt
|
||
-> Kunde informieren, Karte einbehalten, Vorgang abbrechen, loggen
|
||
|
||
2.3 Hauptsystem nicht erreichbar
|
||
|
||
Identifizieren von Ausnahmen, Erweiterungen (X), Optionen (X) per Brainstorming
|
||
|
||
---
|
||
# Beispiel **Ausnahmen** für UC: Barabheben — Schritte 1–4
|
||
|
||
<style scoped>section { font-size: 28px; }</style>
|
||
|
||
<div class="columns">
|
||
<div>
|
||
|
||
1. Kunde führt EC — Karte in GA ein
|
||
2. GA identifiziert und validiert Karte und Kontodaten, verlangt Transaktionsauswahl und PIN
|
||
3. Kunde wählt Barabhebung und gibt PIN ein
|
||
4. GA validiert PIN und präsentiert gängige Beträge zur Auswahl
|
||
|
||
</div>
|
||
<div class="grau">
|
||
|
||
1.1 Kunde wählt andere Sprache (X)
|
||
2.1 Karte, Konto nicht bekannt oder Karte nicht lesbar
|
||
2.2 Karte oder Konto gesperrt
|
||
2.3 Hauptsystem nicht erreichbar
|
||
3.1 Kunde wählt andere Transaktion (X)
|
||
3.2 Kunde bricht ab (X)
|
||
4.1 PIN falsch
|
||
4.2 PIN 3x falsch
|
||
|
||
</div>
|
||
</div>
|
||
|
||
---
|
||
# Beispiel **Ausnahmen** für UC: Barabheben — Schritte 5–9
|
||
|
||
<style scoped>section { font-size: 28px; }</style>
|
||
|
||
<div class="columns">
|
||
<div>
|
||
<ol start="5">
|
||
<li>Kunde wählt Betrag</li>
|
||
<li>GA sendet Betrag und Kontodaten zur Abhebung an Hauptsystem, erhält Freigabe und neuen Kontostand</li>
|
||
<li>GA stellt EC-Karte und Geldbetrag in beliebiger Stückelung zur Verfügung und zeigt aktuellen Kontostand</li>
|
||
<li>Kunde entnimmt Geldbetrag und Karte</li>
|
||
<li>GA archiviert Transaktionsinformationen</li>
|
||
</ol>
|
||
|
||
</div>
|
||
<div class="grau">
|
||
|
||
5.1 Kunde möchte spezifischen Betrag (X)
|
||
5.2 Kunde wählt spezielle Stückelung (X)
|
||
5.3 Kunde bricht ab (X)
|
||
6.1 Konto nicht gedeckt, keine Freigabe
|
||
6.2 Hauptsystem nicht erreichbar
|
||
7.1 gewünschter Betrag nicht mehr verfügbar
|
||
7.2 gewünschte Stückelung nicht vorhanden
|
||
8.1 Karte wird nicht entnommen
|
||
8.2 Geldbetrag wird nicht entnommen
|
||
9.1 Hauptsystem nicht erreichbar
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
|
||
---
|
||
# Verblüffende Neben-Effekte
|
||
|
||
- Fokus, Priorität
|
||
- Prozess-Verständnis
|
||
- Sämtliche Test Case Pfade fix und fertig
|
||
- Implizit optimiertes, einfacheres Datenmodell
|
||
- Implizite Stabilität und Performance für den Standardpfad
|
||
- Freiheiten für die Umsetzung bewahrt
|
||
|
||
die Trennung in primäres Erfolgsszenario und Ausnahmeszenario
|
||
|
||
---
|
||
# 7 Schritte zum finalen Use Case ...
|
||
|
||
C: Kunde / Project Owner
|
||
M: Dev Team Member
|
||
T: Dev Team
|
||
|
||
1. Titel /Teaser, Prosa Story (C)
|
||
|
||
2. Stakeholder / Interessen (Anwender Ziele) (T)
|
||
|
||
3. Standard Ablauf entwerfen (M)
|
||
|
||
4. Ausnahmen und Erweiterungen sammeln (T)
|
||
|
||
5. Ausnahme / Behandlung detaillieren, Schneiden in Userstories (M)
|
||
|
||
6. Schätzen BV / Schätzen Aufwand (T)
|
||
|
||
7. Review / Prüfe alle Interessen , DOR (C)
|
||
|
||
|
||
Draft liefert: genügend Details für Schätzungen (Aufwand, Termine, Budget)
|