Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 6. Story Driven Modeling Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.

Ähnliche Präsentationen


Präsentation zum Thema: "Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 6. Story Driven Modeling Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse."—  Präsentation transkript:

1 Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 6. Story Driven Modeling Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse von Beispielen 3. Klassendiagramme in Java implementieren 4. Methodenentwurf 5. Test-First Prinzip 6. Story Driven Modeling 7. Zusammenfassung

2 Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 2 6. Story Driven Modeling Für jede Anforderung: m textueller Beispielablauf m Objektstrukturentwurf, Objektspiel m grafischer Test m textueller Methodenablauf m grafische Methode m grüner Balken

3 Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 3 Regeldiagramme m Activities und Transitionen m Start mit Klassen- und Methodennamen m Activities für Arbeitsschritte m Transitionen (mit Guards) für Kontrollfluss

4 Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 4 Aufbau eines JUnit Tests für OO Programm: 1. Objektstruktur bauen 2. Zielfunktionalität / -methode aufrufen 3. Ergebnis prüfen 4. nächste Methode aufrufen 5. Ergebnis prüfen 6. usw.

5 Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 5 Regeldiagramm für Test und Methode m Demo

6 Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 6 Rule Diagrams: Kontrollfluss Activities m start activity m stop activities m rule acitivities m code activities m branch activities Transitionen l ohne Guard l [success] l [failure] l [boolean condition] l [else] http://www.se.eecs.uni-kassel.de/se/fileadmin/se/courses/MSE/download/fujaba/FujabaTutorialStoryDrivenModeling.ppt

7 Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 7 Rule Diagrams: Kontrollfluss Activities m start activity m stop activities m rule acitivities m code activities m branch activities Transitionen l ohne Guard l [success] l [failure] l [boolean condition] l [else] http://www.se.eecs.uni-kassel.de/se/fileadmin/se/courses/MSE/download/fujaba/FujabaTutorialStoryDrivenModeling.ppt

8 Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 8 Rule Syntax: Overview

9 Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 9 The FAMous Fujaba Abstract Machine (Teil 1) Der Befehlssatz: m in den Objekten werden Kommandos / Nachrichten von vergesslichen Object Guys abgearbeitet m Object Guys schlafen normaler weise m beim Aufwachen wird die Umgebung vom Nebel des Vergessens verschleiert m Object Guys sehen nicht was die anderen tun m Jeder Object Guy hat eigenen Namensraums m Object Guy hat Handlungsanweisungen für jedes mögliche Komando m Immer ein Object Guy pro Nachricht Object Guy kann: m Kanten lesen und lokale Namen für Nachbarn vergeben m Attribute lesen und prüfen m temporäre Werte notieren m Berechnungen durchführen m Nachrichten verschicken (wartet (untätig) auf Antwort) m Antworten zurückschicken (und wieder einschlafen) m Attribute schreiben m Kanten löschen / erzeugen m Objekte löschen / erzeugen

10 Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 10 Grafische Tests mit Fujaba Story Boards Story Board Notation: m Folge von Activities m Start Activity erzeugt Objekte m Methodenaufrufe m «system step» l Kommentare m «actor step» l vergleicht Ist/Soll l stößt neue Schritte an Code Generierung: m JUnit Test m Startobjekte erzeugen m Startobjekte merken m Aufrufe m Situation vergleichen

11 Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 11 Grafische Tests mit Fujaba Story Boards class Scencario1Test { public Person prinz; public Raum r; public Tuer t1; … @Test public void scenario1 () { prinz = new Person (); r = new Raum (); prinz.setIn (r); t1 = new Tuer (); r.tueren.add (t1); … prinz.sammle…(); assertEquals (prinz.getIn (), r); assertTrue(r.tueren.contains(t1)); invent = prinz.hat; assertTrue(invent.items.contains(g1)); …


Herunterladen ppt "Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 6. Story Driven Modeling Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse."

Ähnliche Präsentationen


Google-Anzeigen