1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle...

31
11.12.2001 Konsistenz & Semantik 2 VL Software Architektur- Modelle Dr. Harald Störrle 1 8 Vorlesung Software Architektur-Modelle Konsistenz & Semantik 2 Dr. Harald Störrle Ludwig-Maximilians-Universität München Wintersemester 2001

Transcript of 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle...

Page 1: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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

Page 2: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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)

Page 3: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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?

Page 4: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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

Page 5: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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

Page 6: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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

Page 7: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

11.12.2001Konsistenz & Semantik 2

VL Software Architektur-Modelle

Dr. Harald Störrle78

Rückblick:Soll-Software Architektur

p

Leihverkehrip

LeihverkehrjVPN

Page 8: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

11.12.2001Konsistenz & Semantik 2

VL Software Architektur-Modelle

Dr. Harald Störrle88

Rückblick:Protokollrolle „Leihverkehr“

p

Leihverkehrip

LeihverkehrjVPN

Protokollrolle

Page 9: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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

Page 10: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

11.12.2001Konsistenz & Semantik 2

VL Software Architektur-Modelle

Dr. Harald Störrle108

Erwünschte Eigenschaft:Normalfall

interne(„unsichtbare“)

Aktionen

Page 11: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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.

Page 12: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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

Page 13: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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 ?

Page 14: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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

Page 15: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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

Page 16: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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

Page 17: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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}?

Page 18: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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

Page 19: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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?

Page 20: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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

Page 21: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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

Page 22: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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

Page 23: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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

Page 24: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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

Page 25: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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

Page 26: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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

Page 27: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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

Page 28: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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

Page 29: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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

Page 30: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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

Page 31: 1818 11.12.2001 Konsistenz & Semantik 2 VL Software Architektur-Modelle Dr. Harald Störrle Vorlesung Software Architektur-Modelle Konsistenz & Semantik.

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