El documento resume la especificación fUML (Fundational UML), la cual define una máquina virtual para interpretar modelos UML ejecutables. fUML especifica la semántica de ejecución de un subconjunto de UML 2 que incluye sistemas concurrentes y distribuidos. La especificación también define tres niveles de conformidad (L1, L2, L3) para modelos fUML y describe brevemente al autor de la presentación.
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Fuml
1. Semántica de un subconjunto
Fundacional para Modelos
Ejecutables UML
Fundacional UML
Realizado por: José Asdrúbal Asencio
Agosto, 2016
2. Conformidad
La presentación hace referencia a la
especificación extraída en su versión 1.2.1
publicada en Enero de 2016. fuente:
http://www.omg.org/spec/FUML/
3. ¿Qué es fUML?
fUML es una especificación basada en UML 2,
considerando un subconjunto particular de elemento de
modelo provenientes de su superestructura y cuya
finalidad es la de definir una maquina virtual que
interprete modelos.
Palabras Claves: Compilador
5. Alcance de la Especificación fUML
1. Definición precisa de la semántica de
ejecución de un subconjunto de UML 2.
2. El subconjunto aplica a la mayoría de los
tipos de sistemas: Incluye Sistemas
concurrentes y distribuidos físicamente, sin
ninguna hipótesis acerca de sincronización
global.
6. Alcance de la Especificación fUML
1. Los modelos ejecutables en UML son
concebidos en la ejecución de Casos de Usos,
Flujos de Trabajos, Métodos o Máquinas de
Estados y en su combinación.
2. En resumen, se define una Maquina Virtual
para UML que habilita conformidad en
Modelos en forma ejecutable para
verificación, integración y despliegue.
7. Conformidad fUML
• Conformidad Sintáctica:
– Un modelo es conforme si cumple con la sintaxis
abstracta definida para fUML.
• Conformidad Semántica:
– Un modelo es conforme si cumple con la
semántica definida para fUML.
9. Niveles de Conformidad fUML
• Al Igual que los niveles de conformidad de
UML, se definen 3 Niveles: L1, L2 y L3
• Cada Nivel de conformidad es definido
formalmente por las operaciones merge con
las unidades de lenguaje en cada nivel;
• No se ha definido un nuevo espacio de
nombre para fUML.
• La sintaxis es provista por UML 2 y la
semántica es provista por esta especificación.
13. Sobre el Autor de la Presentación
Certificado UML OCUP 2 – Fundacional (Oct -15)
Certificado UML OCUP – Fundamental (Sep-08)
Magister en Ingeniería en Sistemas (USB – 2013)
Licenciado en Computación (UCV - 2003)
José Asdrúbal Asencio
Twitter: @asdrubalasencio
Correo: Asdrubal.asencio@gmail.com
Linkedin: https://www.linkedin.com/in/asencio1/es
Notas del editor
Cada Nivel de Conformidad es definido a traves de operaciones merge
Unidades de Lenguajes: Los conceptos de Modelamiento en UML estan agrupados en unidades de lenguaje.
A language unit consists of a collection of tightlycoupled modeling concepts that provide users with the power to represent aspects of the system under study according to a particular paradigm or formalism. For example, the State Machines language unit enables modelers to specify discrete event-driven behavior using a variant of the well-known statecharts formalism, while the Activities language unit provides for modeling behavior based on a workflow-like paradigm
Cada Nivel de Conformidad es definido a traves de operaciones merge
Unidades de Lenguajes: Los conceptos de Modelamiento en UML estan agrupados en unidades de lenguaje.
A language unit consists of a collection of tightlycoupled modeling concepts that provide users with the power to represent aspects of the system under study according to a particular paradigm or formalism. For example, the State Machines language unit enables modelers to specify discrete event-driven behavior using a variant of the well-known statecharts formalism, while the Activities language unit provides for modeling behavior based on a workflow-like paradigm
Kernel: Es un elemento de modelo definido dentro de la unidad de lenguaje Clases
The 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 Types
Kernel ---merge- Constructs
Estudio 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:
It’s a package that adds the infrastructure to communicate between objects in the system and to invoke behaviors.
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.
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.
Un locus (en latín, lugar; el plural es loci, pronunciado loki)1 es una posición fija en uncromosoma, como la posición de un gen o de un marcador (marcador genético). En biología, y, por extensión, en computación evolutiva, se le usa para identificar posiciones de interés sobre determinadas secuencias