20
Software Engineering 1 6. Übung Sönke Holthusen, Matthias Kowal, Joachim Steinmetz Institut für Softwaretechnik und Fahrzeuginformatik

Software Engineering 1 6. Übung

Embed Size (px)

DESCRIPTION

Software Engineering 1 6. Übung. Sönke Holthusen, Matthias Kowal , Joachim Steinmetz Institut für Softwaretechnik und Fahrzeuginformatik. Aufgabe 2a - Statecharts. - PowerPoint PPT Presentation

Citation preview

Page 1: Software Engineering 1 6. Übung

Software Engineering 16. ÜbungSönke Holthusen, Matthias Kowal, Joachim SteinmetzInstitut für Softwaretechnik und Fahrzeuginformatik

Page 2: Software Engineering 1 6. Übung

Sönke Holthusen, Matthias Kowal, Joachim Steinmetz | Software Engineering 1 6. Übung | Seite 2

Aufgabe 2a - Statechartsa) Modellieren sie eine Lichtschaltung als Zustandsdiagramm. Im Startzustand

ist die Lampe aus. Schaltet man das Licht an, geht die Lampe im gedimmten Zustand an. Dimmt man die Lampe heller, wird der Zustand Hell erreicht. Dimmt man die Lampe schwacher, wird der Zustand Gedimmt erreicht. Das Licht kann, egal ob gedimmt oder hell, ausgeschaltet werden.

Page 3: Software Engineering 1 6. Übung

Sönke Holthusen, Matthias Kowal, Joachim Steinmetz | Software Engineering 1 6. Übung | Seite 3

Aufgabe 2b.1 - Statechartsb) Modellieren Sie das folgende Verhalten des Anrufbeantworters: „Der

Anrufbeantworter wartet auf Anrufe. Wenn ein Anruf ankommt, wird der Anruf angenommen. Danach wird entweder Ansage 1 oder Ansage 2 abgespielt: Wenn noch nicht die maximale Anzahl an Nachrichten gespeichert ist, wird Ansage 1 abgespielt. Wenn die maximale Anzahl an Nachrichten gespeichert ist, wird Ansage 2 abgespielt. Nach dem Ende von Ansage 1 wird die Aufnahme gestartet. Wenn danach der Anrufer auflegt, wird die Verbindung getrennt. Nach dem Ende von Ansage 2 wird die Verbindung ohne Aufnahme getrennt.“

Page 4: Software Engineering 1 6. Übung

Sönke Holthusen, Matthias Kowal, Joachim Steinmetz | Software Engineering 1 6. Übung | Seite 4

Aufgabe 2b.2 - Statechartsb) Modellieren Sie möglichst elegant, dass der Anrufer jederzeit, nachdem der

Anrufbeantworter den Anruf angenommen hat, auflegen kann und die Verbindung getrennt wird.

Page 5: Software Engineering 1 6. Übung

Sönke Holthusen, Matthias Kowal, Joachim Steinmetz | Software Engineering 1 6. Übung | Seite 5

Aufgabe 2b.3 - Statechartsb) Modellieren Sie zusätzlich das folgende Verhalten: „Wenn am

Anrufbeantworter der Knopf zur Wiedergabegedrückt wird und mindestens eine Nachricht gespeichert ist, werden die gespeicherten Nachrichten abgespielt. Wenn der Knopf gedrückt wird und keine Nachricht gespeichert ist, führt der Anrufbeantworter keine Aktion aus. Während der Wiedergabe der gespeicherten Nachrichten kann der Stopp-Knopf gedrückt werden und die Wiedergabe wird gestoppt. Wenn alle Nachrichten abgespielt worden sind, wird die Wiedergabe die Wiedergabe ebenfalls gestoppt.“

Page 6: Software Engineering 1 6. Übung

Sönke Holthusen, Matthias Kowal, Joachim Steinmetz | Software Engineering 1 6. Übung | Seite 6

Informationen zur Klausur

• Termin: • Freitag, 22.02.2013, 16:30-18:00 Uhr

• SN19.1: A-F• Audimax: G-P• PK15.1: Q-Z

• Wiederholungsklausur• Dienstag, 26.03.2013, 08:15-9:45 Uhr

• Keine Hilfsmittel und keine Wörterbücher• Aufgabenstellung: Deutsch• Antworten sind in DE oder EN möglich

Page 7: Software Engineering 1 6. Übung

Sönke Holthusen, Matthias Kowal, Joachim Steinmetz | Software Engineering 1 6. Übung | Seite 7

