PRÜFUNG. Grundlagen der Softwaretechnik



Ähnliche Dokumente
PRÜFUNG. Grundlagen der Softwaretechnik

Grundlagen der Softwaretechnik

PRÜFUNG. Grundlagen der Softwaretechnik

PRÜFUNG. Grundlagen der Softwaretechnik

SWE5 Übungen zu Software-Engineering

Softwaretechnologie -Wintersemester 2013/ Dr. Günter Kniesel

Fachdidaktik der Informatik Jörg Depner, Kathrin Gaißer

SWT MN Vorlesung Übungsblatt Hausaufgaben und Hörsaalübungen zum Themenbereich UML-Modellierung mit Rollen und OOA-Muster

Softwaretechnologie -Wintersemester 2011/ Dr. Günter Kniesel

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

Klassendiagramm. Kurzer Überblick über UML - Stand BlaBla

Unified Modeling Language (UML)

Objektorientierte Konzepte und Notation in UML. Objekt Klasse Attribut Operation

Klassendiagramm. (class diagram)

Übung 4. Musterlösungen

Klausur WS 2006/07 Programmiersprache Java Objektorientierte Programmierung II 15. März 2007

Systemanalyse. - Folien zur Vorlesung für AI3 im Sommersemester Teil 4 -

How to do? Projekte - Zeiterfassung

Benutzerverwaltung Business- & Company-Paket

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 22

Einführung in die objektorientierte Programmierung mit Java. Klausur am 19. Oktober 2005

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Benutzerhandbuch. Leitfaden zur Benutzung der Anwendung für sicheren Dateitransfer.

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten

Prüfung Software Engineering I (IB)

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten

KURZANLEITUNG MSDAS DMS SYSTEM - SILVERDAT II SCHNITTSTELLE

euro-bis Import von Bestellungen aus Buch- und Aboauskunft Stand

Software-Engineering 2. Übungen zur Wiederholung. IT works. Metris GmbH

Java Einführung Umsetzung von Beziehungen zwischen Klassen. Kapitel 7

Was meinen die Leute eigentlich mit: Grexit?

Grundzüge der Programmierung. Konzepte der objektorientierten Programmierung (oop) OBJEKTE - KLASSEN

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

Bedienungsanleitung. Matthias Haasler. Version 0.4. für die Arbeit mit der Gemeinde-Homepage der Paulus-Kirchengemeinde Tempelhof

Mail-Weiterleitung unter WebAccess

Modulklausur Konstruktion und Analyse ökonomischer Modelle

Datensicherung. Mögliche Vorgehensweisen:

Agentur für Werbung & Internet. Schritt für Schritt: Newsletter mit WebEdition versenden

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge

Neue Kennwortfunktionalität. Kurzanleitung GM Academy. v1.0

Zeichen bei Zahlen entschlüsseln

Powermanager Server- Client- Installation

Bedienungsanleitung. 1. Eine direkte (1 1) Verbindung muss mit einem gekreuzten (Crossover) Netzwerkkabel hergestellt werden.

FIS: Projektdaten auf den Internetseiten ausgeben

Hilfe zur Urlaubsplanung und Zeiterfassung

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Erklärung zum Internet-Bestellschein

Einrichtung des WS_FTP95 LE

ACDSee Pro 2. ACDSee Pro 2 Tutorials: Übertragung von Fotos (+ Datenbank) auf einen anderen Computer. Über Metadaten und die Datenbank

Agentur für Werbung & Internet. Schritt für Schritt: -Konfiguration mit Apple Mail

Folgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert:

Kurzanleitung fu r Clubbeauftragte zur Pflege der Mitgliederdaten im Mitgliederbereich

Aufgabenheft. Fakultät für Wirtschaftswissenschaft. Modul Business/IT-Alignment , 09:00 11:00 Uhr. Univ.-Prof. Dr. U.

BüroWARE Exchange Synchronisation Grundlagen und Voraussetzungen

Klausur zur Einführung in die objektorientierte Programmierung mit Java

Upgrade auf die Standalone Editionen von Acronis Backup & Recovery 10. Technische Informationen (White Paper)

Klausur Software Engineering für WI (EuI)

SharePoint Demonstration

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage

Formular»Fragenkatalog BIM-Server«

EinfÅhrung in die objektorientiere Programmierung (OOP) unter Delphi 6.0. EDV Kurs 13/2

POP -Konto auf iphone mit ios 6 einrichten

Lösungsvorschlag für Übungsblatt 6 Software Engineering 1 (WS 2012/13)

Benutzerhandbuch MedHQ-App

Lizenzierung von System Center 2012

Durchführung der Datenübernahme nach Reisekosten 2011

Outlook 2013

Übungen zur Softwaretechnik

BlueEvidence Services in Elexis

