tpc 5.1.0 uml&sysml withpapyrus features tutorial

43
TOPCASED 5.1.0 UML/SysML features tutorial (With Papyrus Editor) Raphaël Faudou Alexandre Cortier David Rabely

Upload: bvernay

Post on 14-Apr-2015

91 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

TOPCASED 5.1.0 UML/SysML features tutorial(With Papyrus Editor)

Raphaël FaudouAlexandre Cortier

David Rabely

Page 2: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

2 Topcased UML/SysML Papyrus editor Tutorial

Agenda

• Prerequisites

• What’s new since previous tutorial

• Create a new TOPCASED project/model with Papyrus Editor

• Import Primitive Types

• Show/hide compartments and features

• UML/SysML Diagrams Overview

• Presentation of all UML diagrams

• Presentation of SysML specific diagrams

• Specialization of items – UML profiles

• Frequently asked questions

Page 3: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

3 Topcased UML/SysML Papyrus editor Tutorial

Prerequesites

• This tutorial supposes that you have read the generic « Quick start editor tutorial »

• Generic capabilities offered by TOPCASED editors will not be covered here

• Only UML/SysML specific features are presented in next slides

Page 4: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

4 Topcased UML/SysML Papyrus editor Tutorial

What’s new since previous tutorial (4.2)

• You can consult the release note to find all news on TOPCASED 5.1.0: http://www.topcased.org/index.php?idd_projet_pere=52&Itemid=60

• You can consult Papyrus documentation for more information on Papyrus editor : http://www.eclipse.org/modeling/mdt/papyrus/usersTutorials/usersTutorialsIndex.php

• New tutorial for TOPCASED new editors based on Eclipse Papyrus technology Note: concerns UML and SysML only in this release For other editors, please use the classical TOPCASED quickStart

Page 5: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

5 Topcased UML/SysML Papyrus editor Tutorial

Create a new TOPCASED project/model with Papyrus Editor (1/2)

• Blank model or a model created based on a template (structure and diagrams) Select New > Other > Papyrus Model by right-clicking on the Model Explorer View

and follow the wizard as explained in TOPCASED quick starting guide for Papyrus

Different templates and diagrams according to the language- Note: possibility to add other custom templates (plug-in)

Page 6: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

6 Topcased UML/SysML Papyrus editor Tutorial

Create a new model (2/2)

One model abstraction- Three files behind the scene

Model resource(containing both UML data and graphical data)

UML model and diagram data, available in the model explorer view

Graphical model-based editor with palette

Property view, contextual to the selection

Page 7: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

7 Topcased UML/SysML Papyrus editor Tutorial

Import Primitive Types

• I create an element in TOPCASED and i want to reference a standard primitive type.

• Some of them are already defined in platform. You can import them using import primitive types action :

Right click on a package and select import primitive types

You can also generate them using Generate Primitive Types (only available on model)

Page 8: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

8 Topcased UML/SysML Papyrus editor Tutorial

Show/hide compartments and features (1/7)

• The example will be based on a simple class (UML) or block (SysML). Create a new class in class diagram or Block in the Block Definition Diagram Add Properties & Operations Add Parameters to the Operations (These operations can be performed from

the Parameters panel of the Properties View when an Operation is selected)

properties

operations

Page 9: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

9 Topcased UML/SysML Papyrus editor Tutorial

Show/hide compartments and features (2/7)

• The option to Hide/Show elements of this node is accessible from the ‘Show/Hide Compartments’ choice of the Filters option. First you need to select the element. In your example, select the new block. Right click and select ‘Filters > Show/Hide Compartments’ . A window is opened :

- select the Compartments to display - unselect the Compartments to hide.

Page 10: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

10 Topcased UML/SysML Papyrus editor Tutorial

Show/hide compartments and features (3/7)

• Result when ‘Operations’ are unselected

• Default operations are now hidden

Page 11: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

11 Topcased UML/SysML Papyrus editor Tutorial

Show/hide compartments and features (4/7)

• The option to Hide/Show elements of this block is accessible from the ‘Show/Hide Compartments’ choice of the Filters option. First you need to select the element. In your example, select the new

block. Right click and select ‘Filters > Show/Hide Contents’ . A window is opened :

- select the elements to display - unselect the elements to hide.

Page 12: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

12 Topcased UML/SysML Papyrus editor Tutorial

Show/hide compartments and features(5/7)

• Result when an operation and a property are unselected

• Default operations and properties are now hidden

Page 13: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

13 Topcased UML/SysML Papyrus editor Tutorial

• Options to Hide/Show elements of this block are accessible from the ‘Appearance’ panel of the Properties View. First you need to select the element. In your example, select the element in the

new block. In the Properties View, select the Appearance tab. The field named « Label customization » enable you to select the parameter to

show/hide.

Show/hide compartments and features(6/7)

Page 14: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

14 Topcased UML/SysML Papyrus editor Tutorial

Show/hide compartments and features(7/7)

