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 12-Jun-2015

1.013 views

Category:

Education


1 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,

Rhapsody, 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 diferentes

elementos (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?