Berechtigungen im Kalender Anleitung für die Rechtevergabe im Outlook Kalender FHNW, Services, ICT

Übung 1. Ziel: Statisches Modell (Klassendiagramm) aus allgemeiner Beschreibung erstellen.

Lehrer: Einschreibemethoden

robotron*e count robotron*e sales robotron*e collect Anmeldung Webkomponente Anwenderdokumentation Version: 2.0 Stand:

MSDE 2000 mit Service Pack 3a

IFV Informatik für Verbände

Anleitung - Archivierung

Probeklausur Softwareengineering SS 15

Information Security Management System. Klausur Wintersemester 2009/10 Hochschule Albstadt-Sigmaringen

Schulberichtssystem. Inhaltsverzeichnis

Registrierung am Elterninformationssysytem: ClaXss Infoline

SEQUENZDIAGRAMM. Christoph Süsens

Anleitung zur Installation und Verwendung von eclipseuml 2.1.0

1&1 Webhosting FAQ Outlook Express

Sie befinden sich hier: WebHosting-FAQ -Clients - Einrichtung und Konfiguration Outlook Express Artikel #1

Benutzerkonto unter Windows 2000

ISA Server 2004 Erstellen eines neuen Netzwerkes - Von Marc Grote

OutLook 2003 Konfiguration

macs Support Ticket System

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Software Engineering Interaktionsdiagramme

Software Engineering Klassendiagramme weiterführende Konzepte

Durch Doppelklick auf die Zeile der entsprechenden Schnittstelle gelangt man in die Detaileingabe der Schnittstelle.

Schriftliche Vordiplomprüfung Betriebsökonomie FH Serie C

4. AuD Tafelübung T-C3

NEVARIS Umstellen der Lizenz bei Allplan BCM Serviceplus Kunden von der NEVARIS SP Edition auf NEVARIS Standard/Professional

Klausur zur Vorlesung Stochastische Modelle in Produktion und Logistik im SS 09

Faktura. IT.S FAIR Faktura. Handbuch. Dauner Str.12, D Mönchengladbach, Hotline: 0900/ (1,30 /Min)

Ihre Interessentendatensätze bei inobroker. 1. Interessentendatensätze

Transkript:

Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner PRÜFUNG Grundlagen der Softwaretechnik Name: Matrikelnummer: Note: Prüfungstag: 21.09.2012 Prüfungsdauer: Prüfungsumfang: Hilfsmittel: 60 Minuten 3 Aufgaben (11 Seiten) alle, außer programmierbare elektronische Hilfsmittel und Kommunikationsgeräte Hinweise: 1.) Verlangt sind alle Aufgaben. 2.) Bitte verwenden Sie keinen Rotstift / Bleistift. 3.) Bitte tragen Sie in den Kasten Ihren Namen und Ihre Matrikelnummer ein. 4.) Verwenden Sie für jede Teilaufgabe ein separates Lösungsblatt. 5.) Geben Sie dieses Deckblatt zusammen mit Ihren Lösungsblättern ab. 6.) Schreiben Sie auf alle Lösungsblätter unbedingt Ihren Namen und Ihre Matrikelnummer. --------------------------------- Nicht vom Studierenden auszufüllen ------------------------------------ - 1.1 1.2 1.3 2 3

