Petri Netze II Vorlesung 2 SWS WS ‘99/00 Gisbert Dittrich FBI UniDo

Slides:



Advertisements
Ähnliche Präsentationen
Ziele von EINI I + II Einführen in „Informatik“
Advertisements

Integrations- und Funktionstests im Rahmen des V-Modelles
Prof. Dr. Liggesmeyer, 1 Software Engineering: Dependability Prof. Dr.-Ing. Peter Liggesmeyer.
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
Desktop Video SPV 2 SWS SS 99 Gisbert Dittrich FBI Unido
Informatik 12 | DAES Compilerbau Wintersemester 2010 / 2011 Dr. Heiko Falk Technische Universität Dortmund Lehrstuhl Informatik 12 Entwurfsautomatisierung.
Claudio Moraga; Gisbert Dittrich
Prof. Dr. Holger Schlingloff
Software-Engineering II Eingebettete Systeme, Softwarequalität, Projektmanagement Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt.
PADLR Submodul Modular Content Archives Ein Content Browser für Lehr- materialien aus der Elektrotechnik Dipl.-Ing. Mark Painter Institut für Nachrichtentechnik.
Datenbankzugriff im WWW (Kommerzielle Systeme)
Kooperierende autonome Fahrzeuge
Untersuchung und szenariobasierte Entwicklung von Websites zur Orientierung in Universitätsstudiengängen unter Berücksichtigung von Prinzipien des Web.
Systemanalyse In der Systemanalyse wird aus den fachspezifischen Anforderungen das Systemmodell erstellt; im Systemmodell ist spezifiziert, was das System.
Spezifikation, Verifikation, Testtheorie Prof. Dr. Holger Schlingloff Institut für Informatik und Fraunhofer FIRST.
Universität Stuttgart Institut für Kernenergetik und Energiesysteme LE P MuSofT Erkundungsumgebung Entwicklung eines komponentenbasierten Systems WS 03/04.
K-Modeler Engineering
Gliederung der Vorlesung Software Engineering WS 2001/2002
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Kapitel 7 Claudio Moraga, Gisbert Dittrich FBI Unido
Claudio Moraga; Gisbert Dittrich
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Kapitel 12 Claudio Moraga, Gisbert Dittrich FBI Unido
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Kapitel 11 Claudio Moraga, Gisbert Dittrich FBI Unido
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
Modellierung komplexer Realität mit Objekten
Entwicklung von Benutzerschnittstellen
Diskrete Mathematik I Vorlesung Arrays-
Vortrag 11: Reengineering - Refactoring
GROOVE Graphs for Object-Oriented Verification Seminar: SEFSIS Sommersemester 2006 Basil Becker
1 Dipl.-Inform. Christian Fuß Lehrstuhl für Informatik 3 an der RWTH Aachen 2. Übungsblatt Änderungen am ersten Entwurf und Entwurfsparadigmen 4. Mai 2006.
Vorlesung Gestaltung von soziotechnischen Informationssystemen - RequirementsEngineering und Contextual Design- Thomas Herrmann, Lehrstuhl Informations-
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 5. Test-First Prinzip Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Simulation komplexer technischer Anlagen
Spezifikation von Anforderungen
Software Engineering SS 2009
Prof. Dr. Gerhard Schmidt pres. by H.-J. Steffens Software Engineering SS 2009Folie 1 Weitere Vorgehensmodelle Der Rational Unified Process RUP –bei IBM.
? Was ist Informatik? Was ist Informatik? Alexander Lange
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Objektorientierte Konzepte/UML Geoinformation I Vorlesung 2 WS 2000/2001.
Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie II (Teil I): Simulation und 3D Programmierung Prof.
Proseminar: „Webtechnologien für Ecommerce“
Generalisierung/Spezialisierung Subtypisierung/Vererbung
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
26. Fortbildungstagung Tagung Strobl,
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Petrinetze 1. Einführung Informatik : wesentlich Modellierung von
Arbeitsbereich „Rechnernetze und verteilte Systeme“
Software Engineering Grundlagen
Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie II (Teil I): Simulation und 3D Programmierung Prof.
Datenbanken im Web 1.
OOSE nach Jacobson Sebastian Pohl/ST7 Betreuer: Prof. Dr. Kahlbrandt.
- Studienarbeit - Entwurf und Umsetzung von kombinierten Anfragen für die Ähnlichkeitssuche auf digitalen Bilder auf der Basis von Regionen und Features.
Ringvorlesung Einführung in das Graduiertenkolleg (INF 3)
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: Entwurf Dr. Wolfgang Wörndl
 Präsentation transkript:

Petri Netze II Vorlesung 2 SWS WS ‘99/00 Gisbert Dittrich FBI UniDo dittrich@cs.uni-dortmund.de

Gliederung Kapitel 7: Tools Einleitung/Hintergrund: Was sind PNs und was will ich mit PNs ? - Ziel Netzbasierte Repräsentationen Idee von “Verfeinerung” am Beispiel Toollandschaft Toolbeschreibungen im Netz Tool: PetriLab Anforderungen an Tools PetriLab Inhalt der Vorführungen - Methodik Schlußbemerkungen 24.01.2000

