Universität Siegen Fachgruppe Praktische Informatik Übung Softwaretechnik I Blatt 11 — Ausgabe am 22.01.2016, Abgabe der Lösungen bis 28.01.2016 Aufgabe 11.1: Methodenauswahl [ einfach / Klausur-Bearbeitungszeit ca. 2 Min.; tatsächlich: ; vorbereitende Lektüre: ] Bei welchen Arten von Problemen sind Petri-Netze besser zur Zustands- bzw. Steuerungsmodellierung geeignet als Zustandsübergangsdiagramme? Warum? Aufgabe 11.2: Auswahl von Modelltypen [ einfach / Klausur-Bearbeitungszeit ca. 2 Min.; tatsächlich: ; vorbereitende Lektüre: ] Sie sollen ein System modellieren, in dem längere Warteschlangen auftreten können. Welchen Modelltyp wählen Sie am besten? Aufgabe 11.3: Anwendungsbeispiel PetriNetze: Prozessorvergabe [ einfach / Klausur-Bearbeitungszeit ca. 8 Min.; tatsächlich: ; vorbereitende Lektüre: ] Erstellen Sie ein Petri-Netz zur Modellierung der Prozessorzuteilung in einem Computersystem mit zwei Prozessoren. Jeder Prozessor kann zu einem Zeitpunkt immer nur einen Auftrag ausführen. Beide Prozessoren können unabhängig voneinander Aufträge ausführen. Geben Sie je eine Lösung mit einem BE-Netz und einem ST-Netz an. Tip: Erweitern Sie die Lösung, die im Skript für den wechselseitigen Ausschluß angegeben worden ist. Aufgabe 11.4: Netze: Essensausgabe Anwendungsbeispiel Petri- [ mittel / Klausur-Bearbeitungszeit ca. 12 Min.; tatsächlich: ; vorbereitende Lektüre: ] Um Gästen die Abläufe bei der Essensausgabe in der Mensa zu verdeutlichen, soll ein Petri-Netz angefertigt werden, das die Abläufe in der Mensa simuliert. Gehen Sie dabei von folgenden Randbedingungen aus: 1. Vor der Essensausgabe können sich Warteschlangen bilden. Die Länge dieser Schlangen ist nicht begrenzt. 2. Zuerst muß jeder Kunde ein Tablett abholen. Die Mensa verfügt über 100 Tabletts. 3. Die Menüs werden an zwei Ausgaben A und B verteilt. An Ausgabe A wird das Standardmenü ausgegeben, an Ausgabe B das ReformkostMenü. Aufgrund beengter Räumlichkeiten ist zwischen der Tablett-Ausgabe und Ausgabe A bzw. B nur Platz für 20 bzw. 10 wartende Kunden. 4. Immer wenn ein Essen fertig wird, kann ein Kunde es nehmen und zur Kasse weitergehen. 5. Zwischen den Essensausgaben und der Kasse ist wegen der Raumverhältnisse nur Platz für 20 Personen. D.h. wenn 20 Personen vor der Kasse warten, werden die Essensausgaben durch den Rückstau blockiert. 6. Nach dem Essen wird das Tablett zurückgegeben und steht dann wieder für neue Kunden zur Verfügung. Lösungshinweise: – Suchen Sie nach Teilen des Systems, in denen unabhängig und asynchron zu Rest des Systems relevante Ereignisse stattfinden können, und planen Sie hierfür separate Teile des PN ein. – Sofern die Anzahl der parallelen Aktivitäten dynamisch wachsen oder schrumpfen kann, planen Sie passende Teile des PN ein, in denen Marken erzeugt oder vernichtet werden. Aufgabe 11.5: kumente Modellierung graphartiger Do- [ mittel / Klausur-Bearbeitungszeit ca. 10 Min.; tatsächlich: ; vorbereitende Lektüre: ] Petrinetze lassen sich als graphartiger Dokumenttyp auffassen. Wir unterscheiden Bedingungs-EreignisNetze und Stellen-Transitions-Netze. Entwerfen Sie ein Analyse-Datenmodell für Bedingungs-EreignisNetze. Aufgabe 11.6: Interpretation von Petrinetzen [ mittel / Klausur-Bearbeitungszeit ca. 10 Min.; tatsächlich: ; vorbereitende Lektüre: ] Um konkrete Bedingungs-Ereignis-Netze in Form von Laufzeitobjekten mittels verschiedener Werkzeuge verarbeiten zu können, benötigt man einen Interpreter, der auf Basis der Semantik des entsprechenden Datenmodells arbeitet. Implementieren Sie auf Basis Ihres Modells aus Aufgabe 11.5 in PseudoCode die folgenden Methoden: // Testet ob die übergebene Transition // schaltbereit ist. public boolean isSchaltbereit(Transition t){ // TODO } // Schaltet/Feuert die übergebene Transition. public void schalte(Transition t){ // TODO } Bitte beachten Sie dabei, dass der Übergabeparameter t nur als Referenz gedacht ist und aufgrund Ihres Datenmodells abweichen kann. Vertiefungsaufgabe 11.7: phartiger Dokumente Modellierung gra- [ mittel / Klausur-Bearbeitungszeit ca. 8 Min.; tatsächlich: ; vorbereitende Lektüre: ] Entwerfen Sie auf Basis von Aufgabe 11.5 ein Analyse-Datenmodell für Stellen-Transitions-Netze. Kennzeichnen Sie besonders die veränderten Elemente. Vertiefungsaufgabe 11.8: Petrinetzen Interpretation von [ mittel / Klausur-Bearbeitungszeit ca. 10 Min.; tatsächlich: ; vorbereitende Lektüre: ] Passen Sie die Implementierung der Methoden isSchaltbereit() und schalte() aus Aufgabe 11.6 an die Definition der Schaltbereitschaft und den Effekt des Schaltens für Stellen-Transitions-Netze an.
© Copyright 2025 ExpyDoc