• Keine Ergebnisse gefunden

4. Modellieren und Diagrammarten

N/A
N/A
Protected

Academic year: 2022

Aktie "4. Modellieren und Diagrammarten"

Copied!
34
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Zur Entwicklung einer Software ist eine strukturierte Planung notwendig.

Erst auf der Grundlage eines Modells (z.B. geeignete

Klassendiagramme) kann eine Implementierung (Programmierung) sinnvoll erfolgen.

Während der Implementierungsphase kann das Modell auch angepasst werden.

4. Modellieren und

Diagrammarten

(2)

Informatik 10 – 4. Modellieren und Diagrammarten 2

Modellieren und Implementieren

(3)

Einfaches

Klassendiagramm

3 1 ist_in >

besitzt >

(4)

Informatik 10 – 4. Modellieren und Diagrammarten 4

Erweitertes

Klassendiagramm

(5)

Klassenkarte Objektkarte

a1 : AMPEL

ampelphase = “rot“

Hinweis:

Eine Objektkarte ist auch ohne abgerundete Ecken möglich. In diesem Fall müssen der Objektname und die Klasse des Objekts unterstrichen werden.

(6)

Informatik 10 – 4. Modellieren und Diagrammarten 6

Objektdiagramm

(7)

Beschreibung von Methoden -

Struktogramm

(8)

Informatik 10 – 4. Modellieren und Diagrammarten

Öffne das BlueJ-Projekt „Ampel_Vorlage“ . a)

Erzeuge ein Objekt von AMPEL und untersuche mithilfe

des Objektinspektors und dem Quelltext die Funktionsweise.

b)

Implementiere die fehlenden Methoden, sodass eine einfache Simulation einer Ampelschaltung entsteht.

8

Übung 1 – Ampel

(9)

Beschreibung von Methoden - Sequenzdiagramm

Ein Sequenzdiagramm veranschaulicht die zeitliche

Abfolge der Kommunikation zwischen Objekten.

(10)

Informatik 10 – 4. Modellieren und Diagrammarten 10

Sequenzdiagramm

(11)

Sequenzdiagramm Bezeichnungen

Aktivitätsbalken

Botschaft Rückmeldung

beteiligte Objekte

(12)

Informatik 10 – 4. Modellieren und Diagrammarten 12

Zeichnen von Sequenzdiagrammen

online

www.websequencediagrams.com

(13)

Erstelle ein Sequenzdiagramm für die Methode rotSetzen().

Lösung am Ende der Präsentation.

Übung 2 – Ampel

(14)

Informatik 10 – 4. Modellieren und Diagrammarten

Ergänze die Klasse Ampel um die folgende Methode:

Zeichne ein Sequenzdiagramm für den Aufruf ampelVerschieben(200, -100).

Lösung am Ende der Präsentation.

14

Übung 3 – Ampel verschieben

public void ampelVerschieben(int dX, int dY){

g.verschiebenUm(dX,dY);

rot.verschiebenUm(dX,dY);

gelb.verschiebenUm(dX,dY);

gruen.verschiebenUm(dX,dY);

}

(15)

Beschreibung von Methoden - Zustandsdiagramm

Ein Zustandsdiagramm beschreibt die Übergänge von Zuständen während des Ablaufs eines Programms.

Dabei können auch mehrere Methoden beteiligt sein.

Ein Zustand (z.B. Ampelphase) kann durch den Wert

eines Attributs beschrieben werden.

(16)

Informatik 10 – 4. Modellieren und Diagrammarten 16

Zustandsdiagramm Ampel

(17)

Zustandsdiagramm Ampel

Startzustand

auslösende Aktion

(18)

Informatik 10 – 4. Modellieren und Diagrammarten

Die Methode ausschalten() soll die Ampel nur aus der Ampelphase „gelb“ in den Zustand „aus“

überführen.

Nur aus dem Zustand „aus“ soll die Methode

einschalten() die Ampel wieder in den Zustand „ein“

überführen.

Ergänze das Zustandsdiagramm und die Implementierung.

Lösung am Ende der Präsentation.

18

Übung 4 – Ampel Zustandsdiagramm

(19)

Beschreibung von Methoden - Zustandsdiagramm Bei den Zustandsübergängen können zusätzliche

Bedingungen und ausgelöste Aktionen beteiligt sein:

(20)

Informatik 10 – 4. Modellieren und Diagrammarten 20

Beschreibung von Methoden - Zustandsdiagramm

Beispiel

Ein einfacher Kaffeeautomat soll im Zustand Bereit nach Drücken der Taste "Start" eine Tasse Kaffee ausgeben.

Für den Fall, dass kein Kaffee eingefüllt ist, erscheint eine

Fehlermeldung, der Automat wartet auf die Eingabe von Kaffee und befindet sich im Zustand Fehler.

Ist in diesem Zustand der Kaffee eingefüllt, wird die Tasse Kaffee

ausgegeben und der Zustand auf Bereit gewechselt.

(21)

Beschreibung von Methoden - Zustandsdiagramm

