Computersimulation nachrichtentechnischer Systeme: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Imag (Diskussion | Beiträge) |
Imag (Diskussion | Beiträge) K (→SDL-Basiskonstrukte für die Spezifikation von Prozessen: Korrektur) |
||
Zeile 145: | Zeile 145: | ||
#* parent | #* parent | ||
#Wozu dient das „Save“-Symbol? | #Wozu dient das „Save“-Symbol? | ||
− | #: Speichert Signale, die nicht sofort bearbeitet werden können; sonst | + | #: Speichert Signale, die nicht sofort bearbeitet werden können; sonst würden sie verworfen werden. Die Warteschlange arbeitet nach dem FIFO-Prinzip |
#Wie können Prozesse weiter strukturiert werden? | #Wie können Prozesse weiter strukturiert werden? | ||
− | #* | + | #* Services (teilen sich alle Variablen und FIFO Speicher des Prozessen, laufen nicht parallel ab) |
− | |||
== Strukturierung in SDL == | == Strukturierung in SDL == |
Version vom 13. August 2008, 14:29 Uhr
Prüfung: Termine
Prüfungstermine für den 28.08.2008:
Zeiten Komplexprüfung | |||||
---|---|---|---|---|---|
Zeit | Name | ||||
09:30 | Stefan S | ||||
10:30 | Karsten R | ||||
13:00 | Steven S | ||||
14:00 | Sebastian K | ||||
15:00 | Rene G | ||||
16:00 | Sebastian D |
Prüfung: Kontrollfragen
Spezifikation und Konformität
- Welche Eigenschaften sollte eine „gute“ Spezifikation aufweisen? (2/4)
- Sie ist Genau, d.h. es bleibt kein Interpretationsspielraum.
- Sie ist Konsistent, d.h. es existieren keine internen Widersprüche.
- Sie ist Vollständig, d.h. es gibt keine Lücken in der Spezifikation.
- Sie ist Verbindlich, d.h. man kann nicht von vereinbarten Punkten abweichen
- Welche zwei prinzipiellen Arten gibt es, ein System zu beschreiben? Was sind die jeweiligen Vor- und Nachteile? (2/6)
- Informale Beschreibung --> Prosatext, Schematische Darstellung ohne festgelegte formale Regeln
- Formale Beschreibung --> eindeutig festgelegte Regeln zur Beschreibung
- Beschreiben Sie den Aufbau eines Zustandübergangdiagramms. (2/6)
- Man ist in einem Initialzustand. Aufgrund von Ereignissem wechselt man oder bleibt man im selben Zustand. Durch die Zustandsänderung wird eine neue Ausgabe erzeugt.
- Wie wird ein Programmablaufplan spezifiziert? (2/6)
- Durch Konstrukte für Anweisungen (Rechteck) und Verzweigungen (Rombe).
- Welche Probleme können bei Systemspezifikationen auftreten? Beschreiben Sie, wie diese gelöst werden können. (2/16)
- Spezifikation kann logische Fehler enthalten.
- Descrete Event Simulation sind in der Regel parallele Simulationen
- Deadlocks
- Was ist ein Deadlock?
- Zwei Programme verwenden eine je unteilbare Resource A und B. Zum Fortfahren der beiden Programme müssen sie auf die andere Resource zugreifen. Da beide Resourcen blockiert sind, ist dies nicht möglich. Die Fortführung beider Programme ist unmöglich, ein Deadlock ist entstanden.
- Wie ist ein Petri-Netz aufgebaut? (2/19)
- Ein Petri-Netz besteht aus:
- Plätzen/Stellen
- Marken (in einfachster Form nicht unterscheidbar --> farbige Marken)
- Kanten mit Transitionen, welche Bedingungen zum Zustandsübergang definieren können (zB Verzögerungszeiten)
- Schaltbedingungen (Vor- und Nachbedingung)
- Ein Petri-Netz besteht aus:
- Was bedeutet der Begriff „Markierung“ eines Petri-Netzes? (2/20)
- Ist die Belegung der Stellen und der Zustand des Petri-Netzes
- Was versteht man unter „Lebendigkeit“ (in Bezug auf ein Petri-Netz)? (2/21)
- Transition: lebendig, falls sie in jeder erreichbaren Markierung aktivierbar ist
- Petri-Netz
- schwach lebendig, falls es unter keiner Folgemarkierung tot ist
- stark lebendig, falls alle Transitionen lebendig sind
- Wozu werden Konformitätstests durchgeführt? (2/24)
- Nachweis, dass sich das System zu einer Spezifikation konform verhält.
- kein Anspruch auf Vollständigkeit durch Konformitätstests (nur bestimmte Szenarios, State Exposition Problem)
- Welche beiden Arten von Konformitätstests werden unterschieden? (2/25)
- White Box Test (Tester kennt Implementierung)
- Black Box Test (Tester kennt Implementierung NICHT)
- Was können Sie über die Interpretation der Ergebnisse von Tests aussagen? (2/29)
- Wenn ein System bei allen Tests absolut besser ist, kann man das Gegenteil nicht beweisen
- Acuh wenn ein System bei allen Tests besser ist als ein anderes, kann man durch Wahl einer geeigneten Basis das Gegenteil beweisen
- Der Anteil von unterschiedlichen Tests in einem Gesamtszenario ist zu brücksichtigen
- Mittelwerte von Verhältnissen sind bedenklich
Protokollspezifikationen mit endlichen Automaten
Einführung in SDL
- Von wem wurde SDL mit welcher Zielstellung entwickelt? (5/2)
- Entwickelt von der ITU-T respektive CCITT Empfehlung Z.100
- Ziel: Beschreibung und Spezifikation von Systemen
- Was ist der Unterschied zwischen „Specification“ und „Description“? (5/7)
- Spezifikation (formalisierte Beschreibung eines Systems): Ergebnis eines Softwareentwurfs (Systementwurfs); Nicht nur Implementierungsaspekt, sondern auch Kommunikationsmittel unter Experten
- Beschreibung (sprachliche Wiedergabe einer Idee zum Zweck der Informationsweitergabe, in den meisten Fällen eine Erklärung): SDL für bestehende und entstehende Systeme verwendbar
- "In SDL prinzipiell kein Unterschied", da in beiden Fällen gleiche Sprachelemente
- Welche Anforderungen hat SDL – wie alle formalen Beschreibungssprachen – zu erfüllen? (5/6)
- klar definiertes Konzept
- Widerspruchsfrei, präzise und übersichtlich
- Möglichkeit zur Simulation
- Welches ursprüngliche Entwurfsprinzip steckt hinter SDL? Wie hat sich dies durch die Erweiterung in Richtung Objektorientierung geändert?
- Top-Down Entwurf
- mit Objektorientierung auch Buttom-Up Entwurf, da man als erstes seine Objekte entwirft, und diese dann in höherer Abstraktion instanziiert.
- Welche beiden Möglichkeiten gibt es, ein SDL-Modell zu erstellen? Wie unterscheiden sich die jeweiligen Mächtigkeiten?
- ?
- Welche Regeln müssen in SDL zur Spezifikation eines Systems eingehalten werden?
- Ein System hat mindestens einen Block
- Vordefinierte (Daten-)Typen in SDL auf Systemebene
- Alle auf Systemebene verwendeten Signale, Kanäle und Typen müssen auf Systemebene deklariert sein
- Deklarationen auf Systemebene gelten auch für Umgebung
- Blöcke können referenziert sein (Modularität)
- Was ist über die Sichtbarkeit in einem SDL-Modell zu sagen?
- auf Systemebene deklarierte Variablen, Signale, ... sind überall sichtbar (in jedem Block, Prozess, ...)
- Generell sind in der Hierarchie weiter unten deklarierte Variablen, Signale, ... in den darüberliegenden Schichten nicht sichtbar
- Wie wird die Umwelt in SDL nachgebildet?
- innerhalb der Umwelt befindet sich das System
- das System kann über Kanäle mit der Umwelt interagieren, indem es Signale von dieser empfängt oder sendet
SDL-Basiskonstrukte für die Spezifikation von Prozessen
- Wie wird ein Prozess in SDL spezifiziert? Erläutern Sie diese Spezifikationsform genau!
- Ein Prozess ist so ein rechteckiges Symbol mit schrägen Ecken und innerhalb eines Blockes lokalisiert...
- Zur Prozessdeklaration Signale, Signallisten, Datentypen, Variablen, Typdeklarationen auf Prozessebene und der Prozess-Graph (abgebildet durch eine EFSM)
- Womit fängt die Spezifikation eines Prozesses immer an?
- Mit dem Start-Symbol, welches die ESFM in den Initialzustand setzt
- Was ist ein Signal?
- "Sprache" zum Informationsaustausch
- repräsentieren Ereignisse
- besitzen Grundbedeutung (Signalname)
- tragen optional Parameter
- Wie können Signale adressiert werden?
- Über Symbolalphabet
- Wozu werden Signale zu Signallisten zusammengefasst?
- Um die Deklaration der erlaubten Signale bei Kanälen und Signalrouten zu vereinfachen
- Was bedeutet das folgende Symbol?
- Es wird auf ein bestimmtes Signal gewartet, und anschließend erfolgt ein Zustandsübergang
- Wie kann ein Prozess ein Signal senden?
- Beim Zustandsübergang, mit Hilfe eines ähnliches Symbols
- Wie kann in einem Prozess die Zeit in die Simulation mit einbezogen werden?
- Mithilfe von Timern
- Welche Datentypen unterstützt SDL?
- Integer, Real, String, Sets, Boolean, ADTsnee
- Wie muss ein Prozess spezifiziert werden, wenn verschiedene Signale von einem Zustand aus empfangen werden können?
- mh, was soll daran groß anders sein?
- Beschreiben Sie das in SDL verwendete Prinzip der Prozesskommunikation!
- Request-Response?
- Was versteht man in SDL unter einer impliziten Transition?
- Welche vordefinierten Variablen können zur Adressierung eines Prozesses verwendet werden?
- sender
- offspring
- self
- parent
- Wozu dient das „Save“-Symbol?
- Speichert Signale, die nicht sofort bearbeitet werden können; sonst würden sie verworfen werden. Die Warteschlange arbeitet nach dem FIFO-Prinzip
- Wie können Prozesse weiter strukturiert werden?
- Services (teilen sich alle Variablen und FIFO Speicher des Prozessen, laufen nicht parallel ab)