Ziel Repräsentation von Systemen Beiträge zur in den frühen Phasen der Entwicklung insbesondere: für Systeme mit Nebenläufigkeit Software/Hardwaresysteme, dort v.a.: Anforderungsbeschreibungen v. a. funktionale Anforderungen Ist-Analyse ---> Validierung Wir haben bis jetzt die Eingabe relativ einfach gehalten, indem wir von der Standardeingabe gelesen haben (d. h. wir haben die entsprechenden Eingaben über die Tastatur eingetippt), und wir haben auch die Standardausgabe geschrieben, so daß also die Ausgaben auf dem Bildschirm erschienen sind. Bei umfangreicheren Texten ist das natürlich nicht besonderes praktisch, so daß wir in der Lage sein sollten, Daten direkt aus Dateien zu lesen und auch wieder in Dateien zu schreiben. Die Einzelheiten des Dateisystems sind für uns an dieser Stelle nicht interessant, wir nehmen an, daß Dateien dazu dienen, Informationen zu speichern, diese Informationen können geschrieben und gelesen werden. Die zentralen Operationen auf einer solchen Datei bestehen zunächst einmal darin, eine Datei für die vorgesehene Operation (Lesen oder Schreiben) zu öffnen und sie nach dieser Operation zu schließen. Dateien werden im Programm über Variablen, also über die üblichen Namen angesprochen. Im Dateisystem, also außerhalb des Programms, haben solche Dateien ebenfalls Namen und wir müssen nun den internen Namen in einem Programm mit dem externen Namen im Dateisystem in Verbindung bringen (dies geschieht, wenn wir ankündigen, daß wir von einer Datei lesen oder auf sie schreiben wollen). Umgekehrt ist es notwendig, diese Bindung auch wieder zu lösen, damit andere Programme auf diese Datei zugreifen können oder damit derselbe Bezeichner sich auf andere Dateien beziehen kann. 24.01.2000

Netzbasierte Repräsentationen Bipartite, gerichtete Graphen (mit An-/Inschriften) Wir haben bis jetzt die Eingabe relativ einfach gehalten, indem wir von der Standardeingabe gelesen haben (d. h. wir haben die entsprechenden Eingaben über die Tastatur eingetippt), und wir haben auch die Standardausgabe geschrieben, so daß also die Ausgaben auf dem Bildschirm erschienen sind. Bei umfangreicheren Texten ist das natürlich nicht besonderes praktisch, so daß wir in der Lage sein sollten, Daten direkt aus Dateien zu lesen und auch wieder in Dateien zu schreiben. Die Einzelheiten des Dateisystems sind für uns an dieser Stelle nicht interessant, wir nehmen an, daß Dateien dazu dienen, Informationen zu speichern, diese Informationen können geschrieben und gelesen werden. Die zentralen Operationen auf einer solchen Datei bestehen zunächst einmal darin, eine Datei für die vorgesehene Operation (Lesen oder Schreiben) zu öffnen und sie nach dieser Operation zu schließen. Dateien werden im Programm über Variablen, also über die üblichen Namen angesprochen. Im Dateisystem, also außerhalb des Programms, haben solche Dateien ebenfalls Namen und wir müssen nun den internen Namen in einem Programm mit dem externen Namen im Dateisystem in Verbindung bringen (dies geschieht, wenn wir ankündigen, daß wir von einer Datei lesen oder auf sie schreiben wollen). Umgekehrt ist es notwendig, diese Bindung auch wieder zu lösen, damit andere Programme auf diese Datei zugreifen können oder damit derselbe Bezeichner sich auf andere Dateien beziehen kann. 24.01.2000

Netzbasierte Repräsentationen Netze mit präziser Semantik Bedingungs/Ereignis Netze Place/Transition Nets Prädikat/Transitions PN/Coloured PN Stochastische, timed PNs .... Netze mit präformaler Semantik: Kanal/Instanz Netze Wir haben bis jetzt die Eingabe relativ einfach gehalten, indem wir von der Standardeingabe gelesen haben (d. h. wir haben die entsprechenden Eingaben über die Tastatur eingetippt), und wir haben auch die Standardausgabe geschrieben, so daß also die Ausgaben auf dem Bildschirm erschienen sind. Bei umfangreicheren Texten ist das natürlich nicht besonderes praktisch, so daß wir in der Lage sein sollten, Daten direkt aus Dateien zu lesen und auch wieder in Dateien zu schreiben. Die Einzelheiten des Dateisystems sind für uns an dieser Stelle nicht interessant, wir nehmen an, daß Dateien dazu dienen, Informationen zu speichern, diese Informationen können geschrieben und gelesen werden. Die zentralen Operationen auf einer solchen Datei bestehen zunächst einmal darin, eine Datei für die vorgesehene Operation (Lesen oder Schreiben) zu öffnen und sie nach dieser Operation zu schließen. Dateien werden im Programm über Variablen, also über die üblichen Namen angesprochen. Im Dateisystem, also außerhalb des Programms, haben solche Dateien ebenfalls Namen und wir müssen nun den internen Namen in einem Programm mit dem externen Namen im Dateisystem in Verbindung bringen (dies geschieht, wenn wir ankündigen, daß wir von einer Datei lesen oder auf sie schreiben wollen). Umgekehrt ist es notwendig, diese Bindung auch wieder zu lösen, damit andere Programme auf diese Datei zugreifen können oder damit derselbe Bezeichner sich auf andere Dateien beziehen kann. 24.01.2000

Netzbasierte Repräsentationen 24.01.2000

Netzbasierte Repräsentationen 24.01.2000

