1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle...
-
Upload
hrodrick-allwein -
Category
Documents
-
view
142 -
download
0
Transcript of 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle...
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle18
Vorlesung
Software Architektur-ModelleKonsistenz & Semantik 2
Dr. Harald Störrle
Ludwig-Maximilians-Universität MünchenWintersemester 2001
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle28
Gliederung für heute und nächstes Mal
· Konsistenz-Überprüfung von Modellen• Formalisierung von Modellen
– Sprachen, Transitionssysteme, Partielle Worte– Petrinetze– Semantiken (StateMachine, ActivityGraph, Interaction)
• Formalisierung von Eigenschaften– Verklemmung, Termination, Sicherheit,...
• informelle Konsistenzbedingungen
• Validation durch Rezension/Begehung(Review/Walkthrough)
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle38
Rückblick:Was hatten wir letzes Mal erreicht
· Basisdefinitionen• ETS, Ablauf, einige elementare Eigenschaften• Sprachsemantik, Sprachäquivalenz
· Erste Elemente einer formalen Semantik• flache Zustandsautomaten• Anschriften?• hierarchische Automaten?• Nebenläufigkeit?
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle48
Zentrale
Rückblick:Soll-Software Architektur
Sachbearbeiter-PC
IBM S/390
Filiale
LeihverkehrLeserverwaltungBestands-führungs
GUI
DB/2
Bestands-führung
DB/2
GUI
Logik
DB/2
GUI
Logik
Andere Filialen
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle58
Zentrale
Rückblick:Soll-Software Architektur
Sachbearbeiter-PC
IBM S/390
Filiale
LeihverkehrLeserverwaltungBestands-führungs
GUI
DB/2
Bestands-führung
DB/2
GUI
Logik
DB/2
GUI
Logik
Andere Filialen
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle68
Zentrale
Rückblick:Soll-Software Architektur
Sachbearbeiter-PC
IBM S/390
FilialeLeserverwaltungBestands-
führungsGUI
DB/2
Bestands-führung
DB/2
GUI
Logik
Leihverkehr
DB/2
GUI
Logik
Andere Filialen
Leihverkehr
DB/2
GUI
Logik
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle78
Rückblick:Soll-Software Architektur
p
Leihverkehrip
LeihverkehrjVPN
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle88
Rückblick:Protokollrolle „Leihverkehr“
p
Leihverkehrip
LeihverkehrjVPN
Protokollrolle
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle98
Rückblick:Verhalten des Konnektors
p
Leihverkehrip
LeihverkehrjVPN
Protokollrolle
Verzögerung,aber kein Verlust &
Vertauschungen o.ä.
Konnektor
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle108
Erwünschte Eigenschaft:Normalfall
interne(„unsichtbare“)
Aktionen
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle118
Erwünschte Eigenschaft:Äquivalent zum Normalfall?
„Äquivalent“ kann (im Moment) nur heißen:Sprachäquivalent unter einem gegebenen .
Die Antwort ist dann:Ja, wenn gerade die Menge der internen Aktionen ist.
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle128
Konsistenz 1:Gilt die erwünschte Eigenschaft?
p
Leihverkehrip
LeihverkehrjVPN
Protokollrolle
Konnektor
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle138
ETS-Semantik von ActivityGraph
ActivityGraph ETSTransition Element der ÜbergangsrelationActionState
„normal“ ZustandSend wie TransitionReceive wie Transition
State„normal“ ZustandInitialState ZustandFinalState Zustand
ObjectFlowState ?
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle148
Konsistenz 1:Gilt die erwünschte Eigenschaft?
p
Leihverkehrip
LeihverkehrjVPN
Konnektor
Protokollrolle
process
idle
wait
receive _query
receive _answer
send_query
send _answer
prepareinternal
internal
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle158
Konsistenz 1:Gilt die erwünschte Eigenschaft?
p
Leihverkehrip
LeihverkehrjVPN
Konnektor
emptyquery
answer
receive_query
receive_answer
send _query
send _answer
empty
Protokollrolle
process
idle
wait
receive _query
receive _answer
send_query
send _answer
prepareinternal
internal
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle168
Konsistenz 1:Gilt die erwünschte Eigenschaft?
p
Leihverkehrip
LeihverkehrjVPN
Konnektor
emptyquery
answer
receive_query
receive_answer
send _query
send _answer
empty
P = {send_query .receive_query .send_answer .receive_answer}
Protokollrolle
process
idle
wait
receive _query
receive _answer
send_query
send _answer
prepareinternal
internal
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle178
Konsistenz 1:Gilt die erwünschte Eigenschaft?
emptyquery
answerempty
ConnectorLeihverkehri Leihverkehrj
process
idle
wait
receive _query
receive _answer
send_query
send _answer
prepareinternal
internal
process
idle
wait
receive _query
receive _answer
send_query
send _answer
prepareinternal
internalP = {send_query .receive_query .send_answer .receive_answer}
Frage: Gilt P L(PR K PR), mit = {internal}?
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle188
Parallel-Schaltung führt zum Produktautomaten
emptyquery
answeremptyprocess
idle
wait
receive _query
receive _answer
send_query
send _answer
prepareinternal
internal
process
idle
wait
receive _query
receive _answer
send_query
send _answer
prepareinternal
internal
Schlimmstenfalls 5n*4 Zustände, also......bei 3 Teilnehmern 500 Zustände...bei 4 Teilnehmern 3000 Zustände
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle198
Innehalten: Ist das die Lösung?
ETSe sind als Semantische Domäne recht unhandlich:1: hierarchische Zustände2: Anschriften
1: State-Space-ExplosionDas Modell (hier: Aktivitätsdiagramm) wächst linear, aber sein Zustandsraum (das korrespondierende ETS) wächst polynomiell oder gar exponentiell.
2: Validität („Semantical gap“)• Es ist ein großer (und damit für den Nutzer nicht nachvollziehbarer)
Schritt vom Modell zu seiner Semantik: ist die Semantik überhaupt valide?
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle208
Problem 1:„State Space Explosion“
Dieses Problem hat vor allem zwei Ursachen:
a) Nebenläufigkeit Lösung:• Formalismen, die Nebenläufigkeit kaschieren, und die
symbolische Operationen erlauben (Bisimulationsbeweise, Netzreduktionen u.ä.)
• Clevere Algorithmik (BDDs) - Brute Force hilft nicht viel...
b) Daten Lösung:• Bildung von Äquivalenzklassen von Parametern
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle218
Problem 2:Validität
· Wird durch abstraktere Formalismen nebenher erledigt• Repräsentation von Nebenläufigkeit bzw. Komposition
symbolisch– Parallele Komposition bei CCS– PO-Semantik bei Petrinetze
• Repräsentation von Daten durch komplexe Anschriften – value passing CCS– High-level Petrinetze
PN
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle228
PN-Semantik von ActivityGraph
ActivityGraph PetrinetzTransition TransitionActionState
„normal“ TransitionSend TransitionReceive Transition
State„normal“ PlatzInitialState MarkierungFinalState Markierung
ObjectFlowState Platz
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle238
Konsistenz 1, zweiter Anlauf:Gilt die erwünschte Eigenschaft?
p
Leihverkehrip
LeihverkehrjVPN
KonnektorP = {send_query .receive_query .send_answer .receive_answer}
Protokollrolle
send
receive
use
receive
process
prepare
prepare
get
put
put
get
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle248
Konsistenz 1, zweiter Anlauf:Gilt die erwünschte Eigenschaft?
send
receive
use
receive
process
prepare
prepare
get
put
put
get
send
receive
use
receive
process
prepare
prepare
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle258
Konsistenz 1, zweiter Anlauf:Gilt die erwünschte Eigenschaft?
get
put
put getreceive
process
prepare
send
send
receive
use
receive
process
prepare
prepare
send
receive
use
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle268
Konsistenz 1, zweiter Anlauf:Gilt die erwünschte Eigenschaft?
get
put
put getreceive
process
prepare
send
send
receive
use
receive
process
prepare
prepare
send
receive
use
und symmetrisch für dieandere Richtung
1) Vervollständigen2) Anfangs- & Endmarkierungen3) Markenspiel durchführen4) Bezug zum AD herstellen5) Ist die Semantik korrekt?
A
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle278
Konsistenz 2a:Gelten die unerwünschten Eigenschaften?
p
Leihverkehrip
LeihverkehrjVPN
Ausfall von LV-Partnern
Protokollrolle
Konnektor
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle288
Konsistenz 2b:Gelten die unerwünschten Eigenschaften?
p
Leihverkehrip
LeihverkehrjVPN
Leitungszusammenbruch
Protokollrolle
Konnektor
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle298
Konsistenz 2b:Gelten die unerwünschten Eigenschaften?
p
Leihverkehrip
LeihverkehrjVPN
Falscher Adressat: Verklemmung
Protokollrolle
Konnektor
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle308
Vorschau
· Im neuen Jahr: S/390 („Host“)• Vergleich mit C/S-Architekturen
· noch einen Termin mit „Theorie“• Nebenläufigkeit, Last/Leistung
· Rest des Semesters: Software-Prozeß• die „andere Seite“ der Architektur• Vorbereiten:
– Suchen Sie im Netz nach ISO 15504 (SPICE), ISO 12207, und CMM.
– Lesen Sie die Literatur, die teilweise schon im Netz hängt, und bis Freitag vollständig sein wird
11.12.2001Konsistenz & Semantik 2
VL Software Architektur-Modelle
Dr. Harald Störrle318
Schöne Weihnachten!
Guten Rutsch!
Kommen Sie wieder!
Bringen Sie noch andere mit: die Themen Prozeß und Host sind von den bisherigen Inhaltennahezu vollständig unabhängig