Internet de las Cosas y Computación en la Nube

Información Básica

  • Créditos: 3
  • Horas de trabajo acompañado: 5 / semana (3 horas clase, 2 horas taller)
  • Horas de trabajo independiente: 4 / semana
  • Pre-requisitos: Sistemas Operativos, Comunicación de Datos
  • Tipo de curso: Énfasis

Descripción del Curso

Este curso presenta los conceptos fundamentales del Internet de las Cosas (Internet of Things, IoT) y de la Computación en la Nube (Cloud Computing). Los estudiantes podrán desarrollar aplicaciones de extremo a extremo, lo cual abarca desde la adquisición de los datos en campo usando plataformas de cómputo embebido hasta la visualización de los resultados en smartphones. Para ello es necesario utilizar sensores, sistemas embebidos, protocolos de comunicaciones y computación en la nube.

Objetivos

Al finalizar el curso los participantes podrán:

  1. Comprender los conceptos de IoT y Cloud Computing, desde la perspectiva de su aplicación.
  2. Explorar las tecnologías alrededor de IoT y Cloud Computing, sus estándares, arquitecturas, servicios, regulaciones, ventajas y desventajas.
  3. Entender cómo se desarrollan e implementan soluciones y aplicaciones con tecnologías de IoT y Cloud Computing.
  4. Aplicar los conceptos vistos en clase para el desarrollo de una solución que integre sistemas de IoT con plataformas de Cloud Computing.

Se desarrollan competencias en

  1. Plataformas embebidas
  2. Procesamiento en la nube
  3. Aplicación de conocimiento de ciencias de la computación
  4. Interpretación y análisis de información

Contenido

Capítulo 1: Internet de las Cosas

Sesión Horas teóricas Prácticas acompañadas Temas Profundidad Bibliografía
1 3 Introducción: ¿Qué es IoT y el Internet de las Cosas?; Arquitectura de IoT y tecnologías de base; Características deseables de una arquitectura distribuida para un sistema de Cosas; Oportunidades para IoT; Verticales que proporcionan una oportunidad y un caso de negocios claro Familiaridad [1, 2, 3]
2,3 3 2 Formulación de una arquitectura que posibilita una vista macro de los sistemas, un paradigma de diseño asequible y un conjunto de interfaces que pueden estandarizarse; Diseño de sistemas IoT (principios de diseño para dispositivos conectados, prototipado de sistemas embebidos y prototipado de componentes en línea); Empleando sensores para obtener una mayor visibilidad y una comprensión de la situación con bajas latencias Evaluación [1, 2, 3]
4,5 3 2 Consistencia de los datos en un entorno conectado de manera intermitente o desconectado; Identificando datos espurios y anomalías; Tres dimensiones clave: ciclo de trabajo y tasa de datos de la aplicación, consumo de energía y rango de comunicaciones Evaluación [1, 2, 3]
6,7 3 2 Ingesta de datos y mecanismos de streaming; Manejando datos a tasas altas Uso [1, 2, 3]
8,9 3 2 Procesando flujos de datos; Mecanismos para actuar a partir de los datos recolectados controlando así el mundo real Uso [1, 2, 3]
10,11 3 2 Estándares emergentes para IoT; Tecnologías emergentes para enfrentar los retos de IoT Familiaridad [1, 2, 3]
12,13 3 2 Aspectos de seguridad: * Un paradigma de seguridad que considera el montaje, el mantenimiento y la actualización * Importancia de la seguridad, la privacidad y la autenticidad Familiaridad [1, 2, 3]

Total de Horas: 21/12

Sesión Horas de trabajo independiente Temas Bibliografía
1-3 4 Elaborar presentación y bosquejo de idea de proyecto. Búsqueda de artículos relacionados al proyecto. Tutoriales básicos de Raspberry Pi. [1, 2, 3]
4-6 16 Especificación de la arquitectura del sistema. [1, 2, 3]
7 4 Diseño de la aplicación en la plataforma embebida del sistema. [1, 2, 3]
8-11 6 Implementación de la aplicación en la plataforma embebida sistema. [1, 2, 3]
12,13 4 Repaso del tema y preparación del examen parcial. [1, 2, 3]

Total de Horas: 34

Capítulo 2: Computación en la Nube