Netzbasierte Repräsentationen Behandlung komplexer Darstellungen Mittel für Abstraktion: Vergröberung <---> Verfeinerung Erste Vorstellung der Idee am Ausschnitt eines Beispiels: Pipelined Prozessor Wir haben bis jetzt die Eingabe relativ einfach gehalten, indem wir von der Standardeingabe gelesen haben (d. h. wir haben die entsprechenden Eingaben über die Tastatur eingetippt), und wir haben auch die Standardausgabe geschrieben, so daß also die Ausgaben auf dem Bildschirm erschienen sind. Bei umfangreicheren Texten ist das natürlich nicht besonderes praktisch, so daß wir in der Lage sein sollten, Daten direkt aus Dateien zu lesen und auch wieder in Dateien zu schreiben. Die Einzelheiten des Dateisystems sind für uns an dieser Stelle nicht interessant, wir nehmen an, daß Dateien dazu dienen, Informationen zu speichern, diese Informationen können geschrieben und gelesen werden. Die zentralen Operationen auf einer solchen Datei bestehen zunächst einmal darin, eine Datei für die vorgesehene Operation (Lesen oder Schreiben) zu öffnen und sie nach dieser Operation zu schließen. Dateien werden im Programm über Variablen, also über die üblichen Namen angesprochen. Im Dateisystem, also außerhalb des Programms, haben solche Dateien ebenfalls Namen und wir müssen nun den internen Namen in einem Programm mit dem externen Namen im Dateisystem in Verbindung bringen (dies geschieht, wenn wir ankündigen, daß wir von einer Datei lesen oder auf sie schreiben wollen). Umgekehrt ist es notwendig, diese Bindung auch wieder zu lösen, damit andere Programme auf diese Datei zugreifen können oder damit derselbe Bezeichner sich auf andere Dateien beziehen kann. 24.01.2000

Netzbasierte Repräsentationen 24.01.2000

Bemerkungen: Toollandschaft Tools zur Systemerstellung Wir haben bis jetzt die Eingabe relativ einfach gehalten, indem wir von der Standardeingabe gelesen haben (d. h. wir haben die entsprechenden Eingaben über die Tastatur eingetippt), und wir haben auch die Standardausgabe geschrieben, so daß also die Ausgaben auf dem Bildschirm erschienen sind. Bei umfangreicheren Texten ist das natürlich nicht besonderes praktisch, so daß wir in der Lage sein sollten, Daten direkt aus Dateien zu lesen und auch wieder in Dateien zu schreiben. Die Einzelheiten des Dateisystems sind für uns an dieser Stelle nicht interessant, wir nehmen an, daß Dateien dazu dienen, Informationen zu speichern, diese Informationen können geschrieben und gelesen werden. Die zentralen Operationen auf einer solchen Datei bestehen zunächst einmal darin, eine Datei für die vorgesehene Operation (Lesen oder Schreiben) zu öffnen und sie nach dieser Operation zu schließen. Dateien werden im Programm über Variablen, also über die üblichen Namen angesprochen. Im Dateisystem, also außerhalb des Programms, haben solche Dateien ebenfalls Namen und wir müssen nun den internen Namen in einem Programm mit dem externen Namen im Dateisystem in Verbindung bringen (dies geschieht, wenn wir ankündigen, daß wir von einer Datei lesen oder auf sie schreiben wollen). Umgekehrt ist es notwendig, diese Bindung auch wieder zu lösen, damit andere Programme auf diese Datei zugreifen können oder damit derselbe Bezeichner sich auf andere Dateien beziehen kann. 24.01.2000

Bemerkungen: Toollandschaft Tools zur Systemerstellung Wir haben bis jetzt die Eingabe relativ einfach gehalten, indem wir von der Standardeingabe gelesen haben (d. h. wir haben die entsprechenden Eingaben über die Tastatur eingetippt), und wir haben auch die Standardausgabe geschrieben, so daß also die Ausgaben auf dem Bildschirm erschienen sind. Bei umfangreicheren Texten ist das natürlich nicht besonderes praktisch, so daß wir in der Lage sein sollten, Daten direkt aus Dateien zu lesen und auch wieder in Dateien zu schreiben. Die Einzelheiten des Dateisystems sind für uns an dieser Stelle nicht interessant, wir nehmen an, daß Dateien dazu dienen, Informationen zu speichern, diese Informationen können geschrieben und gelesen werden. Die zentralen Operationen auf einer solchen Datei bestehen zunächst einmal darin, eine Datei für die vorgesehene Operation (Lesen oder Schreiben) zu öffnen und sie nach dieser Operation zu schließen. Dateien werden im Programm über Variablen, also über die üblichen Namen angesprochen. Im Dateisystem, also außerhalb des Programms, haben solche Dateien ebenfalls Namen und wir müssen nun den internen Namen in einem Programm mit dem externen Namen im Dateisystem in Verbindung bringen (dies geschieht, wenn wir ankündigen, daß wir von einer Datei lesen oder auf sie schreiben wollen). Umgekehrt ist es notwendig, diese Bindung auch wieder zu lösen, damit andere Programme auf diese Datei zugreifen können oder damit derselbe Bezeichner sich auf andere Dateien beziehen kann. 24.01.2000

Tools im Netz World of Petri Nets Petri Net Tools www.daimi.aau.dk/PetriNets/ Petri Net Tools www.daimi.aau.dk/PetriNets/tools/db.html Petri Net Classification www.daimi.aau.dk/PetriNets/classification/indx.html (Stand: 24.1.2000) Wir haben bis jetzt die Eingabe relativ einfach gehalten, indem wir von der Standardeingabe gelesen haben (d. h. wir haben die entsprechenden Eingaben über die Tastatur eingetippt), und wir haben auch die Standardausgabe geschrieben, so daß also die Ausgaben auf dem Bildschirm erschienen sind. Bei umfangreicheren Texten ist das natürlich nicht besonderes praktisch, so daß wir in der Lage sein sollten, Daten direkt aus Dateien zu lesen und auch wieder in Dateien zu schreiben. Die Einzelheiten des Dateisystems sind für uns an dieser Stelle nicht interessant, wir nehmen an, daß Dateien dazu dienen, Informationen zu speichern, diese Informationen können geschrieben und gelesen werden. Die zentralen Operationen auf einer solchen Datei bestehen zunächst einmal darin, eine Datei für die vorgesehene Operation (Lesen oder Schreiben) zu öffnen und sie nach dieser Operation zu schließen. Dateien werden im Programm über Variablen, also über die üblichen Namen angesprochen. Im Dateisystem, also außerhalb des Programms, haben solche Dateien ebenfalls Namen und wir müssen nun den internen Namen in einem Programm mit dem externen Namen im Dateisystem in Verbindung bringen (dies geschieht, wenn wir ankündigen, daß wir von einer Datei lesen oder auf sie schreiben wollen). Umgekehrt ist es notwendig, diese Bindung auch wieder zu lösen, damit andere Programme auf diese Datei zugreifen können oder damit derselbe Bezeichner sich auf andere Dateien beziehen kann. 24.01.2000

