Landesabitur 2014 Hessen - Datenverarbeitungstechnik - Leistungskurs - Vorschlag B - Thema und Aufgabenstellung

Abitur 2014 Vorschlag B: Vermietung von Baumaschinen Aufgaben Original Prüfung

149 33 502KB

German Pages [11] Year 2014

Report DMCA / Copyright

DOWNLOAD FILE

Polecaj historie

Landesabitur 2014 Hessen - Datenverarbeitungstechnik - Leistungskurs - Vorschlag B - Thema und Aufgabenstellung

Citation preview

Hessisches Kultusministerium

Landesabitur 2014

Datenverarbeitungstechnik Leistungskurs

Thema und Aufgabenstellung Vorschlag B

Hinweise für den Prüfling

Auswahlzeit: Bearbeitungszeit:

30 Minuten 240 Minuten

Auswahlverfahren Wählen Sie von den zwei vorliegenden Vorschlägen einen zur Bearbeitung aus. Der nicht ausgewählte Vorschlag muss am Ende der Auswahlzeit der Aufsicht führenden Lehrkraft zurückgegeben werden.

Erlaubte Hilfsmittel 1. ein Wörterbuch zur deutschen Rechtschreibung 2. ein eingeführter Taschenrechner (Bei grafikfähigen Rechnern und Computeralgebrasystemen ist ein Reset durchzuführen.) 3. eine Liste der fachspezifischen Operatoren Fachbereich III

Sonstige Hinweise keine

In jedem Fall vom Prüfling auszufüllen

Name:

Vorname:

Prüferin/Prüfer:

Datum:

Seite 1 von 11

Hessisches Kultusministerium Datenverarbeitungstechnik Leistungskurs

Landesabitur 2014 Thema und Aufgabenstellung Vorschlag B

Vermietung von Baumaschinen

Aufgaben Eine Firma vermietet Bagger, Kräne und andere Typen von Baumaschinen an ihre Kunden. Ein Kunde erteilt einen Auftrag und kann damit mehrere Baumaschinen buchen. 1.

Entwickeln eines objektorientierten Software-Systems zur Buchungsverwaltung Einem Sachbearbeiter, als Nutzer des Systems, sollen folgende Anwendungsfälle zur Verfügung stehen: – suchen einer freien Baumaschine eines bestimmten Typs für einen Zeitraum: Die Liste der Baumaschinen wird nach einer freien Maschine des Typs durchsucht. – suchen eines Auftrags zu einer Auftragsnummer – einen neuen Auftrag für einen Kunden erstellen: Der Kunde wird aufgrund seines Namens gesucht. Wenn es keinen Kunden mit dem angegebenen Namen gibt, wird ein neuer Kunde mit diesem Namen angelegt. – eine Baumaschine zu einem Auftrag buchen: Wenn die Baumaschine in dem Zeitraum frei ist, wird sie gebucht und die neue Buchung dem Auftrag hinzugefügt. – einen Neukunden anlegen: Ein neuer Kunde mit dem angegebenen Namen wird angelegt. Sie finden ein UML-Klassendiagramm des Buchungssystems in Material 1.

1.1

Entwickeln und zeichnen Sie ein UML-Anwendungsfalldiagramm für das Buchungssystem. (6 BE)

1.2

Zeichnen Sie ein Objektdiagramm der Baumaschine „Komatsu PW1“ mit ihren Buchungen auf Basis des Klassendiagramms in Material 1. Die Maschine ist vom Typ „Bagger“, hat die Maschinen-Nummer 6677 und einen Tagespreis von 440 Euro. Die Maschine ist vom 1.2. bis zum 5.2.2014, vom 10.2. bis zum 13.2.2014 und vom 23.2. bis zum 28.2.2014 gebucht. Erläutern Sie, die Fälle, die beim Einfügen einer neuen Buchung in die Liste unterschieden werden müssen, ohne auf die Implementierung einzugehen. Hinweise: Die Buchungen einer Baumaschine werden in einer einfach verketteten Liste gespeichert. Eine Referenz zeigt von der Baumaschine auf die erste Buchung. Die Klasse Buchung modelliert einen Listen-Knoten. Die Buchungen sind nach dem Beginn des Mietzeitraums (von-Datum) aufsteigend sortiert. Bei den Objekten der Klasse Buchung sind nur die Attribute von, bis und naechste zu berücksichtigen. (6 BE)

1.3

Überführen Sie die Klassen Auftrag und Buchung in entsprechende Anweisungen einer objektorientierten Programmiersprache und implementieren Sie die aufgeführten Methoden. Hinweis: Verwenden Sie die Klassen Datum und List aus Material 2. (8 BE) Seite 2 von 11

Hessisches Kultusministerium Datenverarbeitungstechnik Leistungskurs 1.4

