Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 1 Use Case Driven Software Development Anforderungsdefinition: m textuelle Szenarien.

Ähnliche Präsentationen


Präsentation zum Thema: "Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 1 Use Case Driven Software Development Anforderungsdefinition: m textuelle Szenarien."—  Präsentation transkript:

1 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 1 Use Case Driven Software Development Anforderungsdefinition: m textuelle Szenarien Analyse: m objektorientierte Szenario-Beschreibungen (plus Klassendiagramme) m Objektspiel zur Validierung der Objekt-Szenarien Design: m Methodische Ableitung von automatischen Tests m Methodische Ableitung von Methoden-Implementierungen (plus Klassendiagramme) m Zetteltests m Automatische Code-Generierung m Systematisches Testen Noch nicht erfasst: m Grafical User Interface m Wartung

2 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 2 Grundstruktur des Projekthandbuchs Titelseite 1.Auftraggeber 2.Auftragnehmer Versionsbezeichnung / -historie 3.Zielbestimmung 1.Produkteinsatz (Relevante Geschäftsprozesse) 2.Glossar 4.Analyse (Produktfunktionen) 5.Design (Produktdaten/Methoden) 6.Validierung 7.Nichtfunktionale Anforderungen 1.Produktleistungen 2.Qualitätsanforderungen 8.Projektplan 1.Aufwandsschätzung 2.Zeitplan

3 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 3 Projekthandbuch Beispiel "Titelseite" m Dokumentartbezeichnung m Projektname m Auftraggeber m Auftragnehmer m Versionsgeschichte: mit jeweils l Versionsnummer l Datum l Autor l Prüfer Projekthandbuch Ludo Online 1. Autraggeber: Albert Zündorf, Universität Kassel Kassel Tel.: , Fax: Auftragnehmer: Kasseler Webanwendungen GMBH, Annelise Beispiel, Mat.Nr , Max Muster, Mat.Nr , Version:Datum:Autor:PrüfdatumPrüfer A. Beispiel M. Muster A. Beispiel A. Zündorf

4 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 4 Projekthandbuch Beispiel 3. Zielbestimmung m so eine Art Einleitung m Hauptaufgabe m evtl. Prinzipskizze Kann man meist von der Aufgabenstellung / von der Auftragsanfrage abschreiben Fax.: ….. 3. Zielbestimmung Ludo ist ein zeitlos populäres Spiel. Als ersten Baustein eines werbefinanzierten Webportals für klassische Brettspiele soll daher in diesem Projekt eine online Version von Ludo erstellt werden.

5 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 5 Projekthandbuch Beispiel 3.1. Produkteinsatz (Geschäftsprozessmodell) m Darstellung von Arbeitsvorgängen in einer Firma. m Einzelne Schritte / Teilabläufe sollen durch das Projekt automatisiert werden m Kontext des Projekts m Workflowsprachen wie EPKs … Produkteinsatz Das online Ludo soll eine Vielzahl von Besuchern auf unser Webportal locken. Dort soll man an Einzelspielen oder Turnieren teilnehmen können. Das Benutzerinterface soll dem normalen Brettspiel möglichst intuitiv nachempfunden sein

6 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 6 Projekthandbuch Beispiel 3.2 Glossar m Definition wichtiger Begriffe m sehr schwieriger Schritt m später Klassendiagramm => siehe Ontologie m entfällt in unser Projektarbeit …. 3. Zielbestimmung … Produkteinsatz … Glossar Spielbrett: Das Spielbrett zeigt die einzelnen Spielfelder, die Heimatfelder der Spieler und die Zielfelder an. Er gibt die Wege für die Spielsteine vor und er gibt die aktuellen Positionen aller Spielsteine wider. Spieler: Es können bis zu vier Spieler teilnehmen. Jedem Spieler sind über seine Farbe seine Heimatfelder, seine Spielsteine und seine Zielfelder zugeordnet. SpielStein: Jeder Spieler hat vier Spielsteine seiner Farbe. Die Spielsteine werden gemäß der gewürfelten Augenzahlen weiterbewegt. …......

