• Keine Ergebnisse gefunden

4. Modellieren und DiagrammartenInformaEk 10 –4. Modellieren und Diagrammarten1

N/A
N/A
Protected

Academic year: 2022

Aktie "4. Modellieren und DiagrammartenInformaEk 10 –4. Modellieren und Diagrammarten1"

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

InformaEk 10 – 4. Modellieren und Diagrammarten 1

(2)

Informatik 10 – 4. Modellieren und Diagrammarten 2

Modellieren und Implementieren

(3)

Informatik 10 – 4. Modellieren und Diagrammarten 3

Einfaches

Klassendiagramm

3 1 ist_in >

besitzt >

(4)

Informatik 10 – 4. Modellieren und Diagrammarten 4

Erweitertes

Klassendiagramm

(5)

Informatik 10 – 4. Modellieren und Diagrammarten 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)

Informatik 10 – 4. Modellieren und Diagrammarten 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)

Informatik 10 – 4. Modellieren und Diagrammarten 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)

Informatik 10 – 4. Modellieren und Diagrammarten 11

Sequenzdiagramm Bezeichnungen

Aktivitätsbalken

Botscha@ Rückmeldung

beteiligte Objekte

(12)

Informatik 10 – 4. Modellieren und Diagrammarten 12

Zeichnen von Sequenzdiagrammen

online

www.websequencediagrams.com

(13)

Informa(k 10 – 4. Modellieren und Diagrammarten

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

Lösung am Ende der Präsentation.

13

Ü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)

Informatik 10 – 4. Modellieren und Diagrammarten 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)

Informatik 10 – 4. Modellieren und Diagrammarten 17

Zustandsdiagramm Ampel

Startzustand

auslösende Aktion

(18)

Informa(k 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)

Informatik 10 – 4. Modellieren und Diagrammarten 19

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

Bedingungen und ausgelöste AkDonen 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)

Informatik 10 – 4. Modellieren und Diagrammarten 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 Bereitgewechselt.

(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)

Informatik 10 – 4. Modellieren und Diagrammarten 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".

Zeichne ein Zustandsdiagramm.

Lösung am Ende der PräsentaVon.

(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äGgt 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äsentaGon.

Zustand \ auslösende Aktion einschalten hochschalten herunterschalten aus

1 2 3

(25)

Informatik 10 – 4. Modellieren und Diagrammarten 25

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

c)

Implemen=ere den Kühlschrank durch Defini=on einer geeigneten Klasse, wobei die

möglichen Zustände des Kühlschranks durch die AJribute stufe und eingeschaltet und die auslösenden Ak=onen durch die Methoden hochschalten(), herunterschalten() und

einausschalten() realisiert werden sollen.

Teste deine Implemen=erung, 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äsenta=on.

(26)

Informa(k 10 – 4. Modellieren und Diagrammarten

Sequenzdiagramm für die Methode rotSetzen().

26

Übung 2 – Ampel Lösung

(27)

Informatik 10 – 4. Modellieren und Diagrammarten

Sequenzdiagramm für die Methode rotSetzen().

erstellt mit

websequencediagrams.com Quelltext:

27

Ü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)

Informa(k 10 – 4. Modellieren und Diagrammarten 29

Übung 4 – Ampel Zustandsdiagramm Lösung

(30)

Informatik 10 – 4. Modellieren und Diagrammarten 30

Übung 5 – Zustandsdiagramm, Stoppuhr Lösung

(31)

Informa(k 10 – 4. Modellieren und Diagrammarten 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

herunte

rschalten hochsc

halten einau

sscha lten

3

einau ssch

alten

hochschalten heru

nterschalten

(33)

Informatik 10 – 4. Modellieren und Diagrammarten 33

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

Zustand \ auslösende Ak>on 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.");

} }

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

stufe = stufe + 1;

} }

hoch-/

herunterschalten

herunterschalten

hochschalten

aus 2

1

einausschalten einausschalten

herunte rschalten hochsc

halten einau

sscha lten

3

einau ssch

alten

hochschalten heru

nterschalten

(34)

Informatik 10 – 4. Modellieren und Diagrammarten 34

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

c)

Vgl. BlueJ Projekt kuehlschrank_1c

Referenzen

ÄHNLICHE DOKUMENTE

Bei vier Geraden in allgemeiner Lage gibt es ( ) 3 4 = 4 Möglichkeiten, drei Geraden aus- zuwählen und damit ein Dreieck zu bilden.. Die Umkreise dieser vier Dreiecke schneiden

Eine Woche dürfen unsere beiden Beobachter die Ruhe und Schönheit der winterlichen Antarktis auf Signy Island noch genießen, dann werden wir sie mit Polarstern wieder abholen..

Aus der anfänglichen Unsicherheit über die Sinnhaftigkeit der Fortsetzung des Projektes, be- dingt durch den enormen Arbeitseinsatz und unter der Annahme

hältnis Modell und Wirklichkeit zuein- ander stehen. Ein solches Verständnis lässt sich durch di e aktive Auseinander- setzung mit Modellen im konkreten Fall und

Ihr transportiert alle Steine im oberen Feld (die gelösten Farbstoffteilchen) ein Feld weiter, also entlang der Kreide nach oben. Jetzt setzen sich die Farbstoff teile wieder

Dies kann Ausgangspunkt für die Aufgabe sein, den Energieumsatz vom&#34; System Mensch&#34; mittels einer einfachen chemischen Gleichung zu &#34;mo- dellieren&#34; und daraus

Dabei sind auch quanti- tative Aussagen möglich, denn die physikalischen Größen können als Zahlenwerte oder als Pfeile oder Graphen angezeigt werden. Krey,

Es ist aber auch möglich, im Unterricht Teile des Modells oder insbesondere die Animation vorzugeben, die dann nur noch ergänzt werden müssen.. Möchte man