Software Engineering 1 6. Übung Sönke Holthusen, Matthias Kowal, Joachim Steinmetz Institut für Softwaretechnik und Fahrzeuginformatik
Aufgabe 2a - Statecharts 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.
Aufgabe 2b.1 - Statecharts 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.“
Aufgabe 2b.2 - Statecharts Modellieren Sie möglichst elegant, dass der Anrufer jederzeit, nachdem der Anrufbeantworter den Anruf angenommen hat, auflegen kann und die Verbindung getrennt wird.
Aufgabe 2b.3 - Statecharts 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.“
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
Klausurrelevante Themen Vorgehensmodelle Anwendungsfalldiagramme (Use Cases) Klassendiagramme Sequenzdiagramme Aktivitätsdiagramme Komponentendiagramme Zustandsdiagramme (Statecharts) Entwurfsmuster White- und Black Box – Testen Vorlesungsfolien
Vorgehensmodelle Wasserfall (+Rückkopplung) V-Modell Iterative-Verfahren Spiralmodell Agile-Methoden XP SCRUM Prototypen
Anwendungsfalldiagramme
Klassendiagramme
Sequenzdiagramme
Aktivitätsdiagramme
Komponentendiagramme
Statecharts
Entwurfsmuster Adapter Decorator Composite Factory Singleton Observer
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
Black Box - Testen Äquivalenzklassen finden Beispiele aus ÄK Grenzwerte Beispiele aus ÄK Minimale Java-Programmierung (gilt für alle Aufgaben) Einfacher Junit Tests (siehe Übung)
White Box - Testen Kontrollflussgraph zeichnen Anweisungsüberdeckung (C0-Test) Eingaben mit denen jede Anweisung ausgeführt wird Zweigüberdeckung (C1-Test) Eingaben für die jeder Zweig des Graphen ausgeführt wird, inklusive leeren Alternativen Pfadüberdeckung (C2-Test) Eingaben für alle möglichen Pfade
X<Y (3,1) {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 4, 3, 5, 6, 7, 4, 3, 13}
Die erste Regel des Clubs der SE1-Besteher: Aufgabenstellung genau lesen! Die zweite Regel des Clubs der SE1-Besteher: *man denke sich eine Fightclub Referenz als Hintergrund