Dokumentation von Software Architekturen unter Berücksichtigung von IEEE 1471 Vortrag an der FH Regensburg 12.01.2004 © Dr. Ulrich Margull, 2004 Dr. Ulrich.

Slides:



Advertisements
Ähnliche Präsentationen
Business Engineering Philipp Osl, Alexander Schmidt
Advertisements

Eine Frage der Sichtweise
1 Referenzmodelle für HISinOne Dr. Uwe Hübner, 02. Juli 2009.
Submodell Softwareentwicklung (SE)
Das V - Modell - Überblick
Vorgehensmodell - Wasserfallmodell
Die Softwarelebenszyklen
IT-Projektmanagement
WS 04/05 wiss. Übung: Systemanalyse und Softwaredesign
Objektorientierte Konzepte und Notation in UML
Seminar Software-Engineering für softwareintensive Systeme
Anwendungsfalldiagramm
Anwendungsfalldiagramm
Anwendungsfalldiagramm
Systemanalyse In der Systemanalyse wird aus den fachspezifischen Anforderungen das Systemmodell erstellt; im Systemmodell ist spezifiziert, was das System.
Architektur, Design oder Implementation? Ulrich Schulz, Sebastian Ordyniak.
Universität Stuttgart Institut für Kernenergetik und Energiesysteme I nstitut für K ernenergetik und E nergiesysteme Rational Unified Process (RUP) - Definitionen.
Prüfung von SW-Komponenten – Überblick
Universität Stuttgart Institut für Kernenergetik und Energiesysteme System- und Abnahmetests Inhalt Testen des Systems unter Mitwirkung des Auftraggebers.
RUP-Elemente (Schlüsselkonzepte)
Abhängigkeitsbeziehung
UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 1/22
DOM (Document Object Model)
Architekturen interoperabler Systeme für raumzeitliche Prozesse
Rational Unified Process (RUP) - Definitionen
Prozeßstruktur des ISO 9001/9004 Prozeßmodells
Modellierung komplexer Realität mit Objekten
Programmierung verteilter Systeme Lab Institut für Informatik Universität Augsburg Universitätsstraße 14, Augsburg Tel.: (+49) 821/ , Fax:
Objektorientierte Analyse und Design mit der Unified Modelling Language (UML) Sandra Meißl
1 Grundlagen und Anwendung der Extensible Markup Language (XML ) Peter Buxmann Institut für Wirtschaftsinformatik Johann Wolfgang Goethe-Universität Frankfurt.
UML Begleitdokumentation des Projekts
Vorlesung Gestaltung von soziotechnischen Informationssystemen - RequirementsEngineering und Contextual Design- Thomas Herrmann, Lehrstuhl Informations-
Software Architektur-Modelle
Institut für Theoretische Informatik TU Carolo-Wilhelmina zu Braunschweig Teamprojekt in Software Systems Engineering und Theoretischer Informatik Einsatz.
Entwicklung verteilter eingebetteter Systeme - Einführung
Vorgehensmodelle: Schwergewichtige Modelle
Prof. Dr. Gerhard Schmidt pres. by H.-J. Steffens Software Engineering SS 2009Folie 1 Objektmodellierung Objekte und Klassen Ein Objekt ist ein Exemplar.
Spezifikation von Anforderungen
12. Vorlesung: Aktivitätsdiagramme
Fünf-Fünf-Zwei der 3. Vorlesung/Übung Requirements Engineering WS 10/11 Marin Zec.
Michael Haverbeck System Engineer
Unified Modeling Language Repetition / Einführung zu UML
Prof. Dr. Johannes Heigert Christian Heck, Accenture
UML-Kurzüberblick Peter Brusten.
Paradigmenwechsel in der Unternehmensmodellierung Prof. Dr. Wolfgang Voigt Dipl.-Ing. Päd. Alexander Huwaldt UML Extrakt UML Seminar, Chemnitz
Vom Geschäftsprozess zum Quellcode
Projektmanagement Ziel und Umfang eines Softwareprojektes definieren
Oliver Spritzendorfer Thomas Fekete
Informatik und Programmieren 3
prof. dr. dieter steinmannfachhochschule trier © prof. dr. dieter steinmann Folie 1 Klausurschwerpunkte Hilfe.
1 Ausgangslage Vorgehensweise: Informell, pragmatisch, stark graphisch orientiert. Systemanalytischer Ausgangspunkt: Klassischer Systembegriff als Ansammlung.
Software Engineering Grundlagen
Unified Process Historisch-Kulturwissenschaftliche Informationsverarbeitung Übung: Planung von Softwareprojekten Dozent: Christoph Stollwerk WS 2014/2015.
Software Engineering Strukturierte Analyse
Technische Universität München Zentralübung Automotive Software Engineering – Übungsblatt 6.
Seite 1 © 2007 Dr. Schwaiger Roland VP SW-Technologien WS 2007/2008 VP Softwaretechnologien WS2007/2008 SAP GUI Pattern und Componentry Dr.
Text Encoding Initiative Universität zu Köln Daten- und Metadatenstandards Seminarleitung: Patrick Sahle Seminarleitung: Patrick Sahle Referentin: Anna.
OOSE nach Jacobson Sebastian Pohl/ST7 Betreuer: Prof. Dr. Kahlbrandt.
Seminar: Software-Architektur Einführender Vortrag
1 Objektorientierter Entwurf E-R-Modellierung: Ausschließlich strukturelle Aspekte Verhaltensaspekte noch unberücksichtigt:  Interaktionen zwischen Objekten.
Name des Vortragenden ‌ Klasse ‌‌‌ Ort / tt.mm.jjjj Anwendungsfalldiagramm.
Tutorium Software-Engineering SS14 Florian Manghofer.
SE 2010, Paderborn Produktlinien-Engineering im SOA-Kontext.
Objektorientierte Programmierung Was ist das eigentlich ?
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: Entwurf Dr. Wolfgang Wörndl
Systems Requirements & Achitectur ENG 2 & ENG 3 Training Kunde,
WebServices Vortrag zur Diplomarbeit WebServices Analyse und Einsatz von Thomas Graf FH Regensburg
Systemanalyse BA Heidenheim 2002.
Dokumentationsverfahren für Software Architekturen
Use Cases Nico Wacker.
 Präsentation transkript:

