6. Story Driven Modeling Gliederung: Einführung

Slides:



Advertisements
Ähnliche Präsentationen
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 4. Methodenentwurf Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse von.
Advertisements

Programmiermethodik Übung 12 Best practices. Musterlösung Übung 10.
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 6. Story Driven Modeling Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Programmiermethodik SS 07 Prof. Albert Zündorf
Programmiermethodik SS2009 © 2009 Albert Zündorf, University of Kassel 1 Gliederung 1. Einführung 2. Objektdiagramme zur Analyse von Beispielen 3. Methodenentwurf.
3. Klassendiagramme in Java implementieren
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 6. Story Driven Modeling Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 6. Story Driven Modeling Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 5. Test-First Prinzip Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Programmiermethodik SS 09 Prof. Albert Zündorf Fachgebiet für Software Engineering Wilhelmshöher Allee Kassel (Raum 1339 im Altbau)
3. Analyse Gliederung: Einführung Anforderungsdefinition
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 6. Story Driven Modeling Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
4. Design Gliederung: Einführung Anforderungsdefinition Analyse Design
Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 1 6. Tipps, Tricks, Idiome Gliederung: 1. Einführung 2. Anforderungsdefinition 3.
Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 1 4. Design Gliederung: 1. Einführung 2. Anforderungsdefinition 3. Analyse 4. Design.
1 Reverse Engineering WS 07 / 08 A. Zündorf. Fachgebiet Software Engineering Übersicht © Albert Zündorf, Kassel University 2 Organisatorisches.
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 5. Test-First Prinzip Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Programmiermethodik SS2006 © 2005 Albert Zündorf, University of Kassel 1 4. Design Gliederung: 1. Einführung 2. Anforderungsdefinition 3. Analyse 4. Design.
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 Model View Controller Pattern.
Teamorganisation: Versionsverwaltung
Model Driven Engineering SS 10 Prof. Albert Zündorf Fachgebiet für Software Engineering Wilhelmshöher Allee Kassel (Raum 1339)
Model Driven Engineering SS 10 Prof. Albert Zündorf Fachgebiet für Software Engineering Wilhelmshöher Allee Kassel (Raum 1339)
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 4. Methodenentwurf Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse von.
Programmiermethodik SS2009 © 2009 Albert Zündorf, University of Kassel 1 Gliederung 1. Einführung 2. Objektdiagramme zur Analyse von Beispielen 3. Methodenentwurf.
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 6. Story Driven Modeling Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Model Driven Engineering SS 10 Prof. Albert Zündorf Fachgebiet für Software Engineering Wilhelmshöher Allee Kassel (Raum 1339)
Programmiermethodik SS 10 Prof. Albert Zündorf
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 6. Story Driven Modeling Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Programmiermethodik SS2010 © 2010 Albert Zündorf, University of Kassel 1 Gesamtvorgehen 1. Textuelle Szenarios 2. Objektdiagramme 3. Klassendiagramm 4.
Programmiermethodik WS 2013/14 Prof. Albert Zündorf
Fachgebiet Software Engineering Übersicht © Albert Zündorf, Kassel University Baustein- vs. funktionsorientierte Organisation.
Fachgebiet Software Engineering Übersicht © Albert Zündorf, Kassel University Baustein- vs. Funktionsorientierte Organisation.
Programmiermethodik WS 2011/12 Prof. Albert Zündorf Fachgebiet für Software Engineering Wilhelmshöher Allee Kassel (Raum 1338)
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 5. Test-First Prinzip Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 5. Test-First Prinzip Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Model Driven Engineering SS 10 Prof. Albert Zündorf Fachgebiet für Software Engineering Wilhelmshöher Allee Kassel (Raum 1339)
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 4. Methodenentwurf Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse von.
1.3 Klassen und Beziehungen
1.3 Klassen und Beziehungen
Informatik Zustandsorientiertes Modellieren und Programmieren 2.4 Datenkapselung 2.4 Datenkapselung Objekte können miteinander kommunizieren, indem.
2. Zustandsorientiertes Modellieren 2.4 Datenkapselung
Ich bau nicht mit Ihr.. Ich bau mit Ihr. Ich bau nicht mit Ihr.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer, Dr. Thomas H. Kolbe Einführung in die Programmierung mit Java 9. Vorlesung WS 2001/2002.
Software-Demo: CASE-Tool „Together“
Java-Kurs - 9. Übung Besprechung der Hausaufgabe
Programmiermethodik SS2011 © 2011 Albert Zündorf, University of Kassel 1 Programmentwurf: 1. Beispiel auf Anwendungsebene anschauen 2. Beispiel in Objektdiagrammen.
Test 1 Test 2 Test 3. Test 4 Test 5 Test 6 Test 7 Test 8 Test 9.
Tutorium Software-Engineering SS14 Florian Manghofer.
oder das Geheimnis des Glücks PetersPowerPoint Musik-PowerPoint AutoPlay.
Vererbung in Java. public abstract class Form { protected int breite; protected int hoehe; protected String farbe; /** * Erzeuge eine Form der Breite.
Verwalten von Daten mit Hilfe von NTFS
Objektorientiertes Modellieren und Programmieren mit Java
Unterbewusste Kommunikation
Java-Kurs - 8. Übung Klassen und Objekte: Vererbung
Einführung in die Programmierung mit Java
Test.
12 Das lineare Regressionsmodell
Methodische Grundlagen des Software-Engineering
Programmiermethodik WS 2018/19 Prof. Albert Zündorf
Algorithmen und Programmierung III
1. Die rekursive Datenstruktur Liste 1.3 Rekursive Funktionen
2. Vererbung und Kapselung
1. Die rekursive Datenstruktur Liste 1
Datenstrukturen und Softwareentwicklung
3. Die Datenstruktur Graph 3.3 Durchlaufen von Graphen
1. Die rekursive Datenstruktur Liste 1.6 Die Datenstruktur Stapel
Programmiermethodik Übung 11
Objektorientierte Programmierung
Informatik Softwareentwicklung – 4.2 Diagramme
Programmentwurf: Beispiel auf Anwendungsebene anschauen
 Präsentation transkript:

6. Story Driven Modeling Gliederung: Einführung Objektdiagramme zur Analyse von Beispielen Klassendiagramme in Java implementieren Methodenentwurf Test-First Prinzip Story Driven Modeling Modellierung von Verhalten / graphische Programmierung Zusammenfassung Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel

Programmentwurf: Beispiel auf Anwendungsebene anschauen Beispiel in Objektdiagrammen / Story Boards modellieren Klassendiagramm ableiten / erweitern / implementieren Test bauen "Dreisprung": generellen Kontrollfluss auf Anwendungsebene skizzieren generelles Verhalten auf Objektebene skizzieren allgemeines Verhalten programmieren programmiertes Verhalten an Ausgangsbeispiel testen programmiertes Verhalten an alternativen Beispielen testen Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel

Story Diagram Idioms Programmiermethodik SS2009 © 2009 Albert Zündorf, University of Kassel

z1 :Machine runtime program

z2 :Machine runtime program

z3 :Machine runtime program

z4 :Machine runtime program

z4 :Machine runtime program

z5 :Machine runtime program

z5 :Machine runtime program

z6 :Machine runtime program

z7 :Machine runtime program

z8 :Machine runtime program

in a1 :Assign r2 :Room credits = 2 a2 : Assign in d3 :Door s2 :Student name = "Karli" motivation = 99 d12 :Door r5 :Room credits = 10 in r8 :Room credits = 8 d7 :Door d9 :Door d11 :Door d10 :Door r13 :Room credits = 6 r11 :Room credits = 9 in r12 credits = 7 in a3 : Assign a5 : Assign in in a4 : Assign a6 : Assign runtime program

in a1 :Assign r2 :Room credits = 2 a2 : Assign in d3 :Door s2 :Student name = "Karli" motivation = 99 d12 :Door r5 :Room credits = 10 in r8 :Room credits = 8 d7 :Door d9 :Door d11 :Door d10 :Door r13 :Room credits = 6 r11 :Room credits = 9 in r12 credits = 7 in a3 : Assign a5 : Assign in in a4 : Assign a6 : Assign runtime program

in a1 :Assign r2 :Room credits = 2 a2 : Assign in d3 :Door s2 :Student name = "Karli" motivation = 99 d12 :Door r5 :Room credits = 10 in r8 :Room credits = 7 d7 :Door d9 :Door d11 :Door d10 :Door r13 :Room credits = 6 r11 :Room credits = 9 in r12 credits = 8 in a3 : Assign a5 : Assign in in a4 : Assign a6 : Assign runtime program

a1 :Assign in a2 : Assign r2 :Room credits = 2 in s2 :Student name = "Karli" credits = 34 motivation = 99 d3 :Door d12 :Door r5 :Room credits = 10 in r8 :Room credits = 8 d7 :Door d9 :Door d11 :Door d10 :Door r13 :Room credits = 6 r11 :Room credits = 9 in r12 credits = 7 in a3 : Assign a5 : Assign in in a4 : Assign a6 : Assign runtime program

in a1 :Assign r2 :Room credits = 2 a2 : Assign in d3 :Door s2 :Student name = "Karli" motivation = 99 d12 :Door r5 :Room credits = 10 in r8 :Room credits = 8 d7 :Door d9 :Door d11 :Door d10 :Door r13 :Room credits = 6 r11 :Room credits = 9 in r12 credits = 7 in a3 : Assign a5 : Assign in in a4 : Assign a6 : Assign runtime program

in a1 :Assign r2 :Room credits = 2 a2 : Assign in d3 :Door s2 :Student name = "Karli" motivation = 99 d12 :Door r5 :Room credits = 10 in r8 :Room credits = 8 d7 :Door d9 :Door d10 :Door r11 :Room credits = 9 in r12 credits = 7 a5 : Assign in a6 : Assign runtime program

in a1 :Assign r2 :Room credits = 2 a2 : Assign in d3 :Door s2 :Student name = "Karli" motivation = 99 d12 :Door r5 :Room credits = 10 in r8 :Room credits = 8 d7 :Door d9 :Door d11 :Door d10 :Door r13 :Room credits = 6 r11 :Room credits = 9 in r12 credits = 7 in a3 : Assign a5 : Assign in in a4 : Assign a6 : Assign runtime program

in a1 :Assign r2 :Room credits = 2 a2 : Assign in d3 :Door s2 :Student name = "Karli" motivation = 99 d12 :Door r5 :Room credits = 10 in r8 :Room credits = 8 d7 :Door d9 :Door d10 :Door r11 :Room credits = 9 in r12 credits = 7 in a3 : Assign a5 : Assign in in a4 : Assign a6 : Assign runtime program

in a1 :Assign r2 :Room credits = 2 a2 : Assign in d3 :Door s2 :Student name = "Karli" motivation = 99 d12 :Door r5 :Room credits = 10 in r8 :Room credits = 8 d7 :Door d9 :Door d10 :Door r11 :Room credits = 9 in r12 credits = 7 a5 : Assign in a6 : Assign runtime

in a1 :Assign r2 :Room credits = 2 a2 : Assign in d3 :Door s2 :Student name = "Karli" motivation = 99 d12 :Door r5 :Room credits = 10 in r8 :Room credits = 8 d7 :Door d9 :Door d10 :Door r11 :Room credits = 9 in r12 credits = 7 a5 : Assign in a6 : Assign runtime program

Alle Matches: r2 :Room costs = 2 r5 :Room costs = 10 r11 :Room p2 :Person name = "Prinz" geld = 99 d3 :Door i1 :Item d11 :Door d10 :Door d9 :Door d7 :Door in i2 :Item i5 :Item i6 :Item i3 :Item i4 :Item Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel

p3 :Professor name = "Karla" motivation = 9999 s2 :Student name = "Karli" motivation = 99 in in r8 :Room credits = 8 runtime program

r2 :Room credits = 2 d3 :Door s2 :Student name = "Karli" motivation = 99 d12 :Door r5 :Room credits = 10 in r8 :Room credits = 8 d7 :Door d9 :Door d11 :Door d10 :Door r13 :Room credits = 6 r11 :Room credits = 9 in r12 credits = 7 in a3 : Assign a5 : Assign in in a4 : Assign a6 : Assign runtime program

r2 :Room credits = 2 d3 :Door s2 :Student name = "Karli" motivation = 99 d12 :Door r5 :Room credits = 10 in r8 :Room credits = 8 d7 :Door d9 :Door d11 :Door d10 :Door r13 :Room credits = 6 r11 :Room credits = 9 in r12 credits = 7 in a3 : Assign a5 : Assign in in a4 : Assign a6 : Assign runtime program

r2 :Room credits = 2 d3 :Door s2 :Student name = "Karli" motivation = 99 d12 :Door r5 :Room credits = 10 in r8 :Room credits = 8 d7 :Door d9 :Door d11 :Door d10 :Door r13 :Room credits = 6 r11 :Room credits = 9 in r12 credits = 7 in a3 : Assign a5 : Assign in in a4 : Assign a6 : Assign runtime program

p3 :Professor name = "Karla" motivation = 9999 s2 :Student name = "Karli" credits = 99 in in r8 :Room credits = 8 s3 :Student name = "Mira" credits = 110 in r9 :Room credits = 12 runtime program

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

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

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