Prfifüngsteilnehmer Prfifüngstermin Einzelprfifungsnnmmer Kennzahl: Kennwort: HCrbSt 46116 2017 ävx # Arbeitsplatz-Nr.: Erste Staatsprüfung für ein Lehramt an öffentlichen Schulen — Prüfungsaufgahen — Fach: Informatik(Unterrichtsfach) Einzelprüfung: Softwaretechnologie/Datenbanksysteme Anzahl der gestellten Themen(Aufgaben): 2 Anzahl der Druckseiten dieser Vorlage: 14 Bitte wenden! Einzelprüfxmgsnummer 46116 Herbst 2017 Seite 2 Thema Nr.1 (Aufgabengruppe) Es sind die Aufgaben dieser Aufgabengruppe zu bearbeiten! Teüaufgabe I; Soflwaretechnoiogie Aufgabe 1: Grundwissen Softwaretechnik 1. Welche zwei Eigenschaften unterscheiden die Komposition von der Aggregation? 2. Nennen Sie drei Merkmale, die Schnittstellen(interface)imd abstrakte Klassen(abstract class) voneinander unterscheiden! 3. Geben Sie die Laufzeit für die lineare Suche an. Nennen Sie ein effizienteres Verfahren imter der Annahme,dass die Eingabedaten sortiert sind. Was ist dessen Laufzeit? 4. Nennen Sie je einen Vorteil für verkettete Listen und für Arrays! Aufgabe 2: UML Betrachten Sie das folgende UML-Diagramm: Bank Kreditkarte +nummer:int +kredltrahmen:double ausgesceilt_von +BLZ:int +Land;String besitzt kooperiert_mit Person +nanne:String -i-geburtsDatum: Date hat künden 1. Geben Sie zu jeder Beziehung die Mxdtiplizitäten der Beziehungen an.(Nicht ins Diagramm eintragen!) 2. Setzen Sie Person, Kreditkarte imd Bank mit Attributen und Beziehungen in einer objektorientierten Programmiersprache Ihrer Wahl um. Sie können Typen aus derjeweiligen Standard-Bibliothek verwenden(zum Beispiel: Set). Methoden sind nicht verlangt. Fortsetzung nächste Seite! Einzelprflfungsnummer 46116 Herbst 2017 Seite 3 Aufgabe 3: Systementwicklung Sie wurden beauftragt, ein neues Bibliotheksverwaltungssystem zu entwickeln. Dieses System soll den Bücherbestand verwalten sowie Ausleih- und Vormerkungsfunktionalität bieten. Rahmendaten zum Projekt: Von Seiten des Auftraggebers wird großer Wert auf besonders hohe Sicherheitseigenschaften des Systems gelegt. Im Rahmen des Projekts sollen von Anfang an Prototypen den Projektfortschritt dokumentieren. Zur Entwicklung dieses Systems steht Ihnen ein Team von sechs Entwicklern zur Verfugung. Das System muss innerhalb von 8 Monaten fertig gestellt sein. 1. Nennen Sie drei Stakeholder des Bibliotheksverwaltungssystems und jeweils zwei Anwendungsfälle! 2. Welches der Vorgehensmodelle V-Modell XT,Spiralmodell imd Extreme Programming würden Sie unter den geschilderten Umständen für die Entwicklung dieses Systems anwenden? Treffen Sie eine eindeutige Entscheidimg und begründen Sie diese mit drei schlüssigen Argumenten! 3. Das zu entwickelnde Sofltwaresystem sollte die Qualitätseigenschaften Benutzbarkeit, Zuverlässigkeit und Wartbarkeit erfüllen. Geben Sie zu jeder dieser Qualitätseigenschafien je zwei Qualitätssicherungsmaßnahmen an. 4. Das von Ihnen zu entwickelnde System soll ein derzeit in Betrieb befindliches System ablösen. Das bisherige System verwendet ein Chipkartensystem zur Identifikation der Bibliotheksbenutzer. Im Zuge der Systemumstellung soll ein neues Kartensystem eingeführt werden. Um nicht sofort alle alten Karten ersetzen zu müssen, soll das neue Bibliotheksverwaltungssystem die alten Karten weiterhin unterstützen. Zeichnen Sie ein Klassendiagramm, um unter Verwendung des Pattems TemplateMethod (s.u.) das konkrete Einlesen einer Karte mit beiden Systemen zu ermöglichen. Intention des TemplateMethod-Pattems: Definiere das Gerüst eines Algorithmus in einer Methode wobei die Implementierung einiger Schritte in Unterklassen ausgelagert wird. Template-Method lässt die Unterklassen bestimmte Schritte in einem Algorithmus redefinieren, ohne die Struktur des Algorithmus zu verändem. AbstractClass PrimitiveOperation 10 TemplateMethodO abstract PrimitiveOperation10 PrimitiveOperationZO abstract PrlmltlveOperation20 ConcreteClass PrimitiveOperation 1() PrimitiveOperation20 Fortsetzung nächste Seite! Herbst 2017 Einzelprüfungsmimmer 46116 Seite 4 Aufgabe 4: Qualitätssicherung Ein gängiger Ansatz zur Messung der Qualität von Software ist das automatisierte Testen von Programmen.Im Folgenden werden praktische Testmethoden anhand des nachstehend angegebenen Sortieralgorithmus diskutiert. Algorithmus 1 Bubble Sort vold bubblesort(int □ array, int len) { 1 for (int i = 0 ; i < len - 1 ; i++) { 2 3 4 for (int j = 0 ; j < len - 1 ; j++) { if ( array[j] > array[j + 1] ) { int tfflnp = array[j]; 5 array [j] = array [j + 1]; 6 arrayCj + 1] = temp; } a) b) c) Nennen Sie eine Art des Black-Box-Testens und beschreiben Sie deren Dmrchfuhrung anhand des vorgegebenen Algorithmus. Zeichnen Sie ein mit Zeilennummem beschriftetes Kontrollflussdiagramm für den oben angegebenen Sortieralgorithmus. Erklären Sie, ob eine vollständige Pfadüberdeckung für die gegebene Funktion möglich und sinnvoll ist. Teilaufgabe II; Datenbauksysteme Aufgabe 1: Grundwissen Datenbanksysteme 1. Nennen Sie den Namen des Algorithmus, der ein Relationenschema in einer Normalform in eine höhere Normalform überführt imd dabei abhängigkeitsbewahrend ist. 2. Nennen Sie drei (jründe für den Einsatz eines Datenbanksystems. (3 Stichworte) a) b) c) 3. Geben Sie außerdem drei Gründe an für den Einsatz eines Datenbanksystem für die Daten verwaltung. 4. Geben Sie die Laufeeit von Einfüge- und Löschoperationen in erweiterbaren Hashtabeilen an. (Stichwort) 5. Nennen Sie eine Indexstruktur, die sich anbietet, wenn viele Bereichsanftagen auf der zu indizierenden Spalte (Range Queries) erwartet werden. (Stichwort) Fortsetzung nächste Seite! Herbst 2017 Einzelprüfungsnummer 46116 Seite 5 Aufgabe 2: Relationale Modellierung Gegeben das folgende ER-Diagramm: Nehmen Sie an,es handle sich bei X(A;B) Y©;C;A) um die einzige gültige vollständig vereinfachte Überführung des Modells in das relationale Modell. 1. Geben Sie Funktionalitätsangaben für X und Y (siehe Boxen)entsprechend der gegebenen relationalen Modellierung an(Nicht direkt in das Diagramm eintragen!). 2. Geben Sie SQL-92 Statements an, die die hier modellierten Relationen erzeugen. Nehmen Sie an, alle Attribute seien vom Typ integer. 3. Im Folgenden wird ein Bibliotheksverwaltungssystem beschrieben: - Es gibt Bücher, welche über ihre ISBN und ExemplarNummer identifiziert werden können. Jedes Buchexemplar hat einen Titel. - Es gibt Bibliotheken, welche über ihre Straße und Hausnummer identifiziert werden können. Eine Bibliothek verleiht Bücher. - Es gibt Personen. Personen werden über ihren Namen und ihr Geburtsdatum identifiziert. Eine Person kann eine beliebige Anzahl an Bibliotheken besuchen und Bücher ausleihen. Es soll möglich sein, dass sich Personen untereinander kennen. - Ein Buch kann zu einem gegebenen Zeitpunkt maximal von einer Person ausgeliehen sein. Erstellen Sie für das oben beschriebene System ein ER-Diagramm. Tragen Sie die Funktionali täten in Ihr Diagramm ein imd markieren Sie die Primärschlüssel durch Unterstreichen. Fortsetzung nächste Seite! Herbst 2017 Einzelprflfüngsnummer 46116 Seite 6 Aufgabe 3: Relationale Anfragesprachen Gegeben ist folgendes Universitätsschema(eine beispielhafte Ausprägung hängt der Klausur an): Studenten : {[MatrNr : integer, Name:string,Semester :integer]} Vorlesungen : {[VorlNr :integer,Titel: string,SWS:integer,gelesenVonrintegerjl Professoren ; {[PersNr : integer, Name : string,Rang :string,Raum : integer]} A^istenten : {]PersNr : integer, Name: string,Fadigebiet: string,Boss:integer]} hören : {[MatrNr : integer, VorlNr : integer]} voraussetzen : {[Vorgänger : integer, Nachfolger :integer]} prüfen : {[MatrNr :integer, VoiiNr: integer,PersNr : integer,Note: integer]} Finden Sie alle Studenten(nur Name ausgeben), die in keinem Fach geprüft wurden. Formulieren Sie die Anfrage in relationaler A^ebra. Finden Sie alle Studenten(nur Name zurückgeben), die in mindestens zwei verschiedenen Fächem bestanden(Note ^ 4.0)haben! Formulieren Sie die Anfrage in Tupelkalkttl. Aufgabe 4: SQL Gegeben sei das folgende Universitätsschema(eine beispielhafte Ausprägung hängt der Klausur an): Studöiten : {[MatrNr :integer, Name : string,Semester : integer]} Vorlesungen : {[VorlNr :integer,Titel: string,SWS:integer,gelesenVon:integer]! Professoren : {[PersNr :integer, Name: string,Rang :string,Raum : integer]} Assistenten : {[PersNr :integer, Name: string,Fachgebiet: string,Bo® :integer]} hören : {[MatrNr :integer, VorlNr:integer]} voratissetzen : {[Vorgänger : integer, Nachfolger :integer]} prüfen : {[MatrNr :integer,VorlNr : integer,PersNr : integer, Note : integer]} Geben Siejeweils ein SQL-92 Statement an, welches die gestellte Frage beantwortet. 1. Wie viele Vorlesungen hört der Student mit dem Namen Fichte?(Ausgabe der Anfrage soll die Anzahl der Vorlesimgen sein.) 2. Welche Studenten außer Fichte haben eine Vorlesimg gehört, die auch Fichte gehört hat? Geben Sie die Namen dieser Studenten(und nicht Fichte) duplikatfrei aus.(Im Beispiel sind dies Feuerbach, Theophrastos und Schopenhauer.) 3. Finden Sie alle Studenten(MatrNr und Name duplikatfrei ausgeben), die in jeder Prüfung, die sie geschrieben haben, eine 1 erhalten haben. Geben Sie hierbei nur Studenten aus, die mindestens in einem Fach geprüft wurden. Fortsetzung nächste Seite! Einzelprüfungsnummer 46116 Herbst 2017 Seite 7 Geben Sie eine absteigend sortierte Liste aus allen Vorlesungen und der Anzahl pro Vorlesung abgehaltener Prüfungen aus,etwa so: VorlNr Anzahl 4630 2 5001 1 5041 1 5022 0 5043 0 Formulieren Sie Ihre Lösimg aufzwei verschiedene Varianten: Einmal mit korrelierter Unterabfirage und eimnal ohne. a) Variante 1: mit korrelierter Unterabfirage b) Variante 2: ohne korrelierter Unterabfirage Aufgabe 5: Physische Datenoi^anisation 1 2 6 9 12 1 15 1 20 i 23 i 27 14 15 17 20 21 23 1. Wie heißt die gezeigte Datenstruktur? 2. Geben Sie den Wert von k (minimale Belegung von inneren Knoten)für das Beispiel an. 3. Geben Sie den Wert von k* (minimale Belegung von Blättern)für das Beispiel an. 4. Fügen Sie die 5 in die Datenstruktur ein. Zeichnen Sie die vollständige Datenstruktur nach dem Einfilgen und allen möglicherweise notwendigen Ausgleichsoperationen. Fortsetzung nächste Seite! Einzelprüfungsnummer 46116 Herbst 2017 Seite 8 Beispielausprägung Professoren Studenten Name Rang Sokrates 2126 Rüssel 2127 K<^rBikns Popper Augustinus PersNr 2125 2133 Raum MatrNr Name 04 226 24002 Xenokrates 18 C4 C3 232 25403 261^ Jonas Pichte 12 310 03 52 26830 Aristoxenos 8 03 309 27550 6 2 Semester 10 2136 Curie 04 36 28106 2137 Kant 04 7 29120 SchopenhauCT Oamap Theophrastos 29555 Fbn^badi 2134 Vorlesimgen VorlNr Titel 3 2 vorau^etzen SWS Vorgänger Nachfolger gelesenVon 5001 Grundzüge 4 2137 5001 5041 5041 4 2125 5001 5043 5043 EtMk Erkenntnistheorie 3 2126 5001 5049 5049 Mäeutik 2 2125 5041 5216 4052 Logik 4 2125 5043 5052 5052 Wissenschaftstheorie 3 2126 5041 5052 5216 Bioethik 2 2126 5052 5-259 5259 2 2133 5022 Der Wiener Kreis Glaube imd Wissen 2 2134 4630 Die 3 Kritiken 4 2137 hören Assistenten Name Fadigebiet Boss 3002 Piaton Ideenldire 2125 Aristoteles Syllogistik Wittgenstein Sprachtheorie Rhetikus Planetenbewegung Keplersche Gesetze Newton Spinoza Gott und Natur MatrNr VorlNr PersNr 26120 5001 27550 5001 3003 27550 4052 3004 28106 5041 3005 28106 5052 3006 28106 5216 3007 28106 5259 29120 5001 29120 5041 29120 5049 2126 2127 2127 2134 prüfen MatrNr VorlNr PersNr Note 5001 2126 l 5041 2125 2 29555 5022 25403 25403 5022 27550 4630 2137 2 5001 25403 4630 2137 5 29555 2125 Abbildung I; Beispielausprägung für eine Universitäts-Datenbank -9 Einzelprttfungsnummer 46116 Herbst 2017 Seite 9 Thema Nr.2 (Aufgabengruppe) Es sind alle Aufgaben dieser Aufgabengruppe zu bearbeiten! Teilaufgabe I; Softwaretecfanologie Aufgabe 1: Projektmanagement Gegeben ist die folgende Tabelle zur Grobplanung eines hypothetischen Softwareprojekts: Einschränkungen Endet fiühestens zwei Monate nach dem Start der Aktivität Dauer Anforderungs4 Monate analyse Entwurf 3 Monate Startet fiühestens einen Monat nach dem Start der 7 Monate Endet fiühestens drei Monate nach dem Ende der Entwurfsphase. Anforderungsanalyse. Implemen tierung a) Entwurfsphase. Darferst starten, nachdem die Anforderungsanalyse abgeschlossen ist. Geben Sie ein CPM-Netzwerk an, das die Aktivitäten und Abhängigkeiten des obigen Projektplans beschreibt. Gehen Sie von der Zeiteinheit „Monate" aus. • Das Projekt hat einen Start- und einen Endknoten. • • • Jede Aktivität wird aufeinen Start- und einen Endknoten abgebildet. Die Dauer der Aktivitäten sowie Abhängigkeiten sollen durch Kanten dargestellt werden. Der Startjeder Aktivität hängt vom Projektstart ab, das Projektende hängt vom Ende aller Aktivitäten ab. Modellieren Sie diese Abhängigkeiten durch Pseudoaktivitäten mit Dauer null. b) Berechnen Sie fürjedes Ereignis(d.h.für jeden JCnoten) die frfiheste Zeit, die späteste Zeit sowie die Pufferzeit. Beachten Sie, dass die Berechnungsreihenfolge einer topologischen Sortierung des Netzwerks entsprechen sollte. c) Geben Sie einen kritischen Pfad durch das CPM-Netzwerk an. Welche Aktivität darf sich demnach wie lange verzögem? Fortsetzung nächste Seite! Einzeiprüfungsnummer 46116 Herbst 2017 Seite 10 Aufgabe 2: Objektorientierte Modellierung mit UML Gegeben sei das folgende UML-Klassendiagramm,welches die statische Struktur von einfachen Zustandsautomaten beschreibt: < hat Startzustand < hat Zustände Zustandsautomat + automat hat Transitionen > + automat •i* name:String 0..* + zustande transitionen < beginnt bei Zustand + quelle O..* + auslaufende ■t-ziel ^ endet bei ^ eingehende Transitiün + ereignis: String •i- bedingung; String [0..1] 1 Endzustand Startzustand Zwischenzustand + Start +name: String a) Geben Sie ein Glossar an, welches die im iOassendiagramm definierten Konzepte rmd Beziehungen natürlicher Sprache beschreibt, ohne auf die grafische Notation einzugehen. Ergänzen Sie die Definitionen gegebenenfalls durch Angaben zur Semantik von Zustands automaten. Verwenden Sie ein bis zwei Sätze pro Klasse. b) Nachfolgend ist ein Beispiel eines Zustandsautomaten in der gängigen grafischen Notation abgebildet. Stellen Sie den Zustandsautomaten als UML-Objektdiagramm konform zum obigen UML-Klassendiagramm dar. Referenzieren Sie die dort definierten Klassen imd Assoziationen; auf Objektbezeichner und Rollennamen dürfen Sie verzichten. Flugreservierungy Flug -> reserviert reservieren buchen Flug gebucht [Buchung möglich] stornieren [Buchung buchen abschließen nicht möglich] \/ \/ Reservierung storniert abbrechen Fortsetzung nächste Seite! Herbst 2017 Einzelprüfungsnummer 46116 Seite 11 Aufgabe 3: Entwurfsmuster Verwenden Sie geeignete Entwurfsmuster, um die folgenden Sachverhalte mit Hilfe von UML-Klassendiagrammen zu beschreiben. Neimen Sie das zu verwendende Entwurfsmuster namentlich, wenden Sie es zur Lösung derjeweiligen Fragestellung an und erstellen Sie damit das problemspezifische UML-Klassendiagramm. Beschränken Sie sich dabei aufdie statische Sicht, d.h. definieren Sie keinerlei Verhalten mit Ausnahme der Definition geeigneter Operationen. a) b) c) Es gibt unterschiedliche Arten von Bankkonten: Girokonto, Bausparkonto vmd Kreditkarte. Bei allen Konten ist der Name des Inhabers hinterlegt. Girokonten haben eine IBAN. Kreditkarten sind immer mit einem Girokonto verknüpft. Bei Bausparkonten werden ein Sparzins sowie ein Darlehenszins festgelegt. Es gibt eine zentrale Klasse, die die Erzeugung unterschiedlicher Typen von Bankkonten steuert. Beim Ticker für ein Hockeyspiel können sich verschiedene Geräte registrieren und wieder abmelden,um auf Veränderungen des Spielstands zu reagieren. Hierzu werden im Ticker die Tore der Heim- vmd Gastmannschaft sowie die aktuelle Spielminute vermerkt. Als konkrete Geräte sind eine Smartphone-App sowie eine Stadionuhr bekannt. Dateisysteme sind baumartig strukturiert. Verzeichnisse können wiederum selbst Verzeichnisse vmd/oder Dateien beinhalten. Sowohl Dateien als auch Verzeichnisse haben einen Namen.Das jeweilige Eltemverzeichnis ist eindeutig. Bei Dateien wird die Art(Binär, Text oder andere) sowie die Größe in Byte, bei Verzeichnissen die Anzahl enthaltener Dateien hinterlegt. Teilaufgabe II; Datenbanksysteme Aufgabe 1: ER-Modellierung Für nachfolgend gegebene Miniwelt soll ein ER-Modell erstellt werden. Geben Sie Kardinalitäten in Chen-Notation an. Vergessen Sie nicht, dass zur Chen-Notation nicht nur Funktionalitäten, sondem auch Partizipitäten, also die Angabe von Existenzabhängigkeit bzw. totaler Teilnahme,zählen. Der örtliche Blasmusikverein möchte seine Verwaltung mithilfe einer Datenbank regeln. Zum einen möchte er seine Mitglieder mit Namen, Adresse - bestehend aus Straße, Hausnummer,PLZ vmd Ort, vmd Geburtsdatum festhalten. Jedes Mitglied bekommt bei Vereinseintritt eine laufende Nummer zugewiesen. Mitglieder teilen sich komplett auf in aktive Musiker und passive Vereinsmitglieder. Die aktiven Musiker spielen alle mindestens eine Art von Instrument. Ein Instrument hat einen eindeutigen Namen(z. B. Trompete oder Flöte)vmd einen Typ. Ein paar der Mitglieder sind außerdem im Vorstand des Vereins. Im Vorstand können sowohl aktive Mvisiker als auch passive Mitglieder sein. Für die Vorstandsmitglieder wird der jeweilige Posten notiert. Fortsetzung nächste Seite! Einzelprüfungsniimmer 46116 Herbst 2017 Seite 12 Um die Aktivität der Musiker zu kontrollieren, wird festgehalten, welcher Musiker bei welchem Auftritt anwesend war. Ein Auftritt wird identifiziert über Datum und Uhrzeit, außerdem hat er einen Namen und einen Ort. Während eines Auftritts werden verschiedene Stücke gespielt. Um Wiederholungen in zukünftigen Auftritten am selben Ort zu vermeiden, werden für jeden Auftritt die Stücke, die eine eindeutige Nummer im Musikverein haben, notiert. Musikstücke haben außerdem einen Titel sowie einen oder mehrere Komponisten. Jedes Stück ist für gewisse Instrumente geschrieben. Da sich die Anzahl der Stimmen für Stück imd Instrument unterscheiden kann, wird für jede Zuordnimg von Musikstück zu Instrument die Anzahl der Stimmen festgehalten. Aufgabe 2: Relationenmodell Überführen Sie das folgende ER-Modell in ein Relationenschema, das die Bedingungen der dritten Normalform erfüllt. Geben Sie beijedem Fremdschlüssel an, woraufer verweist. Überlegen Sie sich bei der Transformation von Generalisierung bzw. Spezialisierung, welche der zur Verfügung stehenden Möglichkeiten die beste ist. Beantworten Sie anschließend noch kurz die Frage, warum Sie sich für die von Ihnen gewählte Methode entschieden haben. Datum Warenkorb Kunde enthält>—( Anzahl Anzahl M r Name Produkt ^^pezialisti^^^^^ame^ Kühltheke Non-Food Food ^ ^steht inV Abteilung MHD FVischobst Fortseteung nächste Seite! Herbst 2017 Einzelprüfimgsnvinimer 46116 Seite 13 Aufgabe 3: Normalisierung Gegeben ist die Relation Reparatur(KID, Kundenname, Adresse, Geburtsdatum, Autokennzeichen, Modell, Baujahr, MitarbeiterlD, Reparaturdattim, Reparaturbeschreibung, Reparaturkosten). Sie beschreibt den Sachverhalt, dass Autos,die einem bestimmten Kimden gehören, von einem Mitarbeiter zu einem bestimmten Zeitpunkt repariert werden.Zum Kunden wird eine eindeutige ID (KID),ein Name,eine Adresse und sein Geburtsdatum gespeichert. Das Auto wird über sein Kennzeichen identifiziert imd kann eindeutig einem Kunden zugeordnet werden. Zusätzlich wird das Modell und das Baujahr aufgenommen. Für die Identifikation eines Reparaturvorgangs muss das Autokennzeichen imd das Reparaturdatum bekannt sein. Dazu können dann die Beschreibimg, die Kosten und der Mitarbeiter, der die Reparatur durchgeführt hat, bestimmt werden. 3.1 Funktionale Abhängigkeiten Bestimmen Sie för die obige Beschreibung die funktionalen Abhängigkeiten. Verwenden Sie hierfür nur die Informationen aus der Beschreibung, wobei Sie Zusammenhänge, die sich aus Transitivität ergeben, nicht angeben müssen. 3.2 Schlüsselkandidaten Bestimmen Sie die Schlüsselkandidaten für die gegebene Relation mit Hilfe der funktionalen Abhängigkeiten aus Aufgabe 3.1. Begründen Sie Ihre Ergebnisse stichhaltig und nennen Sie die verwendeten Methoden. 3.3 Normalformen Welche Normalform wird von der gegebenen Relation maximal erfüllt? Begründen Sie Ihre Entscheidimg in kurzen Sätzen. Aufgabe 4: SQL Für die bayerische Meisterschaft im Turmspringen ist folgendes Datenbankschema angelegt; Springer(Startnummer, Nachname, Vorname,Geburtsdatum, Körpergröße) Sprung(Sro, Beschreibung, Schwierigkeit) springt(SID, Startnummer, Durchgang) FK(SID)referenziert Sprung(SID) FK(Startniunmer)referenziert Springer(Startnummer) Fortsetzung nächste Seite! Herbst 2017 Emzelprüfungsniimmer 46116 Seite 14 Das Attribut Schwierigkeit kann die Werte 1 bis 10 annehmen, das Attribut Durchgang ist positiv und ganzzahlig. Die Körpergröße der Springer ist in Zentimeter angegeben. 4.1 Welche Springer sind größer als 1,80 m? Schreiben Sie eine 507,-Anweisung, welche in der Ausgabe mit dem größten Springer beginnt. 4.2 Welche Springer haben im ersten Durchgang einen Sprung mit einer Schwierigkeit von unter 6 gezeigt? Schreiben Sie eine 50Z-Anweisimg, welche Startnummer und Nachname dieser Springer ausgibt. 4.3 Formulieren Sie in Umgangssprache, aber trotzdem möglichst präzise, wonach mit folgender Abfrage gesucht wird: SELECT springt.Startnummer, s.Nachname,s.Vorname, MAX(springt.Durchgang) FROM springt, Springer s WHERE springt.Startnununer=s.Startnummer GROUP BY springt.Startnummer, s.Nachname,s.Vomame; 4.4 Gesucht ist die „durchschnittliche Körpergröße" all der Springer, die vor dem 01.01.2000 geboren wurden. Formulieren Sie eine 50L-Anweisung, welche die entsprechenden Springer ausgibt, wobei die Spalte mit der durchschnittlichen Körpergröße genau diesen Namen „durchschnittliche Körpergröße" haben soll. Aufgabe 5: Grundlagen 5.1 Durch Anwendung der Drei-Schichten-Architektur nach ANSI/SPARC erreicht man Datenunabhängigkeit. Erklären Sie diesen Begriff und die zwei Ausprägungen in der Drei-Schichten-Architektur nach ANSI/SPARC. 5.2 Erläutern Sie die ACID-Eigenschaft einer Transaktion. Nennen Sie hierfür, welche Eigenschaften mit dem Begriff„ACID"zusammengefasst sind und erklären Sie diese Eigenschaften jeweils in ein bis zwei Sätzen!