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
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
Ziel heute Themenüberblick als Entscheidungshilfe zunächst aber einiges Organisatorisches 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
Organisatorisches Liste: bitte alle eintragen „Skript“: meine Dissertation (Autorenexemplare zu DM 25, statt 35) 26.10.: entfällt Prüfung: Säulen PG & A (Prof. Wirsing) Aufgaben: 3 Blätter Schein: nein Übungen: Bedarf? Exkursion: Bedarf? Vorlesung basiert auf meiner Dissertation Die Vorlesung baut sehr stark auf meiner Dissertation auf, modifiziert und angereichert um praktische Erfahrungen. Daher könnte es interessant sein, einen Blick in das Buch zu werfen, z.B. in der Institutsbibliothek oder in der Stabi. Es gibt auch (noch) die Möglichkeit, verbilligte Autorenexemplare zu DM 25 (statt 35) zu erwerben. 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
Zur Person Studium Promotion Industrie 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
Zu FJA Rang Mitarbeiter Niederlassungen Lage 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
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
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
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
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
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: theoretisch/praktisch verfügbarer Aufwand: hoch/niedrig Los geht’s! Ich lege die Vorlesung so an: Ich erwarte als Ergebnis der Befragung: Aufwand hoch Inhalt praktisch 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
Zum eigentlichen Inhalt! ã Dr. Harald Störrle 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
Gliederung für heute Grundfragen Grundbegriffe Semestervorschau 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
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
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
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
Analogie: Gemeinsamkeiten Architektur große Bauwerke mit langer Lebensdauer (Jahrhunderte) große Auswirkungen auf viele Beteiligte schwierige Koordination; komplexer, arbeitsteiliger Prozesse („Leistungsstufen“) Bedeutung von Planung und Modellen Software-Architektur große Systeme mit langer Lebensdauer (Jahrzehnte) große Auswirkungen auf viele Beteiligte schwierige Koordination; komplexer, arbeitsteiliger Prozeß (Vorgehensmodelle) Bedeutung von Planung und Modellen 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
Analogie: Unterschiede Architektur Vorläufer seit 10.000 Jahren, etablierte Disziplin seit ~1800 Ausbildungsgang/Abschluß Wissenskanon, Werkzeuge mehr oder minder künstlerischer Anteil wenige Freiheitsgrade, unmittelbar anschaulich Software-Architektur SE gerade mal seit 1968, kein eigenes Fach, kein Ausbildungsgang/Abschluß kaum Theorie/ Werkzeuge sehr technisch-mathematisch ausgerichtet extrem viele Freiheitsgrade, sehr abstrakt 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
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
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
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
Wieso sich mit SWA beschäftigen? Die „üblichen“ Gründe Qualität Kosten Time-to-market Wartbarkeit Wiederverwendbarkeit Investitionssicherung 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
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
Software Architektur: Geschichte des Begriffs 2010 ? 2000 Hype 1990 theoretische Vorarbeiten 1980 Erste Erwähnung SARA 1970 Garmisch-Konferenz „Software Engineering“ Wiederverwendung Komponenten 1960 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
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
Gliederung: Grundbegriffe System, Stakeholder, Anforderungen Arten von Architekturen Stil, Domänenarchitektur, Produktfamilie, Architektur Elemente Komponente Port Konnektor Rolle/Protokoll Konfiguration 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
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
Beispiele: Übersicht A-7-Avionik System GoLife! SL45i 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
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
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 Aerospace Automobil Maschinensteuerung Telekom-Switches 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
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
Beispiele: A-7E Software / System Zu betrachten ist ein komplettes System, nicht nur die Software! Sensoren/Aktoren Radar Doppler-Radar Trägheit Staudruck Höhenmesser Waffenschächte/Relais In/Out Head-Up-Display Karten-Display numerische Tastatur alphanumerische Anzeige Schalter Anzeigelampen Pieper Generell geht es aber um Software-Intensive Systeme, hier das Avionik-Subsystems des Flugzeugs, also nicht das eigentliche Flugzeug, aber durchaus die Sensoren. 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
Zum nächsten Beispiel! ã Dr. Harald Störrle 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
Beispiele: GoLife! Überblick Komplette Software-Ausstattung für eine Direkt-Versicherung (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
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. Versicherungen Banken ERP Flugbuchung 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
Beispiele: GoLife! Anforderungen Organisatorisch lange Lebensdauer sehr viele Beteiligte Technisch Legacies/Integration Thin-Client: Online-Betrieb! viele verschiedene Plattformen, Sprachen, DBs, Middlewares, ... Security Fachlich großer Marktdruck Mehrere Mandanten und Gesellschaften Mehrere Sprachen Mehrere Währungen juristische Anforderungen komplexe, dynamische Geschäftsprozesse 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
Beispiele: GoLife! Architektur Portal CRM Angebots- erstellung Risiko- Prüfung Bestands- führung DMS In/Exkasso Parnter-Komponente? Weitere? Partner sind zum Beispiel Beitragzahler Versicherungsnehmer Begünstigter Rückversicherer Vermittler Interessent Brief- schreibung Anlage- verwaltung Call-Center 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
Beispiele: GoLife! Architektur Portal CRM Angebots- erstellung Risiko- Prüfung Bestands- führung DMS In/Exkasso Kunde Sach- bearbeiter Ko-Browsing: Verbindung von CRM zum Portal, benutzbar drch Sachbearbeiter, aber nicht direkt von Sachbearbeiter zu Portal. Habe ich irgendein Umsystem vergessen? Brief- schreibung Anlage- verwaltung Call-Center 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
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 Ad Gestzgeber: Vorschriften, was die Archivierung angeht, insbesondere Aufbewahrungsdauer - das ist strikt geregelt. Es gibt auch ein Versicherungsanlagegesetz (VAG). 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
Zum nächsten Beispiel! ã Dr. Harald Störrle 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
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
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
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
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
Beispiele: Siemens SL45i Anforderungskonflikte Eingebaute JVM Funktionalität dynamisch ladbar, für jeden Benutzer individuell 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
Auswertung der Beispiele ã Dr. Harald Störrle 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
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
Beispiele: Vergleich 1 Nachbarsysteme GoLife SL45i A7-E in GUI Empfänger div. Sensoren Scanner Tastatur Radar Call-Center Mikrophon Schalter out GUI LCD div. Aktoren Briefdruckstraße Sender Head-Up-Display Lautsprecher Vibrationsalarm mem verschiedene DBs „Multimedia Card“ 64k intern peer Anlageverwaltung Funknetz & Dienste - 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
Beispiele: Vergleich 2 Anforderungsprofile GoLife! SL45 A-7E Functionality ++ + + Usability + ++ - Reliability - + ++ Performance +- +- ++ Security + - ++ Efficiency + +- + Maintainability + - ++ Reusability + ++ -- Time-to-market + ++ -- Portability + - -- Availability + - ++ System Development + ++ ++ FURPS ISO 9126 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
Beispiele: Vergleich 2 Anforderungsprofile Go!Life SL45 A7E Functionality ++ + + Efficiency + +- + Usability + ++ - Performance +- +- ++ Reusability + ++ -- Time-to-market + ++ -- Reliability - + ++ System Development -- ++ ++ Portability + - -- Security + - ++ Maintainability + - ++ Availability + - ++ 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
Beispiele: Vergleich 3 Stakeholder Rolle GoLife SL45i A7-E Nutzer Kunde Telefonierer Pilot Sachbearbeiter Klient Versicherung Telefonierer US Navy Anbieter FJA Siemens Naval SW Dev. ... Entwickler Entwickler Entwickler Entwickler Architekt Architekt Architekt Architekt Dritte Datenschützer Mobilfunk- Ziel/Gegner Betriebsrat hysteriker Gesetzgeber 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
Beispiele: Verleich 3 Stakeholder/Stakes Kunde Anbieter Nutzer Entwickler Functionality ++ -- ++ ++ Efficiency ++ + -- ++ Usability - - ++ + Performance ++ - ++ + Reusability -- ++ -- ++ Time-to-market ++ - -- + Reliability + - ++ + System Development ++ -- -- ++ Portability - ++ -- ++ Security ++ + -- ++ Maintainability - - -- ++ Availability ++ -- - - 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
Beispiele: Verleich 3 Stakeholder/Stakes Kunde Anbieter Nutzer Entwickler Functionality ++ -- ++ ++ Efficiency ++ + -- ++ Usability - - ++ - Performance ++ - ++ + Reusability -- ++ -- ++ Time-to-market ++ - -- + Reliability + - ++ + System Development ++ -- -- ++ Portability ++ -- -- ++ Security ++ + -- ++ Maintainability - - -- ++ Availability ++ -- - - 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
Beispiele: Vergleich 3 Stakeholder/Stakes beauftragt-> <- liefert Anbieter (Manager) Klient Architekt moderiert & vermittelt beauftragt-> <- berichtet kontrolliert-> Nutzer Entwickler <- befragt informiert-> 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
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! Der SWA ist auch potentiell Ansprechpartner für Dritte, ggf. ihnen gegenüber verantwortlich. Sehr reizvolle, verantwortungsvolle Aufgabe 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
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
Gliederung: Grundbegriffe System, Stakeholder, Anforderungen Arten von Architekturen Stil, Domänenarchitektur, Produktfamilie, Architektur Elemente Komponente Port Konnektor Rolle/Protokoll Konfiguration 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
Architektur ... Stil: Nutzen von Einschränkungen keine Ein- schränk- ungen viele Domänen-/ Branchen- SWA Stil {Form, Elements, Rationale} z.B. FAA, VAA, IAA Produkt- familie System z.B. SL45, SL45i, SE45, M45i, S35, C35 wenige... viele Exemplare 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
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
Architektur ... Stil: Nutzen von Einschränkungen Gesamtkosten Systemarchitektur Produktfamilie mit Stil keine Architektur Over- head Lebensdauer, bzw. Anzahl Produktzyklen 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
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 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
Gliederung: Grundbegriffe System, Stakeholder, Anforderungen Arten von Architekturen Stil, Domänenarchitektur, Produktfamilie, Architektur Elemente Komponente Port Konnektor Rolle/Protokoll Konfiguration 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
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
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
Gliederung für heute Grundfragen Grundbegriffe Semestervorschau 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
Semestervorschau Überblick 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 Grundlagen 3 ADLs 7 Prozesse 2 Skip 8 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
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
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
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
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
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
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
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
Semestervorschau Überblick 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 Grundlagen 3 ADLs 7 Prozesse 2 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
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
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
Literatur (zur Vorbereitung) Technische Komponentenmodelle EJB 2.0 Corba Component Model Bücher von Oliver Sims (alle bei Wiley/OMG Press) Business Objects (1994) Building Business Objects (1998, Sims & P. Eeles) Business Component Factories (2000, Sims & P. Herzum) Google o.ä.: „Business Objects“ 16.10.2001 Einführung VL Software Architektur-Modelle ã Dr. Harald Störrle
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
Schlußbemerkungen Fragen & Anregungen: Weitere Informationen: stoerrle@informatik.uni-muenchen.de 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