Landesabitur 2014 Thema und Aufgabenstellung Vorschlag B

Im Anwendungsfall „Eine Baumaschine zu einem Auftrag buchen“ wird zunächst die Methode buche() der Klasse Baumaschine aufgerufen. Diese Methode prüft, ob die Baumaschine im gewünschten Zeitraum frei ist. Ist sie frei (Rückgabewert von istFrei() = true), wird eine neue Buchung für die Maschine angelegt und dem Auftrag hinzugefügt. Die neue Buchung wird in die Buchungsliste der Baumaschine eingegliedert und zurückgegeben. Ist die Baumaschine nicht mehr frei, wird null zurückgegeben.

1.4.1 Entwickeln und zeichnen Sie ein UML-Sequenzdiagramm für die Methode bucheBaumaschine(a: Auftrag, bm: Baumaschine, von: Datum, bis Datum): Buchung der Klasse Buchungsverwaltung, die den Anwendungsfall „Eine Baumaschine zu einem Auftrag buchen“ abbildet. Hinweise: Das Einfügen der neuen Buchung in die Buchungsliste der Baumaschine muss im Sequenzdiagramm nicht berücksichtigt werden. In Material 3 finden Sie eine Vorlage für das Sequenzdiagramm. (10 BE) 1.4.2 Entwickeln und zeichnen Sie ein Struktogramm für die Methode istFrei(von: Datum, bis: Datum): boolean der Klasse Baumaschine. (10 BE) 1.4.3 Implementieren Sie die Methode buche(a: Auftrag, von: Datum, bis: Datum): Buchung der Klasse Baumaschine unter Verwendung der Klasse Datum in Material 2. (10 BE) 1.5

Im bisherigen Modell sind der Typ und der Preis einer Baumaschine Attribute der Klasse Baumaschine. Der Preis einer Maschine wird jedoch durch den Typ bestimmt und nicht durch die einzelne Baumaschine. Das folgende UML-Klassendiagramm enthält die neue Klasse MaschinenTyp.

Seite 3 von 11

Hessisches Kultusministerium Datenverarbeitungstechnik Leistungskurs

Landesabitur 2014 Thema und Aufgabenstellung Vorschlag B

Hinweis: Die Klasse Buchungsverwaltung enthält alle bisherigen Methoden und zusätzlich die Methode sucheMaschinenTyp(typ: String): MaschinenTyp. Das abgebildete Klassendiagramm ist nur für die Aufgaben 1.5.1 und 1.5.2 relevant. 1.5.1 Vergleichen Sie beide Modelle im Hinblick auf die Suche nach einer freien Baumaschine und einer Preisänderung für einen bestimmten Typ von Maschine. (6 BE) 1.5.2 Implementieren Sie die Methode sucheBaumaschine(typ: String, von: Datum, bis: Datum): Baumaschine der Klasse Buchungsverwaltung auf Basis dieses Klassendiagramms. (4 BE)

2.

Datenbank für den Baumaschinenverleih

2.1

Zur Verwaltung der Mitarbeiterdaten bestehen bereits entsprechende Tabellen in Material 4. Einige Inhalte sollen geändert bzw. ausgewertet werden.

2.1.1 Frau Birgit Scholz (MaID = 812) arbeitet ab sofort 7 Stunden pro Tag und hat einen Urlaubsanspruch von 26 Tagen. Geben Sie eine SQL-Anweisung an, mit der die Änderung in der Datenbank vorgenommen wird. (2 BE) 2.1.2 Entwickeln Sie eine SQL-Abfrage, welche die Mitarbeiternummer, den Namen und den Vornamen sowie die Anzahl der Abwesenheitstage nach Grund zusammengefasst aus der Mitarbeitertabelle ermittelt; das Ergebnis soll nur die Mitarbeiter mit mehr als 5 Abwesenheitstagen, nach Tagen absteigend sortiert, enthalten. (5 BE) 2.1.3 Bestimmen Sie das Ergebnis der folgenden SQL-Anweisung auf Basis der in Material 4 dargestellten Mitarbeiterdaten und geben Sie es in Form einer Tabelle an: SELECT Mitarbeiter.MaID, Mitarbeiter.Name, Mitarbeiter.Vorname, Urlaubsanspruch – (SELECT SUM(AnzahlTage) FROM Abwesenheit WHERE Abwesenheit.MaID = Mitarbeiter.MaID AND Grund="Urlaub" AND YEAR(vonDatum)=2014) AS Resturlaub FROM Mitarbeiter; (5 BE) 2.1.4 Entwickeln Sie eine SQL-Abfrage, welche für alle Mitarbeiter und Mitarbeiterinnen die Mitarbeiternummer, den Namen und Vornamen sowie die Einsatzzeiten im Januar 2014 (in Stunden) ermittelt. Hinweis: Die Funktion Time_to_Hour(zeit2 – zeit1) liefert die Zeitdifferenz in Stunden. (4 BE)

Seite 4 von 11

Hessisches Kultusministerium Datenverarbeitungstechnik Leistungskurs

Landesabitur 2014 Thema und Aufgabenstellung Vorschlag B

2.2

Die Einsatzplanung für die Baumaschinen soll verbessert werden. Es soll zum Beispiel möglich sein, für einen ausgefallenen Fahrer schnell Ersatz zu finden. In Material 5 finden Sie eine Tabelle zum Einsatz der Baumaschinen mit der Maschinen-Nummer als eindeutigem Schlüssel und zusätzlichen Informationen. Analysieren Sie diese Tabelle im Hinblick auf Redundanzen und Anomalien. Geben Sie für jede Anomalie ein Beispiel an. (6 BE)

2.3

Die Verleihfirma möchte die Tabellen zur Verwaltung der Mitarbeiterdaten auf einem Server lagern. Die zwei Personengruppen Mitarbeiter und Personalverwaltung sollen darauf zugreifen können, unter der Wahrung von Datenschutz und Datensicherheit.

2.3.1 Beschreiben Sie einen Weg, wie die Zugangsberechtigungen zu den Tabellen und die Rechte für Lesen, Schreiben, Ändern und Löschen der Daten den beiden Personengruppen zugeordnet werden sollen. (2 BE) 2.3.2 Untersuchen Sie die Auslagerung der Daten in eine sogenannte Cloud und erläutern Sie, welche Gesichtspunkte des Datenschutzes und der Datensicherheit zu berücksichtigen sind. (4 BE) 2.4

Die Verleihfirma hat eine eigene Werkstatt. Zur Reparatur einer Baumaschine wird ein Ersatzteileauftrag erstellt, der einem Mitarbeiter zugeordnet wird; Sie finden ein Beispiel in Material 6.

