Title: INSTITUTO TECNOLOGICO DE MORELIA
1Sistemas Distribuidos
Técnicas de Especificación Formal
Anastacio Antolino Hernández
2Técnicas de Especificación Formal
3Téc. de Espec. Formal
- Redes de Petri (PN)
- Representación gráfica natural de concurrencia.
- Definición formal.
- Modelo ejecutable asociado.
- Compatible con Análisis Automatizado.
- Es un grafo bipartita.
- Contiene plazas de entrada y arcos de salida
- Apuntes de la materia Lógica Computacional
Dr. Juan Frausto SolÃs ITESM Campus Morelos 1997
4Téc. de Espec. Formal
- Redes de Petri (PN)
- Fueron inventadas por Karl Adam Petri en 1962.
- Representan una alternativa para modelar
sistemas. - Modelan el comportamiento y estructura del
sistema, llevándolo al lÃmite. - Un sistema se compone, generalmente, de módulos
que interactuan entre sÃ. - Se puede considerar a cada módulo como un sistema.
- Apuntes de la materia Lógica Computacional
Dr. Juan Frausto SolÃs ITESM Campus Morelos 1997
5Téc. de Espec. Formal
- Redes de Petri (PN)
- Al desear conocer las condiciones de los módulos,
detenemos el sistema un momento en el tiempo. - Un sistema es un arreglo dinámico, que tiene
variaciones y no permanece estático. - El estado de un módulo depende de su historia, es
decir, de acciones dadas anteriormente. - Un sistema se compone, generalmente, de módulos
que interactuan entre sÃ. - Se puede considerar a cada módulo como un sistema.
- Apuntes de la materia Lógica Computacional
Dr. Juan Frausto SolÃs ITESM Campus Morelos 1997
6Téc. de Espec. Formal
- Componentes de las Redes de Petri
- Acciones, que conducen a un estado determinado
del módulo en el tiempo - Estados, situación actual del módulo
- Eventos, son las acciones que se dan en el
sistema y nos conducen a un Estado - Para que ocurra un Evento, son necesarias ciertas
condiciones
- Apuntes de la materia Lógica Computacional
Dr. Juan Frausto SolÃs ITESM Campus Morelos 1997
7Téc. de Espec. Formal
- Componentes de las Redes de Petri
- Precondiciones del Evento, son las condiciones
que se deben de cumplir para que ocurra
determinado Evento - La ocurrencia del Evento, conduce a otras
condiciones y es cuando se dan las
Postcondiciones - Para modelar un sistema en una PN debemos conocer
las condiciones y los eventos que se dan
- Apuntes de la materia Lógica Computacional
Dr. Juan Frausto SolÃs ITESM Campus Morelos 1997
8Téc. de Espec. Formal
- Componentes de las Redes de Petri
- Un Conjunto de Nodos
- Un Conjunto de Transiciones
- Un Conjunto de Estrada, y
- Un conjunto de Salida
- Plazas o Nodos, representadas con cÃrculos que
pueden contener Tokens. - Transiciones representadas por rectángulos o una
lÃnea vertical. - Arcos dirigidos, indicando el efecto del disparo
de transiciones que afecta plazas vecinas.
- Apuntes de la materia Lógica Computacional
Dr. Juan Frausto SolÃs ITESM Campus Morelos 1997
9Téc. de Espec. Formal
- Apuntes de la materia Lógica Computacional
Dr. Juan Frausto SolÃs ITESM Campus Morelos 1997
10Téc. de Espec. Formal
- Apuntes de la materia Lógica Computacional
Dr. Juan Frausto SolÃs ITESM Campus Morelos 1997
11Téc. de Espec. Formal
Problema de los Filósofos (ejemplo con 1) Hay 1
filósofo comiendo en la mesa. Para comer es
necesario que esté pensando y estén disponibles
los cubiertos(o palillos chinos). Aquà el
filósofo esta pensando
- Simulador de Redes de Petri DNAnet (ejemplo que
viene en el Software)
12Téc. de Espec. Formal
Aquà el filósofo esta comiendo.
- Simulador de Redes de Petri DNAnet (ejemplo que
viene en el Software)
13Simulador de Redes de Petri
Problema de los Filósofos (en el Simulador DNAnet)
- Simulador de Redes de Petri DNAnet (ejemplo que
viene en el Software)
14Téc. de Espec. Formal
- Problema de los Filósofos (ejemplo con 5)
- Hay 5 filósofos comiendo en la misma mesa.
- Para comer es necesario que cada filósofo agarre
2 tenedores. - Cuando un filósofo come, no pueden comer los que
se encuentran a su lado. - M1 .. M5 Filósofo en espera de comer
- C1 .. C5 Tenedores
- E1 .. E5 Filósofo comiendo
- t1..t5 r1..r5 transiciones
- Simulador de Redes de Petri DNAnet (ejemplo que
viene en el Software)
15Téc. de Espec. Formal
Filósofo 1 y 3 comiendo (E1 y E3) Filósofos 2, 4
y 5 no pueden comer.
- Simulador de Redes de Petri DNAnet (ejemplo que
viene en el Software)
16Simulador de Redes de Petri
Simulador HPSim
- Simulador de Redes de Petri HPSim (ejemplo que
viene en el Software)
17(No Transcript)
18Lenguaje Unificado de Modelado (UML)
19Lenguaje Unificado de Modelado
- El Lenguaje Unificado de Modelado (UML)
- Inició en octubre de 1994
- Se unificaron dos métodos Booch y OMT (Object
Modelling Tool) - En 1995, surge la primera versión
- En el 2002 surge UML 2.0
- El objetivo del modelado de un sistema, es
capturar las partes esenciales de tal sistema
20Lenguaje Unificado de Modelado
- UML
- Es un lenguaje que permite comunicar ideas y
también apoya en los procesos de análisis - Es un estándar que representa y modela la
información - Un modelo es una simplificación de la realidad
- Para facilitar el modelado, se realiza una
abstracción y se plasma gráficamente
21Lenguaje Unificado de Modelado
- Es un lenguaje que permite comunicar ideas y
brinda apoya en los procesos de análisis - Es un estándar que representa y modela la
información - Proporciona apoyo en las fases de análisis y de
diseño - Es un modelado visual independiente del lenguaje
de implementación
22Lenguaje Unificado de Modelado
- El Lenguaje Unificado de Modelado (UML)
- Es un lenguaje que permite comunicar ideas y
también apoya en los procesos de análisis. - Es un estándar que representa y modela la
información. - Proporcionando apoyo en las fases de análisis y
de diseño.
23Lenguaje Unificado de Modelado
- Ventajas
- Mayor rigor en la especificación
- Permite verificar y validar el modelado
- Permite automatizar procesos y permite generar
código a partir de los modelos, y a la inversa
24Lenguaje Unificado de Modelado
- OBJETIVOS
- Visualizar. Permite expresar gráficamente un
sistema - Especificar. Define las caracterÃsticas del
sistema antes de construirse - Construir. A partir del modelado se crean los
sistemas diseñados - Documentar. Los elementos gráficos sirven como
documentación
25Lenguaje Unificado de Modelado
- COMPONENTES
- Elementos son abstracciones de cosas reales o
ficticias (objetos, acciones, etc) - Relaciones relacionan los elementos entre sÃ
- Diagramas son colecciones de elementos con sus
relaciones
26Lenguaje Unificado de Modelado
- DIAGRAMAS DE VISUALIZACION
- Diagrama de casos de uso
- Diagrama de clases
- Diagrama de objetos
- Diagrama de secuencia
- Diagrama de colaboración
- Diagrama de estados
- Diagrama de actividades
- Diagrama de componentes
- Diagrama de despliegue
- Los diagramas más usados son casos de uso,
clases y secuencia
27Lenguaje Unificado de Modelado
- DIAGRAMAS DE CASOS DE USOS
- Un caso de uso se representa, como cada
interación con el sistema a desarrollar - Es decir, se está diciendo lo que se tiene que
hacer y cómo - Ejemplo Graficación de un sistema con Clientes,
Taquilleros y Jefes de Taquilla, y las
operaciones que pueden realizar
28Lenguaje Unificado de Modelado
DIAGRAMAS DE CASOS DE USOS
29Lenguaje Unificado de Modelado
- DIAGRAMAS DE CLASES
- Muestra un conjunto de clases, interfaces y sus
relaciones - Es el diagrama más usado para describir el diseño
de los sistemas orientados a objetos - En el ejemplo siguiente, se muestran las clases
globales, sus atributos y las relaciones
30Lenguaje Unificado de Modelado
DIAGRAMAS DE CLASES
31Lenguaje Unificado de Modelado
- DIAGRAMAS DE SECUENCIA
- Se muestra la interacción de los objetos que
componen un sistema - En el siguiente ejemplo, se muestra la
interacción de crear una nueva sala para un
espectáculo
32Lenguaje Unificado de Modelado
DIAGRAMAS DE SECUENCIA
33Lenguaje Unificado de Modelado
- El resto de los diagramas muestran distintos
aspectos del sistema a modelar - Para modelar el comportamiento dinámico del
sistema están los de interacción, colaboración,
estados y actividades - Enfocados a la implementación del sistema se
encuetran los diagramas de componentes y
displiegue
34Fin
- Técnicas de Especificación Formal -