Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Juliane Kaufer Geändert vor über 7 Jahren
1
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 SS © 2007 Albert Zündorf, University of Kassel
2
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 SS © 2007 Albert Zündorf, University of Kassel
3
Story Diagram Idioms Programmiermethodik SS © 2009 Albert Zündorf, University of Kassel
4
z1 :Machine runtime program
5
z2 :Machine runtime program
6
z3 :Machine runtime program
7
z4 :Machine runtime program
8
z4 :Machine runtime program
9
z5 :Machine runtime program
10
z5 :Machine runtime program
11
z6 :Machine runtime program
12
z7 :Machine runtime program
13
z8 :Machine runtime program
14
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
15
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
16
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
17
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
18
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
19
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
20
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
21
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
22
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
23
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
24
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 SS © 2007 Albert Zündorf, University of Kassel
25
p3 :Professor name = "Karla" motivation = 9999 s2 :Student name = "Karli" motivation = 99 in in r8 :Room credits = 8 runtime program
26
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
27
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
28
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
29
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
30
Rule Syntax: Overview Programmiermethodik SS © 2007 Albert Zündorf, University of Kassel
31
Rule Syntax: Overview Programmiermethodik SS © 2007 Albert Zündorf, University of Kassel
32
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 SS © 2007 Albert Zündorf, University of Kassel
Ähnliche Präsentationen
© 2025 SlidePlayer.org Inc.
All rights reserved.