UML Stereotypen und Profile

of 33/33
Systemmodellierung mit SysML - Stereotypen und Profile Oliver Stadie 15. Juni 2010
  • date post

    21-Feb-2017
  • Category

    Technology

  • view

    250
  • download

    4

Embed Size (px)

Transcript of UML Stereotypen und Profile

  • Systemmodellierung mit SysML - Stereotypen und Profile

    Oliver Stadie

    15. Juni 2010

  • Systemmodellierung mit SysML - Stereotypen und Profile 2

    Gliederung Vorwissen:

    Metamodell Profile & Stereotypen:

    Motivation Definition & Benutzung Zusammenfassung

    Diskussionen & Erweiterte Konzepte

  • Systemmodellierung mit SysML - Stereotypen und Profile 3

    Gliederung Vorwissen:

    Metamodell Profile & Stereotypen:

    Motivation Definition & Benutzung Zusammenfassung

    Diskussionen & Erweiterte Konzepte

  • Systemmodellierung mit SysML - Stereotypen und Profile 4

    Objekte als Instanzen von Klassen

    waldi

    rex

    Hund Instanz von

  • Systemmodellierung mit SysML - Stereotypen und Profile 5

    Links als Instanzen von Assoziationen

    waldi:Hund

    Hund

    Schaf

    sven:Schaf

    emilia:Schaf

    Instanz von

  • Systemmodellierung mit SysML - Stereotypen und Profile 6

    UML-Elemente als Instanzen des Metamodells (1)

    wartend

    arbeitendState

    FinalState

    Transition

    Instanz von

  • Systemmodellierung mit SysML - Stereotypen und Profile 7

    Metamodell UML UML Modell

    UML-Elemente als Instanzen des Metamodells (2)

    wartend

    arbeitendState

    FinalState

    Transition

    Instanzen von

  • Systemmodellierung mit SysML - Stereotypen und Profile 8

    Metamodell UML UML Modell

    UML-Elemente als Instanzen des Metamodells (3)

    Association

    Operation

    Class

    Actor

    Hund...

    wau()Schaf

    ...m()

    Instanzen von

  • Systemmodellierung mit SysML - Stereotypen und Profile 9

    Gliederung Vorwissen:

    Metamodell Profile & Stereotypen:

    Motivation Definition & Benutzung Zusammenfassung

    Diskussionen & Erweiterte Konzepte

  • Systemmodellierung mit SysML - Stereotypen und Profile 10

    unified vs. spezialisiert Allgemein: mglichst jede OO-SW soll

    beschrieben werden knnen. Speziell: die Beschreibung soll mglichst

    aussagekrftig sein. Lsung: Allgemeine Sprache, welcher

    spezielle Sprachelemente hinzugefgt werden knnen.

    Vergleichbar: Wortdefinitionen in natrlicher Sprache

  • Systemmodellierung mit SysML - Stereotypen und Profile 11

    schwer- vs. leichtgewichtig

    Class

    Metamodell UML UML Modell

    Instanzen von

    ActorHund wartendState

    NeuesSprachelement

    Schwergewichtige Erweiterung(ndern des Metamodells)

    Leichtgewichtige Erweiterung

    (ohne ndern des Metamodells)

  • Systemmodellierung mit SysML - Stereotypen und Profile 12

    Gliederung Vorwissen:

    Metamodell Profile & Stereotypen:

    Motivation Definition & Benutzung Zusammenfassung

    Diskussionen & Erweiterte Konzepte

  • Systemmodellierung mit SysML - Stereotypen und Profile 13

    Benutzung eines Stereotypen (1)

    Hund

    Tier Vierbeiner

  • Systemmodellierung mit SysML - Stereotypen und Profile 14

    Benutzung eines Stereotypen (2)

    HundJavaClass

    Tier Vierbeiner

    Stereotypen in Guilleme(n)ts angeben

  • Systemmodellierung mit SysML - Stereotypen und Profile 15

    Benutzung eines Stereotypen (3)

    HundJavaClass

    Tier Vierbeiner

    JavaClassauthor=oliversion=1.0

    Eigenschaften des Stereotyps in Kommentarsymbol

  • Systemmodellierung mit SysML - Stereotypen und Profile 16

    Definition eines Stereotypen (1) Erweiterungsbeziehung (engl. extension):

    metaclassClass

    stereotypeJavaClass

  • Systemmodellierung mit SysML - Stereotypen und Profile 17

    Definition eines Stereotypen (2) Eigenschaften des Stereotyps (engl. tagged

    values) als Attribute:

    metaclassClass

    stereotypeJavaClass

    +author:String +version:double

  • Systemmodellierung mit SysML - Stereotypen und Profile 18

    Definition eines Stereotypen (3) Semantik z.B. ber OCL definieren:

    metaclassClass

    stereotypeJavaClass

    +author:String +version:double

    metaclassGeneralization

    *generalization->size()

  • Systemmodellierung mit SysML - Stereotypen und Profile 19

    myJavaProfile

    Definition eines Profils

    metaclassClass

    stereotypeJavaClass

    Profil: Menge von Stereotypen (als Paket):

    +author:String +version:double

    metaclassGeneralization

    *generalization->size()

  • Systemmodellierung mit SysML - Stereotypen und Profile 20

    Benutzung eines Profils Profil muss mittels apply verknpft werden,

    um Stereotypen benutzen zu drfen:

    myApplication myJavaProfileapply

  • Systemmodellierung mit SysML - Stereotypen und Profile 21

    Gliederung Vorwissen:

    Metamodell Profile & Stereotypen:

    Motivation Definition & Benutzung Zusammenfassung

    Diskussionen & Erweiterte Konzepte

  • Systemmodellierung mit SysML - Stereotypen und Profile 22

    Zusammenfassung Definition:

    Stereotyp: Klasse als Erweiterung ( ) einer Metaklasse Schlsselwort stereotype in der Klasse

    Profil: Als Paket welches Stereotyp-Definitionen enthlt Benutzung:

    Stereotyp: UML-Element mit Name des Stereotypen in Guillemets (,) beschriften

    Profil: Paket welches Stereotypen benutzt bindet Profil-Paket mittels apply ein.

  • Systemmodellierung mit SysML - Stereotypen und Profile 23

    Quellen Weilkiens, Tim: System Engineering mit SysML/UML.

    Modellierung, Analyse, Design. 2. Auflage. Heidelberg: dpunkt.verlag GmbH, 2008.

    Born, Marc / Holz, Eckhardt / Kath, Olaf: Softwareentwicklung mit UML 2. Die neuen Entwurfstechniken UML 2, MOF 2 und MDA. Mnchen: Addison-Wesley Verlag, 2004.

    Hausding, Peer: Systemmodellierung mit SysML. Studienarbeit. Berlin: 9. Mrz 2010.

    UML Profile Diagrams, Internet: http://uml.kirfa.com/profile-diagrams.html [12.06.2010]

    http://uml.kirfa.com/profile-diagrams.html

  • Systemmodellierung mit SysML - Stereotypen und Profile 24

    Gliederung Vorwissen:

    Metamodell Profile & Stereotypen:

    Motivation Definition & Benutzung Zusammenfassung

    Diskussionen & Erweiterte Konzepte

  • Systemmodellierung mit SysML - Stereotypen und Profile 25

    Gliederung Diskussionen & Erweiterte Konzepte

    Warnung! Hinweis Was knnen Stereotypen? Leichtgewichtig oder nicht? Required extensions Mehrere Stereotypen Icons

  • Systemmodellierung mit SysML - Stereotypen und Profile 26

    Warnung! Achtung: Guillemets heit nicht immer Stereotyp! Beispiele aus bisherigen Vortrgen:

    Klassendiagramm: active, datatype, enumeration, interface, primitive, signal

    Aktivittsdiagramm: precondition, postcondition, subsystem, Transformation

    Anwendungsfalldiagramm: include, extend Nur ein Stereotyp dabei (subsystem) Unklarheit in der Sprache UML

  • Systemmodellierung mit SysML - Stereotypen und Profile 27

    Hinweis die drei groen Tugenden eines Programmierers

    [...]: Faulheit, Ungeduld und Hybris. - Larry Wall in Programmieren mit Perl

    Es gibt fertige standardisierte Profile Bsp:

    StandardProfileL2 UML Testing Profile SysML

  • Systemmodellierung mit SysML - Stereotypen und Profile 28

    Was knnen Stereotypen? Stereotypen haben keine eigene Semantik, auch nicht

    mit tagged values Semantik wird erst durch Tools hinzugefgt, z.B.:

    tagged value author in Code-Kommentare einfgen

    Auswertung der OCL-Constraints Erinnerung aus unified vs. spezialisiert:

    Speziell heit die Beschreibung soll mglichst aussagekrftig sein. Ziel erreicht?

  • Systemmodellierung mit SysML - Stereotypen und Profile 29

    Leichtgewichtig oder nicht? (1) Leichtgewichtig := keine Erweiterung im Metamodell Metamodell in Blau, UML-Modell in Orange:

    myApplication myProfileapply

    metaclassClass

    stereotypemyStereo01

    metaclassState

    stereotypemyStereo02

    MetaModellReferenzieren

  • Systemmodellierung mit SysML - Stereotypen und Profile 30

    Leichtgewichtig oder nicht? (2) Nachteil schwergewichtiger Erweiterung:

    UML Metamodell ist in UML definiert UML Metamodell kann als SW implementiert

    werden, z.B. von Tools wie MagicDraw nderung des Metamodells wrde nderung

    des Tools erfordern Nachteil leichtgewichtiger Erweiterung:

    Nicht alles mglich z.B. grafische Notation:

    MyButtonGUI

    Farb

    e

  • Systemmodellierung mit SysML - Stereotypen und Profile 31

    Required extensions {requires} sagt, dass eine UML-Komponente einem

    Stereotyp angehren muss:myProfile

    apply

    metaclassState

    stereotypemyStereo01

    {requires}

    myStateMachine

    wartend ArbeitendmyStereo01

    Fehler, wenn wartend nicht dem Stereotyp myStereo01 angehrt

  • Systemmodellierung mit SysML - Stereotypen und Profile 32

    Mehrere Stereotypen Stereotypen durch Komma abtrennen Im Kommentar nacheinander auflisten

    myProfile

    apply

    metaclassState

    stereotypemyStereo01

    myStateMachine

    ArbeitendmyStereo01, myStereo02

    +author:String

    stereotypemyStereo02+date:Date

    myStereo01author=hugomyStereo02date=15.06.2010

  • Systemmodellierung mit SysML - Stereotypen und Profile 33

    Icons Definition von Icons:

    Alternative Notationen:

    Nicht mglich: Strukturierte Icons (z.B. mit Attributen an definierten Positionen)

    Folie 1Folie 2Folie 3Folie 4Folie 5Folie 6Folie 7Folie 8Folie 9Folie 10Folie 11Folie 12Folie 13Folie 14Folie 15Folie 16Folie 17Folie 18Folie 19Folie 20Folie 21Folie 22Folie 23Folie 24Folie 25Folie 26Folie 27Folie 28Folie 29Folie 30Folie 31Folie 32Folie 33