AUTOR: MIGUEL GARZON DIRECTOR: ING. DARWIN ALULEMA Msc. SANGOLQUÍ 2019

Slides:



Advertisements
Presentaciones similares
INTEGRANTES: NOVOA TAFUR, EINSTEIN MANUEL RODRÍGUEZ POSTIGO, JULIO CESAR.
Advertisements

Sistema computacional Por Salvador Aguilar Gómez.
Diseño de un sistema de gestión y asignación de equipos para una empresa TFC – Area J2EE Realización: Jose Angel Pardillo Vela Ingeniería técnica en Informática.
Carrera de Ingeniería en Electrónica en Redes y Comunicación de Datos “DESARROLLO DE UN SISTEMA DE INFORMACIÓN INTERACTIVO BASADO EN WEB 3.0” GRETA CAROLINA.
UNIVERSIDAD DE LAS FUERZAS ARMADAS - ESPE DEPARTAMENTO DE CIENCIAS DE LA COMPUTACIÓN CARRERA: INGENIERÍA EN SISTEMAS E INFORMÁTICA “ESTUDIO DE LA NOTACIÓN.
Ingeniería del Software Diseñó de Software Universidad de los Andes Demián Gutierrez Abril 2009.
«Título del Trabajo» Ingeniería [Civil] en Computación e Informática Nombre alumnos(s) Guía Empresa: Nombre (en caso de proyectos) Profesor Guía: Grado.
FACULTAD DE INGENIERÍA CIVIL Y MECÀNICA CARRERA DE INGENIERÍA MÈCANICA EMPLEO DE NUEVAS TECNOLOGÍAS DE INFORMACIÓN Y COMUNICACIÓN (NTIC´s II) TEMA: PASOS.
TUTORIA 1 Lógica para la Computación TUTORIA 1 Facultad de Ciencias Naturales y Matemáticas.
BASE DE DATOS EN LA WEB POR- OSIRYS MARCIAGA JESUS NIETO.
DIRECTOR: Ing. Estevan Gómez Autor: David Coro. Ricardo Delgado.
INGENIERÍA DE INFORMACIÓN Y APLICACIONES
Elaborado por: Luis Erazo N.
DEPARTAMENTO DE ELÉCTRICA Y ELECTRÓNICA
BASE DE DATOS INTRODUCCION.
Programación Orientada a Objetos
“POLIMORFISMO PARAMETRICO”
LENGUAJE DE PROGRAMACIÓN Y SOFTWARE PROPIETARIO
Lenguajes y representación técnica
LENGUAJES Y REPRESENTACION TECNICA
Evidencia de Aprendizaje 2.1 Presentaciones Eficaces
SISTEMAS DE INFORMACIÓN
Miguel García Ruiz Jackeline Giraldo Urrea
INTREGRANTES DE EQUIPO:
Luis Alberto Albino Muñoz Est
CARRERA DE INGENIERÍA EN SISTEMAS E INFORMÁTICA
Chanchay Tituaña Gabriel Dario SANGOLQUÍ – ECUADOR 2016
Ingeniería en Sistemas de Información
EDWIN SANTIAGO YACELGA MALDONADO SANGOLQUÍ – ECUADOR 2016
Tema 3. Lenguaje unificado de modelado UML
PROGRAMA DE INGENIERÍA DE SISTEMAS POR CICLOS PROPEDEUTICOS
Lenguaje y representación técnica
Software Es intangible, existe como información, ideas, conceptos, símbolos, pero no ocupa un espacio físico, se podría decir que no tiene sustancia. Se.
LENGUAJES Y REPRESENTACION TECNICA
Ecosistema abierto para la representación espacial de sistemas de información IDESAN, caso de uso aplicado a la gestión sanitaria en la Conselleria de.
SystemStar & Costar Presentado por: Andres Clavijo, Camilo Forero, Jhon Chacón y Brayan Valero.
DEPARTAMENTO DE ELECTRICA Y ELECTRÓNICA
Metodologías para Gestión de Proyectos
Modelo de interacción de usuario.  El Desarrollo basado en modelos de la interfaz de usuario, en inglés Model-based User Interface Development (MB-UID),
FUNDAMENTOS DE PROGRAMACION EN ENTORNO WEB. Rodrigo Cabello Ing. Informático Director de proyectos Think – Ideas in Motion FUNDAMENTOS.
Capitulo 4 Capitulo 3 Capitulo 2 Capitulo 1 Introducción. A medida que avanza nuestra formación profesional nos encontramos en la necesidad de poder.
Conceptos básicos de.NET Explorar el entorno de desarrollo Crear un proyecto Visual Basic.NET Use Visual Studio.NET Acceso a datos Depurar e implantar.
DISEÑO WEB Sesion 1.
Comprensión y obtención de los requerimientos
00:46 1 El software educativo es definido como un conjunto de programas, documentos, procedimientos, y rutinas asociados con la operación de un sistema.
Programación Orientada a Objetos. ¿Qué es un ordenador? “Un sistema digital con tecnología microelectrónica capaz de procesar información a partir de.
Diseño E Implementación En Delphi Del Caso De Posicionamiento 2D
Instituto Tecnológico de Minatitlán
UNIVERSIDAD DE LAS FUERZAS ARMADAS-ESPE
Servidor de Reportes basado en Tecnología Java y XML
PROGRAMA DE INGENIERÍA DE SISTEMAS POR CICLOS PROPEDEUTICOS
FUNDAMENTOS DE PROGRAMACIÓN. INTRODUCCIÓN  Conceptos: Informática, Ordenador, Programa, Dato, Bit, Byte, Hardware, Software, Lenguaje de Programación,
PROYECTO DE GRADUACIÓN
Oscar Navarrete J. Jorge Gutiérrez A.
Oscar Navarrete J. Jorge Gutiérrez A.
CAPA FÍSICA DEL MODELO OSI La capa física: Señales de comunicación.
Sistema de Control de Ingreso de Vehículos
Disertantes: Ing. Amb. Victor Duarte Ing. Amb. Rodrigo Quintana
PROYECTO DE GRADUACIÓN
UNIVERSIDAD CATÓLICA LOS ÁNGELES DE CHIMBOTE AUTOR: Dominguez sosa, Bray limbert ASESORA: MGTR. ING. KARLA JUVICZA NEYRA ALEMÁN APLICACIÓN MÓVIL BASADA.
COCOMO (1) COCOMO Es un modelo sencillo. Cocomo puede ser aplicado a tres tipos de proyectos software. Esto nos da una impresión general del proyecto.
INTRODUCCIÓN A UML.  QUE ES UML?  PARA QUE SE UTILIZA  COMPONENTES  DIAGRAMAS.
TRABAJO DE TITULACIÓN PREVIO A LA OBTENCIÓN DEL TÍTULO DE MAGÍSTER EN GERENCIA DE SISTEMAS TEMA: “DISEÑO DE UNA GUÍA CORPORATIVA PARA IMPLEMENTAR APLICACIONES.
PROPUESTA PROYECTO WEB “CONTROL DE SERVICIO CFE MARIA LOMBARDO”
PROYECTO DE GRADUACIÓN
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS CHACALIAZA BOZA MARGARET AMARLLY.
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS CHACALIAZA BOZA MARGARET AMARLLY.
Base de datos años  En la década de los años 80’, se desarrolló el SQL, un lenguaje de consultas que permite consultar, valga la redundancia,
Transcripción de la presentación:

AUTOR: MIGUEL GARZON DIRECTOR: ING. DARWIN ALULEMA Msc. SANGOLQUÍ 2019 PROYECTO DE INVESTIGACION, PREVIO A LA OBTENCIÓN DEL TÍTULO DE INGENIERO EN ELECTRÓNICA Y TELECOMUNICACIONES TEMA: DESARROLLO DE UN LENGUAJE DE MODELADO POR BLOQUES PARA LA CREACIÓN DE CÓDIGO DE FORMA AUTOMÁTICA CON PLACAS DE DESARROLLO EN EL DOMINIO IoT. AUTOR: MIGUEL GARZON DIRECTOR: ING. DARWIN ALULEMA Msc. SANGOLQUÍ 2019

AGENDA OBJETIVOS JUSTIFICACIÓN DISEÑO DE LA ARQUITECTURA CREACIÓN DEL METAMODELO SIRIUS ACCELEO METODOLOGIA PROPUESTA PRUEBAS Y RESULTADOS CONCLUSIONES Y RECOMENDACIONES TRABAJOS FUTUROS

OBJETIVOS General Desarrollar un lenguaje de modelado por bloques para la creación de código de forma automática con placas de desarrollo en el dominio de IoT implementando ingeniería de modelos y scaffolding. Específicos Investigar el estado del arte de la ingeniería de modelos y scaffolding. Investigar herramientas y software para el Model Driven Architecture (MDA) y MDE. Diseñar la Arquitectura del Meta-modelo. Definir el proceso de scaffolding. Implementar las herramientas gráficas y el motor de generación de código sobre placas de desarrollo.

JUSTIFICACION El presente proyecto de investigación se encuentra enmarcado con el desarrollo de una herramienta para la automatización de los procesos de las aplicaciones en el dominio del IoT, para poder satisfacer las necesidades de las personas que están iniciando en el mundo de la programación. Permitiendo de esta manera disponer de una herramienta fácil para crear aplicaciones sin tener que detallar conceptos avanzados sobre el lenguaje de programación.

DISEÑO DE LA ARQUITECTURA

ELEMENTOS PARA CREACION DEL META-MODELO Desarrollo, Programación Recopilación . Facilidad para trabajar .

Meta Modelo

Meta Modelo

Meta Modelo

Clases con atributos Enumerados

Editor Gráfico Proyecto de Eclipse, modelos gráficos, tecnología de software. Editor Grafico en base al meta modelo. Se definió la sintaxis de un lenguaje, parámetros , letras y las reglas para modificar

Un Node Creation es considerado un objeto, o elemento gráfico que representará a una clase del Meta Modelo Las capas sirven para visualizar por separado los elementos, en nuestro caso Hardware y software Un contenedor sirve para contener a los elementos que se encuentran dentro de este. Las relaciones sirven para unir las diferentes clases.