7 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 7 Projekthandbuch Beispiel 4. Analyse (Produktfunktionen) m Auflistung und Erklärung der Hauptfunktionen des zu erstellenden Programms m Package Diagramme zur hierarchischen Organisation m Use-Case Diagramme für "einfache Packages m strukturierte Erläuterung der Use-Cases m Gegebenenfalls GUI- Screen-Shots Analyse (Produktfunktionen) Die Produktfunktionen sind gemäß folgendem Packagediagramm gegliedert:.....

8 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 8 Projekthandbuch Beispiel Usecase Diagramme m Usecase Produktfunktion m Actor "Benutzer" m System "Programm" Package Ludo Das Package Ludo fasst die zentralen Funktionen des Spiels Ludo zusammen:.....

9 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 9 Projekthandbuch Beispiel Usecase Beschreibungen m einfache Texte (zu ungenau) m Formulare (erster Schritt) m UML Scenariodiagramme (zweiter Schritt) (meist erst in der Analyse) … Usecase move (Autor: A. Muster) Scenario: simple Start Situation: Tom spielt Ludo gegen Albert. Tom hat eine 3 gewürfelt. Initial: Tom wählt seinen ersten Spielstein s1 auf Feld f3. Step 1: Der Spielstein sieht beim Würfel, dass drei Schritte zu machen sind. Step 2: Der Spielstein macht einen Schritt. Zwei bleiben. Step 3: Der Spielstein macht den zweiten Schritt. Step 4: Der Spielstein macht den letzten Schritt Result Situation: Der Spielstein steht jetzt auf Feld f

10 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 10 Analyse: m Ausarbeitung der textuellen Usecase Szenarios durch Folge von Objektdiagrammen Story Boards m Ein Objektdiagramm pro Szenario-Schritt

11 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 11 Methodische Erstellung von Objektdiagrammen: m Hauptwörter unterstreichen => Kandidaten für Objekte m Verbformen => Nachrichten m Eigenschaften => Attribute (... Tom spielt blaue Steine …) m Links: l Besitzanzeigende Fürworter (mein, ihr,...) l Präpositionen: (auf, unter, neben, in,...) l Nachrichtenwege l... m Problem der Homonyme und Synonyme => Ontologie m Das ist ein kreativer Vorgang … Usecase move (Autor: A. Muster) Scenario: simple Start Situation: Tom spielt Ludo gegen Albert. Tom hat eine 3 gewürfelt. theDie s1 v == 3 stones at next die albert next f4 next f3 f4 tom

12 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 12 Methodische Erstellung von Objektdiagrammen: m Hauptwörter unterstreichen => Kandidaten für Objekte m Verbformen => Nachrichten m Eigenschaften => Attribute (... Tom spielt blaue Steine …) m Links: l Besitzanzeigende Fürworter (mein, ihr,...) l Präpositionen: (auf, unter, neben, in,...) l Nachrichtenwege l... m Problem der Homonyme und Synonyme => Ontologie m Das ist ein kreativer Vorgang Scenario: simple … Initial: Tom wählt seinen ersten Spielstein s1 auf Feld f3. 1: _ _ _ _ _ _ _ _ tom

13 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 13 Modellierung von Beispielverhalten Step 1: Der Spielstein sieht beim Würfel, dass drei Schritte zu machen sind. tom theDie s1 v == 3 1: steps := 3 die m Collaborations-Nachrichten

14 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 14 Modellierung von Beispielverhalten Step 2: Der Spielstein macht einen Schritt. Zwei bleiben. tom theDie s1 f3 f4 :Field v == 3 stones at next die «destroy» «create» 1: moveOneStep() m > und > Marker m := Attributzuweisungen m bekannte Objekte ohne Klassennamen neue Objekte mit Klassenname (Änderung des Ausschnitts) m Collaborations-Nachrichten 2: steps := 2

