MÓDULO 0. PRESENTACIÓN BIG DATA. Francisco Javier Cervigon Ruckauer

MÓDULO 0. PRESENTACIÓN.

Curso orientado al desarrollo de aplicaciones relacionadas con el concepto de Ciudad Inteligente a través de tecnologías Big Data e Internet de las Cosas. El aprendizaje del curso se basará en el desarrollo de un proyecto de Ciudad Inteligente donde se combinarán diseños teóricos con pequeñas aplicaciones en Python a modo de pruebas de concepto.

El curso se centra en Big Data, como área para gestionar y analizar información, y en tecnologías del Internet de las Cosas para realizar adquisición de datos a través de sensores. Los contenidos del curso se irán impartiendo a medida que se va desarrollando un proyecto de Ciudad Inteligente utilizando las tecnologías descritas. Las distintas unidades de aprendizaje combinan la exposición de conocimientos teóricos, necesarios para realizar el diseño del proyecto y el desarrollo de pequeños programas en Python que permitirán realizar pruebas de concepto de las tecnologías presentadas. 

El objetivo principal del curso es la capacitación de los estudiantes para realizar un análisis certero sobre las posibilidades que ofrecen las TIC para mejorar la organización y gestión de los recursos existentes en las ciudades actuales. Se centrará sobre todo en tecnologías pervasivas para la adquisición de datos y las tecnologías de análisis de datos desestructurados para la toma de decisiones estratégicas en la ciudad. Para cumplir con el objetivo se utilizará una estrategia basada en los métodos PBL (Problem-Based Learning). Esta estrategia permite presentar a los estudiantes los conocimientos relacionados con las tecnologías mientras aprenden a contextualizarlas con problemas reales. 

Los problemas elegidos serán problemas innovadores no resueltos en la actualidad. Sin embargo se limitará su complejidad para permitir que los estudiantes los puedan abordar con garantías y además sean evaluables eficazmente.

Los módulos de estudio propuestos ofrecen los conocimientos necesarios para abordar con garantías de éxito este objetivo. La finalización de cada módulo quedará condicionada a una serie de pruebas de aprendizaje (tests) y la realización de un proyecto de desarrollo personal.

El proyecto de desarrollo será presentado al finalizar el módulo de presentación o módulo 0 y su correcta realización estará condicionada a la evaluación de, al menos, dos trabajos llevados a cabo por otros alumnos/as.

Conviene contar con conocimientos básicos de programación en Python. No es necesario saber realizar un programa de complejidad media sino conocer la sintaxis para entender las instrucciones que se mostrarán a lo largo del curso. Conocimientos básicos de protocolos de comunicación (arquitecturas en niveles). Se deben conocer conceptos básicos de redes como para qué vale el protocolo IP. qué es un ecaminador, qué es un servidor web. etc. Conocimientos básicos de sistemas operativos tipo Unix. De nuevo no es necesario conocimientos avanzados pero sí entender cómo realizar una interacción básica (listar ficheros, cambiar de directorio, etc.) a través del intérprete de mandatos "bash".

Contenidos del curso

Proyecto personal: presentación y plantilla

En este recurso se presenta una plantilla para realizar el proyecto personal del curso. La plantilla incluye tanto los distintos apartados que deben tenerse en cuenta, como una pequeña descripción de cada uno de ellos. Además también incluye una tabla donde se especifican criterios comunes para poner una nota final al trabajo.
Se recomienda que se utilice este fichero como base para la redacción del mismo, e ir haciendo el documento a medida que se va desarrollando el curso. 
Big Data para la Ciudad Inteligente
Diseño de proyecto

Nombre del proyecto

NORMAS SOBRE LA ELABORACIÓN DEL PROYECTO


El proyecto relacionado con tecnologías Big Data en el entorno de la ciudad inteligente es una de las actividades principales a realizar en el curso. El tema del proyecto se deja a libertad del estudiante, si bien tiene que tener relación con la ciudad inteligente e integrar tecnologías relacionadas con el Big Data.
Para evaluar el proyecto es necesario preparar una memoria donde se explique el análisis, diseño y las posibles pruebas de concepto que se han llevado a cabo. La memoria se presentará en formato PDF, dentro del espacio dedicado para ello en la plataforma, y tendrá una extensión máxima de 8 páginas, incluyendo dibujos, aunque sin incluir el posible código fuente generado.
En este documento se ofrece un esquema general para realizar la memoria y algunos criterios de evaluación que pueden ser usados para poder evaluar otros proyectos.