Klausurrelevante Themen

• Vorgehensmodelle• Anwendungsfalldiagramme (Use Cases)• Klassendiagramme• Sequenzdiagramme• Aktivitätsdiagramme• Komponentendiagramme• Zustandsdiagramme (Statecharts)• Entwurfsmuster• White- und Black Box – Testen• Vorlesungsfolien

Page 8: Software Engineering 1 6. Übung

Sönke Holthusen, Matthias Kowal, Joachim Steinmetz | Software Engineering 1 6. Übung | Seite 8

Vorgehensmodelle

• Wasserfall (+Rückkopplung)• V-Modell• Iterative-Verfahren

• Spiralmodell• Agile-Methoden

• XP• SCRUM

• Prototypen

Page 9: Software Engineering 1 6. Übung

Sönke Holthusen, Matthias Kowal, Joachim Steinmetz | Software Engineering 1 6. Übung | Seite 9

Anwendungsfalldiagramme

Page 10: Software Engineering 1 6. Übung

Sönke Holthusen, Matthias Kowal, Joachim Steinmetz | Software Engineering 1 6. Übung | Seite 10

Klassendiagramme

Page 11: Software Engineering 1 6. Übung

Sönke Holthusen, Matthias Kowal, Joachim Steinmetz | Software Engineering 1 6. Übung | Seite 11

Sequenzdiagramme

Page 12: Software Engineering 1 6. Übung

Sönke Holthusen, Matthias Kowal, Joachim Steinmetz | Software Engineering 1 6. Übung | Seite 12

Aktivitätsdiagramme

Page 13: Software Engineering 1 6. Übung

Sönke Holthusen, Matthias Kowal, Joachim Steinmetz | Software Engineering 1 6. Übung | Seite 13

Komponentendiagramme

Page 14: Software Engineering 1 6. Übung

Sönke Holthusen, Matthias Kowal, Joachim Steinmetz | Software Engineering 1 6. Übung | Seite 14

Statecharts

Page 15: Software Engineering 1 6. Übung

Sönke Holthusen, Matthias Kowal, Joachim Steinmetz | Software Engineering 1 6. Übung | Seite 15

Entwurfsmuster

• Adapter• Decorator• Composite• Factory• Singleton• Observer

Page 16: Software Engineering 1 6. Übung

Sönke Holthusen, Matthias Kowal, Joachim Steinmetz | Software Engineering 1 6. Übung | Seite 16

Architektur-, Verteilungs- und Steuerungsmuster• Schichten• Chain• Interpreter• Model-View-Controller

• Zentrales System• Client/Server: Two-Tier, Three-Tier• Föderation• Cloud Computing

• Zentrale Steuerung: Call-Return, Master-Slave• Ereignis-Steuerung: Selective Broadcast, Interrupt

Page 17: Software Engineering 1 6. Übung

Sönke Holthusen, Matthias Kowal, Joachim Steinmetz | Software Engineering 1 6. Übung | Seite 17

Black Box - Testen

• Äquivalenzklassen finden• Grenzwerte

• Beispiele aus ÄK

• Minimale Java-Programmierung (gilt für alle Aufgaben)

• Einfacher Junit Tests (siehe Übung)

Page 18: Software Engineering 1 6. Übung

Sönke Holthusen, Matthias Kowal, Joachim Steinmetz | Software Engineering 1 6. Übung | Seite 18

White Box - Testen

a) Kontrollflussgraph zeichnen

b) Anweisungsüberdeckung (C0-Test)• Eingaben mit denen jede Anweisung ausgeführt wird

c) Zweigüberdeckung (C1-Test)• Eingaben für die jeder Zweig des Graphen ausgeführt wird, inklusive leeren Alternativen

d) Pfadüberdeckung (C2-Test)• Eingaben für alle möglichen Pfade

Page 19: Software Engineering 1 6. Übung

Sönke Holthusen, Matthias Kowal, Joachim Steinmetz | Software Engineering 1 6. Übung | Seite 19

X<Y (3,1) {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 4, 3, 5, 6, 7, 4, 3, 13}

Page 20: Software Engineering 1 6. Übung

Sönke Holthusen, Matthias Kowal, Joachim Steinmetz | Software Engineering 1 6. Übung | Seite 20

• Die erste Regel des Clubs der SE1-Besteher:• Aufgabenstellung genau lesen!

• Die zweite Regel des Clubs der SE1-Besteher:• Aufgabenstellung genau lesen!

*man denke sich eine Fightclub Referenz als Hintergrund