Beispiel

Ein einfacher

Kaffeeautomat soll im Zustand Bereit nach Drücken der Taste "Start"

eine Tasse Kaffee ausgeben.

Für den Fall, dass kein Kaffee eingefüllt ist, erscheint eine Fehlermeldung, der Automat wartet auf die Eingabe von Kaffee und befindet sich im Zustand Fehler.

Ist in diesem Zustand der Kaffee eingefüllt, wird die Tasse Kaffee ausgegeben und der Zustand auf Bereit gewechselt.

(22)

Informatik 10 – 4. Modellieren und Diagrammarten 22

Übung 5 – Zustandsdiagramm, Stoppuhr

Zum Modellieren einer Stoppuhr verwendet man ein Zustandsdiagramm mit den Zuständen „Bereit“, „Zeitmessung läuft“ und „Zeit angehalten“.

Drückt man im Startzustand „Bereit“ die Taste „StartStopp“, startet die Zeitmessung und die Anzeige wird aktualisiert.

Drückt man im Zustand „Zeitmessung läuft“ die Taste „StartStopp“, wird die Zeitmessung angehalten und die Anzeige aktualisiert. Drückt man die Taste

„StartStopp“ erneut, läuft die Zeitmessung weiter und die Anzeige wird aktualisiert.

Die Taste „Reset“ löst auf der Uhr die Anzeige „reset“ aus und setzt sie in den Startzustand.

Während der Zeitmessung kann man auch die Taste „Zwischenzeit“ betätigen.

Dies aktualisiert die Anzeige.

Zeichne das Zustandsdiagramm.

Lösung am Ende der Präsentation.

(23)

Übung 6 – Zustandsdiagramm, Spülmaschine

Die Spülmaschine ist zu Beginn im Zustand "Stand By".

Nach Wählen eines Programms ist sie im Zustand "Programm gewählt".

Durch Drücken der Taste Start wechselt sie nur dann in den Zustand "In Betrieb", wenn die Tür geschlossen ist. In diesem Fall wird der Wasserzulauf geöffnet und das Programm gestartet.

Öffnet man während des laufenden Programms die Tür, wird der Wasserzulauf gestoppt und das Programm angehalten. Die Maschine ist dann im Zustand "Pause" und durch Drücken der Taste "Abbrechen" gelangt man in den Zustand "Stand By".

Das Abbrechen ist auch vom Zustand "Programm gewählt" möglich.

Schließt man im Zustand "Pause" wieder die Tür, wird das Programm fortgesetzt.

Öffnet man die Tür nach Beenden des Programms, wechselt die Maschine in den Zustand

"Stand By".

(24)

Informatik 10 – 4. Modellieren und Diagrammarten 24

Übung 7 – Zustandsdiagramm, Kühlschrank

Ein einfacher Kühlschrank besitzt einen Ein-Aus-Schalter, der jederzeit betätigt werden kann. Im eingeschalteten Zustand kann er auf die Kühlstufen 1, 2 oder 3 eingestellt

werden. Dafür gibt es die Tasten zum Hochschalten und zum Herunterschalten der ▲ ▼ Kühlstufe. Nach dem Einschalten befindet sich der Kühlschrank immer auf Kühlstufe 2.

a) Modelliere den beschriebenen Kühlschrank mithilfe eines Zustandsdiagramms.

b) Erstelle eine Zustandsübergangstabelle :

Lösung am Ende der Präsentation.

Zustand \ auslösende Aktion einschalten hochschalten herunterschalten aus

1 2 3

(25)

Übung 7 – Zustandsdiagramm, Kühlschrank (*)

c)

Implementiere den Kühlschrank durch Definition einer geeigneten Klasse, wobei die

möglichen Zustände des Kühlschranks durch die Attribute stufe und eingeschaltet und die auslösenden Aktionen durch die Methoden hochschalten(), herunterschalten() und

einausschalten() realisiert werden sollen.

Teste deine Implementierung, indem du die Zustandsübergänge nach unterschiedlichen Methodenaufrufen mit dem Zustandsdiagramm vergleichst. Definiere dazu eine Methode zustandAusgeben(), die den Zustand des Kühlschranks auf dem Bildschirm ausgibt.

Lösung am Ende der Präsentation.

(26)

Informatik 10 – 4. Modellieren und Diagrammarten

Sequenzdiagramm für die Methode rotSetzen().

26

Übung 2 – Ampel Lösung

(27)

Sequenzdiagramm für die Methode rotSetzen().

erstellt mit

websequencediagrams.com Quelltext:

Übung 2 – Ampel Lösung

title rotSetzen()

user->+ampel1 : rotSetzen() ampel1->+gruen: aus()

gruen-->-ampel1:

ampel1->+gelb: aus() gelb-->-ampel1:

ampel1->+rot: an() rot-->-ampel1:

ampel1-->-user:

(28)

Informatik 10 – 4. Modellieren und Diagrammarten

Sequenzdiagramm für die Methode

ampelVerschieben(200,-100) erstellt mit