Prüfung Grundlagen der Softwaretechnik SS 12 Seite 2 Aufgabe 1: Objektorientierte Analyse (ca. 30 min) Aufgabenbeschreibung: Verwaltung virtueller Server im Rechenzentrum Sie sollen eine objektorientierte Analyse für ein zu entwickelndes Softwaresystem durchführen, mit dem die virtuellen Server (kurz: V-Server) in einem Rechenzentrum verwaltet werden können. Auf einem sogenannten Host-System können eine beliebige Anzahl an V-Servern ausgeführt werden. Jeder V-Server und jedes Host-System besitzt eine bestimmte Anzahl an Prozessoren, eine RAM- und eine Festplattengröße sowie eine IPv4- und eine IPv6-Adresse. Kunden des Rechenzentrums können V-Server mieten. Die Kunden können die auf dem V-Server laufenden Dienste anhalten bzw. starten. Zudem haben die Kunden die Möglichkeit, den gesamten V-Server neu zu starten, was zur Folge hat, dass der V-Server zuerst angehalten wird und anschließend wieder gestartet wird. Beim Starten bzw. Anhalten eines V-Servers werden automatisch auch die Dienste auf dem V-Server gestartet bzw. angehalten welche darauf laufen. Die Kunden werden im System mit ihrem Name und Vorname, ihrer E-Mail-Adresse und ihrem Passwort gespeichert. Bei jeder Aktion, die ein Kunde veranlasst, muss dieser sich mit der gespeicherten E-Mail-Adresse und seinem Passwort identifizieren. Um die V-Server und Host-Systeme zu schützen, besitzen diese jeweils eine Firewall. Eine Firewall besteht aus Regeln, welche eine Protokoll-ID und eine Source-IP beinhalten. Regeln für das TCP-Protokoll (Protokoll-ID 6) sind eine spezielle Art von Regeln, welche zusätzlich noch eine Port-Angabe enthalten. Zu Abrechnungszwecken kann die Firewall die passierte Trafficmenge berechnen. Dafür besitzt jede Regel einen Zähler, welcher die passierte Trafficmenge erfasst. Für Wartungszwecke können Service-Techniker die Host-Systeme starten, wobei die V-Server auf dem Host-System ebenfalls automatisch gestartet werden, genauso wie alle Dienste die auf diesen V-Servern laufen. Beim Anhalten eines Host-Systems durch einen Service-Techniker werden die V-Server auf dem System ebenfalls angehalten, wobei jeweils die Dienste der V- Server ebenfalls gestoppt werden. Außerdem kann ein Service-Techniker einen V-Server von einem Host-System auf ein anderes Host-System umziehen. Dabei wird der V-Server zuerst angehalten und dann auf dem neuen Host-System gestartet. Aufgabe 1.1: Anwendungsfälle modellieren Ergänzen Sie das UML-Anwendungsfalldiagramm auf dem beiliegenden Lösungsblatt mit den Namen der externen Akteure, mit den Namen der Anwendungsfälle und mit den Beziehungen zwischen diesen. Aufgabe 1.2: Klassendiagramm erstellen Erstellen Sie das vollständige Klassendiagramm für das Softwaresystem. Tragen Sie alle benötigten Attribute (ohne Typ) und Operationen ein. Geben Sie den Attributen und Operationen aussagekräftige Bezeichnungen. Spezifizieren Sie keine Sichtbarkeit, Anfangswerte, Parameter oder Rückgabewerte. Tragen Sie alle benötigten Beziehungen mit Kardinalitäten ein (ohne Richtung). Unterscheiden Sie zwischen Assoziationen, Aggregationen und Kompositionen. Führen Sie wenn möglich Vererbungsbeziehungen ein.

Prüfung Grundlagen der Softwaretechnik SS 12 Seite 3 Überlegen Sie, ob der Einsatz von assoziativen Klassen sinnvoll wäre. Aufgabe 1.3: Sequenzdiagramme erstellen Zeichnen Sie ein Sequenzdiagramm für den Anwendungsfall "V-Server neu starten" auf das beiliegende Lösungsblatt. Das Szenario soll bei der Authentifizierung des Kunden beginnen, der Kunde gibt dabei das richtige Passwort ein. Auf dem V-Server laufen zu Beginn der Sequenz zwei Dienste. Bitte geben Sie alle Lösungsblätter mit ab (Name + Matrikelnummer eintragen)!

Prüfung Grundlagen der Softwaretechnik SS 12 Seite 4 Lösungsblatt zu Aufgabe 1.1) Anwendungsfälle modellieren Rechenzenter-Verwaltung VServer neu starten

Prüfung Grundlagen der Softwaretechnik SS 12 Seite 5 Lösungsblatt zu Aufgabe 1.3) Sequenzdiagramm erstellen

Prüfung Grundlagen der Softwaretechnik SS 12 Seite 6 Aufgabe 2: Bewertung von Modellen (ca. 20 min.) Lösungsblatt a) Gegeben sind die nachfolgenden UML-Diagramme. Beurteilen Sie, ob diese Diagramme richtig sind. Bei fehlerhaften Diagrammen bitte kurze, stichwortartige Begründung angeben. Korrigieren Sie die fehlerhaften Diagramme. Punktevergabe: Je richtiges Kreuz gibt es einen Punkt. Für jedes falsche Kreuz wird ein Punkt abgezogen. Bei fehlerhaften Diagrammen gibt es für richtige Begründungen und richtig gezeichnete Diagramme zusätzliche Punkte. 1.) Klassendiagramm richtig falsch Richtiges Klassendiagramm Wenn falsch, warum? A {abstract} m1() {abstract} B {abstract} m1() m2() {abstract} m2() C 2.) Klassendiagramm richtig falsch Richtiges Klassendiagramm Wenn falsch, warum? Klasse_A -Rolle1 -Rolle2 Klasse_B 2 3 1 -Rolle3 -Rolle4 1

