VL01-Intro

Werbung
Vorbereitung
· Raumänderungsaushang
· Projektor, Ersatzfolien (?)
· Beamer, Laptop
· Tafel, Kreide, Ausgedrucktes Skript
· Klebepunkte am Eingang verteilen
· Teilnehmerbögen
· Punktabfrage Erwartungen, fetter Filzer
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
1
1
Vorlesung
Software Architektur-Modelle
Dr. Harald Störrle
Ludwig-Maximilians-Universität München
Wintersemester 2001
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
2
1
Ziel heute
· Themenüberblick als
Entscheidungshilfe
· zunächst aber einiges
Organisatorisches
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
3
1
Organisatorisches
• Liste:
bitte alle eintragen
• „Skript“:
meine Dissertation
(Autorenexemplare zu DM 25, statt €
35)
•
•
•
•
•
•
16.10.2001
Einführung
26.10.:
Prüfung:
Aufgaben:
Schein:
Übungen:
Exkursion:
entfällt
Säulen PG & A (Prof. Wirsing)
3 Blätter
nein
Bedarf?
Bedarf?
VL Software Architektur-Modelle
Dr. Harald Störrle
4
1
Zur Person
· Studium
Informatik & Psychologie
in Tübingen, Hamburg & Edinburgh
· Promotion
„Models of Software Architecture“
an der LMU, Prof. Wirsing
· Industrie
Competence Center Informatik
FJA AG
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
5
1
Zu FJA
· Rang
• das führende Beratungs- und Sw-Haus für
Versicherungen im deutschsprachigen Raum
· Mitarbeiter
• ca. 850 weltweit, ca. 500 in München
· Niederlassungen
• M, M, K, S, HH, B, Zürich, Wien, NY, Maribor
· Lage
• 30% Wachstum p.a., seit 1980
(Personal, Umsatz, Gewinn)
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
6
1
Zum Titel
• Wieso bloß „Modelle“ - „Architekturen“ wären
doch interessanter?!
=> SWA muß man praktisch erlernen, also z.B. in
langen Jahren industrieller Tätigkeit.
• Man tut sich aber erheblich leichter, wenn man
die nötigen theoretischen und technischen
Grundlagen hat.
• Und die zu legen ist genau das Ziel dieser
Vorlesung.
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
7
1
Motivation
· Warum sollten Sie hier mitarbeiten?
• SWA ist eines der interessantesten, vielseitigsten
und praxisrelevantesten Gebiete.
• Das Gebiet wird an der Uni nahezu nicht gelehrt,
und wenn, dann in rein akademischer Form.
• Diese Veranstaltung ist wahrscheinlich einmalig.
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
8
1
Motivation: Chancen & Risiken
· Sehr großer thematischer Bogen
– viele interessante und relevante Themen, großer Lerneffekt
– ABER: roter Faden könnte verloren gehen
· Top-aktuelles Thema
– sowohl wissenschaftlich fundiert als auch praktisch erprobt
– ABER: anspruchsvoll, viel Arbeit
· Brandneue Vorlesung
– interaktiv gestaltbar, ich bin sehr motiviert, VL nicht abgenudelt
– ABER: Pannen und Überziehen möglich
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
9
1
Apell zur Mitwirkung
· Bin auf Ihre Mitwirkung angewiesen
•
•
•
•
•
•
Nachsicht bei Pannen
Fragen
Diskussionen
Übungsaufgaben
Feedback
Mitarbeit
· Was sind Ihre Erwartungen?
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
10
1
Erwartungen der Teilnehmer
· Gruppenübung Punktabfrage
• Jeder bekommt einen Klebepunkt
• Alle gehen gemeinsam nach vorne
• Jeder klebt seinen Punkt in das
Koordinatensystem „Erwartungen“
• Dimensionen:
– gewünschter Inhalt:
– verfügbarer Aufwand:
theoretisch/praktisch
hoch/niedrig
· Los geht’s!
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
11
1
Zum
eigentlichen
Inhalt!
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
12
1
Gliederung für heute
• Grundfragen
– Was ist das, Software-Architektur?
– Wozu sich damit beschäftigen?
• Grundbegriffe
– Beispiele
– A-7E, GoLife!, SL45i
– System, Anforderung, Stakeholder
– Stil
– Elemente
• Semestervorschau
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
13
1
Ziel für heute
· Grundbegriffe und Fragen einführen
· Themenvielfalt auffächern
· Zum Nachdenken anregen
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
14
1
KEIN Ziel heute
· Echte Architekturbeispiele im Detail
· Antworten auf die gestellten Fragen
· Handwerkszeug des Architekten
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
15
1
Was ist das,
„Software Architektur“?
· Der Name „Software-Architektur“
(kurz: SWA) ist als Analogie zu sehen,
als eine programmatische Aussage,
eine Absichtserklärung:
„da, wo die Architektur heute steht,
da wollen wir auch hin“.
· Aber trägt diese Analogie wirklich?
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
16
1
Analogie: Gemeinsamkeiten
Architektur
Software-Architektur
• große Bauwerke mit langer
Lebensdauer (Jahrhunderte)
• große Systeme mit langer
Lebensdauer (Jahrzehnte)
• große Auswirkungen auf
viele Beteiligte
• große Auswirkungen auf
viele Beteiligte
• schwierige Koordination;
komplexer, arbeitsteiliger
Prozesse („Leistungsstufen“)
• schwierige Koordination;
komplexer, arbeitsteiliger
Prozeß (Vorgehensmodelle)
• Bedeutung von Planung und
Modellen
• Bedeutung von Planung
und Modellen
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
17
1
Analogie: Unterschiede
Architektur
Software-Architektur
• Vorläufer seit 10.000 Jahren,
etablierte Disziplin seit ~1800
Ausbildungsgang/Abschluß
• SE gerade mal seit 1968,
kein eigenes Fach, kein
Ausbildungsgang/Abschluß
• Wissenskanon, Werkzeuge
• kaum Theorie/ Werkzeuge
• mehr oder minder
künstlerischer Anteil
• sehr technischmathematisch ausgerichtet
• wenige Freiheitsgrade,
unmittelbar anschaulich
• extrem viele Freiheitsgrade,
sehr abstrakt
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
18
1
Was ist das,
„Software Architektur“?
„Architecture is the set of design decisions [...] that
keeps ist implementors and maintainers from
exercising needless creativity.“
(D`Souza & Wills, Catalysis)
„ Architecture is a framework for change“
(Tom De Marco)
...ein Mittel zur Verfolgung technischer, politischer,
wirtschaftlicher oder strategischer Ziele durch die
Einschränkung von Freiheitsgraden bei der Herstellung
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
19
1
Was ist das,
„Software Architektur“?
„Architecture is defined [...] as the
fundamental organization of a system,
emodied in its components, their
relationships to each other and to the
environment, and the principles governing its
design and evolution.“
(IEEE AWG, Std P1471, 1999)
... Bestandteile und Struktur eines Systems auf einer
bestimmten Abstraktionsebene.
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
20
1
Wieso SWA-“Modelle“ ?
· Ein Modell ist eine Abstraktion, die
leichter zu handhaben ist, als das reale
Ding.
Beispiel: ein Hochhaus und seine Modelle
– Anschauung: Pappmodell, virtuelles Modell
– Planung und Ausführung von x: x-Plan
mit x aus {Elektrik, Klima, Wasser, Heizung, Treppen & Aufzüge,
Raumordnung, Infrastrukturanbindung, Kosten, Zeit,
Logistik, Bauplanung, Statik...}
· Nur mit Modellen kann man Planen
und Entwerfen.
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
21
1
Wieso sich mit SWA
beschäftigen?
· Die „üblichen“ Gründe
–
–
–
–
–
–
16.10.2001
Einführung
Qualität
Kosten
Time-to-market
Wartbarkeit
Wiederverwendbarkeit
Investitionssicherung
VL Software Architektur-Modelle
Dr. Harald Störrle
22
1
Wieso sich mit SWA
beschäftigen?
...Kosten
• Mangelhafte Software verursacht
– betriebs- und volkswirtschaftliche Schäden im Bereich
10-100 Billionen US$ p.a. weltweit
– für deutsche Groß- & Mittelständische Unternehmen
p.a. ca. 165 Mrd. DM (entspricht 1/3 des IT-Budgets)
– davon 17% Fehlerbeseitigung und 83 % Produktionsausfälle
– zum Vergleich: Großfeuer verursachen jährlich in Deutschland
Schäden in Höhe von 2 Mrd. DM
– der Ariane-5-Fehler alleine hat 500 Mio Euro an
Schaden verursacht (nicht versichert), Folgeschäden und
Ausfälle nicht gerechnet.
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
23
1
Software Architektur:
Geschichte des Begriffs
2010
?
2000
Hype
1990
theoretische Vorarbeiten
1980
Erste Erwähnung
1970
1960
16.10.2001
Einführung
•SARA
Garmisch-Konferenz
•„Software Engineering“
•Wiederverwendung
•Komponenten
VL Software Architektur-Modelle
Dr. Harald Störrle
24
1
Software Architektur:
Hype und Realität
· Maßgebliche Ergebnisse in den 90`ern
· Hype seit ca. 1997
· Der erste Hype ist vorbei, aber viele
schwierigen Fragen sind noch offen
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
25
1
Gliederung:
Grundbegriffe
• System, Stakeholder, Anforderungen
• Arten von Architekturen
– Stil, Domänenarchitektur, Produktfamilie, Architektur
• Elemente
–
–
–
–
–
16.10.2001
Einführung
Komponente
Port
Konnektor
Rolle/Protokoll
Konfiguration
VL Software Architektur-Modelle
Dr. Harald Störrle
26
1
Beispiele:
Vorbemerkungen
• Große Beispiele sind zu groß.
In einer Vorlesung sind sie kaum abzuhandeln.
• Echte Beispiele sind zumeist streng geheim.
Eine Freigabe ist nicht zu bekommen.
• Aber kleine & Spielzeug-Beispiele sind keine!
Die spezifischen Probleme und Fragen treten nicht/anders auf.
• Die Beispiele basieren auf realen Beispielen, sind
aber teilweise fiktiv, verfremdet und erraten.
Das ändert aber nichts an ihrer Tauglichkeit.
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
27
1
Beispiele:
Übersicht
• A-7-Avionik System
– Waffen- und Navigations-System für ein Kampfflugzeug
• GoLife!
– Online-Lebensversicherung
• SL45i
– High-End Mobiltelefon
• Repräsentativer Querschnitt. Weitere Beispiele
bzw. Vertiefung davon im Lauf des Semesters!
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
28
1
Beispiele: A-7E
Überblick
• Die A-7E Corsair II ist ein Trägergestütztes
Kampfflugzeug, das in den 60er bis 80er Jahren
in Betrieb war.
• Sie hatte als eines der ersten Flugzeuge einen
Bordcomputer (special purpose).
• In den USA wird die Software-Engineering
Forschung zu großen Teilen vom Militär
finanziert.
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
29
1
Beispiele: A-7E
Warum dieses Bsp.?
• Eines der ersten Architektur-Modelle überhaupt.
• Methodik und Architektur sind auch heute noch
aktuell.
• Repräsentativ für den sehr großen und wichtigen
Anwendungsbereich Embedded/RT-Systeme
–
–
–
–
16.10.2001
Einführung
Aerospace
Automobil
Maschinensteuerung
Telekom-Switches
VL Software Architektur-Modelle
Dr. Harald Störrle
30
1
Beispiele: A-7E
Randbedingungen
• relativ fixe Anforderungen, fixe Ressourcen
• nur ein Kunde, geringer Marktdruck
• extreme Zuverlässigkeit
• extrem lange Lebensdauer
• Echtzeitverarbeitung
– dedizierte Hardware (nur Assembler)
– 64k Speicher
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
31
1
Beispiele: A-7E
Software / System
· Zu betrachten ist ein komplettes
System, nicht nur die Software!
· Sensoren/Aktoren · In/Out
•
•
•
•
•
•
16.10.2001
Einführung
Radar
Doppler-Radar
Trägheit
Staudruck
Höhenmesser
Waffenschächte/Relais
•
•
•
•
•
•
•
VL Software Architektur-Modelle
Dr. Harald Störrle
Head-Up-Display
Karten-Display
numerische Tastatur
alphanumerische Anzeige
Schalter
Anzeigelampen
Pieper
32
1
Zum
nächsten
Beispiel!
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
33
1
Beispiele: GoLife!
Überblick
• Komplette Software-Ausstattung für eine DirektVersicherung (Lebensversicherungen).
• Verfremdet und zusammengetragen aus
verschiedenen realen Projekten, an denen ich
mitgearbeitet habe.
• Sehr ähnliche Projekte liefen bereits und laufen
aktuell.
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
34
1
Beispiele: GoLife!
Wieso dieses Bsp.?
• Ich kenne dieses Beispiel sehr gut.
• Diese Art System wird heute flächendeckend
eingesetzt.
• Repräsentativ für den sehr großen und wichtigen
Anwendungsbereich Office-Automation-Systeme.
–
–
–
–
16.10.2001
Einführung
Versicherungen
Banken
ERP
Flugbuchung
VL Software Architektur-Modelle
Dr. Harald Störrle
35
1
Beispiele: GoLife!
Anforderungen
• Organisatorisch
– lange Lebensdauer
– sehr viele Beteiligte
– großer Marktdruck
– Mehrere Mandanten und
Gesellschaften
• Technisch
– Legacies/Integration
– Thin-Client: Online-Betrieb!
– viele verschiedene
Plattformen, Sprachen, DBs,
Middlewares, ...
– Mehrere Sprachen
– Mehrere Währungen
– juristische Anforderungen
– komplexe, dynamische
Geschäftsprozesse
– Security
16.10.2001
Einführung
• Fachlich
VL Software Architektur-Modelle
Dr. Harald Störrle
36
1
Beispiele: GoLife!
Architektur
Angebotserstellung
Portal
Bestandsführung
RisikoPrüfung
CRM
DMS
In/Exkasso
Briefschreibung
Anlageverwaltung
16.10.2001
Einführung
Call-Center
VL Software Architektur-Modelle
Dr. Harald Störrle
37
1
Beispiele: GoLife!
Architektur
Angebotserstellung
Portal
Bestandsführung
RisikoPrüfung
CRM
DMS
Kunde
In/Exkasso
Briefschreibung
Anlageverwaltung
16.10.2001
Einführung
Call-Center
VL Software Architektur-Modelle
Dr. Harald Störrle
Sachbearbeiter
38
1
Beispiele: GoLife!
Stakeholder
• Architekt
• Kunde („Klient“)
– Management, Fachabteilung, DV/IT
• Nutzer
– Sachbearbeiter, Kunde, Controller
• Entwickler
– Entwickler, Tester, QSB, Integrator, Domänenexperten,...
• Anbieter/Management
– Projektleiter, Vorstand
• Dritte
– Gesetzgeber, Datenschutzbeauftragter, Betriebsrat
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
39
1
Zum
nächsten
Beispiel!
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
40
1
Beispiele: SL45i
Überblick
• Sehr große Software-Architektur:
„ca. 85% des Telefons sind Software“
• Momentan das high-end Produkt von
Siemens
• Teil einer Produktfamilie
• Leider (bislang) sehr wenig
technische Informationen verfügbar
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
41
1
Exkurs: Zielgruppenorientierung
bei Samsung
3 Telefone: baugleich, aber verschiedene Produkte
– SGH-A400
–
–
–
–
“...in aktuellen Lippenstift-Farben...“
Ovulations-Kalender
Kalorien-Verbrauchsrechner
JPEG-Fotoalbum
– SGH-R300
– Vorlesungskalender
– MP3-Player
– WWW-Seite mit Studienplatztausch und Jobbörse, MP3-Charts
– SGH-N300
– Terminkalender, Outlook-kompatibel
– Finanzrechner
– MP3-Player als „Fremdsprachentrainer“
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
42
1
Beispiele: SL45i
Wieso dieses Bsp.?
• Unmittelbarer Bezug zur Lebenswelt:
– nahezu jeder besitzt heute ein Mobiltelefon (wenn auch
meist eine Nummer kleiner).
• Sehr hohe kommerzielle Bedeutung, extreme
Marktbedingungen.
• Repräsentativ für den sehr großen und wichtigen
Anwendungsbereich der mobilen Endgeräte.
– Telefone
– PDAs
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
43
1
Beispiele: Siemens SL45i
Anforderungen
• Funktionalität
– Addressbuch, Notizbuch, Kalender/Terminverwaltung, Stoppuhr,
MP3-Player, Diktaphon, Mail-Client, Spiele, Währungs- und
Finanzrechner, Taschenrechner, „Cocktailratgeber“
• Protokolle / Dienste
– SMS, EMS, GSM, SPRS, WAP, Fax, POP3
– Komfortdienste (Rufweiterleitung, Anruferanzeige, Anklopfen, ...)
• Bedienbarkeit
– Display- & Tastengröße, Menü- vs. Sprachsteuerung , Hilfe
• Abmaße / Gewicht, Standby- / Sprechzeit
• Time to market
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
44
1
Beispiele: Siemens SL45i
Anforderungskonflikte
Bedien-
Preis
barkeit
Standby- & Gewicht &
Funktion-
Sprechzeit
alität
Abmaße
Funktionalität
Gewicht &
Abmaße
Standby- &
Sprechzeit
Preis
Eingebaute JVM
Funktionalität dynamisch ladbar,
für jeden Benutzer individuell
Bedienbarkeit
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
45
1
Auswertung
der
Beispiele
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
46
1
Beispiele:
Wofür stehen sie?
• A-7E
– System = Hardware + Software
• GoLife
– Stakeholder
– Konflikt zwischen ihnen
• SL45i
– Anforderungen im Konflikt
– Produktfamilien
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
47
1
Beispiele: Vergleich 1
Nachbarsysteme
in
out
GoLife
SL45i
A7-E
GUI
Scanner
Call-Center
Empfänger
Tastatur
Mikrophon
div. Sensoren
Radar
Schalter
LCD
Sender
Lautsprecher
Vibrationsalarm
div. Aktoren
Head-Up-Display
GUI
Briefdruckstraße
mem
verschiedene DBs
„Multimedia Card“
64k intern
peer
Anlageverwaltung
Funknetz & Dienste
-
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
48
1
Beispiele: Vergleich 2
Anforderungsprofile
FURPS
ISO 9126
Functionality
Usability
Reliability
Performance
Security
Efficiency
Maintainability
Reusability
Time-to-market
Portability
Availability
System Development
16.10.2001
Einführung
GoLife!
++
+
++
+
+
+
+
+
+
+
VL Software Architektur-Modelle
Dr. Harald Störrle
SL45
+
++
+
++++
++
++
A-7E
+
++
++
++
+
++
---++
++
49
1
Beispiele: Vergleich 2
Anforderungsprofile
Functionality
Efficiency
Usability
Performance
Reusability
Time-to-market
Reliability
System Development
Portability
Security
Maintainability
Availability
16.10.2001
Einführung
Go!Life
++
+
+
++
+
-+
+
+
+
VL Software Architektur-Modelle
Dr. Harald Störrle
SL45
+
+++
+++
++
+
++
-
A7E
+
+
++
--++
++
-++
++
++
50
1
Beispiele: Vergleich 3
Stakeholder
Rolle
GoLife
Nutzer
Kunde
Telefonierer
Sachbearbeiter
Pilot
Klient
Versicherung
Telefonierer
US Navy
Anbieter
FJA
Siemens
Naval SW Dev. ...
Entwickler
Entwickler
Entwickler
Entwickler
Architekt
Architekt
Architekt
Architekt
Dritte
Datenschützer MobilfunkBetriebsrat
hysteriker
Gesetzgeber
16.10.2001
Einführung
SL45i
VL Software Architektur-Modelle
Dr. Harald Störrle
A7-E
Ziel/Gegner
51
1
Beispiele: Verleich 3
Stakeholder/Stakes
Functionality
Efficiency
Usability
Performance
Reusability
Time-to-market
Reliability
System Development
Portability
Security
Maintainability
Availability
16.10.2001
Einführung
Kunde
++
++
++
-++
+
++
++
++
Anbieter
-+
++
-++
+
--
VL Software Architektur-Modelle
Dr. Harald Störrle
Nutzer
++
-++
++
--++
-----
Entwickler
++
++
+
+
++
+
+
++
++
++
++
52
1
Beispiele: Verleich 3
Stakeholder/Stakes
Functionality
Efficiency
Usability
Performance
Reusability
Time-to-market
Reliability
System Development
Portability
Security
Maintainability
Availability
16.10.2001
Einführung
Kunde
++
++
++
-++
+
++
++
++
++
Anbieter
-+
++
--+
--
VL Software Architektur-Modelle
Dr. Harald Störrle
Nutzer
++
-++
++
--++
-----
Entwickler
++
++
+
++
+
+
++
++
++
++
53
1
Beispiele: Vergleich 3
Stakeholder/Stakes
beauftragt->
<- liefert
moderiert &
vermittelt
Architekt
Nutzer
16.10.2001
Einführung
Anbieter
(Manager)
<- befragt
informiert->
VL Software Architektur-Modelle
Dr. Harald Störrle
beauftragt->
<- berichtet
kontrolliert->
Klient
Entwickler
54
1
Stakeholder „Architekt“:
Rolle
• Der Architekt ist die Schnittstelle zwischen
– Kunde und Auftraggeber, und
– Nutzer und Entwickler.
• Er moderiert und steuert die Interaktionen
zwischen den Beteiligten.
• Letztlich ist daher der Architekt für die
Befriedigung der Kundenwünsche verantwortlich.
• Und nicht nur für die Realisierung der
Anforderungen!
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
55
1
Stakeholder „Architekt“:
Anforderungen
• Ein Architekt braucht
– umfassende Akzeptanz durch umfassende Kompetenz
– hohes Maß an Moderations-& Kommunikationsfähigkeit.
• Architekt kann nur empfehlen, nicht befehlen,
daher relativ geringe Einwirkungsmöglichkeit.
Gleichzeitig trägt er eine hohe Verantwortung:
• Riskant, aber reizvoll.
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
56
1
Gliederung:
Grundbegriffe
• System, Stakeholder, Anforderungen
• Arten von Architekturen
– Stil, Domänenarchitektur, Produktfamilie, Architektur
• Elemente
–
–
–
–
–
16.10.2001
Einführung
Komponente
Port
Konnektor
Rolle/Protokoll
Konfiguration
VL Software Architektur-Modelle
Dr. Harald Störrle
57
1
Architektur ... Stil:
Nutzen von Einschränkungen
keine
z.B. FAA, VAA, IAA
Einschränkungen
System
Domänen-/
BranchenSWA
{Form, Elements, Rationale}
Produktfamilie
z.B. SL45, SL45i, SE45, M45i, S35, C35
viele
wenige...
16.10.2001
Einführung
Stil
VL Software Architektur-Modelle
Dr. Harald Störrle
viele Exemplare
58
1
Architektur ... Stil:
Nutzen von Einschränkungen
· Stärkere Festlegung erlaubt:
• mehr methodische und Werkzeug Unterstützung
(z.B. Programmiermodelle, Generatoren)
• leichtere Überprüfung/Begutachtung
• stärkere Wiederverwendung
· und damit:
• bessere Qualität
• reduzierte Kosten
• kürzere Produktzyklen (time-to-market)
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
59
1
Architektur ... Stil:
Nutzen von Einschränkungen
Gesamtkosten
Systemarchitektur
Produktfamilie
mit Stil
keine Architektur
Overhead
Lebensdauer, bzw. Anzahl Produktzyklen
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
60
1
Architektur-Stil (Beispiele)
• Datenfluß
– Stapelverarbeitung mit Datei-Puffer (Batch)
– Unix-Pipes („Pipes-and-Filters“)
• Kontrollfluß
– Prozedur-Aufruf, RPC, RMI, ...
• kooperierende Prozesse
– Betriebssysteme
• shared memory
– Blackboard
– TP-Monitore/RDBMS
• Schichten
– C/S-Systeme
– Betriebssysteme
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
61
1
Gliederung:
Grundbegriffe
• System, Stakeholder, Anforderungen
• Arten von Architekturen
– Stil, Domänenarchitektur, Produktfamilie, Architektur
• Elemente
–
–
–
–
–
16.10.2001
Einführung
Komponente
Port
Konnektor
Rolle/Protokoll
Konfiguration
VL Software Architektur-Modelle
Dr. Harald Störrle
62
1
Grundbegriffe: Elemente 1/2
· Komponenten
– Nicht im Sinne von COM, EJB, o.ä., sondern als
Architektur-Einheiten, also als Gegenstand von Entwurf,
Wiederverwendung, Auftragsvergabe, Versionskontrolle,
...
· Port
– Schnittstelle einer Komponente, evtl. Vertragsgrundlage
· Rolle
– beschreibt Signatur und Verhalten
· Protokoll
– Kollaboration von Rollen
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
63
1
Grundbegriffe: Elemente 2/2
· Konnektor
– Verbindet Komponenten über ihre Ports
– kann eigenes Verhalten haben
– erfüllt Protokoll
· Konfiguration
– Anordnung von Komponenten und Konnektoren
· Stil
Style={Form, Elements, Rationale}
· Instanzen / Typen
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
64
1
Gliederung für heute
• Grundfragen
– Was ist das, Software-Architektur?
– Wozu sich damit beschäftigen?
• Grundbegriffe
– Beispiele
– A-7E, GoLife!, SL45i
– System, Anforderung, Stakeholder
– Stil
– Elemente
• Semestervorschau
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
65
1
Semestervorschau
Überblick
Grundlagen
3
ADLs
7
Prozesse
2
16.10.2001
Einführung
Einleitung
– Architektur-Einheiten („Komponenten“)
– Semantik-Formalismen (CSP, PN, ES, LTS)
– Entwurfs-Notationen (UML, SARA)
– Wright
– Darwin
– UML/AM (SARA, ROOM, UML/RT, SDL,...)
– Elementare Methodiken
– Konsistenz, Verifikation
– Validation, Soft-Factors
Skip 8
Rückschau
VL Software Architektur-Modelle
Dr. Harald Störrle
66
1
Semestervorschau
Grundlagen: Einheiten
• Anforderungen:
–
–
–
–
effektive & ökonomische Wiederverwendung
fachliche und technische Einheiten
Modellierungs- und Implementierungs-Komponenten
Einheiten als Gegenstände der Vertragsgestaltung
• Existierende Technologien
– Business Objects
– Corba Component Model / EJB (u.ä.)
– UML Components
• Wie geht beides zusammen?
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
67
1
Semestervorschau
Grundlagen: Semantik
• Motivation: Konsistenz-Überprüfung
• Formalismen
– CSP, Transitionssysteme, Traces
– Petri-Netze, Event-Structures
• Äquivalenzen
• Vergleich der Formalismen:
Wann ist welcher geeignet?
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
68
1
Semestervorschau
Grundlagen: Notationen
• Sollte ja eigentlich bekannt sein, aber...
• Gängige Notationen
–
–
–
–
UML
SARA, ROOM, UML/RT
UML/AM
Use Case Maps
• Syntax, Semantik, Pragmatik in Grundzügen
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
69
1
Semestervorschau
ADLs
• Wright
– benannt nach Frank Lloyd Wright
– erste wirklich formale ADL (CSP-Semantik)
• Darwin
– Schwerpunkt dynamische Struktur (Evolution)
– Pi-Kalkül-Semantik
– SAA (Sw. Architect`s Assitant)
• UML/AM
– eher aus der Praxis kommend
– basiert auf meiner Diss
– verschiedene Semantiken (z.B. PN, make, Java)
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
70
1
Semestervorschau
Prozeß: Einführung
• Der Geschäftsprozeß der SW-Herstellung
• Der entscheidende Hebel zur
Qualitätsverbesserung
• Methodik / Techniken
– Von Geschäftsprozessen zu Anwendungsfällen
– interaktiver GUI-Entwurf (Dialogsteuerung)
– CRC-Karten
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
71
1
Semestervorschau
Prozeß: Analyse & Validation
· Modelle dienen zum Planen:
• Ist das Modell in sich stimmig?
• Ist dies das richtige Modell?
· Themen
• Ansatzpunkte
• Auswahl von Äquivalenzen
• informelle Analysetechniken: Begehung/Review
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
72
1
Semestervorschau: Ausblick
· Thematische Rückschau
· Reflektion
• Was haben Sie während des Semesters gelernt?
• Welche offenen Fragen gibt es?
• Wie könnte man sie vielleicht lösen?
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
73
1
Semestervorschau
Überblick
Grundlagen
3
ADLs
7
Prozesse
2
16.10.2001
Einführung
Einleitung
– Architektur-Einheiten („Komponenten“)
– Semantik-Formalismen (CSP, PN, ES, LTS)
– Entwurfs-Notationen (UML, SARA)
– Wright
– Darwin
– UML/AM (SARA, ROOM, UML/RT, SDL,...)
– Elementare Methodiken
– Konsistenz, Verifikation
– Validation, Soft-Factors
Rückschau
VL Software Architektur-Modelle
Dr. Harald Störrle
74
1
Literatur
(fürs ganze Semester)
· H. Störrle (2001)
• Models of Software Architecture
· L. Bass/P. Clements/R. Kazman (1998)
• Software Architecture in Practice
· OMG
Unified Modeling Language
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
75
1
Literatur
(zur Nachbereitung)
· D. Garlan
• Software Architecture: A Roadmap
(Keynote Speech auf der ICSE 2000)
· P. Clements/L. Northrop
• Software Architecture: An Executive Overview
(pp. 55-68 in: A.W. Brown Component Based SE )
· WWISA-Charta
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
76
1
Literatur
(zur Vorbereitung)
· Technische Komponentenmodelle
– EJB 2.0
– Corba Component Model
· Bücher von Oliver Sims
– Business Objects
– Building Business Objects
– Business Component Factories
(alle bei Wiley/OMG Press)
(1994)
(1998, Sims & P. Eeles)
(2000, Sims & P. Herzum)
· Google o.ä.: „Business Objects“
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
77
1
Aufgabe zum nächsten Mal
· Lektüre
– Vorlesungsseite besuchen, im Netz stöbern
· Beispiele finden
– Finden Sie Beispiele für Systeme mit SWA in Ihrer
täglichen Umwelt! Identifizieren Sie Stakeholder und
deren Anforderungen. Gibt es Konflikte?
· Vorbereitung
– Schauen Sie sich EJBs, BOs, & UML Components an
· Entscheiden Sie sich, ob Sie teilnehmen!
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
78
1
Schlußbemerkungen
· Fragen & Anregungen:
[email protected]
· Weitere Informationen:
www.pst.informatik.uni-muenchen.de/
lehre/WS0102/architektur/
· Nicht vergessen: VL am 23.10. entfällt!
16.10.2001
Einführung
VL Software Architektur-Modelle
Dr. Harald Störrle
79
1
Herunterladen