Anforderungen an Tools Aufgabengerecht: unterstützt Methodik für Neuentwicklungen (from scratch) ---> top-down Modellierung Verwendung schon existierender Dokumente ---> bottom-up Modellierung Akzeptanz gut dokumentiert ..... u.a. Portierbarkeit Wir haben bis jetzt die Eingabe relativ einfach gehalten, indem wir von der Standardeingabe gelesen haben (d. h. wir haben die entsprechenden Eingaben über die Tastatur eingetippt), und wir haben auch die Standardausgabe geschrieben, so daß also die Ausgaben auf dem Bildschirm erschienen sind. Bei umfangreicheren Texten ist das natürlich nicht besonderes praktisch, so daß wir in der Lage sein sollten, Daten direkt aus Dateien zu lesen und auch wieder in Dateien zu schreiben. Die Einzelheiten des Dateisystems sind für uns an dieser Stelle nicht interessant, wir nehmen an, daß Dateien dazu dienen, Informationen zu speichern, diese Informationen können geschrieben und gelesen werden. Die zentralen Operationen auf einer solchen Datei bestehen zunächst einmal darin, eine Datei für die vorgesehene Operation (Lesen oder Schreiben) zu öffnen und sie nach dieser Operation zu schließen. Dateien werden im Programm über Variablen, also über die üblichen Namen angesprochen. Im Dateisystem, also außerhalb des Programms, haben solche Dateien ebenfalls Namen und wir müssen nun den internen Namen in einem Programm mit dem externen Namen im Dateisystem in Verbindung bringen (dies geschieht, wenn wir ankündigen, daß wir von einer Datei lesen oder auf sie schreiben wollen). Umgekehrt ist es notwendig, diese Bindung auch wieder zu lösen, damit andere Programme auf diese Datei zugreifen können oder damit derselbe Bezeichner sich auf andere Dateien beziehen kann. 24.01.2000

Anforderungen: Akzeptanz umfangreiche Funktionalität Fehlervermeidung/-suche (syntaktisch) Modellierung-Validierung niedrige "semantische Distanz“ niedrige "artikulatorische Distanz“ intuitive, benutzergesteuerte Darstellung (graphisch) direkte Manipulation Modifizierbarkeit inkrementelles Modellieren Zulassen zwischenzeitlicher Inkonsistenzen Wiederverwendbarkeit : u.a. Bausteine Performance: • stabil • schnell • komfortabel • ............ Wir haben bis jetzt die Eingabe relativ einfach gehalten, indem wir von der Standardeingabe gelesen haben (d. h. wir haben die entsprechenden Eingaben über die Tastatur eingetippt), und wir haben auch die Standardausgabe geschrieben, so daß also die Ausgaben auf dem Bildschirm erschienen sind. Bei umfangreicheren Texten ist das natürlich nicht besonderes praktisch, so daß wir in der Lage sein sollten, Daten direkt aus Dateien zu lesen und auch wieder in Dateien zu schreiben. Die Einzelheiten des Dateisystems sind für uns an dieser Stelle nicht interessant, wir nehmen an, daß Dateien dazu dienen, Informationen zu speichern, diese Informationen können geschrieben und gelesen werden. Die zentralen Operationen auf einer solchen Datei bestehen zunächst einmal darin, eine Datei für die vorgesehene Operation (Lesen oder Schreiben) zu öffnen und sie nach dieser Operation zu schließen. Dateien werden im Programm über Variablen, also über die üblichen Namen angesprochen. Im Dateisystem, also außerhalb des Programms, haben solche Dateien ebenfalls Namen und wir müssen nun den internen Namen in einem Programm mit dem externen Namen im Dateisystem in Verbindung bringen (dies geschieht, wenn wir ankündigen, daß wir von einer Datei lesen oder auf sie schreiben wollen). Umgekehrt ist es notwendig, diese Bindung auch wieder zu lösen, damit andere Programme auf diese Datei zugreifen können oder damit derselbe Bezeichner sich auf andere Dateien beziehen kann. 24.01.2000

Petri Lab Prototyp eines Tools unterstützt implementiert: zur Modellierung komplexer (v.a. konkurrenter)Systeme unter Verwendung von Petrinetzen unterstützt Modellieren: Editor Validation: (integrierter) Simulator implementiert: in Object Pascal/MPW auf Apple Macintosh (ca. 1990) Wir haben bis jetzt die Eingabe relativ einfach gehalten, indem wir von der Standardeingabe gelesen haben (d. h. wir haben die entsprechenden Eingaben über die Tastatur eingetippt), und wir haben auch die Standardausgabe geschrieben, so daß also die Ausgaben auf dem Bildschirm erschienen sind. Bei umfangreicheren Texten ist das natürlich nicht besonderes praktisch, so daß wir in der Lage sein sollten, Daten direkt aus Dateien zu lesen und auch wieder in Dateien zu schreiben. Die Einzelheiten des Dateisystems sind für uns an dieser Stelle nicht interessant, wir nehmen an, daß Dateien dazu dienen, Informationen zu speichern, diese Informationen können geschrieben und gelesen werden. Die zentralen Operationen auf einer solchen Datei bestehen zunächst einmal darin, eine Datei für die vorgesehene Operation (Lesen oder Schreiben) zu öffnen und sie nach dieser Operation zu schließen. Dateien werden im Programm über Variablen, also über die üblichen Namen angesprochen. Im Dateisystem, also außerhalb des Programms, haben solche Dateien ebenfalls Namen und wir müssen nun den internen Namen in einem Programm mit dem externen Namen im Dateisystem in Verbindung bringen (dies geschieht, wenn wir ankündigen, daß wir von einer Datei lesen oder auf sie schreiben wollen). Umgekehrt ist es notwendig, diese Bindung auch wieder zu lösen, damit andere Programme auf diese Datei zugreifen können oder damit derselbe Bezeichner sich auf andere Dateien beziehen kann. 24.01.2000

