Modellbasierte Software-Entwicklung eingebetteter Systeme

Slides:



Advertisements
Ähnliche Präsentationen
1 Referenzmodelle für HISinOne Dr. Uwe Hübner, 02. Juli 2009.
Advertisements

Dokumentation von Software Architekturen unter Berücksichtigung von IEEE 1471 Vortrag an der FH Regensburg © Dr. Ulrich Margull, 2004 Dr. Ulrich.
Kick-off: Projekt-Praktikum Model-Driven Engineering von eingebetteten Systemen Christian Fuß und Christof Mosler Lehrstuhl Informatik III,
Modellbasierte Software-Entwicklung eingebetteter Systeme
Eingebettete Systeme Qualität und Produktivität
Software-Engineering II Eingebettete Systeme, Softwarequalität, Projektmanagement Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt.
Eingebettete Systeme Qualität und Produktivität
IT-Projektmanagement
Objektorientierte Konzepte und Notation in UML
Manfred Thaller, Universität zu Köln Köln 28. Januar 2008
Manfred Thaller, Universität zu Köln Köln 7. Januar 2010
Anwendungsfalldiagramm
Anwendungsfalldiagramm
Anwendungsfalldiagramm
Systemanalyse In der Systemanalyse wird aus den fachspezifischen Anforderungen das Systemmodell erstellt; im Systemmodell ist spezifiziert, was das System.
Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.
Modellbasierte Software- Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.
Spezifikation, Verifikation, Testtheorie Prof. Dr. Holger Schlingloff Institut für Informatik und Fraunhofer FIRST.
On a Buzzword: Hierachical Structure David Parnas.
Universität Stuttgart Institut für Kernenergetik und Energiesysteme I nstitut für K ernenergetik und E nergiesysteme Rational Unified Process (RUP) - Definitionen.
Abhängigkeitsbeziehung
UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 1/22
Rational Unified Process (RUP) - Definitionen
Modellierung komplexer Realität mit Objekten
Explizite und editierbare Metainformationen für Software Muster.
Objektorientierte Analyse und Design mit der Unified Modelling Language (UML) Sandra Meißl
OO Analyse und Entwurf für Anwender
UML Begleitdokumentation des Projekts
Vorlesung Gestaltung von soziotechnischen Informationssystemen - RequirementsEngineering und Contextual Design- Thomas Herrmann, Lehrstuhl Informations-
INSTITUT FÜR DATENTECHNIK UND KOMMUNIKATIONS- NETZE 1 Harald Schrom ViEWcon08.
Referat „COMET-Basis“
12. Vorlesung: Aktivitätsdiagramme
Fünf-Fünf-Zwei der 3. Vorlesung/Übung Requirements Engineering WS 10/11 Marin Zec.
Zusammenfassung der Vorlesung
Letzter Tag Spaeter Zeitpunkt letzte Lied hoert man weiter.
Unified Modeling Language Repetition / Einführung zu UML
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Objektorientierte Konzepte/UML Geoinformation I Vorlesung 2 WS 2000/2001.
Agenda 13: Begrüßung & Einführung in das Thema
UML-Kurzüberblick Peter Brusten.
Unified Modeling Language
Vom Geschäftsprozess zum Quellcode
Modellbasierte Software-Entwicklung eingebetteter Systeme
Informatik und Programmieren 3
Vienna University of Technology Pirker Simon 1. Überblick Definition Motivation Vorteile Entwurf von VP Pirker Simon 2.
1 Ausgangslage Vorgehensweise: Informell, pragmatisch, stark graphisch orientiert. Systemanalytischer Ausgangspunkt: Klassischer Systembegriff als Ansammlung.
Technische Universität München 1 CADUI' June FUNDP Namur G B I The FUSE-System: an Integrated User Interface Design Environment Frank Lonczewski.
Modellbasierte Software-Entwicklung eingebetteter Systeme
Modellbasierte Software-Entwicklung eingebetteter Systeme
Klassen und Klassenstruktur
VO D6/G6: Einführung in die Politikfeldanalyse
Qualitätssicherung von Software Prof. Dr. Holger Schlingloff Humboldt-Universität zu Berlin und Fraunhofer FIRST.
Modellbasierte Software- Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.
Modellbasierte Software- Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.
Modellbasierte Software- Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.
Modellbasierte Software-Entwicklung eingebetteter Systeme
Modellbasierte Software- Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.
OOSE nach Jacobson Sebastian Pohl/ST7 Betreuer: Prof. Dr. Kahlbrandt.
Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.
Einführung in die Informatik 1. Computational Thinking Institut für Informatik und angewandte Mathematik.
Rules of Play - Game Design Fundamentals by Katie Salen and Eric Zimmerman Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung.
1 Objektorientierter Entwurf E-R-Modellierung: Ausschließlich strukturelle Aspekte Verhaltensaspekte noch unberücksichtigt:  Interaktionen zwischen Objekten.
Software Verification 2 Automated Verification Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität and Fraunhofer Institut für.
© Till Hänisch, 2002 BA Heidenheim Objekte und UML "You can model 80 percent of most problems by using about 20 percent of the UML." -- Grady Booch But.
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,
UML und Modellierung mit ArgoUML
Modellbasierte Software-Entwicklung eingebetteter Systeme
Aspect-Oriented Programming: Fad or the Future
Eine Präsentation von Heiko Gericke
 Präsentation transkript:

