Ministerio de Cultura y Educación
Universidad Nacional de San Luis
Facultad de Ciencias Físico Matemáticas y Naturales
Departamento: Informatica
Área: Area II: Sistemas de Computacion
(Programa del año 2019)
(Programa en trámite de aprobación)
(Programa presentado el 21/11/2019 14:50:31)
I - Oferta Académica
Materia Carrera Plan Año Periodo
(OPTATIVA) TALLER AVANZADO EN SISTEMAS DISTRIBUIDOS LIC.CS.COMP. 32/12 2019 2° cuatrimestre
II - Equipo Docente
Docente Función Cargo Dedicación
TISSERA, PABLO CRISTIAN Prof. Responsable P.Adj Exc 40 Hs
LUCERO, MAXIMILIANO ORLANDO Responsable de Práctico JTP Semi 20 Hs
III - Características del Curso
Credito Horario Semanal Tipificación Duración
Teórico/Práctico Teóricas Prácticas de Aula Práct. de lab/ camp/ Resid/ PIP, etc. Total B - Teoria con prácticas de aula y laboratorio Desde Hasta Cantidad de Semanas Cantidad en Horas
Periodo
1 Hs. 1 Hs. 1 Hs. 2 Hs. 5 Hs. 2º Cuatrimestre 05/08/2019 15/11/2019 15 75
IV - Fundamentación
Ya sea en el área científica, de negocios, industria, gobierno, etc. los proyectos de gran escala y complejidad son la regla y no la excepción. Actualmente estamos combinando productos de consumo, bienes duraderos, componentes industriales, de servicios públicos, sensores y otros objetos de uso cotidiano con conectividad y capacidades de análisis de datos para ofrecer servicios a través de Internet que prometen transformar nuestra de vida.
Trabajar con miles de millones de objetos conectados implica un gran desafío ya que proyecta la creación de una red compleja que conecta miles de millones de dispositivos y humanos utilizando múltiples tecnologías, infraestructuras, protocolos, servicios y plataformas. Esta situación da pie a la necesidad de explorar un universo de conocimientos en diferentes áreas de las tecnologías de la información y comunicación (TIC) como lo son las redes de computadoras, Internet de las Cosas (IoT), Big Data, computación en la nube y computo distribuido y paralelo entre otras; ya que tales tecnologías se encuentran orientadas a interconectar millones de islas de redes inteligentes para permitir el acceso a la información no solo "en cualquier momento" y "en cualquier lugar" sino también "idealmente" a través de cualquier "ruta", "red" y "cualquier servicio" permitiendo de esta manera crear un mundo masivamente conectado en el que converjan lo real, lo digital y lo virtual con el objetivo de gestionar eficientemente las distintas áreas en las que se desarrolla la vida cotidiana obteniendo así ciudades, educación, gobiernos, industrias, etc. “más inteligentes”.
De acuerdo con lo expuesto, pensamos que es importante tomar conciencia de la magnitud de las posibilidades que brinda las nuevas tecnologías en sistemas distribuidos en cuanto al crecimiento y explotación de la informática de cara a los nuevos desarrollos a implementar en todas las áreas de nuestra vida cotidiana.
Considerando que es una tendencia en auge, con un futuro cercano muy prometedor, es imprescindible que la formación académica e investigación incursionen en el tema.
Esta materia propone una continuidad en el aprendizaje de los conceptos de la materia de Sistemas Distribuidos y Paralelos, haciendo especial hincapié en el estudio de los principales conceptos involucrados a Iot, Big Data, computación en la nube y los sistemas distribuidos en la web.
V - Objetivos / Resultados de Aprendizaje
El objetivo general de la asignatura es suministrar al alumno conocimientos sólidos referidos a Internet de las Cosas, Big Data, Cloud Computing y computación Distribuida en la Web. Se espera que al finalizar el curso el alumno sea capaz de:

Comprender el uso y el campo de aplicación de las distintas tecnologías mencionadas anteriormente.

Discernir de manera apropiada acerca de situaciones en las que es posible y necesario aplicar tales tecnologías en la solución de problemas reales.

Desarrollar y llevar a cabo un proyecto basado en una problemática real que involucre las tecnologías antes mencionadas.
VI - Contenidos
UNIDAD 1: Sistemas Distribuidos Web
Historia, introducción y necesidades. Arquitecturas, tradicionales y servicios web. Tipos de procesos involucrados en un desarrollo web, clientes, servidores web, clústeres de servidores. Protocolo HTTP, servicios web SOAP y REST. Caso de estudio: Spring Boot, NodeJS y Angular.

