Desarrollo dirigido por modelos de aplicaciones de Internet de las Cosas

Martín Docavo, Javier (2018). Desarrollo dirigido por modelos de aplicaciones de Internet de las Cosas. Proyecto Fin de Carrera / Trabajo Fin de Grado, E.T.S.I. de Sistemas Informáticos (UPM), Madrid.

Descripción

Título: Desarrollo dirigido por modelos de aplicaciones de Internet de las Cosas
Autor/es:
  • Martín Docavo, Javier
Director/es:
  • Díaz Fernández, Jessica
Tipo de Documento: Proyecto Fin de Carrera/Grado
Grado: Grado en Ingeniería del Software
Fecha: 2018
Materias:
Palabras Clave Informales: Internet de las cosas Estructura de datos
Escuela: E.T.S.I. de Sistemas Informáticos (UPM)
Departamento: Sistemas Informáticos
Licencias Creative Commons: Reconocimiento - Sin obra derivada - No comercial

Texto completo

[img] PDF (Document Portable Format) - Acceso permitido solamente a usuarios en el campus de la UPM - Se necesita un visor de ficheros PDF, como GSview, Xpdf o Adobe Acrobat Reader
Descargar (3MB)
[img] Archivo comprimido ZIP (Anexos) - Acceso permitido solamente a usuarios en el campus de la UPM
Descargar (35MB)

Resumen

La consultora Gartner estima que en 2020 habrá más de 20.000 millones de dispositivos conectados a Internet. Internet de las Cosas (IoT) se define como sistemas que permiten procesar y explotar información de grandes volúmenes de datos, procedentes de dispositivos empotrados e interconectados en multitud de objetos físicos en diferentes lugares, aportando un valor añadido a la información recopilada. Este tipo de sistemas son de especial utilidad en dominios como Smart Cities o Smart Grids. Uno de los principales desafíos a los que se enfrenta la construcción de aplicaciones IoT es precisamente que los dispositivos de un ecosistema IoT tienen generalmente poca capacidad de cómputo y de almacenamiento. Para afrontar este desafío, existe una tendencia en el uso de infraestructuras y servicios de computación en la nube (Cloud Computing) para evitar realizar elevadas inversiones iniciales en infraestructura propia (onpremises). La computación en la nube, proporciona acceso a unas capacidades de cómputo y almacenamiento prácticamente ilimitadas y con un coste reducido, lo que facilita a las empresas crear infraestructuras complejas que se adapten por completo a sus necesidades. IoT y la computación en la nube poseen características complementarias en muchos aspectos, por lo que cada vez se está potenciando más la unión de ambas (Cloud IoT), lo cual permite suplir las carencias de un campo con las ventajas del otro y viceversa. Sin embargo, el desarrollo de estos sistemas puede ser complejo debido a la gran variedad de tecnologías y lenguajes de programación existentes. Una posible solución para este problema es el paradigma de Desarrollo Dirigido por Modelos (MDD), en particular, la definición de un lenguaje específico de dominio (DSL) para especificar sistemas y aplicaciones IoT soportadas por servicios IoT en la nube. Con este lenguaje se especifican modelos de las aplicaciones/sistemas, y mediante la transformación de modelos, se genera código de forma automática o semi-automática, reduciéndose los tiempos de desarrollo y despliegue de este tipo de aplicaciones. Por tanto, el objetivo principal de este proyecto de fin de grado (PFG) es la creación de un lenguaje de modelado para definir sistemas y aplicaciones IoT soportadas por servicios IoT en la nube llamado IoT Cloud Model, que proporcione primitivas para modelar y automatizar el desarrollo de estos sistemas. Este lenguaje de modelado proporciona tanto las primitivas de modelado (abstracciones) como las herramientas de automatización para generar código desplegable y operable en los servicios IoT de una selección de plataformas Cloud. Este lenguaje permite modelar tanto los elementos físicos del sistema como dispositivos o sensores, como los recursos de nube necesarios para procesar y almacenar la información recogida por los sensores. El proyecto aborda un primer piloto para la generación de aplicaciones IoT a través de modelos (MDD) para evaluar su viabilidad. Tras este primer piloto será posible desarrollar otros proyectos de mayor magnitud que cubran desde el modelado de las redes de sensores hasta plataformas IoT ad hoc. Abstract: By 2020, the consulting company Gartner estimates that there will be more than 20.000 million devices connected to the internet. The Internet of Things (IoT) is defined as systems that allow the processing and use of a great amount of data, coming from interconnected and embedded devices in a great array of physical objects located in different places, thus giving an extra value to the obtained information. This type of systems are very useful in domains like Smart Cities or Smart Grids. One of the main challenges that the creation of IoT applications has to overcome is that the devices used in this systems usually have limited computational and storage capabilities. To solve this challenge, there is a tendency to use infrastructures and services from Cloud Computing to avoid the need to make a big investment on proprietary infrastructure (on-premises). Cloud Computing provides access to virtually unlimited computational and storage capabilities at a reduced cost, facilitating the creation of complex infrastructures that completely adapt to the needs of the company. IoT and Cloud Computing have complementary characteristics, which is why the union of both technologies (Cloud IoT) is gaining popularity, since it allows to supplement the negative points of one technology with the positive points of the other and vice versa. However, the development of this systems can be hard due to the wide variety of technologies and programming languages that exist. A possible solution to this problem is the use of Model Driven Development (MDD), in particular, the definition of a Domain Specific Lenguage (DSL) to define IoT applications supported by IoT Cloud services. With this DSL, a model of the application/system is defined, and applying a set of transformations, source-code is generated automatically or semi-automatically, reducing the development and deployment times. Therefore, the main objective of this Final Degree Project (PFG) is the creation of a modeling lenguage, called IoT Cloud Model, to design IoT systems and applications supported by IoT Cloud services, that provides the primitives necessary to model and automate the development of this systems. This modeling lenguage provides both the modeling primitives and the necessary automation tools to generate code that can be deployed and operated in the IoT Cloud services of a selection of Cloud Platforms. The modeling lenguage allows the modeling of the physical elements of the system like devices or sensors, and the Cloud resources necessary to process and store the information obtained by the sensors. This project presents a first iteration of the generation of IoT application using MDD to evaluate its viability. After this iteration, it will be possible to develop other projects with a bigger scope that allow the modeling of sensor networks and ad hoc IoT platforms.

Más información

ID de Registro: 51450
Identificador DC: http://oa.upm.es/51450/
Identificador OAI: oai:oa.upm.es:51450
Depositado por: Biblioteca Universitaria Campus Sur
Depositado el: 09 Jul 2018 12:06
Ultima Modificación: 09 Jul 2018 12:06
  • GEO_UP4
  • Open Access
  • Open Access
  • Sherpa-Romeo
    Compruebe si la revista anglosajona en la que ha publicado un artículo permite también su publicación en abierto.
  • Dulcinea
    Compruebe si la revista española en la que ha publicado un artículo permite también su publicación en abierto.
  • Recolecta
  • InvestigaM
  • Observatorio I+D+i UPM
  • OpenCourseWare UPM