Sesión Horas teóricas Prácticas acompañadas Temas Profundidad Bibliografía
14,15 3 Panorama general de la Computación en la Nube: * Historia de la computación centralizada y distribuida * Definición y características (elasticidad, multi-tenant, por demanda, acceso ubicuo, medición de uso, auto servicio, monitoreo del acuerdo de nivel de servicio, etc.) Familiaridad [5, 6, 7, 8]
16,17 3 Evolución de los enfoques de migración de infraestructura; Proveedores de Tecnología vs. Proveedores de Nube vs. Vendedores de Nube; Impulsores de la Nube Empresarial y tendencias de adopción Familiaridad [5, 6, 7, 8]
18,19 3 2 Principios, componentes, servicios y virtualización; Servicios (monitoreo y gestión, servidores de aplicación, mensajería, gestión de datos, desarrollo y pruebas, integración, inteligencia de negocio, etc.) Uso [5, 6, 7, 8]
20,21 3 2 Modelos de despliegue en la Nube: * Infrastructure as a Service (IaaS) * Platform as a Service (PaaS) * Software as a Service (SaaS)* Business Process as a Service (BPaaS); Modelos/Tipos de servicio en la Nube (público, privado, híbrido, y comunitario) Evaluación [5, 6, 7, 8]
22,23 3 2 Cargas de trabajo típicas de la Nube Empresarial; Recursos en la Nube; Servicios de infraestructura en la Nube (almacenamiento, cómputo, gestión de servicios, agentes de nube, etc.) Evaluación [5, 6, 7, 8]
24,25 3 2 Panorama general de desarrollo de aplicaciones en la Nube. Estándares de seguridad, modelos de seguridad y patrones relacionados; Comando y Control Uso [5, 6, 7, 8]
26,27 3 2 Arquitecturas de referencia de Nube; Estándares de Nube (OSDI APIs, etc.) Uso [5, 6, 7, 8]
28,29 3 2 Confiabilidad de Nube y tolerancia a fallos (Virtualización adaptativa, Computación en la Nube y aprovisionamiento de recursos por demanda) Uso [5, 6, 7, 8]
30,31 3 2 Desafíos de la seguridad en la Nube, privacidad, políticas y conformidad; Enfoques de seguridad en la Nube: cifrado, tokenization / obfuscation Familiaridad [5, 6, 7, 8]
32 3 2 Panorama general del cómputo de altas prestaciones en la Nube Uso [5, 6, 7, 8]

Total de Horas: 30/16

Sesión Horas de trabajo independiente Temas Bibliografía
14-17 8 Tutoriales básicos de Nube [5, 6, 7, 8]
18-21 4 Diseño de la aplicación en la Nube. [5, 6, 7, 8]
22-25 4 Implementación de la aplicación en la Nube. [5, 6, 7, 8]
26-29 4 Implementación de la aplicación de visualización. [5, 6, 7, 8]
30-32 9 Integración de la plataforma embebida y la aplicación en la Nube. [5, 6, 7, 8]

Total de Horas: 29

Integración Curricular

Resultados de Programa (ABET)

(A) La habilidad para aplicar conocimientos de matemáticas, ciencias e ingeniería.

(B) La habilidad para analizar un problema e identificar los requerimientos necesarios para su definición y solución.

(C) La habilidad para diseñar, implementar y evaluar procesos y sistemas computacionales.

(D) La habilidad para funcionar en equipos de trabajo.

(E) El entendimiento de la responsabilidad profesional y ética.

(F) La habilidad para comunicarse efectivamente.

(G) La habilidad para analizar los impactos de la computación y la ingeniería en las personas, organizaciones y la sociedad.

(H) El reconocimiento de la necesidad de, y la habilidad para, continuar con el desarrollo profesional.

(I) La habilidad para usar las técnicas, destrezas y herramientas modernas para la práctica de la computación.

(J) La habilidad para aplicar los fundamentos y principios de las matemáticas y de la computación en el modelamiento y diseño de sistemas computacionales de manera que se demuestre comprensión de las ventajas y desventajas en las decisiones de diseño.

(K) La habilidad para aplicar los principios de diseño y desarrollo de software en la construcción de sistemas de diferente complejidad.

Relevancia del curso con los resultados de programa

Resultados de Programa
A B C D E F G H I J K
Relevancia 3 4 3 2 3 5 3

Escala: (1) baja relevancia - (5) alta relevancia.

Integración de objetivos, contenido y metodología del curso

El curso es presencial. Se asignarán investigaciones, ejercicios y lecturas, al igual que se trabajarán talleres y tareas para comprender los conceptos. Durante la sesión se expondrán los conceptos acompañados de ejemplos, fomentando la participación de los estudiantes. Se trabajará en proyectos donde los estudiantes aplicarán los conceptos y habilidades adquiridos durante el curso.