2.4.1 Entwickeln Sie ein ER-Modell, das den Inhalt eines Ersatzteileauftrags abbildet. Zeichnen Sie das ER-Diagramm bestehend aus Entitätstypen und Beziehungen mit allen Attributen. Geben Sie die Kardinalitäten der Beziehungen in der Form „[min, max]“ an. Hinweis: In Material 7 finden Sie eine Vorlage für das Diagramm. (6 BE) 2.4.2 Überführen Sie Ihr ER-Modell in das relationale Modell in der 3. Normalform. Hinweis: Geben Sie alle Relationen in der folgenden Schreibweise an: Relation (PK, Attribut, … , FK#) (6 BE)

Seite 5 von 11

Hessisches Kultusministerium Datenverarbeitungstechnik Leistungskurs

Landesabitur 2014 Thema und Aufgabenstellung Vorschlag B

Material 1

Klassendiagramm

Hinweise: Die Auftragsnummer der Klasse Auftrag ist eine fortlaufende Nummer, bei eins beginnend. Die Buchungen werden dem Auftrag in der Reihenfolge ihrer Erstellung hinzugefügt, d.h. die Liste buchungen ist unsortiert. Get- und set-Methoden sind nicht dargestellt und müssen auch nicht implementiert werden. Die Dokumentation der Klasse Datum befindet sich in Material 2.

Seite 6 von 11

Hessisches Kultusministerium Datenverarbeitungstechnik Leistungskurs

Landesabitur 2014 Thema und Aufgabenstellung Vorschlag B

Material 2

Die Klasse Datum Ein Objekt der Klasse Datum repräsentiert ein bestimmtes Datum. Kurzbeschreibung der Klasse Datum: Datum()

erzeugt ein Datum-Objekt mit dem aktuellen Systemdatum

Datum – tag: int – monat: int – jahr: int + Datum() + Datum(tag: int, monat: int, jahr: int) + vergleicheMit(d: Datum): int + toString(): String

Datum(tag: int, monat: int, jahr: int)

erzeugt ein Datum-Objekt mit den Werten von tag, monat und jahr vergleicheMit(d: Datum): int

Vergleicht das aktuelle Datum-Objekt mit dem des Parameters d und liefert einen int-Wert 0 wenn das Datum des Datum-Objekts nach dem von d liegt toString() liefert eine String-Repräsentanz des Datum-Objekts in der Form tt.mm.jjjj

Die Container-Klasse List Mithilfe der Klasse List können Objekte im Arbeitsspeicher in einer linearen Liste verwaltet werden. List repräsentiert eine generische Liste mit Elementen des Typs T in festgelegter Reihenfolge, auf die sowohl wahlfrei über einen Index als auch sequenziell zugegriffen werden kann.

List + List( ) + add(obj: T): boolean + get(index: int): T + remove(index: int): T + size( ): int

Kurzbeschreibung der Klasse List: add(obj: T)

Hängt das Objekt obj vom Typ T am Ende der Liste an. Der Rückgabewert ist grundsätzlich true. get(index: int)

Liefert das Listenelement an der Position index zurück bzw. null, falls index negativ oder größer gleich der Anzahl der momentan enthaltenen Elemente ist. remove(index: int): T

Entfernt das Listenelement an der Position index. Liefert das entfernte Element zurück bzw. null, falls index negativ oder größer gleich der Anzahl der momentan enthaltenen Elemente ist. size(): int

Liefert die Anzahl der Elemente in der Liste zurück.

Seite 7 von 11

Hessisches Kultusministerium Datenverarbeitungstechnik Leistungskurs

Landesabitur 2014 Thema und Aufgabenstellung Vorschlag B

Material 3

Vorlage Sequenzdiagramm für den Anwendungsfall „Eine Baumaschine zu einem Auftrag buchen“

Hinweis: Die neue Buchung für die Baumaschine (Objekt der Klasse Buchung) muss im Diagramm ergänzt werden.

Seite 8 von 11

Hessisches Kultusministerium

Landesabitur 2014

Datenverarbeitungstechnik Leistungskurs

Thema und Aufgabenstellung Vorschlag B

Material 4

Mitarbeiterdaten Mitarbeiter MaID Name

Einsatz

811 812 815 817 841

Müller Scholz Storck Ullmann Hohmann

EID 1 2 3 4 5 6 7

MaID 811 811 811 812 812 817 817

Abwesenheit AbwID MaID 1 2 3 4

811 811 815 817

Vorname Jens Birgit Hans Sven Julia

Geburtsdatum 05.04.1982 21.03.1980 07.09.1972 27.09.1971 02.07.1978

Tagesarbeitszeit Urlaubsanspruch 8 26 4 24 6 26 4 27 8 24

Datum vonUhrzeit bisUhrzeit 10.01.2014 07:00 11:45 11.01.2014 07:00 16:00 12.01.2014 09:00 15:30 10.01.2014 08:00 12:00 11.01.2014 07:00 13:00 10.01.2014 07:15 15:30 11.01.2014 07:20 17:30

vonDatum 02.01.2014 09.01.2014 02.01.2014 05.01.2014

bisDatum 06.01.2014 09.01.2014 10.01.2014 08.01.2014

Grund Urlaub Krankheit Urlaub Krankheit

Anzahl Tage 5 1 7 4

Seite 9 von 11

Hessisches Kultusministerium

Landesabitur 2014

Datenverarbeitungstechnik Leistungskurs

Thema und Aufgabenstellung Vorschlag B

Material 5

Baumaschineneinsatz Masch Nr.

Maschinen Bezeichnung

Masch. typ

Führerschein typ

Bagger

Erdbaumaschinenschein

Aktueller Kunde

Kundenkontakt mit Telnr.

Aktueller Fahrer mit Telnr.

Tiefbau AG

Hr. Bauer, 069/5647

J. Müller, 0123/56789 0171/92936

A. Sand 0123/9999 0171/9999

6677

Komatsu PW1

8866

Minikran MC 168

Kran

Kranschein

Hoch AG

Hr. Tief 069/7564

8899

Raupenkran RC 98

Kran

Kranschein

BauMax KG

Fr. Hoch, 0123/4567

P. Schnell 0160/6666

9955

Gabelstapler FS 13

Stapler

Flurförderschein

BauMax KG

Fr. Hoch, 0123/4567

B. Lager 0151/5555





Alternative Fahrer mit Telnr. H. Storck, 089/12345 0160/456 P. Stein 0123/8888 0171/5678 P. Stein 0123/8888 0171/5678 P. Schnell 0160/6666 A. Sand 0123/9999 0171/9999 P. Stein 0123/8888 0171/5678 C. Adam 0124/7777 0161/8877 P. Schnell 0160/6666



Seite 10 von 11

Hessisches Kultusministerium

Landesabitur 2014

Datenverarbeitungstechnik Leistungskurs

Thema und Aufgabenstellung Vorschlag B

Material 6

Ersatzteileauftrag

227342

Auftrag Nr.

vom: 12.02.2014

Von Mitarbeiter

Hr. Schrauber

TeileNr. 123 234 345

Bezeichnung Felge Befestigungsmaterial Radkappe Zwischensumme Ersatzteile:

Menge 2 1 1

Einzelpreis Gesamtpreis 64,95 129,90 66,95 66,95 48,17 48,17 245,02

MwSt. 19%:

46,55

Gesamtsumme:

291,57

Material 7

Vorlage ER-Diagramm Mitarbeiter

Auftrag

Ersatzteil

Seite 11 von 11