Análisis de herramientas de generación automática de código Android a partir de modelos

Detalles Bibliográficos
Autor Principal: Vidal, Gabriel Adrián
Otros autores o Colaboradores: Pons, Claudia Fabiana (Director/a)
Formato: Tesis
Lengua:español
Datos de publicación: 2016
Temas:
Acceso en línea:Consultar en el Cátalogo
Descripción Física:145 p. : il. + 1 CD-ROM
Tabla de Contenidos:
  • Índice
  • 1. Introducción
  • 1.1. Objetivos
  • 1.2. Motivación
  • 1.3. Herramientas analizadas
  • 2. Conceptos básicos
  • 2.1. MDD (Model Driven Development)
  • 2.2. MDA (Model Driven Architecture)
  • 2.3. Modelos
  • 2.4. Metamodelos
  • 2.5. Transformación
  • 2.5.1. OMG (Object Management Group)
  • 2.5.2. MOF y la arquitectura de cuatro capas
  • 2.5.3. MOFM2T
  • 2.6. Sistema Operativo Android
  • 2.6.1. Características
  • 2.6.2. Arquitectura
  • 2.6.3. SDK de Android
  • 2.6.4. Android Development Tools (ADT)
  • 2.6.5. Android API Level
  • 3. Arctis
  • 3.1. Bloques de construcción reactiva
  • 3.2. Máquina de estado externo (ESM)
  • 3.3. Tipos de bloques
  • 3.4. Beneficios
  • 3.5. Instalando Arctis en Eclipse
  • 3.6. Construyendo una simple aplicación
  • 3.7. Tesis: "Desarrollo de aplicaciones Android con Arctis"
  • 3.7.1. Descripción abstracta
  • 3.7.2. Contribución
  • 3.7.3. Conclusión
  • 4. App Inventor
  • 4.1. Historia
  • 4.2. Estructura
  • 4.3. Más sobre MIT App Inventor
  • 4.4. Requisitos del sistema para App Inventor
  • 4.5. Configuración de App Inventor 1
  • 4.6. Desventajas
  • 4.6.1. Desventajas solucionadas en App Inventor 2
  • 4.7. Componentes
  • 4.8. Seleccionar los componentes para diseñar la aplicación
  • 4.9. Bloques
  • 4.10. Comprensión de bloques y cómo funcionan
  • 4.10.1. Bloques controladores de eventos
  • 4.10.2. Comandos y expresiones
  • 4.11. Manipular el estado de los componentes
  • 4.12. Novedades de App Inventor 2
  • 4.12.1. Dropdowns (menú desplegable)
  • 4.12.2. Mutadores
  • 4.12.3. Variables globales y locales
  • 4.12.4. AI2 colores
  • 4.12.5. Otras características modificadas
  • 4.13. Configuración de App Inventor 2
  • 4.14. Diseñador y editor de bloques
  • 4.14.1. Diseñador de App Inventor 2
  • 4.14.2. Editor de bloques de App Inventor 2
  • 4.15. Desarrollo incremental con el editor de bloques
  • 4.15.1. Do it
  • 4.15.2. Observación de las variables
  • 4.16. Advertencias y errores
  • 4.17. Compartir y empaquetar aplicaciones
  • 4.17.1. Compartir su aplicación para que otros puedan editarlo (.aia)
  • 4.17.2. Empaquetar su aplicación para su uso por otros (.apk)
  • 4.18. Consejos y trucos de App Inventor 2
  • 5. IBM Rational Rhapsody
  • 5.1. Historia
  • 5.2. Características
  • 5.3. Instalar el SDK de Android y vincularlo con Eclipse
  • 5.3.1. Instalando el JDK
  • 5.3.2. Instalando Eclipse
  • 5.3.3. Instalar el SDK de Android
  • 5.3.4. Instalar el plugin ADT
  • 5.4. Descarga e instalación de IBM Rational Rhapsody Developer para Java
  • 5.4.1. Preparación de la instalación de Rational Rhapsody Developer para Java
  • 5.4.2. Instalar Rational Rhapsody para Windows
  • 5.4.3. Instalación de la clave de licencia (Original)
  • 5.4.4. Instalación de la clave de licencia (evaluación por 30 días)
  • 5.5. Configuración de Eclipse y de Rational Rhapsody
  • 5.5.1. Requisitos de integración de la plataforma
  • 5.5.2. Vinculación de Rational Rhapsody para Eclipse
  • 5.5.3.Instalando los plugins para integración con Eclipse
  • 5.5.4. Comprobación de la configuración de Eclipse
  • 5.6. Utilizando la plataforma de integración con Eclipse
  • 5.6.1. Perspectivas de Rational Rhapsody en Eclipse
  • 5.7. Configuración de Rational Rhapsody con propiedades
  • 5.8. Proyecto
  • 5.8.1. Perfiles del proyecto
  • 5.8.2. Perfil para aplicaciones Android
  • 5.8.3. El uso de unidades de proyecto
  • 5.9. Diseño de proyectos
  • 5.9.1. Agregando elementos al modelo Rational Rhapsody
  • 5.9.2. Agregar elementos a las aplicaciones Android
  • 5.9.3. Creación de paquetes
  • 5.9.4. Creación de componentes bajo un paquete
  • 5.9.5. Crear diagramas
  • 5.9.6. Definición de los atributos de una clase
  • 5.9.7. Administración de operaciones y creación de constructores
  • 5.9.8. Adición de enumeraciones de Java a un modelo
  • 5.9.9. Bloques estáticos de clases en un modelo
  • 5.9.10. Comentarios Javadoc
  • 5.9.11. Definición de los estereotipos
  • 5.9.12. El establecimiento de la herencia de estereotipos
  • 5.9.13. La asociación de los estereotipos con un elemento
  • 5.9.14. Definición de librerías de modelos
  • 5.9.15. Rational Rhapsody API
  • 5.9.16. Características de la API de Java
  • 5.10. Proyectos Android y Rational Rhapsody sobre Eclipse
  • 5.10.1. Crear proyecto Rhapsody y asociarlo a un nuevo proyecto Android
  • 5.10.2. Crear proyecto Rhapsody y asociarlo a un proyecto Android importado
  • 5.10.3. Importar un proyecto Rhapsody y asociarlo a un nuevo proyecto Android
  • 5.10.4. Importar y asociar proyectos Rhapsody y Android
  • 5.10.5. Ejemplo de Android Home Alarm
  • 5.11. Generación de código a partir de un modelo de Rational Rhapsody
  • 5.11.1. Sincronización entre modelos y código
  • 5.11.2. Código roundtripping
  • 5.11.3. Generación de código de forma incremental
  • 5.11.4. La generación de código en paralelo
  • 5.11.5. Generación de código en proyectos multilingües
  • 5.12. Generar y compilar el código de una Aplicación Rational Rhapsody integrada a Eclipse
  • 5.12.1. Ejecutar y testear una aplicación de Android en Eclipse
  • 5.12.2. Configuración de un emulador
  • 5.12.3. Configuración de un dispositivo móvil
  • 5.12.4. Google USB Driver
  • 5.12.5. Descarga del Google USB Driver
  • 5.12.6. Uso del dispositivo de hardware
  • 5.12.7. Activación de opciones para desarrolladores en el dispositivo
  • 5.12.8. Configuración de un dispositivo para el desarrollo
  • 5.13. Animación de aplicaciones Rational Rhapsody en Eclipse
  • 5.13.1. Preparación para la animación
  • 5.13.2. Ejecución de animación
  • 5.13.3. La validación de un sistema
  • 5.13.4. Verificación del modelo
  • 6. Acceleo
  • 6.1.1. Definición
  • 6.1.2. Fundamento
  • 6.2. Historia y desarrollo
  • 6.2.1. La entrada en la fundación Eclipse
  • 6.2.2. El código fuente
  • 6.2.3. Licencia
  • 6.3. Compatibilidad
  • 6.3.1. Los cambios de comportamiento entre las versiones
  • 6.3.2. Compatibilidad entre Eclipse y Acceleo
  • 6.3.3. Plataformas compatibles
  • 6.4. Instalación de Acceleo
  • 6.4.1. Proyecto de Fusión
  • 6.4.2. Sitio de actualización
  • 6.5. El lenguaje Acceleo
  • 6.5.1. Módulos
  • 6.5.2. Plantillas
  • 6.5.3. Anulaciones
  • 6.5.4. Pre-Condiciones
  • 6.5.5. Post-Tratamiento
  • 6.5.6. Consultas (Query)
  • 6.6. Elementos del lenguaje
  • 6.6.1. Módulos Main y clase Launcher
  • 6.6.2. Generación de archivos
  • 6.6.3. Estructuras de control
  • 6.6.4. Servicios Java
  • 6.6.5. Archivos de propiedades
  • 6.7. Características
  • 6.7.1. Dominio
  • 6.7.2. Construido con las herramientas de su elección
  • 6.7.3. Tipo de tecnología a generar
  • 6.7.4. Resumen de características
  • 6.7.5. Características del editor Acceleo
  • 6.7.6. El lado oscuro del estándar
  • 6.7.7. Depurador
  • 6.7.8. Perfilador
  • 6.7.9. Trazabilidad (localizar los orígenes de su código generado)
  • 6.7.10. Stand-alone
  • 6.7.11. Editor reflexivo
  • 6.7.12. Bloques de código de usuario
  • 6.8. Vistas de la perspectiva Acceleo
  • 6.8.1. Vista Result (muestra la sincronización del modelo, los módulos y el código generado)
  • 6.8.2. Vista Overrides (para anular un comportamiento existente en una plantilla)
  • 6.8.3. Vista Generation Patterns (para definir su propia propuesta de finalización)
  • 6.8.4. Vista Interpreter
  • 6.9. Proyecto Acceleo
  • 6.9.1. Dependencias
  • 6.9.2. Creación de un Proyecto Acceleo "desde cero"
  • 6.9.3. La transformación de un proyecto existente en un proyecto Acceleo
  • 6.9.4. Creación de un Proyecto Acceleo UI
  • 7. Comparación de las herramientas
  • 7.1. Aspectos teóricos
  • 7.2. Ejemplo práctico concreto "Stopwatch"
  • 7.2.1. Implementación con App Inventor 2
  • 7.2.2. Implementación con Rational Rhapsody
  • 7.2.3. Implementación con Acceleo
  • 7.2.4. Conclusiones Prácticas
  • 8. Conclusiones y trabajos futuros
  • 8.1. Conclusiones
  • 8.2. Trabajos futuros
  • Referencias bibliográficas
  • Apéndice: Glosario