Petri Lab Editor Simulator Erzeugung und hierarchische Repräsentation von Kanal-Instanz-Netzen Unterstützt die Verfeinerung von Stellen und Transitionen simultan in einer Diagrammhierarchie ! Layer für Substrukturen in einem Diagramm Simulator P/T- Netze timed/stochastische Netze (GSPN/DSPN) Wir haben bis jetzt die Eingabe relativ einfach gehalten, indem wir von der Standardeingabe gelesen haben (d. h. wir haben die entsprechenden Eingaben über die Tastatur eingetippt), und wir haben auch die Standardausgabe geschrieben, so daß also die Ausgaben auf dem Bildschirm erschienen sind. Bei umfangreicheren Texten ist das natürlich nicht besonderes praktisch, so daß wir in der Lage sein sollten, Daten direkt aus Dateien zu lesen und auch wieder in Dateien zu schreiben. Die Einzelheiten des Dateisystems sind für uns an dieser Stelle nicht interessant, wir nehmen an, daß Dateien dazu dienen, Informationen zu speichern, diese Informationen können geschrieben und gelesen werden. Die zentralen Operationen auf einer solchen Datei bestehen zunächst einmal darin, eine Datei für die vorgesehene Operation (Lesen oder Schreiben) zu öffnen und sie nach dieser Operation zu schließen. Dateien werden im Programm über Variablen, also über die üblichen Namen angesprochen. Im Dateisystem, also außerhalb des Programms, haben solche Dateien ebenfalls Namen und wir müssen nun den internen Namen in einem Programm mit dem externen Namen im Dateisystem in Verbindung bringen (dies geschieht, wenn wir ankündigen, daß wir von einer Datei lesen oder auf sie schreiben wollen). Umgekehrt ist es notwendig, diese Bindung auch wieder zu lösen, damit andere Programme auf diese Datei zugreifen können oder damit derselbe Bezeichner sich auf andere Dateien beziehen kann. 24.01.2000

Vorführungen Modellierung von Hierarchie ---> Prozeßregelung Inspektion einer mittelgroßen Modellierung ---> Funktionale Spezifikation des Kerns von PetriLab Simulation/Aufzeichnung ---> Produzent-Konsument Layer/STTI Netze/Auswertung ---> Produzent-Konsument Fortsetzung Simulation hierarchischer Netze ---> be-/entladen --> Pipelining Modell Wir haben bis jetzt die Eingabe relativ einfach gehalten, indem wir von der Standardeingabe gelesen haben (d. h. wir haben die entsprechenden Eingaben über die Tastatur eingetippt), und wir haben auch die Standardausgabe geschrieben, so daß also die Ausgaben auf dem Bildschirm erschienen sind. Bei umfangreicheren Texten ist das natürlich nicht besonderes praktisch, so daß wir in der Lage sein sollten, Daten direkt aus Dateien zu lesen und auch wieder in Dateien zu schreiben. Die Einzelheiten des Dateisystems sind für uns an dieser Stelle nicht interessant, wir nehmen an, daß Dateien dazu dienen, Informationen zu speichern, diese Informationen können geschrieben und gelesen werden. Die zentralen Operationen auf einer solchen Datei bestehen zunächst einmal darin, eine Datei für die vorgesehene Operation (Lesen oder Schreiben) zu öffnen und sie nach dieser Operation zu schließen. Dateien werden im Programm über Variablen, also über die üblichen Namen angesprochen. Im Dateisystem, also außerhalb des Programms, haben solche Dateien ebenfalls Namen und wir müssen nun den internen Namen in einem Programm mit dem externen Namen im Dateisystem in Verbindung bringen (dies geschieht, wenn wir ankündigen, daß wir von einer Datei lesen oder auf sie schreiben wollen). Umgekehrt ist es notwendig, diese Bindung auch wieder zu lösen, damit andere Programme auf diese Datei zugreifen können oder damit derselbe Bezeichner sich auf andere Dateien beziehen kann. 24.01.2000

