Informatik IIa: Modellierung Frühlingssemester 2014 Übung 5: Klassendiagramme, EPK Kapitel 8, 9 Ausgabe: 17.04.2014 Abgabe: 02.05.2014 Name: Matrikelnummer:
Aufgabe 1 Wissen zu EPKs (6 Punkte) Frage 1.1 [Typ ALL] (4 Punkte) Entscheiden Sie für jede der nachfolgenden Aussagen, ob sie korrekt sind in Bezug auf das oben dargestellte EPK Diagramm. Tritt das Ereignis E4 ein, so wird das Ereignis E6 unabhängig von dem Ereignis E3 ausgelöst. Wird die Funktion A ausgelöst, dann werden beide Ereignisse E2 und E3 ausgelöst. Richtig Falsch Wird Ereignis E5 ausgelöst, dann kann Ereignis E6 nicht eintreten. Ereignis E6 kann nur ausgelöst werden, wenn beide Funktionen A und B ausgeführt werden. Frage 1.2 [Typ ALL] (2 Punkte) Entscheiden Sie, ob die nachfolgenden Aussagen über die Modellierung von Arbeitsprozessen jeweils korrekt sind. Richtig Falsch Der Verzweigungskonnektor in UML-Aktivitätsdiagrammen entspricht dem UND-Konnektor in EPKs. Informatik unterstützt von Menschen ausgeführte Prozesse. Petrinetze können nicht zur Modellierung von Arbeitsprozessen verwendet werden. Im EPK dient der Prozesswegweiser zur Gliederung in Teilmodelle. Seite 2
Aufgabe 2 Wissen zu Klassendiagrammen (9 Punkte) Frage 2.1 [Typ ALL] (5 Punkte) Oben ist ein UML Klassendiagramm dargestellt. Entscheiden Sie für die untenstehenden Aussagen, ob diese in Bezug auf das dargestellte Klassendiagramm korrekt sind. Ein Objekt der Klasse A kann als Merkmal ein Objekt der Klasse B haben, welches wiederum ein Objekt der Klasse A als Merkmal besitzt. Ein Objekt der Klasse D kann gleichzeitig das Merkmal von mehreren Objekten der Klasse E sein. Richtig Falsch Klasse B fasst gleichartige Objekte zusammen. Die Kardinalität 1..* definiert, dass ein oder mehrere Objekte der Klasse D als Merkmal eines Objekts der Klasse E verwendet wird. Die extensionale Sicht fasst Klasse C als Typ auf. Frage 2.2 [Typ ALL] (4 Punkte) Vererbung ist ein wichtiges Konzept in der Objektorientierten Programmierung. Entscheiden Sie für die untenstehenden Aussagen über Vererbung, ob diese in Bezug auf das oben dargestellte Klassendiagramm korrekt sind. Richtig Objekte der Klasse D haben genau ein Attribut. Ein Objekt der Klasse E kann nicht als Merkmal ein Objekt der Klasse B besitzen. Ein Objekt der Klasse C hat mehr als zwei Operationen. Durch die Vererbung verfügt ein Objekt der Klasse B über die Methoden OperationC1 und OperationC2. Falsch Seite 3
Aufgabe 3 UML Klassendiagramm (20 Punkte) Der Blumenhandel Bunte Blumen AG verkauft Blumen und Topfpflanzen, und möchte seine Tätigkeiten um einen Online-Dienst erweitern. Deshalb haben sie entschieden einen Online-Laden zu eröffnen. Im folgenden Text ist ein Ausschnitt der Problemstellung beschrieben: Kunden der Bunte Blumen besitzen einen Namen, eine Adresse und eine Telefonnummer. Wünscht ein Kunde irgendwann keinen Kontakt mit Bunte Blumen mehr, kann er aus dem System entfernt werden. Die Kunden können ein Online-Konto eröffnen um im Online-Laden einkaufen zu können. Das Konto können sie jederzeit künden. Eine Lieferadresse wird für jeden Kunden mit Kundenkonto für die bestellten Waren gespeichert. Wenn der Kunde ein Konto eröffnet hat, hat er einen virtuellen Warenkorb zur Verfügung. Wenn der Kunde einen oder mehrere Artikel zum Kauf auswählt, werden sie im Warenkorb festgehalten. Jedes Mal, wenn der Kunde einen Artikel dem Warenkorb hinzufügt, entfernt oder dessen Anzahl anpasst, wird das Änderungsdatum vom Warenkorb gespeichert. Für jeden Artikel ist eine Beschreibung, eine Herkunft und ein Preis bekannt. Die Artikel können entweder Blumen oder Topfpflanzen sein. Für die Pflanzen kennt man die Pflegeanleitungen und für die Blumen den Zeitraum, während dem sie durchschnittlich frisch bleiben. Wenn sich wenigstens ein Artikel im Warenkorb befindet, kann der Kunde eine Bestellung abschliessen. Bei Bestellungen werden immer die Bestellnummer, das Bestelldatum, der Gesamtbetrag, sowie alle ausgewählten Artikel festgehalten. Die bestellte Ware kann der Kunde entweder mit der Kreditkarte bezahlen oder auf Rechnung kaufen. Im Fall einer Kreditkartenzahlung wählt der Kunde zwischen verschiedenen Kreditkartenarten aus. Im Fall einer Zahlung auf Rechnung wird die Zahlungsfrist festgelegt. Der Kunde kann die gesamte Bestellung auf einmal oder auch in Raten zahlen. Modellieren Sie den oben beschriebenen Sachverhalt in einem UML 2.0 Klassendiagramm. Achten Sie darauf, dass alle Kardinalitäten vollständig angegeben sind. Ist eine Kardinalität im Text nicht genau spezifiziert, treffen Sie Annahmen und begründen Sie diese kurz. Seite 4
Seite 5
Aufgabe 4 EPK (26 Punkte) Der folgende Text beschreibt die Situation in einer Universität, wenn ein Angestellter eine Bewerbung für das Masterstudium erhält: Wenn eine Bewerbung für ein Masterstudium eintrifft, dann wird zuerst geprüft ob die Bewerbung vollständig ist. Ist die Bewerbung vollständig, wird die Bewerbung evaluiert. Fehlen noch Angaben, dann wird der Bewerber diesbezüglich schriftlich darauf aufmerksam gemacht. Sobald der Bewerber alle Angaben geliefert hat, wird auch in diesem Fall die Bewerbung evaluiert. Wenn der Bewerber die fehlenden Angaben innerhalb 30 Tagen nicht liefert, dann wird ihm mitgeteilt, dass die Bewerbung nicht gutgeheissen werden kann, und sie gilt als beendet. Hat der Bewerber einen Bachelorabschluss von einer anderen Universität, müssen die Voraussetzungen geprüft werden. Sind die Voraussetzungen nicht erfüllt, wird ihm mitgeteilt, dass die Bewerbung nicht den Voraussetzungen entspricht und sie gilt als beendet. Wenn die Voraussetzungen erfüllt sind, wird die Zulassung mit einem Fremdabschluss gewählt. Hat der Bewerber jedoch einen Bachelorabschluss von der gleichen Universität, so wird der nahtlose Übertritt ausgewählt. Der Prozess geht weiter sobald eine von den Zulassungsoptionen ausgewählt wird. Dann werden die notwendigen Dokumente für den Studieneintritt vorbereitet. Als nächstes werden dem Bewerber die vorbereiteten Dokumente zugesandt, und gleichzeitig werden in der Studentendatenbank nötige Aktualisierungen vorgenommen. Immatrikuliert sich der Bewerber für das kommende Semester, wird der Eintritt dadurch bestätigt, und die Bewerbung gilt als beendet. Modellieren Sie den oben beschriebenen Sachverhalt als ereignisgesteuerte Prozesskette (EPK). Darzustellen sind Ereignisse, Prozesse, Konnektoren und der Steuerfluss. Hingegen müssen Wegweiser, Subprozesse oder die Elemente der erweiterten EPKs NICHT modelliert werden. Seite 6
Seite 7