Generación de Aplicaciones a partir de Descripciones Arquitectónicas en Extensiones de xADL Nadia Gámez Directoras: Lidia Fuentes y Mónica Pinto Universidad.

Slides:



Advertisements
Presentaciones similares
U.M.L A/Gx. Diego Gutiérrez Application Analysis and Design.
Advertisements

Arquitecturas de administración de redes y sus submodelos
METODOLOGÍA ORIENTADA A OBJETOS CARACTERISTICAS DEL PROCESO
Red Social: “Un millón de Amigos”.
Lenguaje Unificado de Modelado
ENTERPRISE SOA Arquitectura Avanzada – Universidad CAECE 2011
CRISP-DM (
Aplicación de MDA a la Ingeniería del Conocimiento
Arquitectura de software dirigida por modelos (Model-Driven Architecture) Liliana Favre UNCPBA 2006.
Introducción 1 Puntos Clave –La orientación a objetos representa un cambio radical en los métodos tradicionales de creación de software –Los métodos tradicionales.
Tipos de Servicios Web.
Aplicación de diseño de clases y generación de código, orientado hacia la arquitectura multicapas y el mapeo objeto/relacional Juan Timoteo Ponce Ortiz.
Presentación del estado del arte
DIAGRAMAS DE CLASES Completando los diagramas de interacción, es posible identificar la especificación de las clases que participarán en la solución indicando.
Ingeniería del Software
Versión 2004 Enrique Bañuelos Gómez
Andrés Acuña Steven Walker
1  2007 Universidad de Las Américas - Escuela de Ingeniería - Aplicaciones Internet - Dr. Juan José Aranda Aboy IMPLEMENTACION DE APLICACIONES INTERNET.
M.S.C. Ivette Hernández Dávila
BLENDED-LEARNING UTILIZANDO LABORATORIOS VIRTUALES Y REMOTOS
Requerimientos No Funcionales
El Proceso Software Ingeniería en Informática
STARUML.
Jorge Villalobos Jorge Arias Darío Correal
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.
Invocación dinámica de servicios web orientada a aspectos
Ingeniería de Software
Viviana Poblete López Módulo: Modelo de Datos
Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo Patrones de diseño Patrones de diseño.
Ingeniería de Software Orientado a Objetos
Diseño e Implementación
Contenido: 1- Que es el .Net Framework 2- Arquitectura en .Net
Unidad 4 Diseño Arquitectónico Basado en la Funcionalidad
Poder Expresivo de UML 2.0 para especificar arquitecturas de Software
Planeación con Planning Tool y DotProject Grupo de Construcción de Software Facultad de Ingeniería Universidad de los Andes Rubby Casallas, Andrés Yie.
CONTEXTA Introducción a FEDORA y modelos de extensión que provee Pablo Inostroza Valdera 11 de julio de 2007.
Administración Proyectos Jorge Baracaldo Robin Ochoa.
“ReTaskXML: Especificación de modelos de tareas a partir de especificaciones de interfaces de usuario Universidad de Castilla-La Mancha Escuela Politécnica.
Haga clic para modificar el estilo de subtítulo del patrón 28/04/09 Por ARLEDY SARRIA MOLINA NAZLY DIAZ ARIZA JHOANNA MARQUELLA DESARROLLO DE SOFTWARE.
Ingeniería de Software: Metodologías Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de:
Identificación de Atributos de Calidad en Requerimientos Tesis de Grado de Francisco Bertoni y Sebastián Villanueva Dirigida por la Dra. Claudia Marcos.
Universidad Nacional de San Juan Facultad de Ciencias Exactas, Físicas y Naturales “WEB SERVICES” Integrantes: Ene Adriana Guevara Vanina Martínez Cintia.
Universidad Central de Venezuela Facultad de Ciencias Postgrado en Ciencias de la Computación Sistemas Distribuidos Albany Márquez.
Arquitectura de Software
Towards an ontology-based approach for Deriving product architectures Hacia un enfoque basado en ontología para derivar arquitecturas de producto.
Distribución y Movilidad en Arquitecturas Software Orientadas a Aspectos Nour Ali Director: Isidro Ramos NODO: UPV.
Arquitecturas de Sistemas Interactivos: Introducción
Importancia en la efectividad del:
Técnicas de recopilación de información QUERCUS Software Engineering Group. Departamento de Informática. Universidad de Extremadura. Abril 2004 – Pablo.
INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE
El modelo de análisis tiene como objetivo generar una arquitectura de objetos que sirva como base para el diseño posterior del sistema. Dependiendo del.
Construcción de Sistemas Colaborativos (Arquitectura y construcción)
Métrica v2.1 Técnicas: Modelado de datos (Parte 1)
Implementación de la Arquitectura Empresarial
Un conjunto de perfiles UML para el modelado conceptual de minería de datos sobre almacenes de datos Tesis Doctoral José Jacobo Zubcoff Vallejo 26 de Junio.
Ingeniería de Requisitos
UML.
Unidad 3 MODELO DE ANALISIS.
Actividades en el Proceso de desarrollo de Software
MAESTRIA EN CIENCIAS DE LA COMPUTACION Comparación de implementación de sistemas distribuidos usando COM y CORBA Jesús Gil Muñoz Julio 2001.
Un conjunto de perfiles UML para el modelado conceptual de minería de datos sobre almacenes de datos Tesis Doctoral José Jacobo Zubcoff Vallejo 26 de Junio.
Investigación preliminar  Entender la naturaleza del problema  Definir el alcance y las restricciones o limitaciones del sistema  Identificar los beneficios.
LE, EI, Profesor Ramón Castro Liceaga UNIVERSIDAD LATINA (UNILA) IV. IMPLEMENTACIÓN DE COMPONENTES.
PRESENTACION DE INGENIERIA ORIENTADA A OBJETOS
CICLO DE VIDA DE UN SOFTWARE. Es el conjunto de los programas de cómputo, procedimientos, reglas, documentación y datos asociados, que forman parte de.
Presentación De UML Lenguaje estándar para escribir planos de software Se usa para visualizar, especificar, construir y documentar los artefactos de un.
Requerimientos del software
Universidad Nacional de Ingeniería Comprendiendo los Fundamentos de
Una propuesta metodológica para el desarrollo de plataformas de educación a distancia que incorporen estilos de aprendizaje Pedro Salcedo L M. Angélica.
Transcripción de la presentación:

Generación de Aplicaciones a partir de Descripciones Arquitectónicas en Extensiones de xADL Nadia Gámez Directoras: Lidia Fuentes y Mónica Pinto Universidad de Málaga Málaga, Julio 2007

Julio, 2007 PFC 2 Agenda Antecedentes Objetivos xADL 2.0 El LDA de MultiTEL y MultiTELxADL DAOP-ADL y DAOPxADL Generador de Código para MultiTELxADL Generadores de Código para DAOPxADL Utilidad de los LDAs Orientados a Aspectos Conclusiones y Trabajos Futuros

Julio, 2007 PFC 3 Antecedentes La Arquitectura del Software estudia la estructura de una aplicación, formada por un conjunto de componentes, sus propiedades y relaciones El DSOA propugna la separación de aspectos en todas las fases del ciclo de vida del software Los LDAs tradicionales no proporcionan el soporte necesario para separar cualquier comportamiento que atraviese varios elementos del sistema (crosscutting concerns) Hay otros LDAS que si incorporan la separación avanzada de conceptos Sería deseable disponer de un LDA que aplique la separación avanzada de conceptos con la misma estructura que los LDAs tradicionales

Julio, 2007 PFC 4 Objetivos Arquitectura del Software Se ha extendido xADL para adaptarlo a los conceptos y nociones de dos LDAs previamente definidos: El LDA de MultiTEL, creando MultiTELxADL DAOP-ADL, creando DAOPxADL Implementación Generadores de código para los LDAs extendidos MultitTELxADL  Java DAOPxADL  Java DAOPxADL  AspectJ DAOPxADL  JBoss AOP

Julio, 2007 PFC 5 xADL 2.0 xADL es un LDA basado en XML diseñado para ser usado por sí mismo, así como para ser extendido soportando nuevas aplicaciones y dominios Dispone un amplio conjunto de herramientas fácilmente adaptables (e incluso directamente) a las extensiones hechas de xADL Elementos Básicos de xADL Componentes Conectores Interfaces Links

Julio, 2007 PFC 6 xADL 2.0 Receptor de Infrarrojos Sintonizador canal televisión Sintonizador Picture-in- Picture Conector Software Sistema de Televisión en xADL

Julio, 2007 PFC 7 LDA de MultiTEL Elementos Básicos de MultiTEL Componentes Conectores Protocolo de Coordinación Servicio Define la arquitectura de un sistema como una colección de componentes pasivos que se comunican a través de conectores que encapsulan un protocolo de coordinación

Julio, 2007 PFC 8 MultiTELxADL ElementosxADLLDC+LDS MultiTELMultiTELxADL Componentes ComponentTypetipo-componente Se extiende ComponentType: MTComponentType Conectores ConnectorTypetipo-conector Se extiende ConnectorType: MTConnectorType Links No tieneNo los usa Interfaces InterfaceType seccion-interfaz de los componentes. Se extiende InterfaceType: MTInterfaceType Servicio No tienetipo-serviciomTProgramLDS

Julio, 2007 PFC 9 MultiTELxADL

Julio, 2007 PFC 10 DAOP-ADL Componentes y Aspectos Nombre de Rol Interfaces Atributos de Estado Propiedades Implementaciones Propiedades Restricciones de Composición Información de Despliegue Contexto Inicial Comp.: Proporcionada, Requerida y de Eventos Aspectos: Evaluada Composición de Componentes Evaluación de Aspectos Aspecto de Coordinación Protocolo de Coordinación

Julio, 2007 PFC 11 DAOPxADL ElementosxADLDAOP-ADLDAOPxADL Componentes ComponentTypeComponentComponentDAOPType Aspectos No tieneAspectComponentDAOPType Conectores ConnectorTypeNo tieneReglas de Evaluación Evaluación de Aspectos No tieneAspectEvaluationRuleTypeAspectualConnectorType Links No tieneReglas de Composición Composición de Comp. No tiene Resuelven dos Incompatibilidades ComponentRuleType PropertyRules Interfaces InterfaceType Provided, Required Event, Evaluated Se extiende InterfaceType Asp. Coord. No tieneCoordinationAspectType

Julio, 2007 PFC 12 DAOPxADL Elementos Básicos de DAOPxADL Estructuras Tipos Propiedades Reglas de las Propiedades Información de Despliegue Contexto inicial

Julio, 2007 PFC 13 DAOPxADL

Julio, 2007 PFC 14 DAOPxADL Sistema de Televisión en DAOPxADL Persistencia para guardar estado del PiP Autenticación para acceder a canales restringidos

Julio, 2007 PFC 15 Generador de Código MultiTELxADL  Java ¿Cómo generar una aplicación Java a partir de MultiTELxADL?

Julio, 2007 PFC 16 Generador de Código DAOPxADL  Java ¿Cómo generar una aplicación Java a partir de DAOPxADL?

Julio, 2007 PFC 17 Generador de Código DAOPxADL  AspectJ ¿Cómo generar una aplicación AspectJ a partir de DAOPxADL?

Julio, 2007 PFC 18 Generador de Código DAOPxADL  JBoss AOP ¿Cómo generar una aplicación JBoss AOP a partir de DAOPxADL?

Julio, 2007 PFC 19 Generadores de Código DAOPxADL Generación de una aplicación real descrita en DAOPxADL

Julio, 2007 PFC 20 Generadores de Código DAOPxADL Comparación entre los Generadores El generador más sencillo para DAOPxADL es el que genera código Java para la plataforma DAOP El modelo de puntos de corte de DAOPxADL coincide con el de la plataforma JBoss AOP es más intuitivo que AspectJ para generar código desde una descripción de la arquitectura de una aplicación en DAOPxADL DAOPxADL y JBoss AOP son propuestas simétricas Los puntos de cortes se especifican en una entidad aparte y no en el propio aspecto En AspectJ los aspectos son implementados como una entidad completamente diferente a los componentes y en ellos se especifica la relación con el resto de componentes de la aplicación

Julio, 2007 PFC 21 Utilidad de los LDAs orientados a aspectos C. Sant’Anna, N. Gamez, A. Garcia, M.Pinto, L. Fuentes. Architecture Evaluation Process/ Architectural Metrics. Milestone M6.13 (AOSD-Europe Network of Excelence), Noviembre M. Pinto, N. Gámez, L. Fuentes. Towards the architectural definition of the health watcher system with AO-ADL. Early Aspect Workshop at ICSE, Mayo L.Fuentes, N.Gámez. Adding Aspects to xADL 2.0 for Software Product Line Architectures. VaMoS Workshop, Enero 2007.

Julio, 2007 PFC 22 Conclusiones y Trabajos Futuros En este proyecto se han abarcado varios temas para ayudar al proceso de desarrollo del software: Fase de diseño arquitectónico Fase de implementación Para contribuir en la fase del diseño de arquitecturas de sistemas se han creado dos LDAs nuevos como extensión de xADL MultiTELxADL DAOPxADL Para solventar el salto existente en entre el diseño arquitectónico de un sistema y su implementación hemos desarrollados varios generadores de código Para MultitTELxADL: Java Para DAOpxADL: Java, AspectJ, AOPJBoss Como trabajo futuro se pueden adaptar las herramientas basadas en la semántica que proporciona xADL para que sirvan para las extensiones hechas del lenguaje

Julio, 2007 PFC 23 Referencias [Dashofy et al., 2005] E. Dashofy, A. Van Der Hoek, R. Taylor. A Comprehensive Approach for the Development of Modular Software Architecture Description Languages. ACM Transactions on Software Engineering and Methodology, Vol. 14, No. 2, April 2005, 199–245. L. Fuentes. Una Arquitectura Software para el desarrollo de Servicios Avanzados de Telecomunicación, Tesis Doctoral. Dpto. de Lenguajes y Ciencias de la Computación, Universidad de Málaga (1998). L. Fuentes, N. Gámez, M. Pinto. DAOPxADL: Una extensión del lenguaje de descripción de arquitecturas xADL con aspectos. Proceedings of DSOA 2006, Barcelona, España. M. Pinto. CAM/DAOP: Modelo y Plataforma Basados en Componentes y Aspectos, Tesis Doctoral. Departamento de Lenguajes y Ciencias de la Computación, Universidad de Málaga (2004).

Julio, 2007 PFC 24 Gracias