Methodik Eine Methode: (Sammle erste Informationen über das angestrebte System) Beginne mit einer Grobmodellierung in Form eines einzelnen Kanal-Instanz Netzes Erzeuge eine Netzhierarchie (mit Hilfe von Verfeinerungen). Erprobe Variationen: ändere, erweitere, entferne. Reichere mit präziser Semantikbeschreibung an: simuliere - analysiere Nutze die erzeugten, validierten Dokumente zur weiteren Systementwicklung. Wir haben bis jetzt die Eingabe relativ einfach gehalten, indem wir von der Standardeingabe gelesen haben (d. h. wir haben die entsprechenden Eingaben über die Tastatur eingetippt), und wir haben auch die Standardausgabe geschrieben, so daß also die Ausgaben auf dem Bildschirm erschienen sind. Bei umfangreicheren Texten ist das natürlich nicht besonderes praktisch, so daß wir in der Lage sein sollten, Daten direkt aus Dateien zu lesen und auch wieder in Dateien zu schreiben. Die Einzelheiten des Dateisystems sind für uns an dieser Stelle nicht interessant, wir nehmen an, daß Dateien dazu dienen, Informationen zu speichern, diese Informationen können geschrieben und gelesen werden. Die zentralen Operationen auf einer solchen Datei bestehen zunächst einmal darin, eine Datei für die vorgesehene Operation (Lesen oder Schreiben) zu öffnen und sie nach dieser Operation zu schließen. Dateien werden im Programm über Variablen, also über die üblichen Namen angesprochen. Im Dateisystem, also außerhalb des Programms, haben solche Dateien ebenfalls Namen und wir müssen nun den internen Namen in einem Programm mit dem externen Namen im Dateisystem in Verbindung bringen (dies geschieht, wenn wir ankündigen, daß wir von einer Datei lesen oder auf sie schreiben wollen). Umgekehrt ist es notwendig, diese Bindung auch wieder zu lösen, damit andere Programme auf diese Datei zugreifen können oder damit derselbe Bezeichner sich auf andere Dateien beziehen kann. 24.01.2000

Schlußbemerkungen Rückblick Modellieren mit PNs Tool PetriLab Mögliche Vorhaben (für die nähere Zukunft?) Überprüfen der methodischen Ansätze mit den jetzt existierenden/revidierten Werkzeugen (---> Modellieren komplexerer Systeme) weitere Arbeiten an der Toollandschaft: Literatur Wir haben bis jetzt die Eingabe relativ einfach gehalten, indem wir von der Standardeingabe gelesen haben (d. h. wir haben die entsprechenden Eingaben über die Tastatur eingetippt), und wir haben auch die Standardausgabe geschrieben, so daß also die Ausgaben auf dem Bildschirm erschienen sind. Bei umfangreicheren Texten ist das natürlich nicht besonderes praktisch, so daß wir in der Lage sein sollten, Daten direkt aus Dateien zu lesen und auch wieder in Dateien zu schreiben. Die Einzelheiten des Dateisystems sind für uns an dieser Stelle nicht interessant, wir nehmen an, daß Dateien dazu dienen, Informationen zu speichern, diese Informationen können geschrieben und gelesen werden. Die zentralen Operationen auf einer solchen Datei bestehen zunächst einmal darin, eine Datei für die vorgesehene Operation (Lesen oder Schreiben) zu öffnen und sie nach dieser Operation zu schließen. Dateien werden im Programm über Variablen, also über die üblichen Namen angesprochen. Im Dateisystem, also außerhalb des Programms, haben solche Dateien ebenfalls Namen und wir müssen nun den internen Namen in einem Programm mit dem externen Namen im Dateisystem in Verbindung bringen (dies geschieht, wenn wir ankündigen, daß wir von einer Datei lesen oder auf sie schreiben wollen). Umgekehrt ist es notwendig, diese Bindung auch wieder zu lösen, damit andere Programme auf diese Datei zugreifen können oder damit derselbe Bezeichner sich auf andere Dateien beziehen kann. 24.01.2000

Bemerkungen: Toollandschaft Redesign von PetriLab: Neuimplementierung unter Benutzung einer neuen Datenstruktur. Erweiterungen Simulation von sog. “high level nets” Wiederverwendbarkeit hierarchischer Netze über copy/paste hinaus. Integration von “Bausteinen“ Mehr Komfort: u.a. visuelle Darstellung von Knoten/Verbindungen/Marken. Aggregierte Informationen in visueller Form. Wir haben bis jetzt die Eingabe relativ einfach gehalten, indem wir von der Standardeingabe gelesen haben (d. h. wir haben die entsprechenden Eingaben über die Tastatur eingetippt), und wir haben auch die Standardausgabe geschrieben, so daß also die Ausgaben auf dem Bildschirm erschienen sind. Bei umfangreicheren Texten ist das natürlich nicht besonderes praktisch, so daß wir in der Lage sein sollten, Daten direkt aus Dateien zu lesen und auch wieder in Dateien zu schreiben. Die Einzelheiten des Dateisystems sind für uns an dieser Stelle nicht interessant, wir nehmen an, daß Dateien dazu dienen, Informationen zu speichern, diese Informationen können geschrieben und gelesen werden. Die zentralen Operationen auf einer solchen Datei bestehen zunächst einmal darin, eine Datei für die vorgesehene Operation (Lesen oder Schreiben) zu öffnen und sie nach dieser Operation zu schließen. Dateien werden im Programm über Variablen, also über die üblichen Namen angesprochen. Im Dateisystem, also außerhalb des Programms, haben solche Dateien ebenfalls Namen und wir müssen nun den internen Namen in einem Programm mit dem externen Namen im Dateisystem in Verbindung bringen (dies geschieht, wenn wir ankündigen, daß wir von einer Datei lesen oder auf sie schreiben wollen). Umgekehrt ist es notwendig, diese Bindung auch wieder zu lösen, damit andere Programme auf diese Datei zugreifen können oder damit derselbe Bezeichner sich auf andere Dateien beziehen kann. 24.01.2000

