Sei sulla pagina 1di 9

2010

ITIC INTENSIVO

Delia Monserrat
Zavala Reynoso

[REPORTE]
Este reporte contiene información sobre las redes de petri, diagramas de Actividades de roles (RAD), BPnm y
patrones de modelado
Table of Contents
Redes de Petri ......................................................................................................................................................... 3
Generalidades de las redes de Petri.................................................................................................................... 3
Aspectos de Modelación con redes de Petri ....................................................................................................... 3
Evolución de una red de Petri ............................................................................................................................. 4
Ejemplo y Caso Práctico de Modelación de protocolos de comunicación......................................................... 4
Propiedades de comportamiento ....................................................................................................................... 5
Alcanzabilidad ................................................................................................................................................. 5
Acotamiento .................................................................................................................................................... 5
Activa ............................................................................................................................................................... 5
Reversibilidad y estado inicial ......................................................................................................................... 6
Cubrir ............................................................................................................................................................... 6
Persistencia ..................................................................................................................................................... 6
Distancia sincrónica......................................................................................................................................... 6
Equidad Acotada ............................................................................................................................................. 6
Equidad incondicional o global ....................................................................................................................... 7
Métodos de Análisis ............................................................................................................................................ 7
Diagrama de Actividades de Roles (RAD) ................................................................................................................ 7
Caso Práctico ....................................................................................................................................................... 8
BPMN (Business Process Modeling Notation) ........................................................................................................ 8
Patrones de Modelado ............................................................................................................................................ 9
Patrones básicos de control de flujo ................................................................................................................... 9
Secuencia......................................................................................................................................................... 9
Redes de Petri

Generalidades de las redes de Petri


El concepto de red de Petri apareció en 1962 con la tesis doctoral de Carl Adam Petri ``Comunicación con
Autómata'' en la Universidad de Bonn. A partir de entonces se difundió en Europa y Estados Unidos, y ya en
1970 aparecieron grupos de investigación que incorporaban las redes de Petri a sus trabajos y/o que se
dedicaban a estudiar sus propiedades.

Las redes de Petri se pueden incorporar informalmente en cualquier área o sistema que pueda describirse
gráficamente como diagrama de flujo y que necesitan algunos medios de representar actividades paralelas o
concurrentes. Particularmente, en el área de desarrollo de software, las redes de Petri son una herramienta de
validación que puede aplicarse en distintas etapas en el desarrollo de sistemas.

Sin embargo, el punto débil de las redes de Petri radica en la complejidad del problema, esto es, los modelos
basados en redes de Petri, siempre tienden a ser muy grandes para su análisis. Con el fin de solucionar este
problema se han desarrollado técnicas de reducción y extensiones a las redes de Petri. Por lo general, para
aplicar las redes de Petri a un problema, se le realizan modificaciones o restricciones.

Algunas áreas donde se aplican las redes de Petri son: evaluación de rendimiento, protocolos de comunicación,
modelado y análisis de sistemas distribuidos, sistemas de bases de datos distribuidas, programas paralelos y
concurrentes.

Aspectos de Modelación con redes de Petri


Las redes de Petri se prestan para la modelación si se conoce la estructura causa-evento de un sistema y se
utiliza para definir el modelo. Los lugares representan causas o condiciones, y las transiciones eventos.

En sistemas donde se conoce la estructura causa-evento, las redes de Petri resultan ser una excelente herramienta
para establecer un modelo de dicho sistema. En esta representación gráfica, los nodos son lugares que
representan causas o condiciones, y las transiciones eventos. Las redes de Petri modelan sistemas dinámicos
discretos. En este orden de ideas, los eventos se generan, en una parte local del estado actual del sistema, como
variables discretas.

Una red de Petri es una estructura matemática, que permite una representación gráfica, en donde se incluyen los
elementos: lugares transiciones, arcos y tokens, en un diagrama que tiene una sintaxis.

 Los lugares son los elementos pasivos de la red de Petri y, junto con los tokens, se utilizan para modelar
los estados del sistema.
 Las transiciones son los elementos activos de la red de Petri, y representan las acciones de un sistema.
Estas acciones originan cambios en el estado de la red.
 El conjunto de lugares, transiciones y arcos son finitos y estáticos. Lo que indica que el sistema no
