Aufgabe 1 (Anwendungsfalldiagramm)

Ähnliche Dokumente
Studientag 1793 Software Engineering I. 6. Juli 2014

Aufgabe 1 (Anwendungsfalldiagramm)

Studientag 1793 Software Engineering I. 6. Juli 2014

Kurs 1793 Software Engineering I - Grundkonzepte der OOSE Klausur am

Studientage in Hagen Kurs /18

Nr. 1 Aufgabe Studientage in Hagen Kurs /17

Übungsaufgaben Softwaretechnologie

a) Einen Mechanismus für den AF "Vergehen erfassen" zeigt die Abb. 1. Vergehen erfassen Vergehen erfassen «include» VergehenErfassenK «use» Vergehen

Softwaretechnologie - Wintersemester 2011/12 - Dr. Günter Kniesel

a) Abb. 1 zeigt das Domänen-Klassendiagramm für das Verwaltungssystem. Kunde vorname: String nachname: String geburtstag: Datum adresse: String

Auktion name adresse pseudonym adresse /bewertungszahl. Gebot. höhe zeitpunkt bieter. initiiert

Softwaretechnologie Wintersemester 2009/2010 Dr. Günter Kniesel, Pascal Bihler

Verwenden der Bedienerkonsole

MPGI 3 Muster-SLK B. Wintersemester 2011/ Februar 2012

Software Engineering I. Musterlösungen zur Klausur vom Aufgabe 1

Verwenden der Bedienerkonsole

Übungsblatt Programmierung und Software-Entwicklung Generizität, Interfaces, Listen, Sortieralgorithmen & JUnit

Softwaretechnologie Wintersemester 2009/2010 Dr. Günter Kniesel, Pascal Bihler

Objektorientiertes Design

Aufgabe spshaus Übung P1

Aufgabe 1: Sequenzdiagramm Gegeben ist das in Abbildung 1 dargestellte (vereinfachte) Sequenzdiagramm mit sechs Ereignissen (a-f ).

Together - Integrierte SWE und QA 1. Fahrstuhlsteuerung

Jason T. Roff UML. IT Tutorial. Übersetzung aus dem Amerikanischen von Reinhard Engel

Beispielklausur B MPGI 3

PRÜFUNG. Grundlagen der Softwaretechnik

Übung - Datensicherung und Wiederherstellung in Windows 7

PRÜFUNG. Grundlagen der Softwaretechnik

VORDIPLOMSPRÜFUNG FÜR ELEKTROINGENIEURE. Einführung in die Informatik III

PRÜFUNG. Grundlagen der Softwaretechnik

1 KANAL LED CCT DIMMER PushDIM 2x8A (3421)

a) In der Aufgabenstellung war ein möglichst einfaches Klassendiagramm gefordert. Abb. 1 zeigt eine mögliche Lösung. * * * Aufbau 1..

So#waretechnologie für Fortgeschri4ene Teil Eide. Stunde IV: UML. Köln 26. Januar 2017

36. Wartung. Sie erreichen die Wartungs-Übersicht über den Punkt Wartung

Christoph Kecher, Alexander Salvanos UML 2.5. Das umfassende Handbuch. Rheinwerk. Computing

Anleitung DGTV Fernbedienung

Bedienungsanleitung Beamersteuerung

124 Kompetenzorientierte Aufgaben im Informatikunterricht

Unified Modeling Language (UML)

UML (Unified Modelling Language) von Christian Bartl

Software Engineering in der Praxis

Medienart: Print Medientyp: Publikumszeitschriften Auflage: 312'871 Erscheinungsweise: 26x jährlich

Softwaretechnologie -Wintersemester 2013/ Dr. Günter Kniesel

1. Allgemeines. Mit der Vertragsverwaltung können u.a.

Cup Reglement EMMENTALISCHER HORNUSSERVERBAND. Sinn und Zweck

Bedienungsanleitung für PolterPhones (Smartphones ohne Touchscreen) Inhaltsverzeichnis

1. Hauptfunktionen Digitale Kamera, Fotowiedergabe (Dia-Show) und PC Kamera

2. Übung zu Software Engineering

OMEGA SATURN Kurz-Bedienungsanleitung Handball

Benutzerhandbuch VSB Haushaltsplaner 1.0.0

PRODUKTDOKUMENTATION: TASTENBEDIENUNG DIGITALSTROM KLEMMEN

Trainingsmanagement Gutschein Management. Beschreibung

Gehen Sie auf den Reiter Lampen. Mit einem Doppelklick auf die ausgewählte Lampe, können sie dieser ein SMART Schalt-Verfahren zuweisen.