Prüfung Grundlagen der Softwaretechnik SS 12 Seite 7 Lösungsblatt zu Aufgabe 2a) Bewertung von Modellen 3.) Sequenzdiagramm für gegebenes Klassendiagramm richtig falsch Wenn falsch, warum? Richtiges Sequenzdiagramm Rauchmelder +Rauch erkannt() meldet Feuer4 * 1 Brandmeldezentrale +Feuerwehr_alarmieren() +Alarm_aufheben() +Feuer_erkannt() Hinweis: Das Klassendiagramm kann als richtig angenommen werden. Feuer :Rauchmelder :Brandmeldezentrale brennen Rauch_erkannt() Feuerwehr_alarmieren() 4.) Klassendiagramm für gegebenes Objektdiagramm richtig falsch Wenn falsch, warum? Richtiges Klassendiagramm Rolle4 Objekt4 : Klasse1 Rolle2 Rolle3 Objekt1 : Klasse2 Rolle1 Objekt2 : Klasse2 Rolle1 Objekt5 : Klasse1 Rolle2 Rolle4 Rolle1 Objekt3 : Klasse2 Rolle3 Hinweis: Das Objektdiagramm kann als richtig angenommen werden. Klasse1 -Rolle2 -Rolle1 Klasse2 2 3 0..1 -Rolle4 -Rolle3 1

Prüfung Grundlagen der Softwaretechnik SS 12 Seite 8 Lösungsblatt zu Aufgabe 2b) Bewertung von Modellen b) Begründen Sie, warum die nachfolgenden UML-Diagramme falsch sind. Zeichnen Sie jeweils ein richtiges Diagramm. 5.) Klassendiagramm Was ist falsch? Richtiges Klassendiagramm Polygon Linie 6.) Klassendiagramm für gegebenes Objektdiagramm : Ordner Was ist falsch? Richtiges Klassendiagramm : Ordner : Ordner : Datei : Ordner : Ordner : Datei : Datei Hinweis: Das Objektdiagramm kann als richtig angenommen werden. Dateisystemobjekt 1..* 1 Datei Ordner

Prüfung Grundlagen der Softwaretechnik SS 12 Seite 9 Lösungsblatt zu Aufgabe 2b) Bewertung von Modellen 7.) Zustandsdiagramm für eine Parkschranke Was ist falsch? Richtiges Zustandsdiagramm Ausfahrt gesperrt Eintritt/Ampel -> Rot do/schranke_blockieren Parkmünze einwerfen nach: 60s Durchfahrt Ausfahrt frei Eintritt/Ampel -> Grün Austritt/erhöhe_Durchgangszähler do/schranke_öffnen Anforderung: Der Durchgangszähler wird genau dann und nur dann erhöht, wenn ein Fahrzeug durch die Schranke fährt. 8.) Klassendiagramm Was ist falsch? Richtiges Klassendiagramm Katalog * 0..1 Bestellnummer Artikel

Prüfung Grundlagen der Softwaretechnik SS 12 Seite 10 Aufgabe 3: Verständnisfragen (Multiple-Choice) (ca. 10 min.) Lösungsblatt Punktevergabe: Je richtiges Kreuz gibt es einen Punkt. Für jedes falsche Kreuz wird ein Punkt abgezogen. Die Gesamtpunktzahl für jede Teilaufgabe kann jedoch nicht kleiner 0 werden. Hinweis: Mehrere richtige Antworten sind möglich. 1.) Welche Aussagen zu Paketen sind richtig? Pakete dienen als Strukturierungsmechanismus zur Aufteilung von großen Modellen. Pakete müssen immer voneinander unabhängig sein. Eine Schnittstelle kann Bestandteil mehrerer Pakete sein. Pakete in der UML lassen sich nicht schachteln. Existieren in zwei Pakete Klassen mit dem selben Namen, müssen die Paketnamen explizit angegeben werden. 2.) Welche Aussagen zu Assoziation, Aggregation und Komposition sind richtig? Eine Assoziation beschreibt die Beziehung zwischen den Objekten der beteiligten Klassen. Aggregation und Komposition sind Assoziationen. In einer Komposition kann ein Objekt gleichzeitig Teil mehrerer Aggregatobjekte sein. Die Programmiersprache Java unterscheidet nicht zwischen Assoziation, Aggregation und Komposition. Bei einer Aggregation erbt die Teilklasse von der Aggregatklasse.

Prüfung Grundlagen der Softwaretechnik SS 12 Seite 11 Lösungsblatt zu Aufgabe 3) Verständnisfragen 3.) Für Objektdiagramme gilt: Sie können zu Sequenzdiagrammen erweitert werden. Der Objektname muss in allen Diagrammen eindeutig sein. Sie stellen die Erzeugung von Objekten dar. Ein Objektdiagramm beschreibt immer nur eine Situation zu einem bestimmten Zeitpunkt. Sie stellen Verbindungen unter Objekten dar. 4.) Welche Aussagen zu Komponenten sind richtig? Klassen besitzen einen größeren Funktionsumfang als Komponenten. Komponenten stellen Dienste über definierte Schnittstellen zur Verfügung. Komponenten können durch Vererbung erweitert werden. Komponenten kapseln Verhalten und Zustand. Eigenschaften einer Komponente werden konfiguriert.