Nodo de Creación Son creados dentro de cada capa, y mediante sus propiedades podrán ser asociados a la clase a la que se desea vincular.

Relaciones Las clases “Físico” y “Elementos”, se encuentran unidos por la relación ac1.

Diseño de la Paleta Cada elemento gráfico que conforma la paleta, debe estar asociada con un Node creation.

Transformación M2T Tecnología en plantillas, Generadores personalizados. Automáticamente código fuente

Correspondecia entre Meta Modelo, Editor Gráfico, paleta de diseño y M2T (Acceleo) Tienen relación entre sí. Toda clase del Meta Modelo, es utilizada para el editor Gráfico , tiene su representación en la paleta de diseño y genera un determinado segmento de código.

Relación

Relación

METODOLOGIA PROPUESTA EJEMPLO Envío de datos a un servidor mediante WIFI Diagrama de Bloques

Diseño en el Editor Grafico

Ingreso de datos y generación de código

Desarrollo en Hardware Ingreso de dato en el servidor

Total de puntos de función sin ajustar Pruebas y resultados Para las pruebas y resultados se utilizo del modelo matemático COCOMO II, que permite calcular la estimación de esfuerzo. Puntos de función sin ajustar Descripción Complejidad Total Simple Media Compleja Entradas externas - 1 x 4 4 Salidas externas Ficheros lógicos internos 1 x7 7 Interfaces lógicas externas Consultas externas Total de puntos de función sin ajustar 15

Según la tabla conversion de puntos de función a líneas de código, se debe multiplicar por 23.

Tamaño estimado = 15 x 23 = 345 líneas de código Persona Aplicación Utilizando la herramienta Programación Tradicional Tamaño estimado según cocomo II Cumplimiento Líneas de código 1 Subir datos a un servidor web mediante wifi X 200 287 345 2   3 256 4

Según los resultados obtenidos, lo que se evidencia es que mientras la complejidad de los programas es menor, la cantidad de código que se genera no es igual según Cocomo II. Cuando la dificultad es mayor, la cantidad de líneas de código entre la generación de código automático, en el IDE de Arduino y según Cocomo II los datos cada vez se van pareciendo más. Por lo tanto se puede llegar a decir que Cocomo II ayuda a ver la cantidad de líneas y la estimación de esfuerzo de código para aplicaciones o programas que ya tienen un nivel de dificultad mayor.

CONCLUSIONES La necesidad de los usuarios actualmente de crear aplicaciones con información procedente del internet para realizar acciones en base a estos datos es muy grande. En base a esta problemática se desarrolló un DSL y transformación M2T el cual a partir de obtener datos del Internet tenga una secuencia en sus elementos y de esta forma ayudar a los usuarios a crear aplicaciones de una forma gráfica y rápida. El meta modelo separa la parte de software de la de hardware, esto permitió desarrollar una herramienta modular para que sea escalable en el tiempo en la cual se puedan incluir nuevos elementos con sus respectivos atributos en la parte de hardware, y sentencias en la parte de software, introduciéndolas ya sea en clases numeradas o en diferentes condiciones establecidas en el diagrama UML, sin la necesidad de un cambio significativo en el DSL.

CONCLUSIONES En el Editor Gráfico se separó por capas la parte de hardware y software para que así el usuario pueda tener una mejor idea de cómo armar el proyecto sin que la parte de software interfiera, además se creó contenedores en el cual solo la parte de software pueda ser graficada dentro del contenedor, con el fin de que el usuario no pueda mezclar el hardware del software y de esta manera el usuario no tenga problemas en la compilación del código.

RECOMENDACIONES Se recomienda agregar el DSL al proyecto creado en viewpoint para crear el Editor Gráfico ya que al momento de diseñar la aplicación puede generar errores o bloquear la herramienta. Es recomendable utilizar herencias, mediante clases padre, también es recomendable utilizar clases abstractas todo esto para que este proyecto pueda ser escalable es decir que se pueda agregar o eliminar elementos dependiendo de los requerimientos del usuario. Como se muestra en la gran mayoría de proyectos con la herramienta EMF hay que tener precaución al momento de escribir el código en Acceleo ya que si se crea mal un objeto o se llama mal a una variable esto repercutirá directamente en el código generado y por ende la aplicación no funcionara correctamente.

TRABAJOS FUTUROS Al no tener una carga directa con la placa de desarrollo sería un buen trabajo futuro el de implementar la interconectividad con el compilador de Arduino de forma directa ya que de esta manera se podría compilar y cargar el programa desde el mismo proyecto generado. Al querer estar más conectados al mundo del Internet es necesario tener acceso a más servicios web con el fin de recibir datos y poder crear aplicación es por eso que se plantea en un trabajo a futuro la creación de servicios web Al querer realizar aplicaciones más desarrolladas y avanzadas se propone en un trabajo a futuro incorporar funciones más complejas para la lógica de programación como sentencias while, switch, case, else if, etc.

Gracias