uml und sysml im umfeld von eingebetteten systemen€¦ · 2 gliederung mathematik und informatik,...
TRANSCRIPT
![Page 1: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/1.jpg)
UML und SysML im Umfeld von
eingebetteten Systemen Eine Einführung
Oliver Gesch, Betreuer: Dr.-Ing. Edzard Höfig
Fachbereich Mathematik & Informatik
Donnerstag, 12. Januar 2012
![Page 2: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/2.jpg)
2
Gliederung
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
1. Motivation
2. Grundlagen
3. UML2
4. SysML
5. Zusammenfassung
![Page 3: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/3.jpg)
3
1. MOTIVATION
![Page 4: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/4.jpg)
4
Motivation (1/2)
Allgemein
•Vereinfachung von Teamarbeit
•Systematische Vorgehensweise
•Filtern von Sachverhalten
•Zeitersparnis (UML2Code, Code2UML)
•Wiederverwertbarkeit
Eingebettete Systeme
•Erhöhte Komplexität
•Einhaltung von Normen
•Schnittstelle für Hard- und Softwareentwickler
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
![Page 5: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/5.jpg)
5
Motivation (2/2)
Ausführbare Spezifikationen/Modelle
Best-Practice-Verfahren für EB
SysML
Verhältnis zur UML Sichtweisen
UML 2
Aufbau Sichtweisen Lücken
Andreas Korff: „Modellierung von eingebetteten Systemen mit UML und SysML“, Spektrum 2008.
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
![Page 6: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/6.jpg)
6
2. GRUNDLAGEN
![Page 7: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/7.jpg)
7
Grundlagen (1/7)
Ressourcenbeschränkung
Platzbeschränkung
Batteriebetrieb
• Geringe Energiereserven
• Geringe Leistung
kabelloser Kommunikation
• Geringe Datenraten
• Geringe Sendeleistung (Reichweite)
Anwendungsbereiche
• Medizin
• Haushalt
• Verkehrsmittel
• Mobiltelefone
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Eingebettete Systeme
Arduino
![Page 8: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/8.jpg)
8
Grundlagen (2/7)
Beispielsystem MSB-A2 (Modular Sensor Board ARM)
Kategorie: Wireless Sensor Node (WSN)
Domäne: Medizin, Militär, Haushalt, Umweltschutz…
Beispielanwendung: Altersheim (betreutes Wohnen)
Einsatz als ständiger Begleiter der Bewohner.
Kontinuierliche Übertragung von Messdaten an eine
zentrale Sammelstelle. Vorort Diagnose durch LCD-
Display.
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
![Page 9: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/9.jpg)
9
Grundlagen (3/7)
Eigenschaften des MSB-A2
• Prozessor: LPC2387 von TI
• ARM CPU
• 512kB Flash Memory
• 96kB RAM
• Max. 76 MHz Taktrate
• Funkchip: CC1100
• max. 500 kBaud
• Sensor: SHT11
• Temperatur- und Feuchtigkeitssensor
• LCD-Display: LCD128B
• µkleos Mikro-Kernel (RTOS mit Threads)
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
![Page 10: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/10.jpg)
10
Grundlagen (4/7)
Programmierung
• C immer noch sehr dominant
• Codegenerierung/Reverse Engineering für UML
• modellbasierten System-Codegenerierung (MATLAB/Simulink)
Beschreiben (Bootloader)
• Einmalig (oder von Werk aus) Bootloader brennen
• Flash über PC-Schnittstelle (RS232/USB)
Debugging
• JTAG-Schnittstelle und onboard ICE (In-Cirtcuit-Emulator)
• Softwarenachbildung des Mikrocontrollers
• Ausführbare Modelle (Modelchecking)
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
![Page 11: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/11.jpg)
11
Grundlagen (5/7) – The Real-Time Perspective
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Systems Engineering
Software Engineering Architekturdesign Feindesign
Software Engineering
Systemanforderungen
definieren
Softwareanforderungen
definieren
Initiale
Objektarchitektur
entwickeln
Initiale
Softwarearchitektur
entwickeln
Softwarearchitektur
finalisieren
Anwendungsfälle im
Detail definieren
Anwendungsfälle
implementieren und
testen
Systemintegrationstest
Systemakzeptanztest
Vollständig und korrekt?
nein
ja
![Page 12: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/12.jpg)
12
Grundlagen (6/7) – The Real-Time Perspective
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Systems Engineering
Software Engineering Architekturdesign Feindesign
Software Engineering
Systemanforderungen
definieren
Softwareanforderungen
definieren
Initiale
Objektarchitektur
entwickeln
Initiale
Softwarearchitektur
entwickeln
Softwarearchitektur
finalisieren
Anwendungsfälle im
Detail definieren
Anwendungsfälle
implementieren und
testen
Systemintegrationstest
Systemakzeptanztest
Vollständig und korrekt?
nein
ja
![Page 13: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/13.jpg)
13
Grundlagen (7/7) – The Real-Time Perspective
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Systemtest
•Testergebnisse (Integration, System)
•Änderungsvorschläge
•Benutzerdokumentation
Implementierung und Unit-Test
•Source Code
•Komponenten laut Spezifikation
•Technische Dokumentation
•Unit-Testfälle
•(Zielhardware)
Design
•Systemarchitektur (speziell)
•Domänen
•Schnittstellenspezifikation
•Paket und Komponentenspezifikationen
•Datenmodell
Analyse
•Anwendungsfälle
•Anforderungen und Zusicherungen (System und Software)
•Szenarien
•Physikalische Systemdefiniton (allgemein)
•Entwicklungszeitplan
![Page 14: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/14.jpg)
14
3. UML – ANFORDERUNGSDEFINITION
![Page 15: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/15.jpg)
15
UML – Anwendungsfalldiagramme
Temperatur
messen
«primär»
Zeit
Sensorwerte alle 5
Minuten messen
Digitales
Interface
intialisieren
«include»
use case Sensorwerte messen
System
«sekundär»
Temperatursensor
«primär»
Temperatur
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
![Page 16: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/16.jpg)
16
UML – Anwendungsfalldiagramme
Temperatur
messen
Sensorwerte alle 5
Minuten messen
Digitales Interface intialisieren
«include»
use case Sensorwerte messen
System
Zeit Temperatur-sensor
Temperatur
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Grafische Stereotypisierung
![Page 17: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/17.jpg)
17
UML – Anwendungsfalldiagramme
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Sinnvolle Verwendung
• Leistung des Systems definieren (Nutzerperspektive)
• Kommunikation mit fachfremden Personen
• Verknüpfung der schriftlichen Spezifikation mit dem Modell
Ungeeignet für
• Umsetzung des Systems
• Darstellung von System-Anforderungen
• Methoden/Attribute
Analyse
![Page 18: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/18.jpg)
18
UML – Zustandsdiagramme
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Pseudozustand: (tiefe) Historie
aktiv
Sensorwerte
state Zustandsdiagramm für das Display mit tiefer Historie
Feuchtigkeit
Temperatur
EvNext/EvNext/aus
Menü
EvOn/
EvOff/
EvSensoren/
EvMenu/
«create»/
H*
![Page 19: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/19.jpg)
19
UML – Zustandsdiagramme
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Sinnvolle Verwendung
• Sortieren der Anwendungsfälle
• Ordnung der Interaktionen
• Darstellung von Aktionen Reaktionen
• Systemverhalten modellieren
Ungeeignet für
• Betrachtung der Benutzerschnittstelle
• Darstellung von Systemgrenzen
• Primitive Objekte
Analyse
Design
![Page 20: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/20.jpg)
20
3. UML – SYSTEMMODELLIERUNG
![Page 21: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/21.jpg)
21
UML – Paketdiagramm
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
package Domänenmodell des Sensorknotens
Senke
(Sammelstelle)
Sensorknoten
Benutzerschnittstelle
Schaltflächen
Display
Hardware-
Abstraktion
Threads
Sensoren
AblaufsteuerungFunkübertragung
![Page 22: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/22.jpg)
22
UML – Paketdiagramm
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Sinnvolle Verwendung
• Identifikation von Domänen
• Schaffung von Namensräumen
• Softwareschichten
• Aufgabenverteilung
Ungeeignet für
• Kompakte Systeme
Design
![Page 23: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/23.jpg)
23
UML – Aktivitätsdiagramme
activity Demodulierung und Dekodierung
Demodulator«stream»
CarrierWave
Demodulierung und Dekodierung
«stream»
analogDaten FEC Decoder
PHY Packet
«stream»
demodDaten
packetData
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Streaming Pins
![Page 24: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/24.jpg)
24
UML – Aktivitätsdiagramme
activity Mengenverarbeitung
PHY Pakete empfangen
IP Handling
PHY_Packet
TCP Reassembly
parallel
IP_Pakete
IP_Paket
TCP Packet
TCP Reassembling
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Mengenverarbeitung
• iterativ
• streaming
• parallel
![Page 25: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/25.jpg)
25
UML – Aktivitätsdiagramme
activity Timer
Waiting for TCP ACK
Retransmitting Data
[No ACK]
[ACK]
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Zeitsignale und unterbrechebare Bereiche
![Page 26: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/26.jpg)
26
UML – Aktivitätsdiagramme
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Sinnvolle Verwendung
• Kontrollfluss und/oder
• Objektfluss visualisieren
• Übersichtliche Darstellung auch von komplexen Anwendungsfällen
Ungeeignet für
• Visualisierung von Besitzverhältnissen
• Darstellung der Auslöser/Ereignisse
Design
![Page 27: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/27.jpg)
27
3. UML 2 ANSI-C
![Page 28: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/28.jpg)
28
UML – ANSI C
activity FOR CONTINUE
Aktion 1
[Bedingung 1]
C Code:
for (Initialisierung; Bedingung 1; Inkrement)
{
Aktion 1;
if (Bedingung 2)
continue;
Aktion 2;
}
[else]
[else]
Aktion 2Inkrement
[Bedingung 2]
Initialisierung
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
![Page 29: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/29.jpg)
29
UML – ANSI C
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
class Attribute
AnzahlSockets: intStatus : boolean
SocketAPI
read(in arguments) : chargetID() : int
socketID : int
Socket
pSocket
/* File: .\SocketAPI.h*/
#ifndef __SOCKETAPI#define __SOCKETAPI
#include "Socket.h"
struct SocketAPI{int AnzahlSockets;int Status;struct Socket *pSocket;};
#endif
1
1
Include
Struct
Pointer
![Page 30: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/30.jpg)
30
UML – ANSI C
class A und B
+ Operation(in parameter : long) : short
- InstanzAttribut : Attributtyp+ KlassenAttribut : Attributtyp
KlasseA
- AttrInB : long
KlasseB
RolleAufB
/* File: .\KlasseA.h*/
#ifndef __KLASSEA#define __KLASSEA
#include "KlasseB.h"
struct KlasseA{Attributtyp InstanzAttribut;struct KlasseB rRolleAufB[5];};
extern Attributtyp KlassenAttribut;short Operation(struct KlasseA *this, long parameter);
#endif
1
5
/* File: .\KlasseA.c*/
#include "KlasseA.h"
Attributtyp KlassenAttribut;
short Operation(struct KlasseA *this, long parameter){Return 1;}
#endif
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Dezidiertes struct als Übergabeelement
![Page 31: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/31.jpg)
31
3. UML TASK MANAGEMENT UND SYNCHRONISIERUNG
![Page 32: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/32.jpg)
32
UML – Taskmanagement und Synchronisierung
object RTOS Tasks
Task A Task B Task C
Speicher Prozessor Peripherie
RTOS
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
![Page 33: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/33.jpg)
33
UML – Taskmanagement und Synchronisierung
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
no type Intertaskkommunikation stereotypisiert
asynchron synchron
ohne Daten
mit Daten
Event Flag
Message Queue
Signal
Mailbox
![Page 34: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/34.jpg)
34
UML – Taskmanagement und Synchronisierung
Communication Semaphor
SocketAPI Application
write() recv()
TCP-Payload
Signal() Wait()
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Semaphorfunktionen: wait()/signal()
![Page 35: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/35.jpg)
35
UML – Kommunikationsdiagramme
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Sinnvolle Verwendung
• Kommunikation und Interaktionen darstellen
• Zeitlicher Ablauf
• Nachrichten visualisieren
Ungeeignet für
• Zeitlich und logisch sehr komplexer Austausch von Nachrichten
Analyse
Design
![Page 36: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/36.jpg)
36
4. SYSML
![Page 37: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/37.jpg)
37
SysML – Motivation (1/3)
Systemanforderungen modellieren und analysieren
•Keine Softwarezentrierung
•Geringerer Umfang als UML
Nicht funktionale Anforderungen festhalten
Schnittstelle
•Hardwarentwickler
•Elektrotechniker
•weitere Stakeholder
SysMLErweiterungen
SysML
UML2
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
pkg Einbettung der SysML und von SysML-Modellen in UML2
«metamodel»MOF
«metamodel»UML
«metamodel»SysML
«model»Nutzermodell
«modelLibrary»SysML Profile
«instanceOf»
«import»
«instanceOf»
«reuse»
«instanceOf»
![Page 38: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/38.jpg)
38
SysML – Motivation (2/3)
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
![Page 39: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/39.jpg)
39
SysML – Motivation (3/3)
activity Timer
Waiting for TCP ACK
Retransmitting Data
[No ACK]
[ACK]
Intervall: 2*RTT
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Nicht-funktionale Anforderungen
![Page 40: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/40.jpg)
40
4. SYSML - SYSTEMANFORDERUNGEN
![Page 41: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/41.jpg)
41
SysML – Systemanforderungen
class TCP Anforderung
txt
Ein ACK für empfangene Daten muss
innerhalb von 500 ms versendet werden.
id#
S-13.2
«requirement»
ACK versenden
tcp_csum() : bool
sendeACK()
piggybackData()
TCPHandler
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Anforderungen
• Name
• ID
• Text
![Page 42: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/42.jpg)
42
SysML – Systemanforderungen
req Zurückverfolgbare TCP Anforderung
txt
Ein ACK für empfangene Daten muss
innerhalb von 500 ms versendet werden.
id#
S-13.2
«requirement»
ACK versenden
«requirement»
RFC2581
«trace»
TracedTo
«requirement» RFC2581
äquivalente
Semantik
txt
Ein ACK für empfangene Daten muss
innerhalb von 500 ms versendet werden.
id#
S-13.2
«requirement»
ACK versenden
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Nachverfolgbarkeit per «trace»
![Page 43: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/43.jpg)
43
SysML – Systemanforderungen
req TCP Verbindungseigenschaften
«requirement»
Verlässliche und integere TCP Verbindung
«requirement»
TCP Active ACK
«requirement»
Checksum
«requirement»
TCP Retransmit
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Bestandteile von Anforderungen
![Page 44: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/44.jpg)
44
SysML – Systemanforderungen
req UDP Integrität
«requirement»
UDP Integrität
«requirement»
UDP Checksum
«requirement»
Checksum
«copy»
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Wiederverwertbarkeit von Anforderungen
![Page 45: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/45.jpg)
45
SysML – Systemanforderungen
Temperatur
messen
Sensorwerte alle 5
Minuten messen
Digitales Interface intialisieren
«include»
use case Sensorwerte messen
System
Zeit Temperatur-sensor
Temperatur
Refines
«requirement» Umgebungsprofil aktualisieren
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Verfeinern von Anforderungen (in unterschiedlichen Diagrammen)
![Page 46: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/46.jpg)
46
SysML – Systemanforderungen
activity Timer
Waiting for TCP ACK
Retransmitting Data
[No ACK]
[ACK]
Handle Retransmit
Satisfies
«requirement» TCP Retransmit
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Nicht-funktionale Anforderungen erfüllen
![Page 47: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/47.jpg)
47
SysML – Anforderungsdiagramme
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Sinnvolle Verwendung
• Anforderungen modellieren
• Nichtfunktional
• Funktional
• Nachverfolgbarkeit gewährleisten
Ungeeignet für
• Generische Anforderungen
• Spezifische Umsetzung
• Sehr detailreiche Anforderungen
Analyse
![Page 48: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/48.jpg)
48
4. SYSML: SYSTEMEIGENSCHAFTEN UND –AUFBAU MODELLIEREN
![Page 49: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/49.jpg)
49
SysML – Blockdiagramme
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
bdd Transceiver
flowPorts
Daten : FunkDaten
values
Flashspeicher : KByte = 512
RAM : KByte = 98
maxProzessorTakt : MHz = 72
«block»
LPC2387
Blöcke
•Name
•Werte
•Operationen
•Teile (parts)
•Ports (standard/flow)
•Referenzen
![Page 50: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/50.jpg)
50
SysML – Blockdiagramme
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
bdd CPU Flussspez.
flowPorts
Daten : FunkDaten
values
Flashspeicher : KByte = 512
RAM : KByte = 98
maxProzessorTakt : MHz = 72
«block»
LPC2387
flowProperties
in empfangeneDaten : char
out gesendeteDaten : char
«FlowSpecification»
FunkDaten
Flussspezifikationen
• Name
• Flusseigenschaften
![Page 51: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/51.jpg)
51
SysML – Blockdiagramme
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
bdd WSN
«block»
CC1100«block»
WSN1
TR
«block»
LPC2387
«block»
SHT11
1
CPU
1
«block»
LCD128B1
LCD
«block»
Antenne
A
1
1
S
![Page 52: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/52.jpg)
52
SysML – Blockdiagramme
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
bdd WSN
flowPorts
in out analogDaten : V
values
Sendeleistung : dBm = +10
Frequenzband : MHz = 868
maxDatenrate : kBaud = 500
«block»
CC1100
Parts
TR : CC1100
CPU : LPC2387
S : SHT11
LCD : LCD128B
A : Antenne
operations
start()
stop()
übertrageFunkDaten() : char
übertrageUSBDaten() : char
flowPorts
in externeEnergie : Elektrische Energie
in out USBDaten : char
in out NutzDaten : char
in Temperatur : int
in Feuchtigkeit : int
«block»
WSN
TR
flowPorts
Daten : FunkDaten
values
Flashspeicher : KByte = 512
RAM : KByte = 98
maxProzessorTakt : MHz = 72
«block»
LPC2387
values
Energieverbrauch : uW = 80
Ansprechzeit : s = 8
maxTemperatur : °C = 125
minTemperatur : °C = -40
«block»
SHT11
S
CPU
1
1
1
1
Operations
writeByte(in wert : Byte) : bool
reset() : bool
values
AnzahlPixel =128*64
Versorgung : mA = 205
«block»
LCD128B
1
LCD
«block»
Antenne
A
1
![Page 53: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/53.jpg)
53
SysML – Blockdiagramme
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Sinnvolle Verwendung
• Visualisierung des physischen Systemaufbaus
• Systemeigenschaften festhalten
• Eigenschaften von Element- und Objektflüssen spezifizieren
Ungeeignet für
• Physische Schnittstellen
• Darstellung von Softwarebestandteilen
Analyse
Design
![Page 54: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/54.jpg)
54
SysML – Internes Blockdiagramm
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
ibd WSN
«block»
WSN
TR : CC1100
A : Antenne CPU : LPC2387carrierWave
analogDaten
externeEnergie
IF_Services
Daten
USBDaten
Steuerdaten
1 1
1
![Page 55: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/55.jpg)
55
UML – Interne Blockdiagramme
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
Sinnvolle Verwendung
• Visualisierung von physischen und softwarespezifischen Schnittstellen
• Darstellung von Objekt- und Elementflüssen
Ungeeignet für
• Zeit- und Ablaufverhalten
• Nachrichten und Signale
Design
![Page 56: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/56.jpg)
56
5. ZUSAMMENFASSUNG
![Page 57: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/57.jpg)
57
Zusammenfassung
UML
• Anwendungsfalldiagramme
• Grafische Stereotypisierung
• Zustandsdiagramme
• Mit flacher Historie
• Mit tiefer Historie
• Paketdiagramme
• Domänen
• Namensräumen
• Aktivitätsdiagramme
• Pins (regulär, Streaming, Mengenverarbeitung)
• Unterbrechungen
• Zeitlimit sowie periodische Timer
• Kommunikationsdiagramme
• Taskmanagement
• Synchronisierung: Semaphore
SysML
• Anforderungsdiagramm
• Trace, Copy, Refine, Satisfy
• Hierarchie
• Blockdefinitionsdiagramm
• Parts
• Internes Blockdiagramm
• Ports (regulär, atomar, flow Ports)
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
![Page 58: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/58.jpg)
58
VIELEN DANK
![Page 59: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/59.jpg)
59
QUELLEN
![Page 60: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/60.jpg)
60
Quellen
• Andreas Korff: „Modellierung von eingebetteten Systemen mit UML
und SysML“, Spektrum 2008.
• WILLER: „Der wahre Nutzen der UML“, 2007.
• ScatterWeb: „MSBA2 Hardwaredokumentation“, CST 2011.
• Matthew Hause: „Successfully Managing An Incremental Real-time
Project“, ARTiSAN Software Tools 1999.
• Alan Moore & Niali Cooling: „Real-Time Perspective: Overview“,
ARTiSAN Software Tools 2000.
• Alan Moore & Niali Cooling: „Real-Time Perspective: Foundation“,
ARTiSAN Software Tools 2000.
• Tim Weilkiens: „OMG SysML für eingebettete Systeme“, OOSE 2008.
• Jerome L. Krasner: „UML for C Developers“, Embedded Market
Forecasters 2005.
![Page 61: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/61.jpg)
61
UML – Zustandsdiagramme
Sensorwerte
state Zustandsdiagramm für das Display
Feuchtigkeit
Temperatur
EvNext/EvNext/
aus
Menü
EvOn/EvOff/
EvSensoren/
EvMenu/
EvOff/«create»/
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
![Page 62: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/62.jpg)
62
UML – Zustandsdiagramme
Sensorwerte
state Zustandsdiagramm für das Display mit flacher Historie
Feuchtigkeit
Temperatur
EvNext/EvNext/
Haus
Menü
EvOn/EvOff/
EvSensoren/
EvMenu/
EvOff/«create»/
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
![Page 63: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/63.jpg)
63
UML – Aktivitätsdiagramme
activity Zeige Sensorwerte
Umwandeln der Rohdaten, bestimmen
der Zeichenkettenlänge und blockweise übertragen[raw]
Sensorwert
Display
Sensorwert Anzeigen
Länge Blöcke
{weight = Länge}
{upperbound = 256}
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
![Page 64: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/64.jpg)
64
UML – Aktivitätsdiagramme
activity Sprungmarken
Aktion X
Aktion X
Aktion X
Aktion X
1
1
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
![Page 65: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/65.jpg)
65
UML – Aktivitätsdiagramme
activity Zeitsignale
TCP Reassembling
Socket API Handling
TCP_Packet
TCP_Payload
Application Layer Handling
Close
Shutdown
Close TCP Connection
Shutdown TCP Connection
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
![Page 66: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/66.jpg)
66
UML – Aktivitätsdiagramme
activity periodischer Timer
Prepare TCP Keepalive
Send TCP Keepalive
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
![Page 67: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/67.jpg)
67
UML – ANSI C
activity IF-THEN-ELSE
Aktion 1
Aktion 2[else]
[Bedingung]
C Code:
if (Bedingung)
{
Aktion 1;
}
else
{
Aktion 2;
}
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
![Page 68: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/68.jpg)
68
activity SWITCH
Aktion 1
Aktion 2[1]
[0]
C Code:
switch (Variable)
{
Case (0):
{
Aktion 1;
break;
}
Case (1):
{
Aktion 2;
break;
}
default:
{
Aktion 3;
}
}Aktion 3
[else]
«decisionInput» Variable
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
UML – ANSI C
![Page 69: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/69.jpg)
69
activity WHILE
Aktion
[Bedingung]C Code:
while (Bedingung)
{
Aktion;
}
[else]
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
UML – ANSI C
![Page 70: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/70.jpg)
70
UML – ANSI C
class globales Modul
WSensorNode
+ thread_create(in arguments) : int+ thread_sleep() : void+ thread_wakeup(in arguments) : int
Thread
«use»
/* File: .\WSensorNode.c*/
#include "WSensorNode.h"
#include "Thread.h"
/* File: .\Thread.h*/
#ifndef __THREAD#define __THREAD
int thread_create(arguments);void thread_sleep(void);int thread_wakeup(in arguments);
#endif
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
![Page 71: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/71.jpg)
71
UML – Taskmanagement und Synchronisierung
Communication Event flag
MainController DisplayTask
Display-Beleuchtung
set()read()
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
![Page 72: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/72.jpg)
72
UML – Taskmanagement und Synchronisierung
Communication Message Queue
SocketAPI Application
write() recv()
TCP-Payload
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
![Page 73: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/73.jpg)
73
UML – Taskmanagement und Synchronisierung
Communication Signal
IP Transceiver
wait() setSignal()
PHY-Payload
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
![Page 74: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/74.jpg)
74
UML – Taskmanagement und Synchronisierung
Communication Mailbox
IP Transceiver
post() pend()
PHY-Payload
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch
![Page 75: UML und SysML im Umfeld von eingebetteten Systemen€¦ · 2 Gliederung Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch 1. Motivation 2. Grundlagen 3. UML2 4. SysML](https://reader031.vdocuments.pub/reader031/viewer/2022022011/5b14d1d37f8b9a54488c46a2/html5/thumbnails/75.jpg)
75
SysML – Systemanforderungen
req Abgeleitete TCP Anforderung
txt
Ein ACK für empfangene Daten muss
innerhalb von 500 ms versendet werden.
id#
S-13.2
«requirement»
ACK versenden
txt
Empfangene TCP Pakete müssen aktiv
bestätigt werden.
id#
S-13.0
«requirement»
TCP Active ACK
«derive»
Mathematik und Informatik, UML+SysML, 12.01.2012 Oliver Gesch