20090723 presentacion pfc

23
Análisis de Lenguajes Específicos de Dominio para Sistemas Embebidos Ander Zubizarreta Donostia, 23 Julio 2009

Upload: azubi

Post on 04-Jul-2015

36 views

Category:

Business


0 download

TRANSCRIPT

Page 1: 20090723 Presentacion Pfc

Análisis de Lenguajes Específicos de Dominio

para Sistemas Embebidos

Ander ZubizarretaDonostia, 23 Julio 2009

Page 2: 20090723 Presentacion Pfc

Contexto

Ikerlan Research Centre

Centro de investigación Aplicada

Dentro del Grupo Mondragón

Aprox. 250 personas

Equipo de trabajo

Area de Tecnologias de la Informacion

Equipo de Líneas de Producto Software

2

Page 3: 20090723 Presentacion Pfc

Sistemas embebidos

¿Qué son?

Sistemas de computación “escondidos” dentro del producto

Parte integral del sistema entero

Se utilizan en todo tipo de productos

Características

Propósito específico

Tiempo real

Hardware con restricciones

Conectados a ambientes físicos

Confiabilidad

3

Page 4: 20090723 Presentacion Pfc

Problemas

Complejidad

Los sistemas cada vez son mas complejos

En la funcionalidad inherente que proporcionan

En el numero creciente de funcionalidades

Reutilización

Cómo reutilizar funcionalidad en sistemas nuevos

Customización

Cómo customizar funcionalidad para cada cliente

Otros

Confiabilidad, mantenibilidad, etc

4

Page 5: 20090723 Presentacion Pfc

Paradigmas de Ingeniería de Software

DSL (Domain Specific Language)

Representación del problema en términos del dominio

Mayor expresividad y nivel de abstracción

MDD (Model Driven Development)

El desarrollo se centra en los modelos

Los modelos conforman a metamodelos

Transformaciones para generar código u otros modelos

SPL (Sofware Product Lines)

Familias de programas

Base + Features

Variabilidad

5

MMA

MBMA

MMBTAB

<<conformsTo>><<conformsTo>>

<<transforms>>

Page 6: 20090723 Presentacion Pfc

Trabajo realizado

6

Page 7: 20090723 Presentacion Pfc

Trabajo realizado

Estado del arte ¿Qué se ha hecho? ¿Cómo se han utilizado?

Herramientas MetaEdit+, EMF, ATL, MOFScript, MDWorkbench, Rh

apsody, RulesComposer

Casos de estudio Definición de DSL

Modelado

Transformaciones• T. de modelo a modelo

• Generación de código

• Generación de documentación

Investigación Variabilidad en el MDD

7

Page 8: 20090723 Presentacion Pfc

Indice

1. Definición del ejemplo

2. Diseño de DSL

3. Utilización de DSL

4. Model-to-text con MOFScript

5. Model-to-model con ATL

6. Rhapsody + RulesComposer

7. MDPLE

8. JISBD

8

Page 9: 20090723 Presentacion Pfc

Definición del ejemplo

Sistema de control de inundaciones Sistema embebido ficticio

Varios subsistemas para controlar diferenteselementos (temperatura, precipitaciones…)

Cada subsistema varias entradas y salidas

Ejemplo: UK01 Sistema de control de inundaciones con 3

subsistemas:• TenpKont (control de temperatura)

– 3 entradas, 1 salida

• PrezKont (control de precipitaciones)– 3 entradas, 1 salida

• PresaKont (control de la presa)– 2 entradas, 1 salida

9

Page 10: 20090723 Presentacion Pfc

Diseño de DSLMetaEdit+

Metamodelado

EMF

Metamodelado

10

Page 11: 20090723 Presentacion Pfc

Utilización de DSLMetaEdit+

Modelado con DSL

EMF

Modelado con DSL

11

Page 12: 20090723 Presentacion Pfc

Model-to-text con MOFScript

Generación de código C++ desde modelo definido en EMF

12

C++

Modelo TransformaciónCódigo

Page 13: 20090723 Presentacion Pfc

Model-to-model con ATL

Trans. Modelo EMF en clases UML

13

Modelo TransformaciónModelo

Page 14: 20090723 Presentacion Pfc

C++

IBM/TL Rhapsody + RulesComposer

Generación de código y doc. de modelo Rhapsody

14

Modelo Transformación

Docs

Page 15: 20090723 Presentacion Pfc

MDPLE’09: Is model variability enough?

Hasta ahora La variabilidad en el MDD se ha centrado en la

variabilidad de modelos

Nuestra posición Es necesaria la variabilidad en metamodelos y

transformaciones Ejemplos: añadir nuevos tipos de elementos o generar

código para diferentes plataformas

15

¿es suficiente?

1st International

Workshop on

Model-Driven Product

Line Engineering,

Twente, Netherlands

Page 16: 20090723 Presentacion Pfc

JISBD‘09: On the refinement of M2T transformations

Aplicación de la variabilidad a las

transformaciones de modelo a texto

16

XIV Jornadas de

Ingeniería del Software

y Bases de Datos,

Donostia-San Sebastián

Page 17: 20090723 Presentacion Pfc

Gestión

Page 18: 20090723 Presentacion Pfc

Gestión

Reuniones Reuniones entre el tutor y el alumno cada semana

Seguimiento Reuniones de seguimiento cada 4 semanas

Planificación Como en todos los proyectos, cambios en la

planificación inicial

18

Page 19: 20090723 Presentacion Pfc

Conclusiones

21

Page 20: 20090723 Presentacion Pfc

Contribución

Contribución técnica Estudio de herramientas

Análisis de los paradigmas (DSL, MDD, SPL)

Contribución científica Aplicación de la variabilidad a transformaciones y

metamodelos

Papers

22

Page 21: 20090723 Presentacion Pfc

Conclusiones

Conclusiones generales Beneficios de utilizar MDD, DSL y SPL

• Centrarse en ¿qué hace? un programa, no ¿cómo lo hace?

• Generación automática de código y documentación

• Reutilización

Limitaciones

• Diseñar un DSL puede resultar costoso

Conclusiones personales Experiencia muy positiva

• Aprendizaje de conceptos totalmente nuevos

• Introducción al mundo de investigación

• Introducción al mundo laboral

• Buen entorno de trabajo

23

Page 22: 20090723 Presentacion Pfc

Trabajo futuro

Herramientas que den buen soporte a todas las

fases del MDD

Técnicas y herramientas que den soporte a la

aplicación de la variabilidad

Generación automática de transformaciones

24

Page 23: 20090723 Presentacion Pfc

¿Preguntas?