puede tener más causas y eventos que los que originalmente tiene representados en el modelo.
 El conjunto de tokens y marcas pueden cambiar durante la ejecución de la red, describiendo las
características dinámicas del sistema modelado.
La propiedad de valor de peso a los arcos, hace posible que se especifique el número de tokens que consume la
transición de los lugares de entrada y el conjunto de tokens que produce en la salida. Las redes de Petri de
capacidad finita y peso en los arcos se les llaman sistemas de lugar/transición.

Las clases originales de redes de Petri, y los sistemas de lugar/transición son muy conocidos por su uso en
modelos de un alto grado de abstracción que tienen que analizarse de manera formal. Pero si el modelo debe
respetar más detalles del sistema, o si se debe respetar el tiempo en el modelo, entonces se deben desarrollar más
clases de redes de Petri que consideran los aspectos deseados del modelo. Así, surgen las redes de Petri
coloreadas, estocásticas, y orientadas a objetos, por mencionar algunas, que en general forman el grupo de redes
de Petri extendidas.

Ejemplos de modelación con redes de Petri son el flujo de información y los protocolos de comunicación.

Evolución de una red de Petri

Ejemplo y Caso Práctico de Modelación de protocolos de comunicación


Los protocolos de comunicación son otra área donde las redes de Petri se pueden utilizar para representar
algunas características específicas y esenciales. Frecuentemente las propiedades, como activa y seguridad, de las
redes de Petri se utilizan como criterios de validación en los protocolos de comunicación. La red de Petri que se
muestra en la figura 1.3 es un ejemplo muy sencillo de un protocolo de comunicación entre dos procesos. La
figura 1.4 muestra la representación de una espera de proceso no determinista donde tr1, tr2 o tout se disparan si se
recibe la respuesta 1,2, o no hay respuesta en un tiempo especificado (tout).
Figure 1.3: Modelo simplificado de un Figure 1.4: Representación de una espera no
protocolo de comunicación. determinista en un proceso.

Propiedades de comportamiento
La fuerza principal de las redes de Petri, son su soporte para el análisis de propiedades y problemas asociados
con sistemas concurrentes. Las propiedades de comportamiento de las redes de Petri dependen de la marca
inicial M0, estas propiedades son alcanzabilidad, acotamiento, activa, reversibilidad y estado inicial, persistencia,
distancia sincrónica.

Alcanzabilidad
La alcanzabilidad es una base fundamental para estudiar las propiedades dinámicas de cualquier sistema. El
disparo de una transición habilitada cambiará la distribución de los tokens en una red, de acuerdo a las reglas de
transición mencionadas en la definición 3. Una secuencia de disparos dará como resultado una secuencia de
marcas. Se dice que una marca Mn es alcanzable de una marca M0 si existe una secuencia de disparos que

transformen a M0 en Mn. Un secuencia de disparos se denota por o

simplemente por En este caso Mn es alcanzable por M0 y se denota como El


conjunto de todas las marcas posibles alcanzables por M0 en una red (N, M0) se denota como R(N, M0). El
conjunto de todas las secuencias de disparo desde M0 en una red (N,M0) se denota como L(N,M0).

El problema de alcanzabilidad en las redes de Petri consiste en encontrar una deseada.

Acotamiento
Se dice que una red de Petri (N, M0) es k-acotada o simplemente acotada si el número de tokens en cada lugar de
la red no excede a un número finito k en cada marca alcanzable desde M0. Se dice que una red de Petri es libre si
es 1-acotada.

Activa
El concepto de red activa está muy relacionado con la ausencia completa de candados mortales en sistemas
operativos. Se dice que una red de Petri está activa sí, no importando que marca se alcance desde M0, si aún se
puede realizar una secuencia de disparo. Esto significa que una red de Petri activa garantiza la ausencia total de
candados mortales, no importando la secuencia de disparos que se seleccione.

La propiedad de red activa es el ideal para muchos sistemas, sin embargo, verificar esta propiedad en sistemas
grandes resulta poco práctico y muy costoso.
La condición activa se define (o mide) en diversos niveles:

Se dice que una transición t en una red de Petri (N, M0) es:

1. Muerta (L0-viva) si t nunca se dispara en ninguna secuencia en L(N,M0).

2. L1-activa (potencialmente disparable) si t puede dispararse al menos una vez en alguna secuencia en L(N,M0).

3. L2-activa si dado cualquier entero positivo k, t puede dispararse al menos k en alguna secuencia en L(N, M0).

4. L3-activa si t aparece infinitamente, frecuentemente en alguna secuencia en L(N,M0).

5. L4-activa o activa si t es L1-activa para cualquier marca en R(N,M0).

Se dice que una red de Petri (N, M0) es Lk-viva si cualquier transición en la red es Lk-activa (con k=0, 1, 2, 3,4).

Reversibilidad y estado inicial

Se dice que una red de Petri es reversible si M0 es alcanzable para cualquier marca Así, una
red reversible regresará a su estado inicial.

Cubrir

Se dice que una marca M en una red de Petri (N, M0) se puede cubrir si existe una marca tal

que para cada p en la red. La propiedad de cubrir está muy relacionada con la propiedad L1-
activa de las transiciones. Sea M la marca mínima para habilitar la transición t. Entonces t está muerto sí y solo
sí, M no se puede cubrir. El corolario a lo anterior nos dice que si t es L1-activa sí y solo sí, M se puede cubrir.

Persistencia
Se dice que una red de Petri (N, M0) es persistente, si para cualesquier par de transiciones habilitadas, el disparo
de una transición no deshabilita a la otra. Una transición en una red persistente, estará habilitada hasta que se
dispare. Esta noción de persistencia es muy utilizada en el contexto de esquemas de programas paralelos y
circuitos asíncronos altamente independientes.

Distancia sincrónica
La noción de distancia sincrónica es un concepto fundamental introducido por C.A. Petri. Es una métrica muy
relacionada al grado de dependencia mutua entre dos eventos en un sistema de condición/evento. Definiremos la
distancia sincrónica entre dos transiciones t1 y t2 en una red de Petri (N, M0) por

Donde es una secuencia que inicia en cualquier marca M en R(N, M0) y es el número de veces que la
transición ti (con i=1,2) dispara en .

Equidad Acotada
Se dice que dos transiciones t1 y t2 están en una relación de equidad acotada si el número máximo de veces en
que una dispara mientras la otra no, está acotada. Se dice que una red de Petri (N, M0) es de equidad acotada si
cada par de transiciones en la red está en una relación equidad acotada.
Equidad incondicional o global
Se dice que una secuencia es de equidad incondicional si es finita o si cada transición en la red aparece
infinitamente en . Se dice que una red (N, M0) es de equidad incondicional si cada secuencia de disparo de

es de equidad incondicional.

Métodos de Análisis
Los métodos de análisis para las redes de Petri se pueden clasificar en tres grupos generales:
1. Método de árbol de alcanzabilidad o cubrimiento.
2. Enfoque de matriz de ecuaciones.
3. Técnicas de reducción o descomposición.

Diagrama de Actividades de Roles (RAD)


Las bases de modelar con RADs fueron introducidas de una manera de representar el comportamiento de
procesos coordinados, esta notación fue ampliada y actualizada por Martin Ould en 1995. La figura 1 muestra
los elementos principales para representar gráficamente un RAD y una breve descripción de los mismos.

En la figura 2 se muestra un RAD, donde los roles son representados por un rectángulo con una etiqueta en la
parte de arriba del mismo, especificando el nombre del rol y del agente responsable de éste. Dentro del rol se
dibujan las actividades, las cuales son unidades atómicas del trabajo que la gente realiza, en forma de cuadros
pequeños con su correspondiente etiqueta de nombre a su lado derecho; las interacciones de los roles son
representadas por líneas remarcadas, las cuales van desde la actividad del rol donde se inicializó la interacción
hasta la actividad del otro rol, representan entonces la comunicación y coordinación entre dos roles; las líneas
verticales que conectan elementos del RAD son llamadas líneas de estado encargadas de señalar la transición
(estados) entre elementos.
Los elementos son cuadros que representan actividades, círculos de selección, triángulos para actividades en
paralelo y terminadores.
El elemento condicional es seguido de rutas alternativas o paralelas. Una trayectoria alternativa depende de la
condición presentada para tomar la secuencia de actividades a realizar (su notación gráfica es por medio de un
círculo para cada opción), mientras que en las trayectorias paralelas (representadas con triángulos) el orden de
las actividades a realizar no es significativo. No importa cuál de las actividades en paralelo se realiza primero,
sólo es necesaria la culminación de todas las actividades en paralelo antes de continuar con la siguiente
actividad.

