Software Engineering 1 - Klausur Flashcards
Nenne die 3-Schichten-Architektur von oben nach unten!
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
GUI/Benutzeroberfläche | Applikationslogik | Persistenzschicht
Nenne die Aufgabe der GUI/Benutzeroberfläche innerhalb der 3-Schichten-Architektur.
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
Die GUI/Benutzeroberfläche ist der Teil auf dem der Anwender agiert. Jener kapselt sich vom Anwendungskern ab.
Nenne die Aufgabe der Applikationslogik innerhalb der 3-Schichten-Architektur.
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
In der Applikationslogik liegt die gesamte fachliche Logik des Systems.
Nenne die Aufgabe der Persistenzschicht innerhalb der 3-Schichten-Architektur.
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
In der Persistenzschicht liegt der technische Teil des Systems, z.B. die Datenbank.
In welcher Schicht der 3-Schichten-Architektur liegen die fachlichen Komponenten.
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
Die fachlichen Komponenten liegen in der Applikationslogik, also der 2. Schicht von oben.
Was sind die Vorteile der Architektur in ein 3-Schichten-Modell?
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
-Die flexible Austauschbarkeit: Es ist somit z.B. möglich, dass die GUI einfach ausgetauscht wird, da diese unabhängig von der Applikationslogik oder der Pesistenzschicht ist.
Was testet ein Integrationstest?
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
Ein Integrationstest testet das Zusammenspiel von verschiedenen Komponenten.
Welche typischen Phasen/Aktivitäten gibt es in einem Softwareprojekt? Erläutern Sie die Phasen und die Tätigkeit kurz.
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
- Analyse/Spezifikation -> Planung, Ist-Analyse, Soll-Analyse, Verhandlung mit dem Kunden, Lastenheft, Pflichtenheft
- Entwurf -> (Wie soll die Architektur/Lösung konzipiert werden?)
- Implementation -> Implementation/Programmierung des Projektes
- Test/Debugg -> Test aller Arten, Fehlerbehebung
- Installation -> Installation/Einführung des Systems beim Kunden
- Wartung -> Wartung des Systems
Nennen Sie drei Möglichkeiten, wie in der Analysephase eines Projektes Kundenanforderungen durch einen Analysten herausgefunden werden können.
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
- gezieltes Nachfragen nach Wünschen des Kunden
- Workshops mit dem Kunden(Stakeholdern)
- Ist-Analyse
Beschreiben Sie typische Aufgaben einer Fassade in der Quasar-Standardarchitektur.
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
??????????????
Warum entstehen gerade in der Softwareentwicklung so schnell Bugs/Fehler?
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
- Software kann man nicht direkt wahrnehmen
- Komplexitäten sind schwer einzuschätzen
- Kopien und Originale sind völlig gleich (Konsistenzprobleme)
- Es gibt keine natürliche Lokalität (Fehlereingrenzung/Lokalisierung schwer)
- Die Herstellung braucht keine Rohstoffe oder physikalische Werkzeuge und die Werkstoffe (Sprachen) implizieren keine sinvollen Strukturen
Was ist das Whiscy-Syndrom?
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
-Steht für Why Isn’t Sam coding yet und verkörpert eine negative Erwartungshaltung in der Softwareentwicklung, welche dazu führt, dass Entwickler immer Coden sollten, immer alles im Kopf haben sollten und Prototypen zu fertigen Produkten umstrukturiert werden.
Nennen Sie 10 klassiche Projektfehler!
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
- Komplexität und Kosten wurden unterschätzt
- Fehlende Kontrolle über Anforderungen oder Umfang!!!!
- Fehlende Kommunikation!!!
- Kunden/Stakeholder nicht ausreichend eingebunden!!!
- Kulturelle Probleme nicht adressiert
- Schlechte Projektmanagement
- Schlechte Ausführungsqualität!!!
- Fehlendes Risikomanagement
- Nichtfunktionale Anforderungen nicht adressiert
- Schlecht geplante Einführung
Was ist ein Stakeholder?
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
-Interessensgruppen
Nennen Sie die Aktivitätsphasen und Tätigkeiten während eines Projektes!
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
- Analyse/Spezifikation(Requiremens) (Was soll gemacht werden?)
- Entwurf/Design (Wie? Konzeption der Lösung/Architektur)
- Implementation (Übertragung des Entwurfes in ablauffähigen Codes)
- Integration/Tests (Zusammenbau der Komponenten und Gesamttests)
- Installation/Wartung (Schulung/Fehlerbehebung/Weiterentwicklung)
Erklären Sie den Wasserfallansatz entgegen den iterativen Ansatz in der Projektentwicklung.
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
…..
Beschreiben Sie den Verlauf/Schritte der Wasserfallmethode.
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
- Initiales Konzept
- Die Aufgaben herausarbeiten
- Requirements schreiben
- Vollständiges Requirement-Dokument
- Code entwickeln
- Fertiges Produkt
Beschreiben Sie den Verlauf/Schritte der iterativen Entiwicklung.
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
1.Initiales Konzept
2.Vorläufige Geschäftsanalyse
3. Absprache mit dem Produkt Owner
4.User Stories schreiben
5.Partielles Produkt/Feature entwickeln
6. Feedback einholen
7. User Stories schreiben
….
8. Fertiges Produkt
Was ist das Problem an Wasserfallprojekten?
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
- Alle Entscheidungen werden am Anfang getroffen.
- Komplexitäten und Kosten schwer abschätzbar.
- Oft entstehen am Ende die Probleme und teuren Änderungen
- Anforderungen an das Produkt ergeben sich erst im Verlauf
- Eventuell sind manche Dinge nicht umsetzbar, was erst spät erkannt wird.
Was ist der Vorteil an iterativen Projekten?
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
- Durch Zwischenstände/Features können neue Ideen enstehen
- Durch Zwischenstände/Featues können Meinungen und Ideen geändert werden.
Was ist das Problem an iterativen Projekten?
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
-Für manche Projekte ist das Verfahren ungünstig und nicht zu empfehlen.
Was ist der Vorteil an Wasserfallprojekten?
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
- Projekte die sehr klar und linear abschätzbar sind können damit schneller entstehen. Z.b. konstante mathematische Berechnungen brauchen kaum Zwischenstops.
- Wenn man das Produkt schon im vornherein sehr gut kennt ist es einfacher.
Was für ein Problem existiert dabei die Anforderungen an ein Produkt zu erfassen?
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
-Ein Kommunikationsproblem, da aus Business und Technischer Sicht die Dinge oft sehr verschieden betrachtet werden. Es kommt leicht dazu, dass man aneinander vorbei redet.
Was ist über Requirements/Anforderungen zu wissen?
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
- Sie müssen nicht unbedingt ausgeschrieben werden, aber sie müssen den Projektteilnehmern bekannt sein.
- Der Kunde gibt oft nicht die richtige Antwort.
- Requirements entstehen nicht durch Zufall, sondern aus Prozessen, der die Entwicklung bedingt.
- Unsere Aufgabe ist es die Art, wie der Benutzer über Probleme denkt zu ändern.
Wozu nutzt man Personas?
“Analyse-Themen”
- Personas repräsentieren Nutzer des Systems
- Sie sind fiktionale Charaktere mit Namen, Bild, Charakteristiken, Einstellungen und Zielen
- Proto-Personas sind ein Best-Guess wer einmal unser Produkt nutzen möchte und warum
Welche Details sollte eine Proto-Persona beinhalten?
“Analyse-Themen”
- Personendaten
- Beruf
- Hobby
- Charakter
- Lebensziele
Wozu benutzt man das Value Proposition Canvas?
“Analyse-Themen”
- Um das richtige Produkt für den Kunden zu finden
- Um die Probleme und Bedürfnisse einer Zielgruppe zu finden
- Um den Wert und Nutzen für Kunden zu schöpfen
- Analyse der Zielgruppen
Wie benutzt man das Value Proposition Canvas? (Bestandteile)
“Analyse-Themen”
(Grüner Kasten)
- Product & Services
- Gain Creators
- Pain Relievers
(Roter Kreis)
- Gains
- Pains
- Customer Jobs
Welche Fragen sind beim Value Proposition Canvas bei den Customer Jobs (roter Kreis) entscheidend?
“Analyse-Themen”
- Welche funktionalen Jobs will der Kunde erledigen?(Probleme lösen)
- Welche sozialen Jobs will der Kunde erledigen? (Macht, Status,Nachhaltigkeit)
- Welche emotionalen Jobs will der Kunde erledigen? (Sicherheit, Wohlgefühl)
Welche Fragen sind beim Value Proposition Canvas bei den Pains (roter Kreis) entscheidend?
“Analyse-Themen”
- Was kostet zu viel/dauert zu lange?
- Was sind die Hauptprobleme?
- Wo gibt es fehlende Funktionen?
- Welche Risiken fürchtet der Kunde?
Welche Fragen sind beim Value Proposition Canvas bei den Gains (roter Kreis) entscheidend?
“Analyse-Themen”
- Wo möchte der Kunde Vorteile? (Zeit,Geld, Aufwand)
- Wie kann das Produkt ein Kundenproblem lösen?
- Wonach suchen die Kunden?
- Welche bestehenden Lösungen gibt es und mag er?
Welche Fragen sind beim Value Proposition Canvas bei den Product&Services (grüner Kasten) entscheidend?
“Analyse-Themen”
- Welche Produkte biete ich an, die Aufgaben des Kunden lösen?
- Welche Produkte biete ich an, die Bedürfnisse des Kunden befriedigen?
- Welche Produkte helfen dem Kunden als Käufer?
Welche Fragen sind beim Value Proposition Canvas bei den Pain Relievers (grüner Kasten) entscheidend?
“Analyse-Themen”
- Wie setze ich den Schwierigkeiten ein Ende?
- Wie sind meine Lösung besser als bestehende?
- Wie vermeide ich negative Konsequenzen?
Welche Fragen sind beim Value Proposition Canvas bei den Gain Creators (grüner Kasten) entscheidend?
“Analyse-Themen”
- Wie erleichtere ich das Leben des Kunden?
- Womit erfülle ich Kundenbedürfnisse?
- Wie kann ich das bieten was der Kunde will?
Warum ist es wichtig alle Zielgruppen zu kennen?
“Analyse-Themen”
-Weil man sonst keine gute Software entwickeln kann
-Um das Produkt wirklich den Anforderungen der verschiedenen Nutzer anpassen zu können
(-Dazu können User Roles genutzt werden)
Was ist eine User Role?
“Analyse-Themen”
-Eine Nutzerrolle/User Role ist eine Menge von Attributen, die eine Population von Nutzern und ihre Beabsichtigten Interaktionen mit dem System beschreibt.
Was sind die Schritte wie User Roles gebildet werden?
“Analyse-Themen”
- Brainstorming für initiale Menge von User Roles
- Rollen organisieren/ordnen(Gruppieren)
- Rollen konsolidieren(Unterordnen/Einreihen)
- Rollen verfeinern(Rollenverhalten und Eigenschaften mit Text beschreiben)
Wie können von den Nutzerrollen/User Roles nun Anforderungen abgeleitet werden?
“Analyse-Themen”
-Durch die Verwendung von User Stories
Was ist eine User Story?
“Analyse-Themen”
-Eine User Story stellt eine Anforderung dar.
Nennen Sie ein Beispiel für eine User Story.
“Analyse-Themen”
-“Als Benutzer kann ich meine Bilder in meinem Profil hochladen”
Worauf muss beim Erstellen einer User Story vorhanden sein?
“Analyse-Themen”
- Die Rolle muss vorhanden sein
- Und das Ziel/Wunsch muss vorhanden sein
- Keine Technischen/Fachlichen Beschreibungen(In Java geschrieben)
Was sollen User Stories für den Kunden bringen?
“Analyse-Themen”
-Eine User Story soll einen Wert für den Nutzer besitzen.
Nennen Sie 3 gute User Stories!
“Analyse-Themen”
- Als Gruppenmoderator kann ich die Kanalbeschreibung verwalten.
- Als Nutzer kann ich meinen Verlauf löschen.
- Als Nutzer kann ich neue Angebote inserieren.
Fehlen bei den User Stories nicht die Details damit ein Developer damit arbeiten kann? Was macht man mit offenen Fragen?
“Analyse-Themen”
-Nein, denn durch Story-Splitting können weitere Epics abgeleitet werden und neue User Stories geschrieben werden.
Wie nennt man eine “Große” User Story?
“Analyse-Themen”
-Epic (Was möchte der Nutzer grob machen?)
Nennen Sie ein Beispiel für ein Epic und dessen Aufteilung in User Stories.
“Analyse-Themen”
- Epic: Als Benutzer kann ich nach Inseraten suchen.
- User Story: Als Benutzer kann ich nach dem Preis von Inseraten sortieren.
- User Story: Als Benutzer kann ich die Bewertungen jedes Händlers sehen, der Angebote inseriert hat.
Worauf ist bei Epics zu achten?
“Analyse-Themen”
-Das sie nicht zu fein granuliert erstellt werden.
Beispiel:
Epic: Als Benutzer kann ich nach Inseraten suchen.
-User Story: Als Benutzer kann ich den Titel des Inserats sehen
-User Story: Als Benutzer kann ich die Beschreibung des Inserats sehen
-User Story: Als Benutzer kann ich den Preis des Inserats sehen
Warum sollte man User Stories verwenden?
“Analyse-Themen”
- User Stories sind für die Kommunikation und nicht zum schriftlichen Festhalten
- User Stories sind für Benutzer und Entwickler verständlich
- User Stories haben richtige Planungsgrößen
- User Stories sind gut für iterative Entwicklung
- User Stories leiten dazu Details bis zu einem Punkt zu schieben bei dem klar ist, dass man es wirklich benötigt.
Was sind traditionelle Anforderungserfassungen?
“Analyse-Themen”
-Der IEEE-Standard 830-1998
Wie teilen sich Anforderungen in der traditionellen Anforderungserfassungen auf?
“Analyse-Themen”
-Funktionale Anforderungen
(Das System soll eine Liste von Profilen anzeigen können)
-Nichtfunktionale Anforderungen/Qualitäsanforderungen
(Das System soll die Suchergebnisse innerhalb von 2 Sekunden anzeigen)
Anhand welcher Schritte findet man Anforderungen/Requirements?
“Analyse-Themen”
- User Roles und Personas
- Epics ableiten(Ziele der Personas/Rollen ansehen)
- Epics in feingranulare User Stories splitten
Wie lauten die Schritte eines Projektes im Wassserfallkonzept?
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
- Analyse
- Entwurf
- Implementierung
- Test in strenger Sequenz
Wie lauten die Schritte eines Projektes im Agilen/iterartiven Konzept?
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
- Es herrscht ein stetiger Lernprozess während des Projektverlaufes.
1. Analyse
2. Entwurf
3. Implementierung
4. Test stetig wiederholt (mit unterschiedlicher Intensität)
Wie läuft ein agiles Projekt ab?
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
- User Roles werden definiert
- Benutzer schreiben die User Stories
- Initiale Stories in einem Workshop
- Stetige Verfeinerung, Priorisierung und Schätzung der Stories
Wie werden User Stories im iterativen Verfahren eingeteilt, priorisiert und geschätzt?
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
- Durch die Zuordnung in verschiedene Releases
- Durch die weitere Zuordnung in einzelne Iterationen innerhalb eines Releases
Was ist das Kanban-Board?
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
Woraus besteht ein Kanban-Board?
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
- Aus dem Zustand Backlog
- Aus dem Zustand In Development
- Aus dem Zustand Analyse/Spezifikation
- Aus dem Zustand Done
- Ggf, aus mehr Zuständen zwischen Backlog und Done.
Wie funktioniert ein Kanban-Board?
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
- Zuerst einmal kommen alle User Stories in das Backlog hinein
- Dabei werden die User Stories nach Priorität geordnet
- Durch einen Pull-Vorgang können Zustandsübergänge geschehen
Inwiefern ergänzt eine User Story Map das Kanban-Board?
“Analyse-Themen”
- Im Kanban-Board sind die Zusammenhänge der User-Stories nicht klar
- User Story Maps fügen eine zweite Dimension hinzu
Wie ist eine User-Story Map aufgebaut?
“Analyse-Themen”
- Oben ist sie in rote Kärtchen mit User Acitivities gegliedert
- Darunter befinden sich jeweils die zugehörigen blauen Epics
- Unter jedem Epic befinden sich die gesplitteten User Stories
- Die User Stories sind nach Releases untereinander geordnet und können Stück für Stück in Iterationen abgearbeitet werden
Vorteile von User Story Maps
“Analyse-Themen”
- Man sieht das große Ganze des Backlogs aus Kanban
- Es hilft beim Priorisieren und Verfeinern von User Stories
- Es hilft beim iterativen Entwickeln und regt Diskussionen an
Was ist eine Stakeholdermatrix?
“Analyse-Themen”
-Ein Werkzeug um im Auge zu halten inwieweit man bestimmte Nutzergruppen versorgen muss
Was sind die verschiedenen Gruppen bei der Stakeholdermatrix und wie sind diese zu behandeln?
“Analyse-Themen”
- Wenig Power, Wenig Interesse (Nur im Blick behalten)
- Viel Power, Wenig Interesse (Bedürfnisse erfüllen, da sie kein Interesse an unserem Produkt haben)
- Wenig Power, Viel Interesse (Die Verteidiger des Produktes informiert halten reicht)
- Viel Power, Viel Interesse(Die Promoter sollten direkt und bevorzugt behandelt werden, weil sie das Produkt vorrantreiben können -> Zusammenarbeit)
Was sind die INVEST-Kriterien?
“Analyse-Themen”
- Independent
- Negotiable
- Valuable
- Estimable
- Small
- Testable
Wofür steht das I in den Invest-Kriterien und was bedeutet es? (Mit Beispiel!)
“Analyse-Themen”
-Independent
(Man sollte Abhängigkeiten oder Interaktionen zwischen User Stories möglichst vermeiden)
-Bsp: User Story 1: Als Benutzer mit Mastercard zahlen
-Bsp: User Story 2: Als Benutzer mit Visa zahlen
-Verhinderbar durch das Kombinieren der Karten oder die Stories anders aufsplitten
Wofür steht das N in den Invest-Kriterien und was bedeutet es?
“Analyse-Themen”
-Negotiable
User Stories sind verhandelbar und werden kommunikativ besprochen. Stories sind eine Erinnerung keine Spezifikation
Wofür steht das V in den Invest-Kriterien und was bedeutet es?
“Analyse-Themen”
-Valuable
(User Stories sollen für alle Stakeholder einen Wert bieten nicht nur für Entwickler oder die Rolle wird genau angegeben)
-Negativbeispiel: Gespeichert wird in Plaintext
-Positivbeispiel: Vom Benutzer eingegebene Werte werden gespeichert
Wofür steht das E in den Invest-Kriterien und was bedeutet es?
“Analyse-Themen”
-Estimable
User Stories sollten abschätzbar sein
Wofür steht das S in den Invest-Kriterien und was bedeutet es?
“Analyse-Themen”
-Small
(Zu kleine User Stories kann man schlecht planen. Man kann zu kleine Stories in eine Mergen)
(-Epics sind zusammengesetzte Stories und Komplexe Stories)
Wofür steht das T in den Invest-Kriterien und was bedeutet es? (Mit Beispiel!)
“Analyse-Themen”
-Testable
(Tests zeigen, dass eine User Story erfolgreich entwickelt ist. Bei Nichtfunktionalen Anforderungen vorsicht!)
-Möglichst viel sollte Testbar sein
-Negativbeispiel: Die Software soll einfach zu benutzen sein
-Positivbeispiel: Ein Benutzer kann eine Bestellung ohne Training selber vornehmen
Was sind Akzeptanztests bei User Stories?
“Analyse-Themen”
-Erwartungen der Benutzer, welche auf der Rückseite notiert werden.
Nenne Beispiele für Akzeptanztests in User Stories?
“Analyse-Themen”
- Vorderseite: Als Benutzer kann ich einen Artikel inserieren
- Rückseite: Leere Beschreibung?, Kein Preis?, Gigantischer Preis?, Artikelanzahl 0 möglich?
Wann sollten Akzeptanztests in einer Iteration bei User Stories geschrieben werden?
“Analyse-Themen”
-Möglichst früh, damit wirklich jeder Grenzfall bedacht ist und keine Bugs entstehen.
Was besagt Brian Maricks Testing Quadrant?
“Implementierungs-Themen”
-Guide Development (Fehler vor und während Codens verhindern)
-Qritique the Product (Fehler und Fehlende Features schnell finden)
-Business Facing (Für die Anwender)
-Technology Facing (Mehr Team-intern)
TODO ?????
Wie findet man generell Anforderungen im Projekt?
“Analyse-Themen”
-Durch Elicitation Techniques (Schleppnetz-Methode)
Was beinhalten Elicitaion Techniques bei der Suche nach Anforderungen?
“Analyse-Themen”
- Getreu der Schleppnetz-Methode sollte man erst ein grobes Netz zum Suchen benutzen und dann immer kleiner und detailierter nach Anforderungen suchen
- Anforderungen können mit der Zeit wachsen und wichtiger werden oder plötzlich unwichtig sein
- Man kann nicht alle Anforderungen perfekt fangen und hat auch mal Mist dabei, nur Profis wissen wo/wie man perfekt fängt.
Was ist zu bemängeln an der Art wie man traditionell im Wasserfallverfahren die Anforderungen sammelt?
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
- Es ist unmöglich alle Anforderungen am Anfang des Projektes zu finden
- Anforderungen können ihre wichtiger werden oder komplett unwichtig, das wird nicht berücksichtigt
- Viele Anforderungen tauchen erst später im Projektverlauf auf
Wie versucht man die Anforderungen im agilen Vorgang zu sammeln?
“Klassische“ und „weitere“ Softwareentwicklungsthemen”
- Man versucht trotzdem am Anfang möglichst alle findbaren User Stories zu finden (oft grobe zuerst)
- Und im weiteren Verlauf entstehen oft neue
Was sind Techniken zum Sammeln von Anforderungen?
“Analyse-Themen”
- Interviews(offene W Fragen!)
- Fragebögen
- Beobachtungen
- Workshops/Story Writing Workshops
Was ist die Funktion/das Ziel von offenen Fragen bei einem Interview?
“Analyse-Themen”
- Viele Antworten ermöglichen
- Viel zu erfragen
Was ist die Funktion/das Ziel von geschlossenen Fragen bei einem Interview?
“Analyse-Themen”
- Schnell auf den Punkt kommen
- Vermutungen bestätigen lassen
Welche Techniken/Phasen in einem Interview gibt es? Nennen Sie zugehörige Fragen.
“Analyse-Themen”
- Sammeln(Was alles?, Und Außerdem?)
- Fokussieren(Was genau?, Wer?, Womit?, Bis wann?)
- Bestätigen(Habe ich richtig verstanden dass..?, Sie meinen also..?)
Wer nimmt an einem Story-Writing Workshop teil?
“Analyse-Themen”
-Ein Workshop, an dem Entwickler, Benutzer, Kunden und andere Stakeholder teilnehmen
Was sind die Ziele bei einem Story-Writing Workshop?
“Analyse-Themen”
- Möglichst viele User Stories schreiben(Quantität im Fokus)
- Keine Priorisierung
Wann sollte ein Story-Writing Workshop geschehen?
“Analyse-Themen”
-Mindestens einen Workshop vor dem Start jedem Realeases
Was sind Techniken für ein Story Writing Workshop?
“Analyse-Themen”
- Brainstorming
- Konzeptionelle Abläufe nachverfolgen
Was ist beim Detaillieren von User Stories zu beachten?
“Analyse-Themen”
- Eine fertige User Story ist klein, detailliert und kann implementiert werden
- Sie sollten verständlich, testbar, realisierbar sein
- Das ist zu erreichen durch das Splitten von Epics, Akzeptanzkriterien, Details ausarbeiten(Mockups)
Nenne und erkläre die Pattern beim User Story Splitting.
“Analyse-Themen”
- Workflow Steps (Posten als Editor, Posten als Admin)
- Business Rule Variations (Keine schwammigen Angaben)
- Major Effort (Nach dem größten Aufwand splitten)
- Operations (CRUD)
- Spike (Forschungs User Stories)
Was ist eine Spezifikation?
“Analyse-Themen”
- Eine Spezifikation ist eine formalisierte Beschreibung eines Produktes/Systems/Dienstleistung
- Sie soll für den Entwickler die Freiheiten minimieren und diese dokumentieren
Was beinhaltet der Spezifikationsbaukasten?
“Analyse-Themen”
- Wireframes/Gui-Mockups
- Fachliches Datenmodell/Fachliche Datentypen
- Geschäftsprozesse
- Use Cases/Anwendungsfälle
- Druckausgaben/E-Mails
- Batch-Jobs
- Schnittstellen zu Nachbarsystemen
Was ist ein Wireframe/Mockup?
“Analyse-Themen”
- Ein konzeptioneller Entwurf und oft Wegwerfprototyp der Benutzerschnittstellen
- Sollten nie fertig aussehen, um gar nicht in Versuchung zu kommen sie zu übernehmen
- Außerdem erschafft es einem Entwickler auch mehr Zeit, als wenn der Kunde denkt es wäre fast fertig
Was ist ein Anwendungsfall/Use Case?
“Analyse-Themen”
-Anwendungsfälle/Use Cases sind Arbeitsschritte aus Geschäftsprozessen, die systemseitig unterstützt werden sollen
Was beschreiben Anwendungsfälle/Use Cases?
“Analyse-Themen”
- Anwendungsfälle/Use Cases beschreiben das sichtbare Verhalten und die Interaktion eines Systems auf Nutzerrollenanfragen
- Jeder Anwenungsfall hat einen direkten Nutzen
Woraus enstehen Anwendungsfälle/Use Cases?
“Analyse-Themen”
-Aus Geschäftsprozessen und Anforderungen/User Stories
Wie sehen Anwendungsfälle/Use Cases aus?
“Analyse-Themen”
- Textbeschreibung
- Durchnummerierung
- Evtl. UML Usa Case Diagramm
Beschreibe die Basisstruktur von Anwendungsfällen/Use Cases?
“Analyse-Themen”
- Titel:
- Akteur:
- Ziel:
- Auslöser:
- Vorbedingung:
- Nachbedingung:
- Erfolgsfall: (Ohne Technik)(Ablauf des Users durch das System)
Womit lassen sich Anwendungsfälle/Use Cases gut ergänzen?
“Analyse-Themen”
-Mit Mockups/Wireframes, da diese genau den Erfolgsprozess visualisieren können
Wie können Anwendungsfälle/Use Cases auch visualisiert werden?
“Analyse-Themen”
-Durch Anwendungsfalldiagramme
Was macht ein Anwendungsfalldiagramm?
“Analyse-Themen”
-Es stellt den Anwendungsfall/Use Case mit den Akteuren! grafisch dar.
Wofür macht ein Anwendungsfalldiagramm sinn?
“Analyse-Themen”
- Am Beginn der Spezifikation
- Zur Kommunikation mit Kunden