Resultados del Programa Indicadores de Desempeño Objetivos/Contenido del Curso Actividades de aprendizaje Instrumentos de medición
(C) Diseño (C1) Utilizar estándares de codificación en la implementación de componentes de software. (Aplicación). (C2) Identificar componentes, interacciones, relaciones e interfaces entre componentes. (Análisis). Capítulos 1,2 Solución de ejercicios y lecturas Proyectos y tareas
(D) Trabajo en equipo (D1) Reconocer el rol cada vez más predominante de la computación en entornos multidisciplinarios. (Conocimien to). (D2) Participar en tareas y en la toma de decisiones. (Respuesta - Afectivo). (D3) Integrar diferentes puntos de vista, información, críticas y retroalimentación para proponer una solución. (Síntesis). Capítulos 1,2 Proyecto relacionado con un problema particular Proyecto
(E) Responsabilidad profesional y ética (E2) Mostrar responsabilidad y un adecuado comportamiento profesional. (Valuación). (E4) Discutir y justificar decisiones éticas. (Evaluación). Capítulos 1,2 Lecturas Tarea
(F) Comunicación efectiva (F1) Producir textos de manera efectiva teniendo en cuenta la estructura, coherencia, flujo, ortografía y correcto uso del lenguaje. (Aplicación). (F2) Comunicarse de manera efectiva de acuerdo al público objetivo haciendo uso correcto del lenguaje, estilo, tiempo y expresión corporal. (Aplicación). (F3) Utilizar recursos gráficos para comunicar y expresar una idea. (Aplicación). (F4) Defender ideas con precisión y claridad. (Evaluación). Capítulos 1,2 Proyectos y tareas Presentaciones orales y reportes escritos
(H) Desarrollo profesional. (H1) Reconocer la importancia del conocimiento tanto en amplitud como en profundidad. (Compresión). Capítulos 1,2 Tareas Tareas
(J) Modelamiento y diseño de sistemas computacionales (J1) Reconocer la importancia del modelamiento cuando se resuelve un problema. (Compresión). (J2) Relacionar conceptos y principios teóricos para la resolución efectiva de un problema. (Síntesis). Capitulos 1,2 Proyectos y tareas Proyectos
(K) Desarrollo de software (K1) Hacer seguimiento a cronogramas y adaptar los recursos necesarios para cumplir con sus hitos. (Aplicación). (K2) Implementar e integrar componentes de software respetando los criterios de diseño. (Aplicación). (K4) Evaluar y verificar soluciones de software con respecto a las restricciones y requerimientos establecidos. (Aplicación - Evaluación). Capítulos 1,2 Proyectos y tareas Proyectos

Contribución al Desarrollo de Competencias (CNA)

Resultados de Programa
A B C D E F G H I J K
Ciudadanía X X
Comunicación escrita X
Lectura crítica X
Inglés X
Razonamiento cuantitativo X X X X X X

Contribución a los objetivos educacionales

La Carrera de Ingeniería de Sistemas y Computación plantea los siguientes objetivos educacionales, El estudiante graduado de la carrera será capaz de:

  1. Ejercitar la práctica de la Ingeniería de Sistemas y Computación profesionalmente.
  2. Diseñar y operar sistemas de computación que contribuyen a la solución de problemas relacionados a la disciplina, otra área de la ciencia y la ingeniería u otras disciplinas.
  3. Contribuir al bienestar de las comunidades desde posiciones prominentes en la industria, academia, sector público o como un emprendedor.
  4. Ser distinguido por su bases sólidas en computación, su sentido de ciudadanía responsable, su profesionalismo y liderazgo.
  5. Continuar su desarrollo profesional o involucrarse en estudios de posgrado.
Resultados de Programa
A B C D E F G H I J K
Objetivo 1
Objetivo 2
Objetivo 3
Objetivo 4
Objetivo 5

Recomendaciones del Director del Programa

Reglas del curso

Calificación y Balance de Evaluación del Curso

Instrumento Porcentaje A B C D E F G H I J K
Parcial 25 % 25 %
Proyecto 30 % 10 % 5 % 10 % 5 %
Reportes 10 % 10 %
Presentación y discusiones 10 % 10 %
Tarea 5 % 2 % 3 %
Talleres 20 % 10% 5 % 5 %

Uso de material en exámenes

No está permitido.

Asistencia

Obligatoria.

Bibliografía

  1. The Internet of Things. Samuel Greengard. MIT Press. 2015.
  2. Internet of Things: A Hands-on Approach. Arshdeep Bahga, Vijay Madisetti. Universities Press, 2015.
  3. Learning Internet of Things. Peter Waher. Packt Publishing. 2015.
  4. Designing Connected Products: UX for the Consumer Internet of Things. Claire Rowland, Elizabeth Goodman, Martin Charlier, Ann Lightand Alfred Lui. O'Reilly Media. 2015.
  5. Cloud Computing: Concepts, Technology & Architecture. Thomas Erl, Ricardo Puttini and Zaigham Mahmood. Prentice Hall. 1 edition. 2013.
  6. Cloud Computing: A Hands-on Approach. Arshdeep Bahga, Vijay Madisetti. Universities Press, 2014.
  7. Cloud Computing Design Patterns. Thomas Erl, Robert Cope and Amin Naserpour. Prentice Hall. 2015.
  8. Handbook of Cloud Computing. Editors: Furht, Borko, Escalante, Armando (Eds.). 2010.

Instalaciones

Salón de clase con computador y proyector. Laboratorio de Ingeniería de Sistemas y Computación.

Material de este semestre

 
materias/internetcosascomputacionnube.txt · Última modificación: 2016/09/04 20:50 por tek
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki