Für eine korrekte Darstellung dieser Seite benötigen Sie einen XHTML-standardkonformen Browser, der die Darstellung von CSS-Dateien zulässt.

. .
Suche

Meta-Modellierung-Einleitungt Vorlesungsseite Fachgruppe Praktische Informatik

Aufgaben zu Meta-CASE


Installation und Einarbeitung

  1. Beschaffen Sie sich eine Windows oder Linux Version unter http://www.fujaba.de oder http://life.upb.de
  2. Installieren Sie die Version auf einem  Rechner (Bei der Life-Windowsversion ist ein Installer integriert).
  3. Arbeiten Sie mindestens zwei Beispiele (Flaschendrehen, Hausbau, etc.) sowie die Dokumentation durch, um sich mit dem Tool und den Konzepten vertraut zu machen.

Boolesche Petrinetze

Als Beispiel soll ein Interpreter für boolesche Petrinetze mit Hilfe von Fujaba spezifiziert und getestet werden. Boolesche Petrinetze bestehen aus Stellen, Transitionen, Kanten und Marken. Kanten sind gerichtet und eine Kante verbindet dabei immer eine Stelle mit einer Transition oder eine Transition mit einer Stelle. Die Anzahl der Kanten ist unbeschränkt, genau wie die Anzahl der Stellen und Transitionen. Marken liegen auf den Stellen, wobei eine Stelle jeweils nur eine Marke haben kann. Eine formale Definition ist im Vorlesungsskript zu Softwaretechnik I Lehrmodul 7 zu finden.

Die Ausführung eines booleschen Petrinetzes erfolgt in Schritten. Innerhalb eines Schrittes wird zuerst geprüft welche Transitionen feuerbereit sind. Eine Transition ist feuerbereit, wenn alle Stellen in ihren Vorbereich eine Marke besitzen. Eine Stelle liegt im Vorbereich einer Transition, wenn sie durch eine Traversierung einer einlaufenden Kanten der Transition erreichbar ist. Entsprechend ist eine Stelle im Nachbereich einer Transition, wenn sie durch eine Traversierung einer auslaufenden Kante erreichbar ist. Nachdem die Feuerbereitschaft aller Transitionen festgelegt ist, werden die Marken im Vorbereich einer feuerbereiten Transition gelöscht. Alle Stellen im Nachbereich einer feuerbereiten Transition erhalten eine Marke. Überflüssige Marken werden konsumiert bzw. fehlende Marken werden erzeugt.

Aufgabe

Spezifizieren sie mit Fujaba ein boolesches Petrinetz inklusive Interpreter. Die Spezifikation darf maximal 1 Attribut enthalten, dass vom Typ boolean ist (Tip: Marken werden Objekte).

Testen Sie ihre Spezifikation mit dem Dynamic Object Browsing System (DOBS) indem sie das Modell einer Ampelkreuzung erzeugen und testen. Die einzelnen Ampeln wechseln zyklisch durch die Phasen Rot, Rot-Gelb, Grün, Gelb, wobei die jeweils gegenüberliegenden zwei Ampeln das gleiche Signal anzeigen. Beachten Sie, dass jeweils ein Ampelpaar Rot zeigt während die andere Ampel den Verkehr passieren lässt und es existiert ein Zeitpunkt, an dem beide Ampeln Rot zeigen. Marken in ausgezeichneten Stellen sollen den Zustand der Ampel anzeigen. Dabei repräsentiert eine ausgezeichnete Stelle immer den Zustand einer Ampel, nicht beider gleichzeitig.

Abgabe

  1. Fujaba Projekt
  2. Ausarbeitung
    • Modell der Ampelkreuzung als Petrinetz
    • Klassendiagramm
    • Aktivitätsdiagramme der wichtigen Methoden
    • Screenshots der erfolgreichen Ausführung
    • (alles jeweils mit Erläuterungen)
  3. Zusätzliche kurze Präsentation und Diskussion

last edited 22 April 2004 by Jörg Niere