UNIDAD 2: Internet de las Cosas
¿Qué es internet de las cosas? Orígenes y aplicaciones. Ventajas y desventajas. Infraestructura. Modelos de comunicación (Device to Device, Device to Cloud, Device to Gateway y Back-End Data-Sharing Model). Fundamentos técnicos y tecnologías empleadas. Consideraciones en seguridad y privacidad. Caso de estudio: Contiki y Cooja.

UNIDAD 3: Cloud Computing
Fundamentación y antecedentes. Tecnologías que soportan Cloud Computing (Chips Multicore, Virtualización, Utility Computing, Servicios WEB, Computación autonomica, etc.) Definición del Cloud Computing. Riesgos, desafio y problemas. Arquitectura de la nube, Modelos de servicios (SaaS, PaaS, IaaS), Modelos de despliegue (Cloud público, privado, de comunidad e hibirído). Seguridad y privacidad en la nube. Puesta en marcha de aplicaciones en la nube, patrones y balance de carga. Caso de estudio: AWS y Google Cloud.

UNIDAD 4: Big Data
Introducción a Big Data. Definición, riesgos y desafíos. Las 5 Vs de BigData: Volumen, Velocidad, Variedad, Valor, Veracidad. Historia y Arquitecturas Big Data.

VII - Plan de Trabajos Prácticos
Trabajos Prácticos de Aula
Práctico 1: Big Data, aplicaciones.
Práctico 2: Sistemas Distribuidos en la web.

Trabajos Prácticos de máquina laboratorio
Laboratorio 1: Spring Boot, Angular y NodeJS.
Laboratorio 2: Contiki y Cooja.
Laboratorio 3: AWS y Gloogle cloud.
Laboratorio 4: Desarrollo de una solución integral a un problema real.
VIII - Regimen de Aprobación
Debido a que la materia es optativa y no está garantizado su dictado todos los años, por motivos organizativos el único régimen de aprobación es PROMOCIONAL. Esto significa que los alumnos no pueden aprobar la materia como REGULAR ni tampoco rendirla como libre. Para promocionar la materia, se requerirá un porcentaje mínimo de asistencias a clase del 80%, la entrega de todos los trabajos prácticos, un proyecto de programación propuesto y un informe adicional vinculado a los principales aspectos de la asignatura (Sistemas distribuidos web, Cloud Computing, IoT y Big Data). Este informe, que deberá ser presentado y defendido en forma oral por el alumno, cumplirá el rol de evaluación integradora requerido por la reglamentación vigente. De igual forma, la entrega y corrección de los distintos prácticos garantiza los aspectos vincualdos a la evaluación continua de los alumnos a lo largo de la cursada.
IX - Bibliografía Básica
[1] Distributed System Principles and Paradigms. Andrew S. Tanenbaum, Maarten van Steen. Second Edition. Editorial Año 2006. Prentice Hall. ISBN: 0-13-239227-5.
[2] Distributed Systems concepts and designs. George Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair. Fitfth Edition. Año 2012. ISBN: 0-13-214301-1.
[3] Internet of Things in Five Days. Antonio Liñán Colina, Alvaro Vives, Marco Zennaro, Antoine Bagula, Ermanno Pietrosemoli. Version: 1.1. Año 2016. Book and sources distributed under the terms of the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International.
[4] Internet of Things an Overview, understanding the issues and challenges of a more connected world. Karen Rose, Scott Eldridge, Lyman Chapin. Año 2015. Internet Society.
[5] Cloud Computing Concepts and Practices. Naresh Kumar Sehgal, Pramod Chandra P. Bhatt. Año 2017. Springer. ISBN 978-3-319-77838-9.
[6] Essentials of Cloud Computing, K. Chandrasekaran. Año 2015. CRC Press. ISBN13: 978-1-4822-0544-2.
X - Bibliografia Complementaria
[1] Internetworking With TCP/IP Vol I: Principles, Protocols, and Architecture, six edition - Douglas E. Commer - Pearson - 2006 - ISBN-13: 978-0136085300.
[2] Computación en la Nube, Luis Joyanes Aguilar. Año 2013. Alfaomega. ISBN: 978-607-707-468-7.
[3] Apuntes de catedra.
XI - Resumen de Objetivos
Comprender el uso y el campo de aplicación de servicios web, cloud computing, Iot y Big Data.

Discernir de manera apropiada acerca de situaciones en las que es posible y necesario aplicar tales tecnologías en la solución de problemas reales.

Desarrollar y llevar a cabo un proyecto basado en una problemática real que involucre las tecnologías antes mencionadas.
XII - Resumen del Programa
UNIDAD 1: Sistemas Distribuidos Web

UNIDAD 2: Internet de las Cosas

UNIDAD 3: Cloud Computing

UNIDAD 4: Big Data
XIII - Imprevistos
 
XIV - Otros