Modellbasierte Software-Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer Institut für offene Kommunikationssysteme FOKUS

Wer wird Modelionär? Was sind keine Anforderungsartefakte: Ziele – Szenarien – Strategien – Algorithmen? Was sind keine Qualitätskriterien für Zielformulierungen: Prägnant und aktiv – Überprüfbar und verfeinerbar – Wertschöpfend und begründbar – Deklarativ und objektorientiert Welche Mittel sind nicht zur Strukturierung von Zielen geeignet: Schablonen – Und/Oder-Bäume – SysML-Diagramme – Poesiealben Wie viele SysML-Diagrammarten gibt es: 3 – 9 – 11 – 14 Was sind keine SysML-Diagramme: Requirements- und Zusicherungsdiagramme – Blockdefinitions- und interne Blockdiagramme – Klassen- und Objektdiagramme – Zustands- und Aktivitätsdiagramme Wodurch werden Szenarien nicht beschrieben: Sequenzdiagramme – Aktivitätsdiagramme – Schablonen – Romane

SysML Diagrammarten 14:44 http://upload.wikimedia.org/wikipedia/commons/7/71/SysML_Diagram_Taxonomy.svg

Die vier Säulen der SysML http://www.uml-sysml.org/documentation/sysml-tutorial-incose-2.2mo

Blockdefinitionsdiagramme (bdd) ersetzt UML Klassen- und Objektdiagramme Blöcke und Abhängigkeiten Blöcke können Eigenschaften haben: Teile, Werte, Verweise Abhängigkeiten sind Assoziationen (Aggregation und Komposition) und Generalisierungen/Spezialisierungen (C) für alle Bilder: Fabrice Kordon, Jerome Hugues, Agusti Canals, Alain Dohet: Embedded Systems - Analysis and Modeling with SysML, UML and AADL. ISBN: 978-1-84821-500-9 Wiley-ISTE, 320 pages(April 2013)

Interne Blockdiagramme (ibd) beschreiben die innere Struktur von Blöcken Teile (Parts) eines Blocks werden wieder als Blöcke notiert Ports sind Interaktionspunkte (Ein/Ausgänge) von Blöcken Standard Ports (leere Quadrätchen): Operationen und Signale, Typ Interface, Flow Ports (Quadrätchen mit Pfeilchen): Material- oder Informations-Flüsse, ggf. mit Typ (Liter, Gramm, Integer, ...) aggregierte Flow-Ports (Symbol <>): Fluss-Spezifikation in bdd gegeben Konnektoren symbolisieren Verbindungen zwischen Blöcken Interfaces eines Blocks werden mit Lollipop-Notation gezeichnet

Pacemaker ibd

