ingeniería de software en la robótica educativa gabriela arévalo, ph.d. caeti- uai, lifia-unlp,...
TRANSCRIPT
Ingeniería de Ingeniería de Software en la Software en la
Robótica EducativaRobótica EducativaGabriela Arévalo, Ph.D.Gabriela Arévalo, Ph.D.
CAETI- UAI, LIFIA-UNLP, CONICETCAETI- UAI, LIFIA-UNLP, [email protected]@gmail.com
Objetivo GeneralObjetivo GeneralDesarrollar herramientas tecnológicas y Desarrollar herramientas tecnológicas y metodológicas para construir metodológicas para construir plataformas de software de robótica plataformas de software de robótica educativa.educativa.
CIITI - Rosario, Nov 2010CIITI - Rosario, Nov 2010
Objetivos Objetivos EspecíficosEspecíficos
Desarrollo de una herramienta de Desarrollo de una herramienta de software para el soporte de la creación software para el soporte de la creación de modelos visuales de los sistemas, de modelos visuales de los sistemas, usando MDD y Reingeniería.usando MDD y Reingeniería.
Desarrollar kernels genéricos de las Desarrollar kernels genéricos de las plataformas existentes de robots.plataformas existentes de robots.
Definir una metodología de desarrollo Definir una metodología de desarrollo para este tipo de sistemas.para este tipo de sistemas.
CIITI - Rosario, Nov 2010CIITI - Rosario, Nov 2010
Model Driven Model Driven DevelopmentDevelopment
Desarrollo de software Desarrollo de software basado en modelosbasado en modelos
Approach Forward Approach Forward EngineeringEngineering
Desde PIM (relacionados Desde PIM (relacionados más al análisis) a PSM más al análisis) a PSM (relacionados al (relacionados al lenguajes de lenguajes de programación)programación)
Transformación de Transformación de ModelosModelos
CIITI - Rosario, Nov 2010CIITI - Rosario, Nov 2010
ReingenieríaReingeniería
Proceso de Proceso de Recuperación y Recuperación y Transformación Transformación de información de información
Concepto Concepto simplificado de simplificado de ModeloModelo
Basado en Basado en Transformación Transformación de Códigode Código
CIITI - Rosario, Nov 2010CIITI - Rosario, Nov 2010
Approach: Reingeniería Approach: Reingeniería Básica (1/2)Básica (1/2)
Análisis de los kernels Análisis de los kernels implementados en la implementados en la actualidadactualidad
Etoys, Lego MindstormsEtoys, Lego Mindstorms
Extracción de Código Extracción de Código (Refactoring)(Refactoring)
Análisis de Características Análisis de Características ComunesComunes
Extracción de Conceptos Extracción de Conceptos Generales implicitos en el Generales implicitos en el códigocódigo
Modelo Simple de Código
Prototipos de Lenguaje
CIITI - Rosario, Nov 2010CIITI - Rosario, Nov 2010
puerto := <Puerto> new
….puerto := SerialPort new
……..
….puerto := ParallelPort
new……
Connect with port
Approach: Reingeniería Approach: Reingeniería Básica (1/2)Básica (1/2)
CIITI - Rosario, Nov 2010CIITI - Rosario, Nov 2010
Approach: Ingeniería Approach: Ingeniería ForwardForward
NXT-G
LOGO for NXT
URBI for
Lego NXT#Modelos y
Lenguajes Existentes
CIITI - Rosario, Nov 2010CIITI - Rosario, Nov 2010
Approach Approach CombinadoCombinado
CIITI - Rosario, Nov 2010CIITI - Rosario, Nov 2010
Resultados Resultados EsperadosEsperados
Definición de un lenguaje de modelado Definición de un lenguaje de modelado específico del dominio de la robótica específico del dominio de la robótica educativa.educativa.
Herramienta para soporte de la creación Herramienta para soporte de la creación de modelos para enseñanza de la de modelos para enseñanza de la robótica.robótica.
Definición de una metodología para la Definición de una metodología para la correcta aplicación de la técnica de correcta aplicación de la técnica de modelado propuesta.modelado propuesta.
CIITI - Rosario, Nov 2010CIITI - Rosario, Nov 2010
Approach Approach CombinadoCombinado
CIITI - Rosario, Nov 2010CIITI - Rosario, Nov 2010
Ingeniería de Software en la Robótica Educativa
Gabriela Arévalo, [email protected]