Post on 10-Feb-2015
1
Anastacio Antolino Hernández
“Técnicas de Especificación Formal”
Sistemas Distribuidos
Técnicas de Especificación 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
Téc. de Espec. FormalTéc. de Espec. Formal
• Apuntes de la materia “Lógica Computacional” – Dr. Juan Frausto Solís – ITESM Campus Morelos 1997
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.
Téc. de Espec. FormalTéc. de Espec. Formal
• Apuntes de la materia “Lógica Computacional” – Dr. Juan Frausto Solís – ITESM Campus Morelos 1997
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.
Téc. de Espec. FormalTéc. de Espec. Formal
• Apuntes de la materia “Lógica Computacional” – Dr. Juan Frausto Solís – ITESM Campus Morelos 1997
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
Téc. de Espec. FormalTé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
Téc. de Espec. FormalTé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
Téc. de Espec. FormalTéc. de Espec. Formal
Téc. de Espec. FormalTéc. de Espec. Formal
• Apuntes de la materia “Lógica Computacional” – Dr. Juan Frausto Solís – ITESM Campus Morelos 1997
.
Redes de Petri
Antes de laTransiciσn
Téc. de Espec. FormalTéc. de Espec. Formal
• Apuntes de la materia “Lógica Computacional” – Dr. Juan Frausto Solís – ITESM Campus Morelos 1997
.
Redes de Petri
Despues de laTransicion
Téc. de Espec. FormalTéc. de Espec. Formal
• Simulador de Redes de Petri DNAnet (ejemplo que viene en el Software)
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
Téc. de Espec. FormalTéc. de Espec. Formal
• Simulador de Redes de Petri DNAnet (ejemplo que viene en el Software)
Aquí el filósofo esta comiendo.
Problema de los Filósofos (en el Simulador DNAnet)
• Simulador de Redes de Petri DNAnet (ejemplo que viene en el Software)
Simulador de Redes de Petri
Téc. de Espec. FormalTéc. de Espec. Formal
• Simulador de Redes de Petri DNAnet (ejemplo que viene en el Software)
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
Téc. de Espec. FormalTéc. de Espec. Formal
• Simulador de Redes de Petri DNAnet (ejemplo que viene en el Software)
Filósofo 1 y 3 comiendo(E1 y E3)
Filósofos 2, 4 y 5 no pueden comer.
Simulador HPSim
• Simulador de Redes de Petri HPSim (ejemplo que viene en el Software)
Simulador de Redes de Petri
Lenguaje Unificado de Modelado
(UML)
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
Lenguaje Unificado de ModeladoLenguaje 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
Lenguaje Unificado de ModeladoLenguaje 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
Lenguaje Unificado de ModeladoLenguaje 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.
Lenguaje Unificado de ModeladoLenguaje 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
Lenguaje Unificado de ModeladoLenguaje 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
Lenguaje Unificado de ModeladoLenguaje 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
Lenguaje Unificado de ModeladoLenguaje 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
Lenguaje Unificado de ModeladoLenguaje 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
Lenguaje Unificado de ModeladoLenguaje Unificado de Modelado
DIAGRAMAS DE CASOS DE USOS
Lenguaje Unificado de ModeladoLenguaje 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
Lenguaje Unificado de ModeladoLenguaje Unificado de Modelado
DIAGRAMAS DE CLASES
Lenguaje Unificado de ModeladoLenguaje 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
Lenguaje Unificado de ModeladoLenguaje Unificado de Modelado
DIAGRAMAS DE SECUENCIA
Lenguaje Unificado de ModeladoLenguaje 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
Lenguaje Unificado de ModeladoLenguaje Unificado de Modelado
Fin
- Técnicas de Especificación Formal -- Técnicas de Especificación Formal -