Title | DBS-IM Klausur SS12 Musterloesung |
---|---|
Course | Rechnernetze und verteilte Systeme |
Institution | Ludwig-Maximilians-Universität München |
Pages | 11 |
File Size | 349.9 KB |
File Type | |
Total Downloads | 57 |
Total Views | 158 |
Download DBS-IM Klausur SS12 Musterloesung PDF
Informatik B (IM)
Klausur SS2012 - Musterlösung
04.07.2012
Fakultät für Wirtschaftswissenschaften Prof. Dr.-Ing. Jens Nimis
Prüfung zu: IMB711 Informatik B
Nachname: Max
Vorname:
Mustermann
Matrikelnummer: 4711
Füllen Sie zunächst die obige Tabelle aus. Schreiben Sie bitte leserlich! Es sind keine anderen Unterlagen oder Hilfsmittel zugelassen, als die in der Prüfung ausgeteilten. Viel Erfolg!
Bewertung: Aufgabe (Max. Punkte)
1 (15)
2 (17)
3 (20)
4 (20)
5 (18)
(90)
Erreichte Punkte
HS Karlsruhe, Fakultät W
Prof. Dr. J. Nimis
Seite 1 / 11
Informatik B (IM)
Klausur SS2012 - Musterlösung
04.07.2012
Aufgabe 1: Allgemeine Fragen (15 P.) Bitte kreuzen Sie jeweils die richtige Antwort an. Jede richtige Antwort gibt einen Punkt.
wahr 1. Gute Datenbanksysteme können Redundanzfreiheit erzwingen. 2. Gute Datenbanksysteme können Schemakonsistenz erzwingen. 3. Mit Transaktionen sorgen Datenbanken dafür, dass sich verschiedene Benutzer nicht störend gegenseitig beeinflussen. 4. Das infotools-System realisiert eine Zweischichtenarchitektur. 5. „Artikelart Lagereinheit“ ist ein zulässiger relationenalgebraischer Ausdruck in der Lagerwelt (aus der Vorlesung). 6. Die Belegung von Fremdschlüsselattributen ist innerhalb einer Relation eindeutig. 7. Die Selektion aus der relationalen Algebra findet bei SQL in der SELECT-Klausel statt. 8. Ein SELECT-Statement aus SQL kann unter Umständen mehr Ergebnistupel zurückliefern als das entsprechende Statement in relationaler Algebra. 9. Bei der Gruppierung in SQL lässt sich die HAVING-Klausel durch geeignet formulierte Bedingungen in der WHERE-Klausel ersetzen. 10. Eine Unterklasse in UML kann niemals abstrakt sein. 11. 12. 13. 14. 15.
Bei der Umsetzung einer 1:n-Beziehung aus UML in ein relationales Schema entstehen Fremdschlüssel. Es gibt mehrstellige Beziehungen in UML, die sich ohne Hilfsrelation in ein relationales Schema umsetzen lassen. Die Kostenmodelle des Cloud Computing basieren auf einer Messung der benutzten Leistungen. Online Email-Dienste, wie z.B. Google Mail, web.de oder GMX zählen zur PaaS-Schicht (Plattform as a Service). In der „Public Cloud“ sind gespeicherte Daten allen, d.h. der Öffentlichkeit, zugänglich.
HS Karlsruhe, Fakultät W
Prof. Dr. J. Nimis
unwahr X
X X X X X X X X X X X X X X
Seite 2 / 11
Informatik B (IM)
Klausur SS2012 - Musterlösung
04.07.2012
Aufgabe 2: Relationales Modell (17 P.) Gegeben sind die folgenden Relationen aus der Mitarbeiter- und Projektverwaltung eines Unternehmens. Die Bedeutungen der Relationen und Attribute ergeben sich aus deren Benennung und den folgenden Erläuterungen:
Projekt: PPM steht für die geplanten Personenmonate zur Umsetzung eines Projektes, AbtCode kennzeichnet die für das Projekt verantwortliche Abteilung. Abteilung: ChefPersNr kennzeichnet den Chef einer Abteilung und ist Fremdschlüssel auf PersNr in der Relation Mitarbeiter. ProjektTeam: Das Attribut TPM gibt an, wie viele Personenmonate ein Mitarbeiter tatsächlich schon in dem zugeordneten Projekt gearbeitet hat.
Weitere Fremdschlüsselbeziehungen ergeben sich aus der Namensgleichheit von Attributen. Projekt string PID P-001 P-002 P-003 P-004
string PName Reorganisation Einkauf Cloud Einführung Effizienzverdoppelung NoSQL Einführung
Mitarbeiter string string PersNr Name M-001 Melanie Müller M-002 Martin Meier M-003 Hans Huber M-004 Karla Kunz M-005 Bernd Becker
int PPM 4 12 50 18
string AbtCode HR IT Prod IT Prod
string AbtCode HR IT Prod IT
ProjektTeam string string PID PersNr P-001 M-001 P-002 M-004 P-003 M-005
int TPM 3 6 49
Abteilung string AbtCode HR IT Prod
string ChefPersNr M-001 M-002 M-003
int Gehalt 4500 4600 4400 3300 2200
a) Geben Sie je einen relationen-algebraischen Ausdruck für die folgenden Anfragen an: „Wie heißen die Mitarbeiter der IT-Abteilung und was verdienen Sie?“ (2 P.)
(
(
))
„Wie heißen die Abteilungsleiter (aller Abteilungen) und was verdienen Sie?“ (2 P.)
(
HS Karlsruhe, Fakultät W
)
Prof. Dr. J. Nimis
Seite 3 / 11
Informatik B (IM)
Klausur SS2012 - Musterlösung
04.07.2012
„Wie heißen die Mitarbeiter, die im Projekt ‚Effizienzverdoppelung‘ schon mehr als 10 Monate gearbeitet haben?“ (3 P.)
(
(
)
) ( ) als gezeichnete Tabelle und als b) Stellen Sie das Ergebnis der Anfrage relationenalgebraischen Ausdruck zur Definition einer Relation dar. Formulieren Sie außerdem die Bedeutung der Anfrage als natürlichsprachlichen Satz. (2+3+1 P.)
? string AbtCode HR IT Prod Welche Abteilungen sind für Projekte verantwortlich? ("?", (string), {(1,"AbtCode")}, {("HR"),("IT"),("Prod")})
c) Geben Sie den relationen-algebraischen Ausdruck zur Definition einer Relation an, die enthält, welche Mitarbeiter Vorgesetze von welchen anderen (untergebenen) Mitarbeitern ihrer Abteilung sind. (4 P.) ("IstChefVon", (string, string), {(1,"VorgesetzterPersNr"),(2,"UntergebenerPersNr")}, {("M-002", "M-004"),("M-003", "M-005")})
HS Karlsruhe, Fakultät W
Prof. Dr. J. Nimis
Seite 4 / 11
Informatik B (IM)
Klausur SS2012 - Musterlösung
04.07.2012
Aufgabe 3: SQL (20 P.) Gegeben ist als Ausgangspunkt die aus der Vorlesung bekannte Mondial-Datenbank, deren Schema Sie im Anhang vorfinden. Formulieren Sie in SQL die jeweiligen Anfragen und Anweisungen. (Anmerkung: Um auf die Relationen zugreifen zu können, müssen Sie nicht den Benutzernamen voranstellen, d.h. Sie können z.B. statt mit „Mondial.City“ direkt mit „City“ auf die entsprechende Relation zugreifen.) a) Wie heißt die Hauptstadt von „Germany“ und in welchem Bundesland liegt sie? (2 P.) select co.capital, co.province from mondial.country co where co.name='Germany';
b) Wie heißt die Hauptstadt von „France“ und wie viele Einwohner hat sie? (4 P.)
select from where and and and
co.capital, ci.population mondial.country co, mondial.city ci co.capital=ci.name co.code=ci.country co.province = ci.province co.name='France';
c) Geben Sie die Namen aller Hauptstädte der EU-Länder alphabethisch sortiert aus. Verwenden Sie hierbei eine Unterabfrage („Subquery“). (5 P.)
select co.capital from mondial.country co where co.code in ( select im.country from mondial.is_member im where im.organization='EU') order by 1;
HS Karlsruhe, Fakultät W
Prof. Dr. J. Nimis
Seite 5 / 11
Informatik B (IM)
Klausur SS2012 - Musterlösung
04.07.2012
d) In das folgende SELECT-Statement hat sich ein Fehler eingeschlichen. Finden Sie diesen und geben Sie die komplette richtige Lösung an. (2 P.) Wie heißt der größte Kontinent und wie groß ist er (bezogen auf die Fläche)? select ct.name, max(ct.area) from continent ct;
select ct.name, ct.area from mondial.continent ct where ct.area in ( select max(ct2.area) from mondial.continent ct2 );
e) Erklären Sie natürlichsprachlich, was es bedeutet, wenn das folgende SQL-Statement etwas ausgibt. (2 P.) (Anmerkung: Die Zeichen „“ stehen für „ungleich“ und man könnte stattdessen auch „!=“ schreiben.) select p.name from province p where p.namep.capprov;
Die Anfrage gibt die Namen der Provinzen aus, deren Hauptstadt der nicht in der Provinz selbst, sondern in einer anderen Provinz (der „capprov“) liegen.
HS Karlsruhe, Fakultät W
Prof. Dr. J. Nimis
Seite 6 / 11
Informatik B (IM)
Klausur SS2012 - Musterlösung
04.07.2012
Sie gründen eine neue deutsche Stadt in Bayern mit einem eigenen Namen und sind vorerst deren einziger Einwohner. Die genaue geographische Lage kennen Sie noch nicht. Fügen Sie einen entsprechenden Datensatz in die Relation „City“ ein. (2 P.) insert into city (name, country, province, population) values ('MeinNeuStadt', 'D', 'Bayern', 1);
f)
Weil Sie nun aus Karlsruhe wegziehen, verringern Sie dessen Einwohnerzahl um 1. (3 P.) update mondial.city set population = population-1 where name='Karlsruhe' and country='D' and province='Baden Wurttermberg";
HS Karlsruhe, Fakultät W
Prof. Dr. J. Nimis
Seite 7 / 11
Informatik B (IM)
Klausur SS2012 - Musterlösung
1..* gehört zu4
Sender
1
-Name -Gründungsjahr
läuft bei -Datum -Uhrzeit
04.07.2012
Sendergruppe -Name
0..1 1..* Sendung {abstrakt}
spielt in
-Name
-RollenName 0..*
Nachrichten -Datum
Magazin
fiktives Werk {abstrakt}
Schauspieler
0..1
-Name -Alter
-Thema
Serie
Film
0..1 verheiratet mit
-Originaltitel -Land -Jahr -Regie
-Staffel -Folge
HS Karlsruhe, Fakultät W
1..*
Prof. Dr. J. Nimis
Seite 8 / 11
Informatik B (IM)
Klausur SS2012 - Musterlösung
04.07.2012
Aufgabe 4: Konzeptioneller Entwurf (20 P.) Sie sollen ein neues Informationssystem für die Verwaltung von Fernsehprogrammen als vollständiges UML-Klassendiagramm entwerfen. In der zugehörigen Datenbank sollen die folgenden Dinge erfasst werden:
Es gibt Fernsehsender mit den Attributen Name und Gründungsjahr, die jeweils fester Bestandteil einer Sendergruppe mit eigenem Namen sind (z.B. „ProSiebenSat.1 Media AG“). Jeder Sender hat Sendungen (mit Namen), wobei verschiedene Kategorien unterschieden werden: Nachrichten (mit Datum), Magazine (mit Thema) und fiktive Werke, die sich wiederum in Serie und Filme unterscheiden lassen. Bei Serien sind die Staffel und die jeweilige Folge von Interesse bei Filmen der Originaltitel, Entstehungsland und -jahr und der Regisseur. Neben Nachrichten, Magazinen, Serien und Filmen gibt es übrigens keine weiteren merkenswerten Sendungen. Die Sendungen laufen auf ihrem Sender an einem bestimmten Datum und zu einer gegebenen Uhrzeit. Für alle fiktiven Werke will man auch erfahren können, welche Schauspieler mitgespielt haben und ihr Rollenname in dem Werk jeweils war. Schauspieler haben einen Namen und auch wenn nicht alle ihr Alter zugeben, wollen wir es abspeichern können. Außerdem heiraten Schauspieler oft untereinander und wir wollen wissen, wer aktuell mit wem innerhalb des Berufsstandes verheiratet ist.
Verwenden Sie bei Ihrer Modellierung genau zweimal Vererbung, zwei Assoziationsklassen und genau eine Aggregation bzw. Komposition an den hierfür jeweils bestgeeigneten Stellen.
HS Karlsruhe, Fakultät W
Prof. Dr. J. Nimis
Seite 9 / 11
Informatik B (IM)
Klausur SS2012 - Musterlösung
04.07.2012
Aufgabe 5: Relationales Schema (18 P.) a) Gegeben ist der folgende kleine Ausschnitt aus dem UML-Diagramm einer Produktionsanlage. Bei der Umsetzung wurde zur Vermeidung zu vieler Joins die Variante 2 aus der Vorlesung gewählt und das darunter dargestellte Ergebnis erzielt. Formulieren Sie kurz, welcher Nachteil sich hieraus für die Umsetzung der Relation „Fertigungsschritt“ ergibt und zeichnen Sie eine geeignete Umsetzung ein ggf. mit notwendigen Erläuterungen. (6 P.) 3 setzt ein
Maschine -Hersteller -Modell
Drehmaschine -Umdrehungen
1
Fertigungsschritt 0..*
-Bezeichnung -Dauer
Presse -Druck
Maschine PK
MID Hersteller Modell Fertigungsschritt
Drehmaschine PK
MID Hersteller Modell Umdrehungen
PK
FSID
FK1,FK2,FK3
Bezeichnung Dauer MID MTyp
Presse PK
MID Hersteller Modell Druck
Nachteil: es wird ein zusätzliches Attribut benötigt, um zu kennzeichnen, auf welche Relation (d.h. auf welchen Maschinentyp) sich der Fremdschlüssel bezieht.
HS Karlsruhe, Fakultät W
Prof. Dr. J. Nimis
Seite 10 / 11
Informatik B (IM)
Klausur SS2012 - Musterlösung
04.07.2012
b) Nun soll das in der Abbildung gegebene (recht generische) UML-Diagramm in ein Relationendiagramm umgesetzt werden. Lassen Sie sich dabei nicht von den Namen und der Semantikfreiheit irritieren. Alles geht wie gewohnt. Wenn ein Attribut auf „ID“ endet, handelt es sich dabei um einen Schlüssel. Führen Sie dabei zur Umsetzung der Assoziationsklasse keine neue Relation ein. Begründen Sie Ihre Entscheidungen bei der Umsetzung der Vererbung und der 1:1Beziehung sinnvoll. (12 P.)
X {abstract} -CName
ab
A -AID -AName
1
bc
B 1
-BID -BName
0..*
cd
C 1
-CID
0..*
D 0..*
0..*
1
E -EID -EName
-DID -DName de -DEName
AundB PK
C
AID
FK1
BID AName BName CID
PK
CID
D
cd PK,FK2 PK,FK1
CID DID
CName
PK
DID
FK1
DName EID DEName
E PK
EID EName
Vererbung: Oberklasse ist abstract und es gibt nur eine Unterklasse Zusammenlegen der Hierarchie in einer Klasse
1:1-Beziehung: es wird angenommen, dass auf die beiden Relationen A und B zumeist gemeinsam zugegriffen wird und zur Vermeidung von Joins wird daher zus’gelegt. (Anmerkung: alle Alternativen sind hier mit konsistenter Argumentation erlaubt)
HS Karlsruhe, Fakultät W
Prof. Dr. J. Nimis
Seite 11 / 11...