Bemerkungen: Toollandschaft Entwicklung weiterer Werkzeugkomponenten Extraktion dedizierter Editoren/Simulatoren Analysator für komplexere Netzklassen Prototyper. Wir haben bis jetzt die Eingabe relativ einfach gehalten, indem wir von der Standardeingabe gelesen haben (d. h. wir haben die entsprechenden Eingaben über die Tastatur eingetippt), und wir haben auch die Standardausgabe geschrieben, so daß also die Ausgaben auf dem Bildschirm erschienen sind. Bei umfangreicheren Texten ist das natürlich nicht besonderes praktisch, so daß wir in der Lage sein sollten, Daten direkt aus Dateien zu lesen und auch wieder in Dateien zu schreiben. Die Einzelheiten des Dateisystems sind für uns an dieser Stelle nicht interessant, wir nehmen an, daß Dateien dazu dienen, Informationen zu speichern, diese Informationen können geschrieben und gelesen werden. Die zentralen Operationen auf einer solchen Datei bestehen zunächst einmal darin, eine Datei für die vorgesehene Operation (Lesen oder Schreiben) zu öffnen und sie nach dieser Operation zu schließen. Dateien werden im Programm über Variablen, also über die üblichen Namen angesprochen. Im Dateisystem, also außerhalb des Programms, haben solche Dateien ebenfalls Namen und wir müssen nun den internen Namen in einem Programm mit dem externen Namen im Dateisystem in Verbindung bringen (dies geschieht, wenn wir ankündigen, daß wir von einer Datei lesen oder auf sie schreiben wollen). Umgekehrt ist es notwendig, diese Bindung auch wieder zu lösen, damit andere Programme auf diese Datei zugreifen können oder damit derselbe Bezeichner sich auf andere Dateien beziehen kann. 24.01.2000

Literatur 1 [Aign 87] Aigner, H.: RAPPS- Rapid Prototyper für formale Petrinetz-Spezifikationen, Diplomarbeit am FB Informatik, Universität Dortmund, 1987 [BrBu 90] Brodda, A.-Buttler, P. : PetriLab, Diplomarbeit am FB Informatik, Universität Dortmund, 1990 [BrRR 87a] Brauer, W.-Reisig, W.-Rozenberg, G. (Edts.): Petri Nets: Central Models and Their Properties, LNCS Vol. 254, Springer Verlag 1987 [BrRR 87b] Brauer, W.-Reisig, W.-Rozenberg, G. (Edts.): Petri Nets: Applications and Relationships to Other Models of Concurrency, LNCS Vol. 255, Springer Verlag 1987 [Busc 89] Buschmann, F.: PETENET- ein multi-user-fähiger Petrinetzeditor für hierarchische Petrinetze, Diplomarbeit am FB Informatik, Universität Dortmund, 1989 [DiEv 89] Dittrich, G.-Evertz-Jägers, B.: Der Kanal-Instanz-Netz Editor KINED, Forschungsbericht Nr. 308 des Fachbereichs Informatik, Universität Dortmund, 1989 [Ditt 89a] Dittrich, G.: Specification with Nets, p.111-124 in [PiMo 90] [Ditt 89b] Dittrich, G.: Tools for Modelling with Petri-Net like Nets, p. 191-199 in [PiMo 90] [Ever 88] Evertz-Jägers, B.: Objektorientierte Entwicklung eines Editors zur Erstellung hierarchischer K/I-Netze, Diplomarbeit am FB Informatik, Universität Dortmund, 1988 [Fabi 87] Fabian, D.: Ein Tool zur Analyse von Petrinetzen, speziell S/T-Netzen, Diplomarbeit am FB Informatik, Universität Dortmund, 1987 Wir haben bis jetzt die Eingabe relativ einfach gehalten, indem wir von der Standardeingabe gelesen haben (d. h. wir haben die entsprechenden Eingaben über die Tastatur eingetippt), und wir haben auch die Standardausgabe geschrieben, so daß also die Ausgaben auf dem Bildschirm erschienen sind. Bei umfangreicheren Texten ist das natürlich nicht besonderes praktisch, so daß wir in der Lage sein sollten, Daten direkt aus Dateien zu lesen und auch wieder in Dateien zu schreiben. Die Einzelheiten des Dateisystems sind für uns an dieser Stelle nicht interessant, wir nehmen an, daß Dateien dazu dienen, Informationen zu speichern, diese Informationen können geschrieben und gelesen werden. Die zentralen Operationen auf einer solchen Datei bestehen zunächst einmal darin, eine Datei für die vorgesehene Operation (Lesen oder Schreiben) zu öffnen und sie nach dieser Operation zu schließen. Dateien werden im Programm über Variablen, also über die üblichen Namen angesprochen. Im Dateisystem, also außerhalb des Programms, haben solche Dateien ebenfalls Namen und wir müssen nun den internen Namen in einem Programm mit dem externen Namen im Dateisystem in Verbindung bringen (dies geschieht, wenn wir ankündigen, daß wir von einer Datei lesen oder auf sie schreiben wollen). Umgekehrt ist es notwendig, diese Bindung auch wieder zu lösen, damit andere Programme auf diese Datei zugreifen können oder damit derselbe Bezeichner sich auf andere Dateien beziehen kann. 24.01.2000