• Result when ‘Parameter name’ and ‘Parameter direction’ of an operation is unselected

• Parameters of all the operations are now hidden

Page 15: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

15 Topcased UML/SysML Papyrus editor Tutorial

UML/SysML Diagrams Overview (2/2)

• UML Diagrams Overview Structural diagrams

- Package- Classes & instances- Components- Composite- Deployment

Behavioral- Use cases- Sequence/communication- State machine- Activity- Timing (non yet supported)

… and extensions- Profile

[Michel ZAM]

Page 16: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

16 Topcased UML/SysML Papyrus editor Tutorial

UML/SysML Diagrams Overview (2/2)

• SysML Diagrams Overview

SysML Diagram

Behavior Diagram Requirement Diagram Structure Diagram

Activity Sequence State Machine Use Case BDD IBD Package Parametric

Page 17: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

17 Topcased UML/SysML Papyrus editor Tutorial

Presentation of all UML diagrams : Package diagram

• Useful for model organization Address different view points Address different abstraction levels

[INCOSE Model]

Page 18: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

18 Topcased UML/SysML Papyrus editor Tutorial

• Capture system missions

• Main concepts Use case Actor Association

- Participation of an actor to a UC Subject

- System scope containing use cases

• Advanced concepts Include relationship

- Functional reuse Extend relationship

- Similar behavior Generalization

Presentation of all UML diagrams : Use Case Diagram

Page 19: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

19 Topcased UML/SysML Papyrus editor Tutorial

• Contextual to an interaction Can not exist without it

• Execution trace of a scenario

• Emphasizes on temporal aspect Objects lifecycle

• Main concepts Lifeline, Execution Messages

• Be careful when creating reply message Up to Down

Presentation of all UML diagrams : Sequence Diagram (1/2)

Find more information on Sequence Diagram here : http://www.eclipse.org/modeling/mdt/papyrus/usersTutorials/resources/PapyrusTutorial_OnSequenceDiagrams_v0.1_d2010100.pdf

Page 20: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

20 Topcased UML/SysML Papyrus editor Tutorial

• Advanced concepts Interaction use

- Reference behavior

Combined fragments- Parallel- Alternative- Loop- …

Presentation of all UML diagrams : Sequence Diagram (2/2)

Page 21: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

21 Topcased UML/SysML Papyrus editor Tutorial

• Emphasizes on spatial aspects Links between objects

• Message oriented scenario without time sequence

• Main concepts Lifeline Link messages

Presentation of all UML diagrams : Communication Diagram

• Essentially semantically equivalent to Sequence Diagram

Page 22: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

22 Topcased UML/SysML Papyrus editor Tutorial

• Represents workflows of stepwise activities and actions with support for choice, iteration and concurrency

• In SysML the activity diagram has been extended to indicate flows among steps that convey physical matter (e.g., gasoline) or energy (e.g., torque, pressure)..

• Contextual to an activity element Can not exist without it

• Exhaustive action language Can formalize any process

• Main concepts Initial and final nodes Opaque and call actions Accept event & send actions Control and object flows

- With pins Activity partition Parameter Decision and merge Fork and Join (parallelization) Central buffer/Datastore

• Advanced concepts Structured Activity Nodes

- Loop Node- Conditional Node- Sequence Node

All other actions

Presentation of all UML diagrams : Activity Diagram

Page 23: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

23 Topcased UML/SysML Papyrus editor Tutorial

• Static structure diagram that describes the structure of a system system's classes , operations (or methods) attributes

• Main concepts Class, Interface, DataType Enumeration Generalization / Realization Associations

- Shared- Composite

Constraints

Presentation of all UML diagrams : Class and Instance Diagram (1/2)

Page 24: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

24 Topcased UML/SysML Papyrus editor Tutorial

Presentation of all UML diagrams : Class and Instance Diagram (2/2)

• Instance diagram allow the modeler to represent instances

• Main concepts InstanceSpecification Slot InstanceValue

Page 25: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

25 Topcased UML/SysML Papyrus editor Tutorial

• Component diagram depicts how components are wired together to form larger components and or software systems. They are used to illustrate the

structure of arbitrarily complex systems.

• Main concepts Component Port Interface Usage / Realization Generalization Component Realization

Presentation of all UML diagrams : Component Diagram

Page 26: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

26 Topcased UML/SysML Papyrus editor Tutorial

Presentation of all UML diagrams : Deployment Diagram

Examples : - « nodes » = hardware

components- « artifact » = application,

database, executable file

• Models the physical deployment of artifacts on nodes

Page 27: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

27 Topcased UML/SysML Papyrus editor Tutorial

• Life cycle of system or subsystem/component

• Can formalize a protocol

• Main concepts State / composite state Transition

- Event, guard

• Advanced concepts Region (parallel life cycles) State internals

- onEntry, onExit, onXXX- doActivity

Transition effect

Presentation of all UML diagrams : State Machine Diagram

