OODB-Praktikum

OODB-Praktikum


Prof. Dr. Andy Schürr

email: schuerr@informatik.unibw-muenchen.de

Institut für Softwaretechnologie
Fakultät für Informatik
Universität der Bundeswehr München
D-85577 Neubiberg

 

    Praktikum im Wintertrimester 2001 an der Universität der Bundeswehr München

Objektorientierte Konzepte setzen sich in weiten Bereichen der Informatik immer mehr durch. Nach objektorientierter Analyse und Design bzw. objektorientierte Sprachen ist die Fortführung der Konzepte wie Klassen, Spezialisierung/Vererbung, Beschreibung/Implementierung des Verhaltens von Entitäten auf Datenbanken nur ein logischer Schritt

Das Praktikum vermittelt anhand des OODBMS O2 einen Einblick in objektorientierte Datenbanken und umfasst die Gebiete Schemdefinition (Beschreibung der Datenbasis), die Anfragesprache OQL, weitere Konzepte (objektorientierter) Datenbanken wie Zugriffsschutz, leistungssteigernde Maßnahmen und nicht zuletzt der webbasierte Zugriff auf eine Datenbank

Inhalt dieser Seite:

1. Allgemeines
2. Dokumentation
3. Phasen, Dokumente und Termine
4. Aufgabenblätter / Projekte
5. Hinweise
6. Teilnehmer

1. Allgemeines

  • Das Datenbankpraktikum beginnt am 12. Januar 2001.
  • Bei Problemen im Rahmen des Übungsbetriebs wenden Sie sich an Ihren Tutor Knut Weißer (DB-Administrator).

Übersicht

2. Dokumentation/Manuals/Quellcode

Hinweis: Links innerhalb von pdf-Dokumenten funktionieren nicht über das WWW

Übersicht

3. Phasen, Dokumente und Termine

  • Gruppenaufteilung
    Schon zu Beginn des Praktikums sollen Gruppen zu 4 Personen gebildet werden, die über den ganzen Zeitraum zusammenarbeiten.
  • Inhalt
    Das Praktikum teilt sich in zwei Phasen auf:
  • Erfolgreiche Teilnahme
    Wir erwarten
    • die regelmäßige Teilnahme an den Praktikumstreffen
    • in der ersten Phase die wöchentliche Bearbeitung der Aufgaben in der Gruppe und Einsendung der Arbeitsergebnisse an den Tutor. (Die Ergebnisse sollen von den Gruppen an dem darauffolgenden Treffen vorgestellt werden. Hierbei wird darauf geachtet, dass jedes Gruppenmitglied mindestens einmal an die Reihe kommt.) und
    • in der Projektphase wöchentlich erkennbare Fortschritte, eine Dokumentation der jeweiligen Entwicklungsphasen und eine Abschlußpräsentation und -vorführung des entwickelten Systems. (Die Aufgabenverteilung innerhalb der Gruppe sollte erkennbar sein.)

Übersicht