Literatur 2 [Fehl 92] Fehling,R.:Hierarchische Petrinetze:Beiträge zur Theorie und formale Basis für zugehörige Werkzeuge, Dissertation, Dortmund 1991, Verlag Dr. Kovac, Hamburg 1992 [Gers 90] Gers, T.: PetriLab-STTI, ein Simulator für stochastische uind zeitbehaftete Petrinetze, Diplomarbeit am FB Informatik, Universität Dortmund, 1990 [Hamm 88] Hammerhofer, M.: Beiträge zu Timed Petri Netzen. Diplomarbeit am FB Informatik, Universität Dortmund, 1988 [KPR 87] Kühnel, B.-Partsch, H.-Reinshagen, K.P: Requirements Engineering, Versuch einer Begriffsklärung, Informatikspektrum 10, 6 ,12.87, p.334-335 [LeWo 89] Leufke, A.- Wolberg, D.: Bausteine für Petri-Netze - Konzept und Einsatz, Diplomarbeit am FB Informatik, Universität Dortmund, 1989 [Mary 88] Maryniak, A: Petri-Netze: Allgemeine Begriffsklärung und anwendungsorientierte Einführung in die Modellierung. Diplomarbeit am FB Informatik, Universität Dortmund, 1988 [Mese 87] Mesewinkel, U.: Pr/T-Systembausteine für die Modellierung der Interprozeßkommunikation in verteilten Systemen. Diplomarbeit am FB Informatik, Universität Dortmund, 1987 [Pete 87] Dittrich, G.- Szwillus, G.(Edts): PETE - Ein Petrinetz-Editor, Abschlußbericht der Projektgruppe PETE, Interne Berichte des FB Informatik, Dortmund 1987 Wir haben bis jetzt die Eingabe relativ einfach gehalten, indem wir von der Standardeingabe gelesen haben (d. h. wir haben die entsprechenden Eingaben über die Tastatur eingetippt), und wir haben auch die Standardausgabe geschrieben, so daß also die Ausgaben auf dem Bildschirm erschienen sind. Bei umfangreicheren Texten ist das natürlich nicht besonderes praktisch, so daß wir in der Lage sein sollten, Daten direkt aus Dateien zu lesen und auch wieder in Dateien zu schreiben. Die Einzelheiten des Dateisystems sind für uns an dieser Stelle nicht interessant, wir nehmen an, daß Dateien dazu dienen, Informationen zu speichern, diese Informationen können geschrieben und gelesen werden. Die zentralen Operationen auf einer solchen Datei bestehen zunächst einmal darin, eine Datei für die vorgesehene Operation (Lesen oder Schreiben) zu öffnen und sie nach dieser Operation zu schließen. Dateien werden im Programm über Variablen, also über die üblichen Namen angesprochen. Im Dateisystem, also außerhalb des Programms, haben solche Dateien ebenfalls Namen und wir müssen nun den internen Namen in einem Programm mit dem externen Namen im Dateisystem in Verbindung bringen (dies geschieht, wenn wir ankündigen, daß wir von einer Datei lesen oder auf sie schreiben wollen). Umgekehrt ist es notwendig, diese Bindung auch wieder zu lösen, damit andere Programme auf diese Datei zugreifen können oder damit derselbe Bezeichner sich auf andere Dateien beziehen kann. 24.01.2000

Literatur 3 [PetS 89] Dittrich, G. - Fehling, R.(Edts): Endbericht der Projektgruppe PetSi, Interne Berichte des FB Informatik der UniDo, Dortmund 1989 [Pick 91] Pickers, M. : MOVE, Diplomarbeit am FB Informatik, Universität Dortmund, 1991 [PiMo 90] Pichler, F.- Moreno-Diaz, R. (Edts.): Computer Aided Systems Theory - EUROCAST ´89, LNCS 410, Springer Verlag 1990 [Reis 85] Reisig, W.:Systementwurf mit Petrinetzen, Springer 1985 [Schm 87] Schmenner, M.:Entwurf und Implementierung eines Programms zur Überprüfung der syntaktischen Korrektheit von Beschriftungen verschiedener PN -Typen. Diplomarbeit am FB Informatik, Universität Dortmund, 1987 [Reck 88] Reck, M.:Von informellen zu formalen Spezifikationen durch Petri-Netze und Abstrakte Datentypen. Diplomarbeit am FB Informatik, Universität Dortmund, 1988 [Rüpi 88] Rüping, A.:Beiträge zur Methodik hierarchischer Petrinetze. Ein Konzept für eine hierarchiebezogene Modellierung mit interpretierten Netzen auf der Basis von Netzmorphismen, Diplomarbeit am FB Informatik, Universität Dortmund, 1988 [Soma 86] Dittrich, G. -Eising, G.(Edts.): Software für Materialflußsysteme. Abschlußbericht der Projektgruppe SOMAT, Interne Berichte des FB Informatik, Universität Dortmund, 1986 [Viet 88] Viethen, R.:Petri-Netze: Methodikansätze und anwendungsorientierte Einführung in die Modellierung. Diplomarbeit am FB Informatik, Universität Dortmund, 1988 Wir haben bis jetzt die Eingabe relativ einfach gehalten, indem wir von der Standardeingabe gelesen haben (d. h. wir haben die entsprechenden Eingaben über die Tastatur eingetippt), und wir haben auch die Standardausgabe geschrieben, so daß also die Ausgaben auf dem Bildschirm erschienen sind. Bei umfangreicheren Texten ist das natürlich nicht besonderes praktisch, so daß wir in der Lage sein sollten, Daten direkt aus Dateien zu lesen und auch wieder in Dateien zu schreiben. Die Einzelheiten des Dateisystems sind für uns an dieser Stelle nicht interessant, wir nehmen an, daß Dateien dazu dienen, Informationen zu speichern, diese Informationen können geschrieben und gelesen werden. Die zentralen Operationen auf einer solchen Datei bestehen zunächst einmal darin, eine Datei für die vorgesehene Operation (Lesen oder Schreiben) zu öffnen und sie nach dieser Operation zu schließen. Dateien werden im Programm über Variablen, also über die üblichen Namen angesprochen. Im Dateisystem, also außerhalb des Programms, haben solche Dateien ebenfalls Namen und wir müssen nun den internen Namen in einem Programm mit dem externen Namen im Dateisystem in Verbindung bringen (dies geschieht, wenn wir ankündigen, daß wir von einer Datei lesen oder auf sie schreiben wollen). Umgekehrt ist es notwendig, diese Bindung auch wieder zu lösen, damit andere Programme auf diese Datei zugreifen können oder damit derselbe Bezeichner sich auf andere Dateien beziehen kann. 24.01.2000