Page 28: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

28 Topcased UML/SysML Papyrus editor Tutorial

• Mainly used to represent internal communication of a system/component Main concepts : Part, Port, connector

• Other usage to represent collaborations with role bining

Presentation of all UML diagrams : Composite Diagram

Page 29: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

29 Topcased UML/SysML Papyrus editor Tutorial

• Main Concepts Block Part

- A part resulting froom the decomposition of a block

Values- Quantitative characteristics of the

system Port

- Points of interaction with other blocks

- Standard port : types of services that a block either requires or provides

- Flow port : specify what can flow in and out of blocks

Property / Operations / Receptions

Presentation of SysML specific diagrams : Block Definition Diagram (BDD)

• BDD describes the system hierarchy and system/component classifications

Page 30: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

30 Topcased UML/SysML Papyrus editor Tutorial

Presentation of SysML specific diagrams : Internal Block Diagram (IBD)

• IBD describes the internal structure of a system in terms of its

parts, ports, and connectors • Main Concepts

Connectors

Page 31: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

31 Topcased UML/SysML Papyrus editor Tutorial

• Represents constraints on system property values Property values example : performance, reliability, and mass properties, and

• Useful to integrate the specification and design models with engineering analysis models.

• Main Concepts Property Constraint property Connector

Presentation of SysML specific diagrams : Parametric Diagram

Page 32: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

32 Topcased UML/SysML Papyrus editor Tutorial

• Captures requirements hierarchies and requirements derivation

• Satisfy and verify relationships allow a modeler to relate a requirement to a model element that satisfies or verifies the requirements

• Bridge between the typical requirements management tools and the system models

Presentation of SysML specific diagrams : Requirement Diagram

• Main Concepts Requirement

- Id- Text

Derivation Decompose Satisfy / Verify

Verify

Page 33: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

33 Topcased UML/SysML Papyrus editor Tutorial

Specialization of items – UML profiles (1/10)

• Create a new profile Create a new Papyrus Model Select ‘Profile’ as Diagram Language Select UML Profile Diagram (You can also load a template)

Page 34: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

34 Topcased UML/SysML Papyrus editor Tutorial

Specialization of items – UML profiles (2/10)

• Create stereotypes indicate the items (metaclass) to which they are applicable Use ‘Extension’ Relations between stereotypes and metaclasses

• Capabilities : Add properties to stereotype Inheritance Create abstract stereotypes Create new enumeration Define new data types…

Page 35: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

35 Topcased UML/SysML Papyrus editor Tutorial

Specialization of items – UML profiles (3/10)

• Save the profile Accept “Define the profile” when saving

Page 36: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

36 Topcased UML/SysML Papyrus editor Tutorial

Specialization of items – UML profiles (4/10)

• Applying the profile Select a package in the Model Explorer view (1) Select Profile Tab in the Property View Use Apply Profile button to apply your profile (2) You can also Apply Registered profiles (2) Select the profile model (.uml extension) (3)

1

Apply profile button

Apply registered profile button

23

Page 37: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

37 Topcased UML/SysML Papyrus editor Tutorial

Specialization of items – UML profiles (5/10)

• Apply a stereotype Select the item you want to apply the stereotype (Model Explorer View or

Diagram) Use the ‘Add New Element’ button in Property View (Profile tab) Select the stereotype to apply

Add New Element Button

Note that the available stereotypes are filtered depending on the selected element types.

Page 38: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

38 Topcased UML/SysML Papyrus editor Tutorial

• Modify stereotype properties Use the Property Value section (Profile tab in Property View)

Specialization of items – UML profiles (6/10)

Double-click to modify the value of the property (or use predefined buttons)

Page 39: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

39 Topcased UML/SysML Papyrus editor Tutorial

Specialization of items – UML profiles (7/10)

• Customize figure’s element using stereotype (1) Select a stereotype and add an image

Select the image and define properties

Page 40: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

40 Topcased UML/SysML Papyrus editor Tutorial

Specialization of items – UML profiles (8/10)

• Customize figure’s element using stereotype (2) Change appeareance of applied stereotypes (Appearence Tab of Property

View)

Page 41: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

41 Topcased UML/SysML Papyrus editor Tutorial

Specialization of items – UML profiles (9/10)

• Customized palettes (1) Right click on palette view Use the Add button Give a name to your palette

Page 42: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

42 Topcased UML/SysML Papyrus editor Tutorial

• Customized palettes (2) Select the meta-class element and add them to your palette (preview)

Set stereotypes list Using Aspect Actions

Specialization of items – UML profiles (10/10)

Page 43: TPC 5.1.0 UML&SysML WithPapyrus Features Tutorial

43 Topcased UML/SysML Papyrus editor Tutorial

Frequently Asked Questions

To create- An element import, right click on a package, create child > element import and in advanced

properties section fill the property “imported element”- A package import, right click on a package, create child > package import and in advanced

properties section fill the property “imported package”