Dokumentation von Software Architekturen unter Berücksichtigung von IEEE 1471 Vortrag an der FH Regensburg © Dr. Ulrich Margull, 2004 Dr. Ulrich Margull

Übersicht Einführung IEEE 1471: Recommended Practice for Architectural Description of Software-Intensive Systems Beispiel: Architekturbeschreibungen bei Echtzeitsystemen (Automotive Bereich) Zusammenfassung Bibliographie

Was ist Software Architektur? Eine mögliche Definition ist: – Design im großen Maßstab, ohne Details – Das Big Picture eines Software-Systems – Viele weitere Definitionen unter Eine Architekturbeschreibung (AB) ist eine Sammlung von Produkten, die eine Architektur beschreiben Die grundlegende Organisation eines Systems aus seinen Teilen, deren Beziehungen untereinander sowie zur Umgebung und die Entwurfs- und Entwicklungsprinzipien (aus [1],[3]-[5])

Sichten (Views) Eine Architekturbeschreibung enthält verschiedene Sichten (Views) auf ein System Jede Sicht beschreibt einen Aspekt des Systems Jede Sicht entspricht einer bestimmten Sichtweise – Eine Sicht ist eine konkrete Beschreibung eines Aspektes von einem bestimmten System (Beispiel: Dekomposition von Microsoft Word) – Eine Sichtweise ist ein Blickwinkel, unter dem die Architektur eines beliebigen Systems betrachtet werden kann (z.B. in Form eines UML Klassendiagrams) Beispiel: Wolkenkratzer

Software Beispiel: 4+1 Sichten (nach Kruchten, [3]) Logische Sichtweise: Struktur, Behavior – Klassen, (logische) Komponenten, Packages, Module, usw. Prozesse – Prozesse, Threads, Synchronisierungen, usw. Entwicklung (Implementation bzw. Development View) – Entwicklungsprozess, Abbildung der logischen Elemente auf ausführbare Einheiten Verteilung (Deployment bzw. Physical View) – Verteilung der (ausführbare) Komponenten auf Rechnerknoten,usw. Anwendungsfälle (Use Cases)

Übersicht Einführung IEEE 1471: Recommended Practice for Architectural Description of Software-Intensive Systems – Empfohlene Praxis für Architekturbeschreibungen von Software-intensiven Systemen Beispiel: Architekturbeschreibungen bei Echtzeitsystemen (automotive Bereich) Zusammenfassung Bibliographie

