1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

34
1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos

Transcript of 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

Page 1: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

1

Anastacio Antolino Hernández

“Técnicas de Especificación Formal”

Sistemas Distribuidos

Page 2: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

Técnicas de Especificación Formal

Page 3: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 4: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 5: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 6: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 7: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 8: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 9: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 10: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 11: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 12: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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.

Page 13: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 14: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 15: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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.

Page 16: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

Simulador HPSim

• Simulador de Redes de Petri HPSim (ejemplo que viene en el Software)

Simulador de Redes de Petri

Page 17: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.
Page 18: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

Lenguaje Unificado de Modelado

(UML)

Page 19: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 20: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 21: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 22: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 23: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 24: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 25: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 26: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 27: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 28: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

DIAGRAMAS DE CASOS DE USOS

Lenguaje Unificado de ModeladoLenguaje Unificado de Modelado

Page 29: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 30: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

DIAGRAMAS DE CLASES

Lenguaje Unificado de ModeladoLenguaje Unificado de Modelado

Page 31: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 32: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

DIAGRAMAS DE SECUENCIA

Lenguaje Unificado de ModeladoLenguaje Unificado de Modelado

Page 33: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

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

Page 34: 1 Anastacio Antolino Hernández “Técnicas de Especificación Formal” Sistemas Distribuidos.

Fin

- Técnicas de Especificación Formal -- Técnicas de Especificación Formal -