fUML- Definition and relationship with UML 2 - English

14
Semantics of a Foundational Subset for Executable UML Models (fUML) Realized by: Jose Asencio September, 2016

Transcript of fUML- Definition and relationship with UML 2 - English

Presentacin de PowerPoint

Semantics of a Foundational Subset for ExecutableUML Models (fUML)

Realized by: Jose AsencioSeptember, 2016

1

Agenda What is fUML?fUML & UMLScope of fUML fUML Conformance

ConformanceThis Presentation refers to the specification fUML 1.2.1 which has been extracted from the OMG website.To download, visit this link at: http://www.omg.org/spec/FUML/

What is fUML?fUML is an specification based on UML 2 that considers a subsets of model elements based on the superstructure UML 2 and its goal is to define a basic virtual machine for UML, enabling complaint models to be transformed into various executable forms for verification, integration, and deployment.

Key Word: Compiler

UML & fUMLOMG

InfrastructureSuperstructure19971995Rumbaugh, Jacobson and Booch200520112016Year0.81.11.21.52.02003

fUML2.4.1

1.020151.2.1UML 2.5

Scope of fUML SpecificationPrecise definition of the execution semantics of the subset from Superstructure UML 2.

This subset applies for the most general type of system, including physically distributed and concurrent systems with no assumptions about global synchronization

6

Scope of fUML Specification (cont.)Many executable UMLs are conceivable, based on executing use cases, activities, workflow, methods, or state machines and their combinations

7

fUML ConformanceSyntactic Conformance:A model is syntactically valid, if there a compliance with the abstract syntax defined for fUML.

Semantic Conformance:A model is semantically valid, if there a compliance with the execution semantic defined for fUML.

8

Conformance Level of UML

Extracted from: Superstructure UML version 2.2. pp. 3-7

9

Conformance Levels for fUMLCorresponding to UML conformance levels, There are three conformance levels defined for fUML (level L1, L2, and L3).Each conformance level is formally defined by merge operations, considering the languages units in the corresponding level. There have not been defined a new namespace for fUML.The Syntax is provided by UML 2 and the semantic is provided by fUML.

There are three conformance levels defined for fUML, corresponding to UML conformance levels L1, L2, and L3 (actuallycalled compliance levels in the UML 2 Superstructure Specification).10

Conformance Level L1

Kernel: Es un elemento de modelo definido dentro de la unidad de lenguaje ClasesThe Kernel package represents the core modeling concepts of the UML, including classes, associations, and package; The Kernel package is the central part of the UML, and reuses the Constructs and PrimitiveTypes packages of the InfrastructureLibrary. Kernel ---merge- Primitives TypesKernel ---merge- ConstructsEstudio a Detalle del Paquete Kernel -> Ver UML superestructure V2.2 pp 23- 32

Basic Behavior y Communication: Es un elemento de modelo definido dentro de la unidad de lenguaje Comportamiento General

Basic Behavior:The BasicBehaviors is a package that introduces the framework that will be used to specify behaviors. A variety of specification mechanisms are supported by the UML, such as automata StateMachine, Petri-net like graphs, informal descriptions (UseCase (from UseCases), or partially-ordered sequences of event occurrences (Interaction).The choice of specification mechanism is one of convenience and purpose; typically, the same kind of behavior could be described by any of the different mechanisms. Note that not all behaviors can be described by each of the different specification mechanisms, as these do not all have the same expressive power. However, for many behaviors, the choice of specification mechanism is one of convenience

Communication:

Its a package that adds the infrastructure to communicate between objects in the system and to invoke behaviors.

11

Conformance Level L2

BasicAction e IntermediateActions: Es un elemento de modelo definido dentro de la unidad de lenguaje Actions

Action: is the fundamental unit of executable functionality. The execution of an action represents some transformation or processing in the modeled system, be it a computer system or otherwise

An action execution represents the run-time behavior of executing an action within a specific behavior execution. As Action is an abstract class, all action executions will be executions of specific kinds of actions. When the action executes, and what its actual inputs are, is determined by the concrete action and the behaviors in which it is used.

IntermediateActivities: Es un elemento de modelo definido dentro de la unidad de lenguaje Activities

The intermediate level supports modeling of activity diagrams that include concurrent control and data flow, and decisions. It supports modeling similar to traditional Petri nets with queuing. in IntermediateActivities, they include forks and joins for creating and synchronizing concurrent subexecutions.

12

Conformance Level L3

CompleteActions: Es un elemento de modelo definido dentro de la unidad de lenguaje Actions

ActionCallAction: Son acciones que involucra aceptacion de eventos para iniciar acciones (llamadas sincronas)ActionEventAction: is an action that waits for the occurrence of an event meeting specified condition. CreateLinkObjectAction: This action is exclusively for creating links of association classes. It returns the created link objec ReadExtentAction is an action that retrieves the current instances of a classifier.

Entre otros

CompleteStructuredActivities y ExtraStructuredActivities: Es un elemento de modelo definido dentro de la unidad de lenguaje Activities

CompleteStructuredActivities :This level adds support for data flow output pins of sequences, conditionals, and loops. It depends on the basic layer for flows.

ExtraStructuredActivities:The extra structure level supports exception handling as found in traditional programming languages and invocation of behaviors on sets of values. It requires the structured level.13

About the Author

OMG Certified UML Professional 2 (OCUP 2) Foundational (Oct -15)

OMG Certified UML Professional (OCUP) Fundamental (Sep-08)

Master in System Engineer (USB 2013)

Bachelor in Computer Science (UCV - 2003)

Jos Asdrbal Asencio

Twitter: @asdrubalasencioMail: [email protected]: https://www.linkedin.com/in/asencio1/es