Zusicherungsdiagramme (par) Parametric Diagrams Spezielle ibds zur Notation von Constraints Parameter Regeln (<<constraint>>) Integration von Ingenieur- Mathematik in Design-Modelle

Weitere SysML-Diagramme Anwendungsfall-Diagramme: Wer macht was? “Use cases” Stakeholder und Funktionen des Systems Abhängigkeiten zwischen Funktionen, z.B. include, extend Paketdiagramme: Struktur des Systems verschachtelte Namensräume

Verhaltensdiagramme Aktivitätsdiagramme Sequenzdiagramme UML-Variante von Petrinetzen Kontrollfluss (paralleler) Aktivitäten Sequenzdiagramme sequentielles Verhalten und Interaktionen der Akteure Schwimmbahnen Zustandsdiagramme endliche Automaten Parallelität und Hierarchie

Strategien (Lösungsorientierte Anforderungen) Def.: (Wikipedia) Eine Strategie ist ein längerfristig ausgerichtetes planvolles Anstreben einer vorteilhaften Lage oder eines Ziels. Formal mathematisch ist eine Strategie eine Folge von Funktionen von einer Zustandsmenge (zum Beispiel die Menge der denkbaren Spielsituationen eines Spielers) in eine Menge von Aktionen (die entsprechend dem Spieler vorschreibt, was er tun soll). Strategien operationalisieren Ziele und Szenarien Ziel: Warum soll etwas passieren? Szenario: Was soll passieren? Strategie: Wie soll es passieren?

Drei Perspektiven von Strategien Struktur Art und Zusammensetzung von Teilen, Daten, Attributen, Relationen typisch: Blockdiagramme, Objekt- und Klassendiagramme Funktion Transformation durch das System typisch: Material- und Datenflussdiagramme Verhalten Zustände und Zustandsänderungen des Systems; Reaktionen auf Stimuli typisch: Zustandsübergangsdiagramme

Integration von Modellsichten

From Requirements to Models Requirements are informal, models are semi-formal, code is formal I.e., software development can be seen as continuous formalization Usually: many design choices Not one best practice established State of the art: Object-Oriented Modeling

Recap: Development Process Models Waterfall Model Evolutionary/Incremental Model Extreme Programming V-Model Rational Unified Process (RUP) Implementation System test Integration test Unit test Analysis Architecture Techn. Design Acceptance test Test cases Implementation Design Test, Integration Maintenance Product definition specification Code validated Changes Analysis Analysis Design Validation Requirements Prototypes Implementation Activity Time Analysis Design Implementation Test Configuration management Project Inception Elaboration Construction Transition There are many different development process models …

A Modeling Framework Viewpoints abstract Abstraction Layers concrete 14:17 concrete

Requirements Viewpoint modeling goals documentation of the operational system environment (nonfunctional req.) documentation of the system goals and associated scenarios (functional req.) documentation of the necessary domain-specific properties (domain req.) Models context scenarios goal-oriented requirements goals System Level Ln system solution-oriented system requirements R1 RN environment model 14:19 systematic requirements elicitation continuous documentation / specification validation of requirements supported activities

Functional Viewpoint modeling goals integration of functional requirements into a comprehensive system specification precise modeling of the black box behaviour of a system modeling of dependencies between functional requirements Models Black Box View (from VP RE) System Functions functional hierarchy Projektion 14:21 validation of requirements generation of test cases and verification conditions functional prototypes supported activities

subsystem architecture Logical Viewpoint modeling goals logical description of the solution via decomposition into subsystems platform independence of the described solution reusability of logical subsystems models subsystem interface subsystem behaviour subsystem architecture 14:23 verification of system behaviour simulation supported activities

Technical Viewpoint supported activities Modeling goals Description of the target-hardware (ECUs, busses, memory, …) Definition of (software-)tasks and scheduling Description of deployment-specific communication Platform specific description of the specification Logical Subsystem target-hardware Task and Scheduling communi-cation 14:25 Mapping supported activities Verification (timing analysis, schedulability, …) (Platform specific) distribution of logical subsystems Deployment