Universität Ulm -Sektion Angewandte Informationsverarbeitung

6.Übungsblatt (04.12.98 bis 14.12.98)

zur Vorlesung Software Engineering Praxis (WS 98/99)


 

Verbessern bzw. erweitern Sie die gezeigte DKV-Adressdatenbank. Laden Sie sich das Shellarchiv dkv.shar mit der Datenbank von der Sepp-Homepage herunter und verbinden Sie die Datenbank mit Ihrem Server.

 

Aufgabe 1 (2 Punkte)

Implementieren Sie die Updatefunktion update für die Datenbank. Beim Update sollen die Datensätze sämtlicher Ansprechpartner der Klinik mit den (evtl.) vom Benutzer geänderten Klinikdaten versehen werden. (Der Prozedurrumpf ist bereits im Programm enthalten.)

 

Aufgabe 2 (1 Punkt)

Erweitern Sie jede Seite des Dialogs durch einen Abbrechen-Button, der den Benutzer wieder auf die Ausgangsseite der Datenbank führt.

 

Aufgabe 3 (2 Punkte)

Erweitern Sie die delpartner-Funktion dahingehend, daß die (leere) Tabelle mit den Klinikdaten nicht mehr angezeigt wird, falls der letzte Ansprechpartner der Klinik gelöscht wurde.

Implementieren Sie eine Möglichkeit, daß neue Ansprechpartner für eine bestehende Klinik angelegt werden können.

 

Aufgabe 4 (2 Punkte)

Implementieren Sie eine Möglichkeit, daß eine komplett neue Klinik samt Ansprechpartner angelegt werden kann!

 

Aufgabe 5 (1 Punkt)

Verbessern Sie das gräßliche :-) Layout der Benutzerführung durch Verwirklichung eigener Ideen.

 

Aufgabe 6 (2 Punkte)

 Schreiben Sie sich eine kleine Perl-Funktion, die einen eindeutigen temporären Dateinamen zurückliefert! Die temporären Dateien sollen auf dem Verzeichnis /tmp abgelegt werden.

(Tip: die interne Perl-Variable $$ enthält die Nummer des aktuellen Prozesses = Prozeß-Id.)

Verwenden Sie diese Funktion für die temporären Dateien in der Datenbank.

Programmieren Sie eine Locking-Möglichkeit, mit der sichergestellt wird, daß keine 2 Prozesse gleichzeitig temporäre Dateien als Kopie der Datenbank angelegt haben. Damit wird erreicht, daß immer nur ein Prozeß die Datenbank zum Ändern geöffnet hat.