TEIL I Strukturdiagramme 1 Einführung Klassendiagramm Objektdiagramm Kompositionsstrukturdiagramm...

Mandant in den einzelnen Anwendungen löschen

Sommersemester Analyse II: Verhalten (Zustandsautomaten)

UML - Statische Diagramme

Software- und Systementwicklung

SMART Blue. Smarter Schalter

Vorlesung Programmieren

a) In der Aufgabenstellung war ein möglichst einfaches Klassendiagramm gefordert. Abb. 1 zeigt eine mögliche Lösung.

Caratec Locate Alarmkonfiguration

Grundlagen der Softwaretechnik

-Abwesenheitsnachricht einrichten

RE11 Übung 7 Johannes Ehm Alejandra Rodríguez

Kartenanforderung einstellen

PRÜFUNG. Grundlagen der Softwaretechnik

Unified Modeling Language 2

Das umfassende Handbuch

Uepaa Alleinarbeiterschutz

Softwaretechnologie Wintersemester 2009/2010 Dr. Günter Kniesel, Pascal Bihler

D1: Relationale Datenstrukturen (14)

Softwaretechnologie -Wintersemester 2011/ Dr. Günter Kniesel

Verwenden der Druck- und Zurückhaltefunktion

Kapitel 1: Die ersten Schritte Thema: Programmieren Seite: 1

Druckereinstellungen. Energiesparfunktion. Auswählen der Ausgabeoptionen. Phaser 5500 Laserdrucker

Kurs 1793 Software Engineering I - Grundkonzepte der OOSE Klausur am

Software Engineering in der Praxis

Verwaltung Stundensätze

Anleitung Währungsrechner

4. Übung zu Software Engineering

Unified Modelling Language

UML 2.0 Das umfassende Handbuch

Inhalt. Kurzanleitung Web-Anwendung Pods Ladestation...18

ACS Data Systems AG. Bestellungen. (Version ) Buchhaltung für Schulen. ACS Data Systems AG. Bozen / Brixen / Trient. Tel

SOFTWARETECHNIK (FB MN) 1. PRAKTIKUM Diplom 4 (2430) Sommersemester FACHBEREICH INFORMATIK Michael Guist / Urs Andelfinger

DuoFern Funksender UP 9497 als Sensor verwenden

Betrieb des NESS H200 Wireless- Systems

Maus Laser Bluetooth mit 5 Tasten ID0032

Erstellen von PDF-Dokumenten Mit dem MP Navigator EX und dem Canon Scanner-Treiber ScanGear

Vorlesung Programmieren. Unified Modeling Language (UML) Unified Modeling Language (UML) Unified Modeling Language (UML)

Vorlesung Programmieren

Ute Kalff Windows7 Zusammenfassung aus Windows-Hilfe

Übungen Softwaretechnik I

LED PUSH Dimmer DW (Dynamic White) Bedienungsanleitung

OO-Design. Klausur FHF * WI1 / WI2 * SS Name:.../ Semester:...

Drucken und Löschen von angehaltenen Druckaufträgen Erkennen von Formatierungsfehlern Bestätigen von Druckaufträgen Reservieren von Druckaufträgen

Wichtige Befehle bei der Programmierung von. FISCHER-Technik

OOSE11 OOA: Klassen- und Objektdiagramme

Unified Modeling Language

Übung bezeichnung titel thema Übungsgruppe gruppennr wochentag uhrzeit namementor vornamementor Student name vorname matrikelnr

Transkript:

Studientag in Hagen Kurs 1793 11.01.2014 Aufgabe 1 (Anwendungsfalldiagramm) In dieser Aufgabe soll ein Anwendungsfalldiagramm für die im Folgenden beschriebenen Abläufe bei dem Kauf einer Fahrkarte an einem Fahrkartenautomaten erstellt werden. Der Kauf einer Fahrkarte besteht im Wesentlichen aus der Auswahl der Fahrkartenkategorie und der Bezahlung. Kunden können am Automaten Fahrkarten der Kategorien Einzelfahrkarte und Monatskarte kaufen. In beiden Fällen muss eine Altersstufe (z.b. Kind oder Erwachsener) gewählt werden. Während beim Kauf einer Einzelfahrkarte ein Startpunkt und ein Fahrtziel angeben werden muss, ist bei einer Monatskarte eine Tarifzone zu wählen. Die Bezahlung einer Fahrkarte kann in Bar oder per Kreditkarte erfolgen. Bei der Bezahlung per Kreditkarte wird zusätzlich ein Zahlungsbeleg über die Kreditkartentransaktion ausgedruckt. Eine Fahrkartenauswahl kann unter den folgenden Umständen abgebrochen werden: 1) Die Abbruchtaste wird währen der Fahrkartenauswahl gedrückt. 2) Nach der Fahrkartenauswahl erfolgt über einen bestimmten Zeitraum keine Bezahlung (Timeout). 3) Die Bezahlung ist nicht erfolgreich. Neben dem Kaufen von Fahrkarten können Kunden am Fahrkartenautomaten auch Hilfestellungen abrufen. Der Fahrkartenautomat wird des Weiteren von Servicetechnikern zur Wartung bedient. Bei einer Wartung werden optional die Tarife angepasst und der Wechselgeldbehälter gewartet. Haben sich die Tarife geändert, soll der Anwendungsfall Tarife setzen ausgeführt werden. Wenn der Wechselgeldbehälter leer bzw. voll ist, wird der Anwendungsfall Wechselgeldbehälter füllen bzw. Wechselgeldbehälter leeren ausgeführt. Nach einer Wartungsarbeit wird ein Wartungsbeleg über die durchgeführten Arbeiten ausgedruckt. Servicetechniker können zu Prüfzwecken (wie Kunden) Fahrkarten kaufen und Hilfestellungen abrufen. Erstellen Sie ein Anwendungsfalldiagramm, welches die beschriebenen Abläufe unter Angabe aller Akteure, Anwendungsfälle und Beziehungen modelliert.

Aufgabe 2 (Klassen- und Objektdiagramm) Ein Veranstalter großer Sportveranstaltungen möchte ein System entwickeln, dass ihn bei der Durchführung internationaler Sportturniere unterstützt. In dieser Aufgabe geht es darum, die Anforderungen an das System mittels eines Domänenklassenmodells zu modellieren. Dafür stehen die folgenden Informationen zur Verfügung: Der Veranstalter richtet Turniere in verschiedenen Sportarten aus. Die verschiedenen Turniere sollen durch ihre Sportart, ihren Namen und ihr Austragungsjahr voneinander unterschieden werden können. Zu jedem Turnier sind die teilnehmenden Mannschaften mit ihrem Namen und ihrer Nationalität festzuhalten. Ein Turnier wird grundsätzlich in mehreren Runden (z.b. Qualifikationsrunde, Gruppenphase, Viertelfinale, Halbfinale, Finale) ausgetragen. Eine Runde ist entweder eine Gruppenphase oder eine K.o.-Phase. In einer Gruppenphase werden die Mannschaften in verschiedene Gruppen, die durch einen Namen eindeutig bezeichnet werden, eingeteilt. In den Gruppen werden jeweils Gruppenspiele ausgetragen. Eine K.o.-Phase dagegen besteht direkt aus möglicherweise mehreren Spielen. Jedes Spiel wird von genau zwei Mannschaften bestritten. Zu jedem Spiel sind das Datum und das Ergebnis durch die erreichten Punkte der beiden Mannschaften (Tore im Fußball, Punkte beim Basketball usw. inkl. Verlängerungen, Losentscheide o.ä.) zu erfassen. Jede Gruppenphase und jede K.o-Phase mit Ausnahme des Finales hat eine Nachfolgerunde. a) Erstellen Sie ein (Domänen-) Klassendiagramm für die beschriebene Anwendungsdomäne. b) Erstellen Sie ein gültiges Objektdiagramm für die folgende Situation bei der Fußball-WM 2006: Am dritten Spieltag der Gruppe A (20. Juni 2006) trennten sich Ecuador und Deutschland mit einem 0:3.

Aufgabe 3 (Sequenzdiagramm) In dieser Aufgabe sollen Sie ein Sequenzdiagramm erstellen. Gegeben ist ein Ausschnitt eines Analyseklassendiagramms für eine Softwareanwendung zur Verwaltung eines Videoverleihs und die folgende textuelle Spezifikation des Anwendungsfalls Video ausleihen : Zeichnen Sie ein Sequenzdiagramm für das Szenario Video ausleihen ein Kunde entleiht genau ein Video des Anwendungsfalls Video ausleihen. Benutzen Sie dabei die Operation gibausleihensortiert() und beachten Sie, dass es sich bei dem Rückgabetyp um einen Iterator handelt. Hinweise: Der Detaillierungsgrad soll dem des Grobentwurfs entsprechen, wobei das Arbeiten auf Kopien nicht berücksichtigt werden muss. Gehen Sie von der Existenz einer Instanz der Anwendungsfall-Akteur-Schnittstelle MitarbeiterVideoAusleihenAAS sowie von einer Instanz der zugehörigen Kontrollklasse VideoAusleihenK aus und beginnen Sie mit der Selektion des bereits erfassten Kunden durch den Akteur Mitarbeiter. Die Kontrollklasse soll (mindestens) die Operation ausleihen(video,kunde) besitzen. Mit einem Iterator kann durch die Elemente einer Datenstruktur iteriert werden. Der Iterator verfügt über eine Methode next(), die ein Element der Datenstruktur zurückliefert und den Iterator auf das nächste Element der Datenstruktur setzt. Die Iteratormethode hasnext() überprüft, ob die Datenstruktur ein weiteres Element enthält, d.h. mit dieser Methode kann überprüft werden, ob über alle Elemente der Datenstruktur iteriert wurde.