El proceso indefinido, representado como una elipse, indica un comportamiento que todavía no ha sido definido.
Además, existen dos elementos para representar que el flujo del proceso del rol es inicializar a otro rol
(inicializa rol) y el que inicializa a un rol externo que no está siendo modelado.

Caso Práctico

Se modela el subproceso del caso de estudio


recepción de derechohabientes para solicitar
atención médica, donde el objetivo del subproceso
es que el derechohabiente reciba atención médica
por parte de su médico familiar. En la misma figura
se muestran los tres agentes involucrados el
derechohabiente, la asistente médico y el médico
familiar, con sus respectivos roles esperando
consulta en sala de espera, recibiendo solicitud de
atención médica y consultando y diagnosticando.

BPMN (Business Process Modeling Notation)


Es un nuevo estándar de modelado de procesos de negocio, en donde se presentan gráficamente las diferentes
etapas del proceso del mismo. La notación ha sido diseñada específicamente para coordinar la secuencia de
procesos y los mensajes que fluyen entre los diferentes procesos participantes.
BPMN (Business Process Modeling Notation) y las extensiones de UML que te ayudarán a modelar la situación
actual y deseada en los procesos de negocio de tu cliente.

El mundo de los procesos de negocio ha cambiado dramáticamente en los últimos años. Un proceso de este tipo
abarca múltiples participantes, y la coordinación puede ser compleja. Antes de BPMN no había una técnica de
modelado estándar desarrollado para encargarse de estos asuntos. BPMN ha sido desarrollado para proveer a los
usuarios de una notación de uso libre. Esto beneficiará a los usuarios de la misma forma que UML benefició el
mundo de la ingeniería de software.

BPMN está dirigido a gerentes, directores, dueños de empresas, ingenieros de procesos, analistas de negocios,
analistas de sistemas, administradores de proyectos, responsables de calidad y todo aquel que necesita definir,
documentar y hacer más eficientes sus procesos de negocio con el estándar más avanzado y aceptado a nivel
internacional.

Patrones de Modelado
Un patrón es la abstracción de una forma concreta el cual mantiene a repetirse en un contexto específico no-
arbitrario.

Los patrones se han definido por diferentes variables, algunas se describen a continuación:
Condiciones que se definen para que el patrón sea aplicable
Ejemplos de algunas situaciones de negocio
Problemas.
Problemas típicamente semánticos, de la realización en idiomas actuales
Implementación de soluciones.

En un workflow, los patrones son la secuencia lógica de diagramación de un requisito del negocio. Para modelar
adecuadamente un proceso bajo los estándares de BizAgi, es necesario conocer el estándar BPMN y los patrones
de workflow identificados por la investigación del profesor Van Der Aalst2. “El objetivo del desarrollo de los
patrones fue describir la capacidad potencial que un workflow podría tener durante el rendimiento del proceso
de negocio. El rango de patrones va desde los más simples a los más complejos y comprende los
comportamientos esperados en la mayoría de los modelos de procesos.” [White Stephen A. Process Modeling
Notation and workflow Patterns]

El propósito del presente documento es ilustrar la implementación de los patrones bajo el estándar de BPMN.
Estos patrones se encuentran agrupados de la siguiente manera:

1. Patrones Básicos de Control de Flujo


2. Patrones de Sincronización y Enrutamiento Avanzada
3. Patrones Estructurales
4. Patrones que involucran múltiples instancias
5. Patrones que se basan en el estado del sistema
6. Patrones de Cancelación

Patrones básicos de control de flujo


Secuencia
Secuencia es el patrón básico de todo flujo de trabajo. Se requiere cuando hay una dependencia entre dos
actividades, de tal forma que una actividad no pueda iniciarse antes de que otra haya terminado.

Potrebbero piacerti anche