websequencediagrams.com Quelltext:

28

Übung 3 – Ampel verschieben Lösung

title ampelVerschieben(200,-100) user->+ampel1 :

ampelVerschieben(200,-100)

ampel1->+g: verschieben(200,-100) g-->-ampel1:

ampel1->+gruen: verschiebenUm(200,- 100)

gruen-->-ampel1:

ampel1->+gelb: verschiebenUm(200,- 100)

gelb-->-ampel1:

ampel1->+rot: verschiebenUm(200,-100) rot-->-ampel1:

ampel1-->-user:

(29)

Übung 4 – Ampel Zustandsdiagramm Lösung

(30)

Informatik 10 – 4. Modellieren und Diagrammarten 30

Übung 5 – Zustandsdiagramm, Stoppuhr Lösung

(31)

Übung 6 – Zustandsdiagramm, Spülmaschine Lösung

(32)

Informatik 10 – 4. Modellieren und Diagrammarten 32

Übung 7 – Zustandsdiagramm, Kühlschrank Lösung

Jahrgangsstufe 10 125

4.2.1.2 Lösungsvorschlag zu Aufgabe 1

a)

b)

auslösende Aktion Zustand

einausschalten hochschalten herunterschalten

aus 2 aus aus

1 aus 2 1

2 aus 3 1

3 aus 3 2

c) public class Kuehlschrank { private int stufe;

private boolean eingeschaltet;

public Kuehlschrank() { eingeschaltet = false;

}

public void zustandAusgeben() { if (eingeschaltet) {

System.out.println("Der Kühlschrank ist eingeschaltet, die eingestellte Kühlstufe ist " + stufe + ".");

} else {

System.out.println("Der Kühlschrank ist ausgeschaltet.");

} }

public void hochschalten() { if (stufe < 3) {

stufe = stufe + 1;

} }

hoch-/

herunterschalten

herunterschalten

hochschalten

aus 2

1

einausschalten einausschalten

herun tersch

alten hochs

chalten einausschalten

3

einau ssch

alten hochschalten

herunterschalten

(33)

Informatik 10 – 4. Modellieren und Diagrammarten 33

Übung 7 – Zustandsdiagramm, Kühlschrank Lösung

Zustand \ auslösende Aktion einschalten hochschalten herunterschalten

aus 2 aus aus

1 aus 2 1

2 aus 3 1

3 aus 3 2

Jahrgangsstufe 10 125

4.2.1.2 Lösungsvorschlag zu Aufgabe 1

a)

b)

auslösende Aktion Zustand

einausschalten hochschalten herunterschalten

aus 2 aus aus

1 aus 2 1

2 aus 3 1

3 aus 3 2

c)public class Kuehlschrank { private int stufe;

private boolean eingeschaltet;

public Kuehlschrank() { eingeschaltet = false;

}

public void zustandAusgeben() { if (eingeschaltet) {

System.out.println("Der Kühlschrank ist eingeschaltet, die eingestellte Kühlstufe ist " + stufe + ".");

} else {

System.out.println("Der Kühlschrank ist ausgeschaltet.");

} }

hoch-/

herunterschalten

herunterschalten

hochschalten

aus 2

1

einausschalten einausschalten

herun tersch

alten hochsc

halten einausschalten

3

einauss

chalten hochschalten

herunterschalten

(34)

Informatik 10 – 4. Modellieren und Diagrammarten 34

Übung 7 – Zustandsdiagramm, Kühlschrank (*) Lösung

c)

Vgl. BlueJ Projekt kuehlschrank_1c

Referenzen

ÄHNLICHE DOKUMENTE

Wie gemacht für die Zubereitung in Kaffee- vollautomaten: Eine Komposition erlesener Spitzenkaffees mit ausgewogenem Aroma und feinster Crema, gekennzeichnet durch eine

- Grafik 10: Häuslicher Konsum von herkömmlichem und entkoffeiniertem Kaffee im letzten Monat, nach Alter, Juli 2019. • Geschmack stellt Barriere für Konsum von entkoffeinierten

Cantina Sampietrana, Apulien, Italien trocken, vollfruchtig, kraftvoll, gute

Die neue Sonderausstellung des Deutschen Museums „Kosmos Kaffee“ hat einiges zu bieten: fast 200 Exponate, 22 Medien-, Film-, Hör- und Spielstationen und 16 interaktive

Er ist sich sicher, dass sich alles auflösen wird, wenn er sich nicht mehr daran erinnert.. Auf die Beerdigung geht er alleine, ein Fahrer der Familie setzt ihn vor

besonders hervorzuheben. Viele Fragen und Abspra- chen ergaben sich erst aus dem Praxisbetrieb und es war von Vorteil, dass es feste Ansprechpartner in allen Häusern gab,

Weingut Schloß Vollrads, Rheingau / Deutschland Riesling – weiß. trocken, feine Mineraltöne,

with herb sauce, buttered carrots and mashed potatoes with creamed mushrooms and mashed potatoes. Hausgemachter Kartoffelpuffer