4. Aufgabenblätter / Projekte

  • Übungsblatt 1 (Abgabe bis 19.01.2001)
    1. Lesen Sie im O2C-Beginner's Guide die Kapitel 1 und 2 (Einleitung und Objekte, Klassen, Typen) durch.
    2. Arbeiten Sie anschließend aus dem Tutorial (Kapitel 4) die Abschnitte 4.2 und 4.3 durch. Ergebnisse der praktischen Arbeiten werden vom Tutor auf dem DB-Rechner eingesehen.
    3. Erstellen Sie zur Beispielaufgabe "Medienverleihsystem WIM-Rent" einen konzeptionellen Entwurf in Form eines UML-Klassendiagramms.
  • Übungsblatt 2 (Abgabe bis 26.01.2001)
    1. Lesen Sie im O2C-Beginner's Guide das Kapitel 3 (Programmiergrundlagen) durch.
    2. Arbeiten Sie anschließend aus dem Tutorial (Kapitel 4) die restlichen Abschnitte 4.4 bis 4.6 durch.
    3. Erstellen Sie zur Beispielaufgabe "Medienverleihsystem WIM-Rent" einen logischen Entwurf, d.h. die Übertragung des konzeptionellen Entwurfs in ein O2C-Datenbankschema (ohne Implementierung der Methoden- und Programmrümpfe!).
  • Übungsblatt 3 (Abgabe bis 02.02.2001)
    1. Lesen Sie im ODMG OQL User Manual das Kapitel 2 (Getting started) durch.
  • Formulieren Sie basierend auf dem logischen Entwurf zur Beispielaufgabe "Medienverleihsystem WIM-Rent" die folgenden Anfragen in OQL:
    1. Alle Standorte der Automaten.
    2. Alle Mitglieder, die Manager sind.
    3. Der Bestand des Automaten, dessen Standort mit "Muench" beginnt
    4. Alle Mitglieder, die mehr als 3 Leihobjekte ausgeliehen haben.
    5. Alle Automaten, deren FreieKapazitaet größer als 10 ist.
    6. Alle defekten Medien, gruppiert nach Automaten und sortiert nach dem Titel.
    7. Alle Leihobjekte, die von Mitgliedern länger als drei Tage ausgeliehen sind, gruppiert nach Mitglied
    8. Alle Leihobjekte, die von Mitglieder gekauft wurden (nach dem bisherigem logischen Entwurf kann diese Information nur in der LogListe enthalten sein; definieren sie daher geeignete Kommentare für die eintretbaren Log-Ereignisse)
    9. Alle Ladenhüter, absteigend sortiert nach der Zeit der letzten Ausleihe
  • Implementieren Sie zur Beispielaufgabe "Medienverleihsystem WIM-Rent" alle Klassenmethoden vom Logischen Entwurf des Lösungsvorschlags (hier ist echte Teamarbeit gefragt, oder soll dies etwas einer alleine machen :-))
  • Übungsblatt 4 (Präsentation am 09.02.2001)
    • Zum Abschluss der Vorbereitungsphase soll jede Gruppe eines der folgenden Themen vorbereiten und präsentieren (Dauer: 15-30 min). Darüberhinaus ist eine kurze Zusammenfassung (ca. 2 Seiten) über das Thema als leichten Einstieg für die anderen Gruppen erwünscht. (Die Themenverteilung findet am 02.02.2001 statt)
      1. O2Look (Gruppe 4)[PDF]
      2. O2Web (Gruppe 1)[PDF]
      3. O2Java-Anbindung (Gruppe 2)[PDF]
      4. ausführbare O2C-Programme und O2C-Meta Schema (Gruppe 3)[PDF]
  • Vorläufige Projektphasenplanung (jeweils Phasenende):
    Lastenheft/Anforderungsanalyse16.02.2001
    Konzeptioneller Entwurf 23.02.2001
    Logischer Entwurf 02.03.2001
    Implementierung/Test 30.03.2001
    Dokumentation(Draft) 23.03.2001
    Dokumentation(entgültige Fassung)04.04.2001
    Abschlusspräsentation 04.04.2001
  • Projekte:

Übersicht

5. Hinweise

  • Arbeitsumgebung
    Kennungen stehen sowohl im Electronic Classroom (ECR) als auch am Institut für Softwaretechnologie zur Verfügung. Das DBMS O2 ist auf dem Solaris-Rechner

    aphrodite.informatik.unibw-muenchen.de

    installiert. Dazu loggt man sich entfernt auf diesem Rechner ein, entweder über ein UNIX-Betriebsystem mit X-Oberfläche oder über PC mit X-Emulation (z. B. Exceed). Es steht für jede Gruppe jeweils eine Kennung zur Verfügung (db01,db02,db03,db04).

    Nach dem Einloggen sollten Sie als erstes die Umgebungsvariablen für O2 setzen. Alles Notwendige steht im Shell-Skript /home/O2/umgebung.csh.

    Aufruf der grafischen Programme:

    • O2-Shell: o2shell -server aphrodite.informatik.unibw.muenchen.de -system stud
    • O2-Tools: o2tools -server aphrodite.informatik.unibw.muenchen.de -system stud

    Aufruf des Kommandozeilen-Programms:

    • O2DBA-Shell: o2dba_shell -server aphrodite.informatik.unibw.muenchen.de -system stud
  • Anlegen von Schemata/Datenbasen
    Jede Gruppe erhält ihr eigenes Volume. Nur auf diesem Volume darf eine Gruppe Schemata und Datenbasen anlegen. Das Volume wird vom DB-Administrator eingerichtet

    Anlegen eines Schemas (n=Name der Gruppe):
    create schema schemaname volume WT01Grp0nVol

    Damit es nicht zu Namenskollosionen kommt, wird an jeden Namen eines Schemas bzw. einer Basis das Suffix Grp0n angehängt
    (Beispiel: create schema s1Grp01 volume WT01Grp01Vol).

  • Konkurrente Schemaentwicklung
    Arbeiten mehrere Gruppen gleichzeitig auf (verschiedenen) Schemata und verändern diese, dann kann es zu Sperrkonflikten und Verklemmungen kommen (da O2 Schemaänderungen als Schreibtransaktionen auf dem Katalog behandelt). Die einzelnen Gruppen sollten dann in der O2-Shell
       catalog transaction on
    eingeben. Nach jeder Operation wie Schema- oder Basiserzeugung, Klassenimportierung usw. sollten Gruppen zusätzlich ein "Commit" durchführen.

Übersicht

6. Teilnehmer

Phase 1 (Einarbeitung)

Phase 2 (Projekt)

Übersicht

WWW Administrator
Last modified: Fri Mar 2 09:40:58 CET 2001