Aufgabe 4 (Zustandsdiagramm) In dieser Aufgabe soll das Verhalten einer Waschmaschine modelliert werden. Die Waschmaschinentür kann geöffnet oder geschlossen sein. Nur wenn die Waschmaschinentür geschlossen ist, kann der Benutzer die Waschmaschine ein- und ausschalten. Solange die Waschmaschine eingeschaltet ist, kann die Tür nicht geöffnet werden. a) Erstellen Sie ein einfaches Zustandsdiagramm, welches das bisher beschriebene Verhalten der Waschmaschine modelliert. Verwenden Sie dazu die Ereignisse {öffnen, schließen, ein, aus}. Über den Zustand, in dem sich die Waschmaschine nach dem Einschalten befindet, sind weitere Details der Steuerung bekannt: Nach dem Einschalten befindet sich die Waschmaschine in einem Programmauswahlmodus. In diesem Modus wartet die Waschmaschine auf eine Programmauswahl. Dem Benutzer stehen die Waschprogramme P1, P2 und P3 zur Verfügung. Jedes Waschprogramm kann über eine entsprechende Taste ausgewählt werden. Standardmäßig ist nach dem Einschalten der Waschmaschine das Waschprogramm P1 eingestellt. Die Waschmaschine wird über die Taste Start gestartet und dadurch wird auch der Programmauswahlmodus verlassen. Wurde das Programm P1 ausgewählt, wechselt die Waschmaschine nach dem Drücken der Starttaste zunächst in den Vorwaschmodus. Beim Übergang in diesen Modus lässt die Waschmaschine grundsätzlich Wasser ein und beim Verlassen des Vorwaschmodus wird das Wasser grundsätzlich abgepumpt. Der Vorwaschmodus dauert 10 Minuten. Nach Ablauf dieser Zeit wechselt die Waschmaschine automatisch in den Hauptwaschmodus. Wie beim Vorwaschmodus lässt die Waschmaschine beim Wechsel in den Hauptwaschmodus grundsätzlich Wasser ein und pumpt beim Verlassen des Modus grundsätzlich Wasser ab. Nach 30 Minuten wechselt die Waschmaschine automatisch in den Schleudermodus. Beim Verlassen des Schleudermodus wird das aus der Wäsche geschleuderte Wasser abgepumpt. Nach 5 Minuten verlässt die Waschmaschine den Schleudermodus und wechselt zurück in den Programmauswahlmodus. Wurde das Programm P2 ausgewählt, wechselt die Waschmaschine nach dem Drücken der Starttaste direkt in den Hauptwaschmodus. Ansonsten soll das Programm P2 dem Programm P1 entsprechen. Wurde das Programm P3 ausgewählt, wechselt die Waschmaschine nach dem Drücken der Starttaste, analog zum Programm P2, direkt in den Hauptwaschmodus. Der Hauptwaschmodus wird ebenfalls nach 30 Minuten verlassen. Allerdings wechselt die Waschmaschine nach dem Hauptwaschmodus nicht in den Schleudermodus, sondern in den Programmauswahlmodus.

Die Waschmaschine kann jederzeit ausgeschaltet werden. Es ist darauf zu achten, dass beim Ausschalten Wasser abgepumpt werden muss, falls sich Wasser in der Maschine befindet. b) Erweitern Sie Ihre Lösung aus Aufgabe a) um das Verhalten nach dem Einschalten. Modellieren Sie die oben beschriebenen Modi in einem zusammengesetzten Zustand. Der zusammengesetzte Zustand soll dem Zustand aus Aufgabe a) entsprechen, in dem sich die Waschmaschine nach dem Einschalten befindet. Verwenden Sie dabei zusätzlich die Ereignisse {start, P1, P2, P3} und das Zeitereignis nach x Minuten. Als Aktionen stehen nur die Funktionen setzeprogramm( ) zum Speichern des gewählten Programms, wassereinlassen() zum Einlassen von Wasser und wasserabpumpen() zum Abpumpen von Wasser zur Verfügung. In Wächterbedingungen darf nur die Funktion gibprogramm() zur Abfrage des gewählten Programms verwendet werden.