ESQUEMA DEL PROYECTO

A continuación, se muestra un posible esquema de proyecto. En este esquema se muestran algunos de los puntos que pueden tenerse en cuenta para elaborar el proyecto. No es necesario seguir este esquema, si bien se recomienda hacerlo para cubrir adecuadamente todos los puntos que posteriormente serán evaluados.
En cada uno de los puntos del esquema se indica además en qué módulos se tratan conceptos parecidos dentro del curso.
  1. Introducción al proyecto (centrado en módulo 1)

Se establecerán los principios generales del proyecto. Se debe definir un escenario general (en qué mejoraría la solución planteada en el proyecto a algún aspecto de una ciudad) y los objetivos específicos del proyecto.
  1. Conjunto de datos utilizados

Para llevar a cabo un proyecto de Big Data los datos son muy importantes. Se Deben indicar las fuentes de datos que se manejarán en el proyecto.
  1. Visión general de la arquitectura del proyecto

Se describirá, a ser posible con un dibujo, las cuestiones generales de la arquitectura. Se deben mostrar los tres subsistemas a implementar, así como las tecnologías implicadas en cada uno de los subsistemas.
  1. Subsistema de adquisición de datos (centrado en módulo 2)

  1. Diseño de arquitectura de alto nivel

Diseño específico de este subsistema: componentes principales, modelo de red, mensajes entre elementos, etc.
  1. Diseño de nodos IoT

Electrónica y protocolos de comunicación que se incluirán en los nodos IoT en el caso de que existan.
  1. Diseño de Centro de Datos

Protocolos y servicios a instalar en el centro de datos..
  1. Subsistema de gestión de datos (centrado en el módulo 3)

  1. Conexión con el subsistema de adquisición de datos

Especificar como se conecta este subsistema con el subsistema de adquisición de datos. Normalmente se hará mediante un formato de fichero o base de datos.
  1. Diseño de arquitectura de alto nivel

Diseño específico de este subsistema: sistema de almacenamiento, sincronización de datos, etc.
  1. Detalle de las tecnologías implicadas

Especificar con cierto detalle las tecnologías específicas de almacenamiento y distribución a utilizar.  Por ejemplo, ya no es posible poner “una base de datos NoSQL” sino que es necesario decir que base de datos NoSQL se va a utilizar.
  1. Pruebas de concepto

Pequeña implementación con alguna prueba de concepto. Se puede elegir cualquier lenguaje siempre que se incluya el código fuente.
  1. Subsistema de análisis de datos y visualización (centrado en el módulo 4)

  1. Introducción a la solución planteada

Se debe introducir tanto el análisis computacional como su posterior visualización. El análisis computacional se debe basar en la tecnología MapReduce, aunque es posible realizar análisis adicionales si se considera oportuno. Posteriormente se deben visualizar los resultados del análisis anterior de la forma más adecuada al proyecto.
  1. Detalle del análisis

  • Tecnologías implicadas

  • Pruebas de concepto

  1. Visualización de los datos analizados

Para llevar a cabo un desarrollo completo de visualización de los datos analizados es necesario especificar los siguientes puntos:
  • Datos a visualizar y resultado del análisis realizado en el punto anterior.

Podrán estar post-procesados, añadiendo campos adicionales para facilitar su visualización.

  • Resumen de la historia u objetivo que se desea alcanzar con esta visualización.

  • Diagrama/s generados (sin especificar el código fuente).


CRITERIOS DE EVALUACIÓN


La evaluación se basará en tomar en consideración distintos aspectos del proyecto. Será decisión de la persona que evalúe los criterios finales. En este apartado se aportan unas directrices generales para evaluar el trabajo.
CRITERIO
DESCRIPCIÓN
PESO
Interés/Motivación
¿Consigue solventar algún problema real de la ciudad? ¿Está bien expuesto el problema?
10%
Objetivos
¿Están claros los objetivos del proyecto  así como su alcance?
10%
Arquitectura general del sistema
¿Se utilizan soluciones basadas en tecnologías Big Data? ¿Es razonable la arquitectura expuesta? ¿Es original?
25%
Detalles técnicos del proyecto
¿Están bien detalladas cada una de las fases? ¿Es técnicamente adecuada la exposición? ¿Tienen sentido desde un punto de vista tecnológico? ¿Tiene pruebas de concepto (código, instalaciones reales, etc.?
50%
Otras cuestiones
¿Están expuestos los conceptos de forma clara y concisa?
5%

Video presentación del curso:

Francisco Javier Cervigon Ruckauer