IEEE 1471 Recommended Practice ist eine bestimmte Art von IEEE Standard 1471 gilt für Architekturbeschreibungen – Ist keine Standard-Architektur, kein Architektur- Prozess oder –Methode – Definiert einen kontextueller Rahmen Folie – Gibt Richtlinien vor, die von 1471-konformen ABs eingehalten werden müssen

Anforderungen IEEE 1471 Eine konforme muss Architekturbeschreibung alle Interessengruppen (Stakeholders) enthalten – Interessengruppen können sein: Sichtweisen befriedigen die Anliegen von Interessengruppen – Eine Sichtweise, die niemand interessiert, ist überflüssig und sollte weggelassen werden Kunde / Käufer Benutzer Operator Software Architekt Software Projekt Leiter Software Entwickler Designer Integrator Wartungspersonal... und viele andere

Sichten Verschiedene Sichten (Views) sind möglich – Eine Architekturbeschreibung besteht aus ein oder mehreren Sichten – Eine Sicht ist eine Darstellung des Gesamtsystems aus einem bestimmten Blickwinkel Sichten können modular aufgebaut sein Konsistenz alle Sichten – Eine AB muss alle Inkonsistenzen zwischen Sichten nachweisen

Was nützt IEEE 1471 ? GUT: formaler&kontextueller Rahmen für ABs – Übersicht – Interessengruppen & Anliegen – Verwendete Sichtweisen & deren Motivation – Die eigentlichen Sichten auf die Software – Eventuelle Inkonsistenzen zwischen den Sichten – Grundprinzipien der Architektur ABER: 1471 enthält keine Sichtweisen – Es müssen geeignete Sichtweisen ausgewählt & definiert werden

Übersicht Einführung IEEE 1471: Recommended Practice for Architectural Description of Software-Intensive Systems Beispiel: Architekturbeschreibungen bei Echtzeitsystemen (automotive Bereich) Zusammenfassung Bibliographie

Domäne Weiche Echtzeitanforderungen – Teilweise jedoch sicherheitsrelevant Strukturierte Programmierung in C / Assembler Formaler Prozess nach Wasserfall Modell – Mehrere V-Zyklen zur Validierung und Verifikation Produktlinien – Wiederverwendbare Module

Prinzipien IEEE 1471 konform Definition von Sichtweisen im Architecture Documentation Handbook – Dort werden Interessengruppen und ihre Anliegen beschrieben Verwendung von UML zur visuellen Beschreibung – Use Cases (eingeschränkt) – Class Diagrams, Module als Packages – State Charts, Sequence Diagrams – Component Diagrams,

Vorlage zur Architekturbeschreibung Einführung, Bibliographie, Abkürzungen Context: Umgebung des Systems Logische Sicht: Struktur, Verhalten – Dekomposition, Layered Structure, Schnittstellen – Globale Zustandsdiagramme Task & Interrupt View: – Aufteilung der Module auf Tasks und Interrupts – Scheduling, Synchronisierung, Initialisierung, etc. Deployment: Verteilung der Software auf Knoten Development: Entwicklungsprozesse Size & Performance

Zusammenfassung Eine Architekturbeschreibung besteht aus ein oder mehreren Sichten (Views) Jede Sicht entspricht einer bestimmten Sichtweise (Viewpoint) IEEE 1471 stellt Anforderungen an eine Architekturbeschreibung: – Definition der Sichtweisen – Beschreibung der Interessengruppen und deren Anliegen – Sichtweisen müssen dadurch motiviert sein Sichtweisen müssen selbst definiert werden Wichtige Sichten sind z.B. die 4+1 Sichten (Kruchten)

Bibliographie [1]IEEE Standard 1471, verabschiedet in 2000; siehe dazu Vortrag von Chairman Rich Hilliard, architecture.info/Images/Documents/, Datei IEEE Beyond.pdfwww.enterprise- architecture.info/Images/Documents/ [2]Architectural Blueprints – The 4+1 View Model of Software Architecture, Philippe Kruchten, IEEE Software 12 (6), 1995 [3]Software Architecture in Practice, Bass L, et.al, Addison- Wesley, 1998 [4]Documenting Software Architectures: Views and Beyond, Paul Clement et.al., Addison-Wesley, 1st edition, 2002 [5]Software Engineering, Ian Sommerville, Addison-Wesley, 6th edition, 2000; deutsch bei Pearson Studium, 2001;