15 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 15 Modellierung von Beispielverhalten Step 3: Der Spielstein macht den zweiten Schritt. tom theDie s1 f3 v == 3 stones at next die «destroy» «create» 1: moveOneStep() m > und > Marker m := Attributzuweisungen m bekannte Objekte ohne Klassennamen neue Objekte mit Klassenname (Änderung des Ausschnitts) m Collaborations-Nachrichten 2: steps := 1 f5 :Field next f4

16 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 16 Modellierung von Beispielverhalten Step 4: Der Spielstein macht den letzten Schritt tom theDie s1 v == 3 stones at die «destroy» «create» 1: moveOneStep() m > und > Marker m := Attributzuweisungen m bekannte Objekte ohne Klassennamen neue Objekte mit Klassenname (Änderung des Ausschnitts) m Collaborations-Nachrichten 2: steps := 0 f6 :Field next f5

17 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 17 Modellierung von Beispielverhalten Result Situation: Der Spielstein steht jetzt auf Feld f6. tom theDie s1 v == 3 stones at die m > und > Marker m := Attributzuweisungen m bekannte Objekte ohne Klassennamen neue Objekte mit Klassenname (Änderung des Ausschnitts) m Collaborations-Nachrichten f6 next f5

18 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 18 Storyboard / Scenario wird JUnit Test m Feste Zuordnung Usecase – realisierende Methode m Aus Szenarien automatische Tests ableiten

19 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 19 Projekthandbuch Beispiel 5. Design (Produktdaten): m Beschreibung der wichtigsten Datenstrukturen m jetzt nicht mehr textuell m Klassendiagramm plus l Erläuterung aller Klassen l pro Klasse Erläuterung jedes Attributs l Erläuterung aller Assoziationen. l pro Klasse Erläuterung jeder Methode m Siehe Vorlesung am Dienstag ….. 5. Design

20 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 20 Methodenimplementierung m Skizzierung der wichtigsten Methoden m mit textueller Erläuterung … Klasse Spieler Methode Spielerwechsel

21 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 21 Projekthandbuch Beispiel 6. Validierung: m Organisation der QS m Anzahl Tests m Coverage? m Protokoll der Testläufe m Z.B. JUnit Screen Dump m … ….. 6. Valdierung … 6.n Testergebnisse

22 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 22 Projekthandbuch Beispiel 7. Nichtfunktionale Anforderungen: m nicht vernachlässigbar m leicht mehrere Größenordnungen bei den Kosten m … ….. 7. Nichtfunktionale Anforderungen … 7.1 Produktleistungen Das System kann gleichzeitig bis 20 Millionen Spiele online bearbeiten. Die Antwortzeit beträgt unter 0,1 Sekunden. 7.2 Qualitätsanforderungen Das System ist 365 Tage im Jahr 24 Stunden am Tag verfügbar. Maximale Downtime ist 5 Minuten pro Jahr.

23 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 23 Projekthandbuch Beispiel 8. Projektplan: m Arbeitsschritte l Verantwortlicher l Eingangsprodukte l Ausgangsprodukte l geplanter Start l geplantes Ende l Aufwand m Planverfolgung l tatsächlicher Start, Ende, Aufwand l tatsächlicher Verantwortlicher ….. 8. Projektplan Aus der Analyse ergibt sich folgender Projektplan:

24 Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 24 1.Nichtfunktionale Anforderungen 1.Produktleistungen 2.Qualitätsanforderungen 2.Projektplan 1.Aufwandsschätzung 2.Zeitplan ….. 7. Nichtfunktionale Anforderungen … 7.1 Produktleistungen


Herunterladen ppt "Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 1 Use Case Driven Software Development Anforderungsdefinition: m textuelle Szenarien."

Ähnliche Präsentationen


Google-Anzeigen