La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

LEDA Un Lenguaje para la Especificación y Validación de Arquitecturas de Software Carlos Canal Velasco Depto. de Lenguajes y Ciencias de la Computación.

Presentaciones similares


Presentación del tema: "LEDA Un Lenguaje para la Especificación y Validación de Arquitecturas de Software Carlos Canal Velasco Depto. de Lenguajes y Ciencias de la Computación."— Transcripción de la presentación:

1 LEDA Un Lenguaje para la Especificación y Validación de Arquitecturas de Software Carlos Canal Velasco Depto. de Lenguajes y Ciencias de la Computación Universidad de Málaga

2 Carlos Canal Velasco Depto. de Lenguajes y Ciencias de la Computación Febrero de 2001/16 Presentación LEDA l Lenguaje composicional. l Descripción del comportamiento. l Análisis de propiedades. l Representación de arquitecturas dinámicas. l Prototipado del sistema. l Mecanismos de refinamiento y parametrización. l Desarrollo evolutivo e incremental. 1

3 Carlos Canal Velasco Depto. de Lenguajes y Ciencias de la Computación Febrero de 2001/16 Lenguajes de descripción de arquitectura §Componentes. Elementos computacionales y de datos. Descritos mediante los papeles abstractos que juegan. §Conectores. Mecanismos de interacción. §Configuraciones. Descripción de la arquitectura del sistema. §Ejemplos: Wright, Darwin, UniCon, Rapide, C2. Antecedentes 2

4 Carlos Canal Velasco Depto. de Lenguajes y Ciencias de la Computación Febrero de 2001/16 Álgebras de procesos §Marco semántico formal de los lenguajes concurrentes. §Especificación del sistema como un conjunto de procesos. Primitivas de composición, comunicación y sincronización. §Análisis de diversas propiedades: Equivalencia de procesos. Viveza. Refinamiento, etc. §Simulación del sistema. §Ejemplos: CCS, ACP, CSP, cálculo . Antecedentes 3

5 Carlos Canal Velasco Depto. de Lenguajes y Ciencias de la Computación Febrero de 2001/16 Especificación de arquitecturas §Componentes especificados mediante agentes. l Composición paralela de componentes. l Interacción a través de enlaces compartidos. §La arquitectura no se muestra de forma explícita. §Dificultad para realizar análisis. ConcentradorReceptorEmisor e1e1 e2e2 s Fundamentos formales 4

6 Carlos Canal Velasco Depto. de Lenguajes y Ciencias de la Computación Febrero de 2001/16 Roles n Describen parcialmente la interfaz de un componente. Modelan su interacción con otro componente. Se refieren a un subconjunto de sus enlaces. n Se definen como una proyección del componente: P  Comp / fn(Comp)-fn(P) Concentrador Salida Entrada e1e1 e2e2 s Fundamentos formales 5

7 Carlos Canal Velasco Depto. de Lenguajes y Ciencias de la Computación Febrero de 2001/16 Componentes §Representan módulos o partes del sistema. No distinción entre componentes y conectores. §Su especificación consta de: Constantes, variables. Interfaz. Composición. Conexiones. §Un sistema es una instancia de un componente. instance miSistema : Sistema; Lenguaje de descripción 6

8 Carlos Canal Velasco Depto. de Lenguajes y Ciencias de la Computación Febrero de 2001/16 Conexiones §Muestran explícitamente la arquitectura del sistema. l Como conexión de roles de los componentes. §Varios tipos: l Estáticas. l Reconfigurables. l Dinámicas. §Análisis automático de su compatibilidad. l Asegura la ausencia de bloqueos. l Permite la composición con éxito del sistema. Lenguaje de descripción 7

9 Carlos Canal Velasco Depto. de Lenguajes y Ciencias de la Computación Febrero de 2001/16 Composición con éxito CompComp 4 Comp 3 Comp 2 Fundamentos formales PQ 8

10 Carlos Canal Velasco Depto. de Lenguajes y Ciencias de la Computación Febrero de 2001/16 Composición con éxito CompComp 4 Comp 3 Comp 2 Fundamentos formales P3P3 P2P2 P1P1 Q1Q1 Q 21 Q3Q3 Q 22 9

11 Carlos Canal Velasco Depto. de Lenguajes y Ciencias de la Computación Febrero de 2001/16 Relación de herencia §Basada en la existente en orientación a objetos. Un rol hereda el comportamiento de su progenitor. Puede añadir y redefinir comportamiento. §La herencia preserva la compatibilidad. El rol derivado es más fiable que su progenitor. §Permite el reemplazamiento con éxito. En el contexto de cualquier arquitectura. Fundamentos formales 10

12 Carlos Canal Velasco Depto. de Lenguajes y Ciencias de la Computación Febrero de 2001/16 Reemplazamiento con éxito Comp 3 Comp 4 CompComp 2 Fundamentos formales P1P1 P2P2 P3P3 11

13 Carlos Canal Velasco Depto. de Lenguajes y Ciencias de la Computación Febrero de 2001/16 Comp 3 Comp 4 Comp 2 R1R1 R3R3 R2R2 Comp’ Reemplazamiento con éxito Fundamentos formales 12

14 Carlos Canal Velasco Depto. de Lenguajes y Ciencias de la Computación Febrero de 2001/16 Refinamiento de arquitecturas §Basado en el reemplazamiento de componentes. §Patrones de arquitecturas. §Reutilización de diseños arquitectónicos. §Permite el desarrollo incremental. instance csTF : ClienteServidor [ bateria : BateriaTF; ]; BateríaTF ClienteServidor Cliente batería : Batería Lenguaje de descripción 13

15 Carlos Canal Velasco Depto. de Lenguajes y Ciencias de la Computación Febrero de 2001/16 Generación de prototipos §Obtener un prototipo ejecutable en Java. Basado en los patrones de interacción descritos en los roles. §Separación de aspectos de computación y coordinación. El mecanismo de comunicación debe permanecer oculto. §Implementación fiel a la especificación original. Conservar las propiedades demostradas en el análisis. §Fomentar el desarrollo evolutivo e incremental. Permitir la manipulación del código por el diseñador. Proceso de desarrollo 14

16 Carlos Canal Velasco Depto. de Lenguajes y Ciencias de la Computación Febrero de 2001/16 Conclusiones §Descripción de arquitecturas dinámicas. Topología cambiante durante la ejecución del sistema. §Verificación de propiedades. Compatibilidad y herencia de comportamiento. §Mecanismos de extensión y refinamiento. Basados en la relación de herencia. §Definición de arquitecturas genéricas. Descripción de patrones arquitectónicos instanciables. §Guía para el proceso de desarrollo. Iterativo e incremental a partir de la especificación. Conclusiones 15

17 Carlos Canal Velasco Depto. de Lenguajes y Ciencias de la Computación Febrero de 2001/16 Trabajo futuro §Análisis de otras propiedades de seguridad y viveza. l Comprobando la compatibilidad del sistema y la propiedad. §Expresión de propiedades no funcionales. l Mediante la combinación de formalismos adecuados. §Profundizar en los mecanismos de herencia y refinamiento. l Reemplazamiento dentro de un contexto. l Refinamiento de acciones. §Desarrollo de herramientas. l Edición, análisis, generación de código, etc. l Integración con otros lenguajes. §Aplicación a otros modelos y notaciones. Conclusiones 16


Descargar ppt "LEDA Un Lenguaje para la Especificación y Validación de Arquitecturas de Software Carlos Canal Velasco Depto. de Lenguajes y Ciencias de la Computación."

Presentaciones similares


Anuncios Google