520 likes | 732 Views
Vorlesung Software Architektur-Modelle Modelle 1. Dr. Harald Störrle Ludwig-Maximilians-Universität München Wintersemester 2001. Ziele für heute (& nächstes Mal). Analyse-Phase für große Systeme Vision, Kontext, Geschäftsprozesse Funktionale und nicht-funktionale Anforderungen
E N D
Vorlesung Software Architektur-Modelle Modelle 1 Dr. Harald Störrle Ludwig-Maximilians-Universität München Wintersemester 2001 VL Software Architektur-Modelle ã Dr. Harald Störrle
Ziele für heute (& nächstes Mal) • Analyse-Phase für große Systeme • Vision, Kontext, Geschäftsprozesse • Funktionale und nicht-funktionale Anforderungen • Domänenmodelle • große Modelle • Organisation • Konsistenzen • Qualitätskriterien für Diagramme • Vertiefung Notationen • Details, Lücken, und Probleme • Erweiterungen VL Software Architektur-Modelle ã Dr. Harald Störrle
Organisatorisches • Waren Sie letztes Mal unterfordert?! Soll nicht wieder vorkommen. => Feedback ist wichtig! • Handouts? • WWW-Angebot www.pst.informatik.uni-muenchen.de/lehre/WS0102/architektur • Interesse an Exkursion? • Interesse an J2EE-Gastvortrag? • Aufgaben vom letzen Mal VL Software Architektur-Modelle ã Dr. Harald Störrle
Aufgabe vom letzten Mal:Domänenmodell einer Bibliothek • Was für Notationen haben Sie verwendet? • Klassen-, Paket-, Interaktions-, Zustandsdiagramme? • Welche Elemente gibt es in Ihrem Modell? • Wie sind Sie vorgegangen? Erkenntnisse? • Wie umfangreich ist Ihr Modell? Ist es konsistent? • Wie detailliert ist ihr Modell? • Können Sie zu implementieren anfangen? • ...können Sie eine Aufwandsschätzung abgeben? VL Software Architektur-Modelle ã Dr. Harald Störrle
Aufgabe vom letzten MalBeabsichtigte Lerneffekte • Function Points, Object Points • Standardprobleme beim Modellieren • Unklare Vorgaben eröffnen Interpretationsspielraum. • Nicht-Aufhören-können führt zu uneinheitlichem Detaillierungsgrad. • Es gibt meist keine einheitlichen Sprachregelungen. • Wann ist ein Diagramm „gut“? Was heißt das? • Wann/Wofür setze ich welche Notation ein? • Wie gehe ich von einem Diagramm zu einem anderen über? • Diese Fragen beantworten (hoffentlich) Methodiken. VL Software Architektur-Modelle ã Dr. Harald Störrle
Vergleiche Inhalt & Ziel vom letzten Mal • Letztes Mal • „nackte“ Notation, keine Methodik • kaum Semantik • Heute (und nächstes Mal) • Architektur-zentrierte Methodik • (informelle) Vertiefung der Semantik • (informelle) Konsistenzbedingungen für Modelle • ...am Bibliotheksbeispiel VL Software Architektur-Modelle ã Dr. Harald Störrle
MethodikDefinition • Was ist eine Methodik? • Ein Ensemble von Methoden (also Notationen und Techniken). • Methodology vs. Method: Methodologie ist die Lehre von den Methoden, nicht eine spezielle Methodik (aber: fließender Übergang). • Was leistet eine Methodik idealerweise? Konkrete Handlungsanleitung beim Modellieren, aber nicht auf der Kochbuch-Ebene. => „Wie schlage ich einen Pfad durch den Dschungel“ VL Software Architektur-Modelle ã Dr. Harald Störrle
MethodikTerminologie Diagramm Eine Instanz eines Diagramm (oder Formular-)typs. Dokument Ein Schema, das eine Reihe von Diagrammen, Formularen und Freitexten enthält. Modell Zusammengehörige Menge von Dokumenten (auch ein-elementige Mengen). Sicht Ausschnitt eines Modells. VL Software Architektur-Modelle ã Dr. Harald Störrle
MethodikTerminologie: Dokument „Nutzfall“ Übersicht Kontext Nutzfall Interaktionen Details Abläufe VL Software Architektur-Modelle ã Dr. Harald Störrle
MethodikTerminologie Diagramm Eine Instanz eines Diagramm (oder Formular-)typs. Dokument Ein Schema, das eine Reihe von Diagrammen, Formularen und Freitexten enthält. Modell Zusammengehörige Menge von Dokumenten (auch ein-elementige Mengen). Sicht Ausschnitt eines Modells. VL Software Architektur-Modelle ã Dr. Harald Störrle
MethodikTerminologie: Modell „Fachkonzept“ Fachkonzept (auch: Analysemodell) VL Software Architektur-Modelle ã Dr. Harald Störrle
MethodikTerminologie: Sichten des Modells Konzept Systemkontext Domänenmodell Fachkonzept (auch: Analysemodell) Anforderungen Geschäftsprozesse Facharchitektur VL Software Architektur-Modelle ã Dr. Harald Störrle
Konzept Systemkontext Domänenmodell Fachkonzept (auch: Analysemodell) Anforderungen Geschäftsprozesse Facharchitektur MethodikTerminologie: Vorgehen für das Modell VL Software Architektur-Modelle ã Dr. Harald Störrle
MethodikTerminologie: System • System • Das ganze zu entwickelnde Ding. • Steht in einem Kontext. • Subsystem • Ein statischer Teil davon. • Selber wieder ein System, also insbesondere wieder bestehend aus Subsystemen. VL Software Architektur-Modelle ã Dr. Harald Störrle
Konzept Systemkontext Domänenmodell Fachkonzept (auch: Analysemodell) Anforderungen Geschäftsprozesse Facharchitektur MethodikTerminologie: Ebene Ebene 0: Gesamtsystem und Kontext Ebene 1: Fachliche Subsysteme Ebene 2: Architektonische Subsysteme Ebene 3: Technische Subsysteme Ebene 4: Systemkomponenten VL Software Architektur-Modelle ã Dr. Harald Störrle
BibliotheksbeispielSzenario • Die bisherige Kultur-Stadträtin Juliane Nie-Dawird vom Parteivorsitzenden auf einen wichtigen Bundesposten berufen. Der neue Kultur-Stadtrat steht vor einem Scherbenhaufen. Eines der ärgsten Problemfelder ist die Stadtbibliothek. • Lustlos verrichten dort Kohorten ergrauter Bibliothekarinnen und Bibliothekare ihren Dienst. Die Leser sind hochgradig unzufrieden mit den Öffnungszeiten und den angebotenen Dienstleistungen. Gleichzeitig sind die Kosten des städtischen Bibliothekswesens enorm. Der Spitzenkandidat der Opposition, Heribert Rotkäppchen, fordert bereits, das Bibliotheksbudget in den sozialen Wohnungsbau oder die Terrorismusbekämpfung umzuleiten. • Der Bürgermeister Udo Christian, auf seine Wiederwahl erpicht, erwägt, dieser Forderungen der Opposition nachzukommen, wenn die Bibliotheken nicht schlagartig zum Aktivposten der bürgermeisterlichen Bilanz werden. Das ist die Stunde des neuen Stadtrates für Kultur! VL Software Architektur-Modelle ã Dr. Harald Störrle
BibliotheksbeispielSzenario • Und was geht das uns an? • Die Problemlösung liegt in der technischen Unterstützung der Geschäftsprozesse, das erfordert aber ein Bibliotheks-Informationssystem. • Aber Vorsicht: Schlechte Geschäftsprozesse werden durch Automatisierung nich besser, nur schneller! • Vollautomatisierung wäre tödlich! • Kundenbeziehung • Diebstähle • Mitarbeiterzufriedenheit VL Software Architektur-Modelle ã Dr. Harald Störrle
BibliotheksbeispielSzenario • Was ist also zu tun? • Akquisephase • Bestandsaufnahme • Wie ist der Ist-Zustand? • Konzept • Wie kann die Vision realisiert werden? • Angebot • Was ist zu tun? • Grober Zeitplan • Budget-Vorschlag • „die eigentliche Arbeit“ VL Software Architektur-Modelle ã Dr. Harald Störrle fließender Übergang
Elemente eines FachkonzeptsKonzept Konzept Systemkontext Domänenmodell Fachkonzept (auch: Analysemodell) Anforderungen Geschäftsprozesse Facharchitektur VL Software Architektur-Modelle ã Dr. Harald Störrle
Was gehört zu einem Konzept? Vision Budgetplan Bestandsaufnahme Konzept Architekturstudie (technische & sw. Architektur) Realisierungsfahrplan (Zeit, Meilensteine) Machbarkeitsstudie VL Software Architektur-Modelle ã Dr. Harald Störrle
BibliotheksbeispielFachkonzept: Vision • Konzept, Machbarkeitsstudie Was soll getan werden, ist es durchführbar, wer kann es umsetzen? • Kosten/Nutzen-Abwägung Was kostet welcher Leistungsumfang, wo ist das Kosten/Nutzen-Maximum? • Zeitplan In welchem Zeithorizont soll die Realisierung erfolgen (Basis-Releaseplan) ? • flankierende Maßnahmen Was ist an Schulungen, Werbung usw. zu planen, wer organisiert das, ...? Also, mehr oder weniger, ein Business-Plan. VL Software Architektur-Modelle ã Dr. Harald Störrle
BibliotheksbeispielFachkonzept: Vision • Effizienzsteigerung Die Effizienz muß erhöht werde, um so Personal einsparen zu können und somit die Kosten zu reduzieren. • Kundenzufriedenheit Gleichzeitig muß die Kundenzufriedenheit drastisch erhöht werden. Mittel dazu könnten sein: • erweiterte Öffnungszeiten • benutzerfreundlichere Systeme, menschliche Ansprache und Hilfe • Mehrwertdienste (Internet-Zugang, Diskussionsforen) • Online-Zugriff (Katalog, Benutzerkonto, Newsletter) • Synergie Die Stadtbibliothek als Verbund muß ihre Synergiepotentiale ausnutzen, um durch bessere Vernetzung das dichte Filialnetz auszudünnen, ohne schlechteren Service zu bieten. VL Software Architektur-Modelle ã Dr. Harald Störrle
BibliotheksbeispielFachkonzept: Bestandsaufnahme Ein Besuch in der Stadtbibliothek zeigt schnell die entscheidenden Ansatzpunkte. 1) Das Ausleihsystem bereitet offensichtlich die größten Probleme: es hat nie richtig funktioniert, und ist extrem schlecht zu bedienen, weswegen überforderte Sachbearbeiter teilweise unter der Hand auf Zettelkastenlösungen ausgewichen sind, mit den zu erwartenden Folgen: überzogene Bücher können nicht gemahnt werden und verschwinden aus dem Bestand. 2) Das Katalogsystem ist zur Zeit auf Zettelkastenbasis, zur großen Unzufriedenheit der Leser. 3) Es gibt 3 fachliche Systeme, die nicht integriert sind: für den Leihverkehr, die Bestandspflege, und die Leserverwaltung VL Software Architektur-Modelle ã Dr. Harald Störrle
BibliotheksbeispielFachkonzept: Bestandsaufnahme • Es wird also 4 Subsysteme geben: • Katalog • Leihverkehr • Bestandsführung • Leserverwaltung • Diese Subsysteme sollen teils eng, teils lose integriert werden. • Sie sollen teils neu erstellt, teils zugekauft, und teils wiederverwendet werden, mit gewissen Anpassungen. Ziel ist es, möglichst billig zufriedenstellende Qualität zu liefern. • Das wichtigste aber ist, daß die Lösung schnell verfügbar wird. VL Software Architektur-Modelle ã Dr. Harald Störrle
BibliotheksbeispielFachkonzept: Bestandsaufnahme Katalogsystem • bislang: Zettelkasten • künftig: PC-Anwendung • Realisierung: Zukaufen - es gibt entsprechende Systeme am Markt. Die Anwendung soll lokal auf PCs laufen, und auf den lokalen Katalog zugreifen, aber auch den Zugriff auf den Verbundkatalog zulassen. Die PCs sollen Netzanschluß haben, um den Lesern zusätzliche Dienste (z.B. Foren, Buchkauf, Email) anbieten zu können, und Gebühreneinnahen zu generieren. Es wird vorgeschlagen dies in Kooperation mit einem Free-Mail-Provider zu realisieren. VL Software Architektur-Modelle ã Dr. Harald Störrle
BibliotheksbeispielFachkonzept: Bestandsaufnahme Bestandsdatensystem • bislang: Host-Lösung mit zentralen 3270-Terminals • künftig: 3-tier Client/Server-Lösung • Realisierung: neues Front-End auf Basis von Web-Technologie Bislang mußten alle neuen Bücher zentral erfaßt werden. Dadurch war der Beschaffungsprozeß langwierig und teuer. Künftig soll jede Filiale eigene Beschaffungen durchführen können, um auf die Wünsche der Kunden unmittelbar eingehen zu können, bzw. um inhaltliche Schwerpunkte bilden zu können. Dies ist nicht zuletzt ein Mittel der Mitarbeitermotivation. Das Kernsystem soll aus Kosten- und Zeitgründen allerdings erhalten bleiben. Da 3270-Terminals große konzeptuelle Ähnlichkeiten zu Web-Clients aufweisen, ist der Aufwand dieser Lösung gering. VL Software Architektur-Modelle ã Dr. Harald Störrle
BibliotheksbeispielFachkonzept: Bestandsaufnahme Ausleihsystem • bislang: Stand-alone Desktop-Lösung • künftig: vernetzte Desktop-Lösung • Realisierung: komplett neu herstellen Beim Ausleihsystem ist nichts mehr zu retten, es muß umweltschonend entsorgt werden. VL Software Architektur-Modelle ã Dr. Harald Störrle
BibliotheksbeispielFachkonzept: Bestandsaufnahme Leserverwaltung • bislang: dezentrale PC-Anwendung • künftig: dito, aber vernetzt & integriert mit den anderen Systemen • Realisierung: Überarbeitung/Wiederverwendung, Migration Die Leserverwaltung funktioniert einigermaßen zufriedenstellend, und soll weiterverwendet werden. Allerdings ist sie eng verknüpft mit dem Ausleihsystem, daher müssen die Schnittstellen angepaßt werden. Außerdem sollen einige zusätzliche Funktionalitäten eingefügt werden. Aus technischen Gründen wird es auch notwendig, eine neue Datenbank zu verwenden - die alte wird vom Hersteller nicht mehr unterstützt. Daher müssen die wertvollen Daten migriert werden. VL Software Architektur-Modelle ã Dr. Harald Störrle
Katalog (Zettelkasten) Bestellung BibliotheksbeispielFachkonzept: technische Arch. (Ist) Filiale Leihverkehr, Leserverwaltung (Sachbearbeiter-PC) Bestandsführungs-GUI (3270) . . . Zentrale Bestandsverwaltung (IBM S/390) Bestandsführungs-GUI (3270) VL Software Architektur-Modelle ã Dr. Harald Störrle
Leihverkehr Leserverwaltung BibliotheksbeispielFachkonzept: Sw. Architektur (Ist) Sachbearbeiter-PC Filiale 3270 IBM S/390 Bestands- führung Bestandsführungs-GUI . . . Zentrale DB/2 3270 Bestandsführungs-GUI VL Software Architektur-Modelle ã Dr. Harald Störrle
BibliotheksbeispielFachkonzept: technische Arch. (Soll) Andere Filialen Filiale VPN (TCP/IP) Katalog (Leser-PC= alte Sb.-PCs) Leihverkehr, Leserverwaltung (Sachbearbeiter-PC) VPN (TCP/IP) Internet • Sicherheit: • Trennung der Netze • VPNs • Katalog muß zyklisch • aktualisiert werden • Perforance: • alte Sachbearbeiter-PCs • für Leser • neue Sachbearbeiter-PCs • beschaffen Zentrale Bestandsverwaltung (IBM S/390) VL Software Architektur-Modelle ã Dr. Harald Störrle
Leihverkehr Leserverwaltung Bestands- führungs GUI BibliotheksbeispielFachkonzept: Sw. Architektur (Soll) Sachbearbeiter-PC Filiale GUI GUI Logik Logik DB/2 DB/2 IBM S/390 Andere Filialen Bestands- führung Zentrale DB/2 VL Software Architektur-Modelle ã Dr. Harald Störrle
Bibliotheksbeispiel...was kommt da alles auf uns zu? • Beschaffung • Evaluierung von Kandidaten • Wiederverwendung • Reengineering • Architecture Recovery • Redocumentation • Migration • Weiterentwicklung • Wartung • Neuentwicklung Verhandlung Organisation Koordination Administration VL Software Architektur-Modelle ã Dr. Harald Störrle
BibliotheksbeispielGütekriterien für ein Konzept • Mehr oder eniger informelles Dokument, also nur teilweise formale Qualitätskriterien. • Oft gibt es Firmen-spezifische Richtlinien. • Solche Konzepte werden in der Regel federführend von Vorständen (bzw. deren Stäben) erstellt, Architekten sind „nur“ Zulieferer. • Siehe einschlägig Literatur zur Erstellung von Businessplänen (z.B. den Münchener Business-Plan Wettbewerb, www.MBPW.de). VL Software Architektur-Modelle ã Dr. Harald Störrle
Elemente eines FachkonzeptsSystemkontext Konzept Systemkontext Domänenmodell Fachkonzept (auch: Analysemodell) Anforderungen Geschäftsprozesse Facharchitektur VL Software Architektur-Modelle ã Dr. Harald Störrle
Bibliothekar Ausleiher BibliotheksbeispielFachkonzept: Kontext Bücherei Bestandsverwaltung • Was ist schlecht? • Überschneidungen • Akteure • Anordnung • vollständig? • Namen • „Leser“ statt „Ausleiher“ • Bücherei • Bücherei vs. Bibliothek Katalogsystem Leihverkehr Leseverwaltung VL Software Architektur-Modelle ã Dr. Harald Störrle
Bibliothekar Leser BibliotheksbeispielFachkonzept: Kontext Bibliothek Unterstützungssysteme Bestandsverwaltung Katalogsystem Leihverkehr Leseverwaltung Was ist mit Systemen wie Drucker und Scanner? VL Software Architektur-Modelle ã Dr. Harald Störrle
Notation„Kontextdiagramme“ • Ursprung • UML-Bezug • Elemente • Verbreitung • Zweck • Vorteil • Nachteil • Verwendung • Medien • Tools Strukturierte Methoden (SADT) Vereinfachung von Nutzfalldiagrammen Aktor, Einheit, (verallgemeinerte) Assoziation, Generalisierung informell: groß; formell: gering Definition des Systemkontextes (Aktoren, Nachbarsysteme) sehr intuitiv, sehr einfach zu verstehen sehr beschränkte Aussagekraft, erscheint Vielen als trivial Grobentwurf Folien, Tafel, Skizzenblöcke Malwerkzeuge VL Software Architektur-Modelle ã Dr. Harald Störrle
Gütekriterien„Kontextdiagramme“ • Richtige Namen, konsistente & korrekte Terminologie • Akteure thematisch angeordnet, z.B. Kunden links, Mitarbeiter rechts, Umsysteme unten (oder eingereiht) • Alle Systeme beschriftet • Generalisierung von links oben nach rechts unten • einfach, übersichtlich, schön • weitere? VL Software Architektur-Modelle ã Dr. Harald Störrle
Exkurs: GlossarAufbau • Ist von Anfang an zu führen, zu pflegen und zu verwenden! • In Excel, Word o.ä. -> Sortierung der Einträge • Sollte zentral gepflegt werden • z.B. über einheitlich Email: glossar@Firma.com • 4-Augen-Prinzip (QS) • verfügbar im Intranet (-> Knowledge Management) Begriff Synonyme Erklärung(en) Verantw. Status Leser - Störrle ok Natürliche Person, die mit Namen, Geburtsdatum und Adresse im Leser- verwaltungssystem erfaßt ist. VL Software Architektur-Modelle ã Dr. Harald Störrle
Exkurs: GlossarZweck • Standardisiert die Sprache • -> technische Prosa darf nicht nur „langweilig“ sein, sie muß es! • Erhöht Konsistenz • Hilft Mißverständnisse vermeiden • und bitte: kein Denglisch! • Man darf in dieser Hinsicht ruhig etwas „verklemmt“ sein (engl.: anal retentive) ... VL Software Architektur-Modelle ã Dr. Harald Störrle
Exkurs: Glossar...über die Macht des Wortes VL Software Architektur-Modelle ã Dr. Harald Störrle
Elemente eines FachkonzeptesGeschäftsprozesse Konzept Systemkontext Domänenmodell Fachkonzept (auch: Analysemodell) Anforderungen Geschäftsprozesse Facharchitektur VL Software Architektur-Modelle ã Dr. Harald Störrle
Was gehört zu einem Geschäftsprozeß? GePro-Diagramm (Übersicht) Kontext-Diagramm Geschäftsprozeß Zustands-/ Aktivitäts- Diagramme GePro-Diagramme (Details) GePro-Tabelle VL Software Architektur-Modelle ã Dr. Harald Störrle
BibliotheksbeispielFachkonzept: GP-Übersicht E0 • Fehler: • Layout • Fehler? • Auslassungen? • versch. Sprachregelungen • versch. Abstraktionsebenen • Systemgrenze • Begrifflichkeit (Ausleiher) VL Software Architektur-Modelle ã Dr. Harald Störrle
BibliotheksbeispielFachkonzept: GP-Übersicht E0 • Besser: • Vollständig: Kassation • übersichtlicher • Kamm-Notation • Knickpunkte • Spracheregelung • Abstraktionsebene • Fehler: • Reihenfolge • Systemgrenze • Glossar? VL Software Architektur-Modelle ã Dr. Harald Störrle
BibliotheksbeispielFachkonzept: GP-Übersicht E0 • Besser: • Reihenfolge nach Fachlichkeit • Fehler: • Systemgrenze • Subsysteme VL Software Architektur-Modelle ã Dr. Harald Störrle
BibliotheksbeispielFachkonzept: GP-Übersicht E0 • Besser: • Gruppierung nach Fachlichkeit • Fehler: • Systemgrenze • Subsysteme VL Software Architektur-Modelle ã Dr. Harald Störrle
BibliotheksbeispielStruktur E0-2 , GP-Übersicht E0-E2 • Besser: • Systemgrenze • Subsysteme • Fehler: • wieder unübersichtlich geworden VL Software Architektur-Modelle ã Dr. Harald Störrle
BibliotheksbeispielStruktur E0-2, GP-Übersicht E0-E2 • Besser: • übersichtlich • inverse GePros • horizontal zugeordnet • Jetzt erst kann man inhaltlich • anfangen: • Was ist mit Verlängerung? • Sollte Mahnung nicht bei • Leserverwaltung sein? VL Software Architektur-Modelle ã Dr. Harald Störrle