SlideShare une entreprise Scribd logo
1  sur  38
Escuela Técnica Superior de Ingenieros Informáticos
Universidad Politécnica de Madrid

TRABAJO FIN DE GRADO

CloudRoom
Una Plataforma Universitaria Social, Semántica y Ubicua
Autor: Francisco Javier Sánchez Carmona
Directora: Sonia de Frutos Cid
Contenidos
1. Motivación

2. Objetivos
3. Fundamentos Tecnológicos
4. Planteamiento del Problema
5. Solución Propuesta
6. Conclusiones
7. Líneas Futuras

CloudRoom - Francisco Javier Sánchez Carmona

2
Motivación
Motivación
Internetificación

CloudRoom - Francisco Javier Sánchez Carmona

4
Motivación
Computación Móvil
• Internet está independizándose de los ordenadores

• Cada vez mayor capacidad de cómputo
• Conexiones de 4ª Generación (4G)
• Internet of Things

CloudRoom - Francisco Javier Sánchez Carmona

5
Motivación
Redes Sociales y Web Semántica
• Información gigantesca desestructurada e inconexa

• Redes Sociales
• Ricas en conexiones de los datos

• Soluciones
• Tecnologías semánticas

Facebook Open Graph
CloudRoom - Francisco Javier Sánchez Carmona

Twitter Interest Graph

Google Knowledge Graph
6
Motivación
Cloud Computing
• Utility Computing
• La computación como suministro
• Como la electricidad, el agua o el teléfono
• Cloud Computing
• Una idea antigua rebautizada
“If computers of the kind I have advocated become the computers
of the future, then computing may someday be organized as a
public utility just as the telephone system is a public utility... The
computer utility could become the basis of a new and important
industry.”
—John McCarthy, discurso en el centenario del MIT en 1961
CloudRoom - Francisco Javier Sánchez Carmona

7
Motivación
Massive Open Online Courses (MOOC)
• Educación aumentada tecnológicamente

• Cursos Online Masivos y Abiertos
• Metodología
•
•
•
•

Curso con una estructura temporal definida
Número de estudiantes ilimitado
Impartido vía Internet
Materiales accesibles de forma gratuita

CloudRoom - Francisco Javier Sánchez Carmona

8
Motivación
Principales Plataformas
• Creadas por prestigiosas
Universidades
• En España
• MiriadaX

• Para el futuro
• Mooc.org (Google)

CloudRoom - Francisco Javier Sánchez Carmona

9
Objetivos
Objetivos
• Plataforma MOOC desplegada en Cloud

• Aplicación Software as a Service (SaaS)
• Social
• Multidispositivo (PC, Tablet, Smartphone …)
• Semántica de los datos almacenados
• Escalable y elástica

CloudRoom - Francisco Javier Sánchez Carmona

11
Fundamentos Tecnológicos
Fundamentos tecnológicos

CloudRoom - Francisco Javier Sánchez Carmona

13
Planteamiento del Problema
Planteamiento del Problema
• Concepción del producto desde la etapa inicial
• Poca experiencia y conocimiento
• Plataformas MOOC
• Redes Sociales

• Técnicas de Interacción Persona-Ordenador
• Técnicas ágiles de análisis de requisitos

• ERS
•
•
•
•

Gestión de la Interfaz Principal
Gestión de Cursos
Interacciones Sociales
Acceso a cursos, instituciones, usuarios …

CloudRoom - Francisco Javier Sánchez Carmona

15
Solución Propuesta
Solución Propuesta
Metodología y Ciclo de Vida
• Ciclo de vida iterativo e incremental

• Metodología personalizada
• Métodos ágiles de Ingeniería del Software

• Gestión de Configuración
• Integración continua

Bitbucket
• Código

CloudRoom - Francisco Javier Sánchez Carmona

Dropbox
• Documentación

17
Solución Propuesta
Arquitectura del Software
• Todas las capas del sistema
desacopladas
• Front-end de Back-end
• Facilita la creación de nuevos clientes
(Android, iOS …)

• Capa de datos del servicio web

• Balanceo de carga
• Servidores de respaldo

• Escalabilidad
CloudRoom - Francisco Javier Sánchez Carmona

18
Solución Propuesta
Modelo de Datos
• Aplicación centrada en los datos

• Ingente cantidad de datos (Big Data)
• Muy variados (Texto, Videos, Fotos)
• Generados a gran velocidad
• Proporcionan un gran valor

• Persistencia Poliglota
• Sesiones en BBDD Clave-Valor
• Datos sociales en BBDD de Grafos

CloudRoom - Francisco Javier Sánchez Carmona

19
Solución Propuesta
Modelo de Datos
• Almacenamiento de sesiones
• Información volátil
• Accedida potencialmente millones de
veces
• Base de Datos NoSQL Redis
• Clave-Valor
• Altamente escalable
• Muy rápida para el dominio escogido

CloudRoom - Francisco Javier Sánchez Carmona

20
Solución Propuesta
Modelo de Datos
• Clasifican la información

• Modelan conceptos de forma
natural
• Proporcionan semántica a los
datos
• Una Red Social es un Grafo

CloudRoom - Francisco Javier Sánchez Carmona

21
Solución Propuesta
Modelo de Datos
• Modelo de Redes Semánticas

CloudRoom - Francisco Javier Sánchez Carmona

22
Solución Propuesta
Modelo de Datos
• SGBD Neo4j

• Grafo de propiedades etiquetado
• Esquema opcional
• Compatible con Tripletas (RDF)

• Consultas
• Lenguaje declarativo Cypher

• Escala hasta 32.000 M de Nodos

• Capaz de recorrer 1M de Nodos/s

CloudRoom - Francisco Javier Sánchez Carmona

23
Solución Propuesta
Modelo de Datos
• Modelo de diseño Neo4j

• Etiquetas ayudan a clasificar e
indexar
• Clases y Subclases

• Relaciones modelan
conceptos

CloudRoom - Francisco Javier Sánchez Carmona

24
Solución Propuesta
Back-end

CloudRoom - Francisco Javier Sánchez Carmona

25
Solución Propuesta
Back-end
• Servicio web con API REST
• Express.js

• Acceso a la capa de datos vía REST
• Implementación
• Javascript del lado del servidor (Node.js)
• Modelo de entrada/salida no bloqueante
• Concurrencia asíncrona sin threads
• Aplicaciones en red altamente escalables

CloudRoom - Francisco Javier Sánchez Carmona

26
Solución Propuesta
Front-end

CloudRoom - Francisco Javier Sánchez Carmona

27
Solución Propuesta
Front-end
• Interfaz web con Responsive Web Design
• Proporciona cliente multidispositivo

• Lógica de la interfaz en Javascript
• Framework Modelo Vista Controlador
• Cliente REST

CloudRoom - Francisco Javier Sánchez Carmona

28
Solución Propuesta
Front-end

CloudRoom - Francisco Javier Sánchez Carmona

29
Solución Propuesta
Despliegue en Amazon Web Services
• Balanceo de carga elástico
• Auto escalado dinámico
• Dos zonas de disponibilidad
• Tolerancia a fallos

• Alta disponibilidad de
Contenido
• Amazon CloudFront (CDN)

• Almacenamiento de objetos
estáticos
• Amazon S3
CloudRoom - Francisco Javier Sánchez Carmona

30
Solución Propuesta
Despliegue en Amazon Web Services
• Dos modos Maestro/Esclavo

• Neo4j
• Datos replicados
• Alta disponibilidad

• Redis
• Datos particionados y
replicados
• Tolerancia a fallos
• Alta disponibilidad

CloudRoom - Francisco Javier Sánchez Carmona

31
Conclusiones
Conclusiones
• Proyecto integral de Ingeniería en Informática
• Mayoría de áreas de conocimiento tratadas
• Valoración de amplia gama de tecnologías

• Trabajo centrado en diseño escalable y elástico

• Idea original propuesta
• Dificultad inherente
• Ambiciones que exceden el tiempo dado

CloudRoom - Francisco Javier Sánchez Carmona

33
Líneas Futuras
Líneas Futuras
Buscador Semántico
• Al estilo Facebook Graph Search
• Consultas de la BBDD en lenguaje natural
• Ya se han iniciado las investigaciones

CloudRoom - Francisco Javier Sánchez Carmona

35
Líneas Futuras
Otras funcionalidades
• Motor de recomendaciones
• De cursos, de estudiantes para empleos

• Funcionalidades educativas
• Clases en video
• Automatización de las evaluaciones
• Fórmulas colaborativas

• Certificados firmados
• Chat Social

CloudRoom - Francisco Javier Sánchez Carmona

36
Escuela Técnica Superior de Ingenieros Informáticos
Universidad Politécnica de Madrid

TRABAJO FIN DE GRADO

CloudRoom
Una Plataforma Universitaria Social, Semántica y Ubicua
Autor: Francisco Javier Sánchez Carmona
Directora: Sonia de Frutos Cid
CloudRoom: Una Plataforma Universitaria Social, Semántica y Ubicua

Contenu connexe

Similaire à CloudRoom: Una Plataforma Universitaria Social, Semántica y Ubicua

Angie web 3 y web 4
Angie web 3 y web 4Angie web 3 y web 4
Angie web 3 y web 4AngieRiao5
 
Flowics - Jornada en Big Data 2016 - ITBA
Flowics - Jornada en Big Data 2016 - ITBA Flowics - Jornada en Big Data 2016 - ITBA
Flowics - Jornada en Big Data 2016 - ITBA Andres Moratti
 
Retos actuales y futuros del Cómputo en la Nube - Un enfoque académico
Retos actuales y futuros del Cómputo en la Nube - Un enfoque académicoRetos actuales y futuros del Cómputo en la Nube - Un enfoque académico
Retos actuales y futuros del Cómputo en la Nube - Un enfoque académicoJavier Mijail Espadas Pech
 
Novedades SharePoint 2016. Nuevos retos en Entonos Hibridos
Novedades SharePoint 2016. Nuevos retos en Entonos HibridosNovedades SharePoint 2016. Nuevos retos en Entonos Hibridos
Novedades SharePoint 2016. Nuevos retos en Entonos HibridosGonzalo Marcos Ansoain
 
Novedades SharePoint 2016. Nuevos retos en Entonos Hibridos
Novedades SharePoint 2016. Nuevos retos en Entonos HibridosNovedades SharePoint 2016. Nuevos retos en Entonos Hibridos
Novedades SharePoint 2016. Nuevos retos en Entonos HibridosGonzalo Marcos
 
Implementación de Alfresco y Drupal CMS, PUC Dicsa.
Implementación de Alfresco y Drupal CMS, PUC Dicsa.Implementación de Alfresco y Drupal CMS, PUC Dicsa.
Implementación de Alfresco y Drupal CMS, PUC Dicsa.Intellego Chile
 
Implementación de una estrategia digital en WordPress - WordCamp Bogotá 2018
Implementación de una estrategia digital en WordPress - WordCamp Bogotá 2018Implementación de una estrategia digital en WordPress - WordCamp Bogotá 2018
Implementación de una estrategia digital en WordPress - WordCamp Bogotá 2018Juan Buitrago
 
2012 05 11 (uned) emadrid anavarro ucm aquitectura campus virtual multiplataf...
2012 05 11 (uned) emadrid anavarro ucm aquitectura campus virtual multiplataf...2012 05 11 (uned) emadrid anavarro ucm aquitectura campus virtual multiplataf...
2012 05 11 (uned) emadrid anavarro ucm aquitectura campus virtual multiplataf...eMadrid network
 
Implementación de Cloud Computing con Software Libre y medidas de seguridad p...
Implementación de Cloud Computing con Software Libre y medidas de seguridad p...Implementación de Cloud Computing con Software Libre y medidas de seguridad p...
Implementación de Cloud Computing con Software Libre y medidas de seguridad p...campus party
 
Ucv sesion 15 diseño optimiz -redes
Ucv sesion 15 diseño optimiz -redesUcv sesion 15 diseño optimiz -redes
Ucv sesion 15 diseño optimiz -redesTaringa!
 
Arquitectura de la nube STMR
Arquitectura de la nube STMRArquitectura de la nube STMR
Arquitectura de la nube STMRServio Mendoza
 
Desarrollo Ágil De Aplicaciones Web
Desarrollo Ágil De Aplicaciones WebDesarrollo Ágil De Aplicaciones Web
Desarrollo Ágil De Aplicaciones WebAndrés Max
 

Similaire à CloudRoom: Una Plataforma Universitaria Social, Semántica y Ubicua (20)

Angie web 3 y web 4
Angie web 3 y web 4Angie web 3 y web 4
Angie web 3 y web 4
 
Flowics - Jornada en Big Data 2016 - ITBA
Flowics - Jornada en Big Data 2016 - ITBA Flowics - Jornada en Big Data 2016 - ITBA
Flowics - Jornada en Big Data 2016 - ITBA
 
Retos actuales y futuros del Cómputo en la Nube - Un enfoque académico
Retos actuales y futuros del Cómputo en la Nube - Un enfoque académicoRetos actuales y futuros del Cómputo en la Nube - Un enfoque académico
Retos actuales y futuros del Cómputo en la Nube - Un enfoque académico
 
Novedades SharePoint 2016. Nuevos retos en Entonos Hibridos
Novedades SharePoint 2016. Nuevos retos en Entonos HibridosNovedades SharePoint 2016. Nuevos retos en Entonos Hibridos
Novedades SharePoint 2016. Nuevos retos en Entonos Hibridos
 
Novedades SharePoint 2016. Nuevos retos en Entonos Hibridos
Novedades SharePoint 2016. Nuevos retos en Entonos HibridosNovedades SharePoint 2016. Nuevos retos en Entonos Hibridos
Novedades SharePoint 2016. Nuevos retos en Entonos Hibridos
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 
Implementación de Alfresco y Drupal CMS, PUC Dicsa.
Implementación de Alfresco y Drupal CMS, PUC Dicsa.Implementación de Alfresco y Drupal CMS, PUC Dicsa.
Implementación de Alfresco y Drupal CMS, PUC Dicsa.
 
Me4Map presentation at Universidad Carlos III of Madrid
Me4Map presentation at Universidad Carlos III of MadridMe4Map presentation at Universidad Carlos III of Madrid
Me4Map presentation at Universidad Carlos III of Madrid
 
Shadows of the browser
Shadows of the browserShadows of the browser
Shadows of the browser
 
Implementación de una estrategia digital en WordPress - WordCamp Bogotá 2018
Implementación de una estrategia digital en WordPress - WordCamp Bogotá 2018Implementación de una estrategia digital en WordPress - WordCamp Bogotá 2018
Implementación de una estrategia digital en WordPress - WordCamp Bogotá 2018
 
2012 05 11 (uned) emadrid anavarro ucm aquitectura campus virtual multiplataf...
2012 05 11 (uned) emadrid anavarro ucm aquitectura campus virtual multiplataf...2012 05 11 (uned) emadrid anavarro ucm aquitectura campus virtual multiplataf...
2012 05 11 (uned) emadrid anavarro ucm aquitectura campus virtual multiplataf...
 
Cloud Computing: una perspectiva tecnológica
Cloud Computing: una perspectiva tecnológicaCloud Computing: una perspectiva tecnológica
Cloud Computing: una perspectiva tecnológica
 
Arquitectura Lambda
Arquitectura LambdaArquitectura Lambda
Arquitectura Lambda
 
Implementación de Cloud Computing con Software Libre y medidas de seguridad p...
Implementación de Cloud Computing con Software Libre y medidas de seguridad p...Implementación de Cloud Computing con Software Libre y medidas de seguridad p...
Implementación de Cloud Computing con Software Libre y medidas de seguridad p...
 
Ucv sesion 15 diseño optimiz -redes
Ucv sesion 15 diseño optimiz -redesUcv sesion 15 diseño optimiz -redes
Ucv sesion 15 diseño optimiz -redes
 
Bases de Datos No Relacionales (NoSQL)
Bases de Datos No Relacionales (NoSQL) Bases de Datos No Relacionales (NoSQL)
Bases de Datos No Relacionales (NoSQL)
 
Arquitectura de la nube STMR
Arquitectura de la nube STMRArquitectura de la nube STMR
Arquitectura de la nube STMR
 
Alto rendimiento en la web
Alto rendimiento en la webAlto rendimiento en la web
Alto rendimiento en la web
 
Desarrollo Ágil De Aplicaciones Web
Desarrollo Ágil De Aplicaciones WebDesarrollo Ágil De Aplicaciones Web
Desarrollo Ágil De Aplicaciones Web
 
computación en la nube
computación en la nubecomputación en la nube
computación en la nube
 

Dernier

pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 

Dernier (10)

pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 

CloudRoom: Una Plataforma Universitaria Social, Semántica y Ubicua

  • 1. Escuela Técnica Superior de Ingenieros Informáticos Universidad Politécnica de Madrid TRABAJO FIN DE GRADO CloudRoom Una Plataforma Universitaria Social, Semántica y Ubicua Autor: Francisco Javier Sánchez Carmona Directora: Sonia de Frutos Cid
  • 2. Contenidos 1. Motivación 2. Objetivos 3. Fundamentos Tecnológicos 4. Planteamiento del Problema 5. Solución Propuesta 6. Conclusiones 7. Líneas Futuras CloudRoom - Francisco Javier Sánchez Carmona 2
  • 5. Motivación Computación Móvil • Internet está independizándose de los ordenadores • Cada vez mayor capacidad de cómputo • Conexiones de 4ª Generación (4G) • Internet of Things CloudRoom - Francisco Javier Sánchez Carmona 5
  • 6. Motivación Redes Sociales y Web Semántica • Información gigantesca desestructurada e inconexa • Redes Sociales • Ricas en conexiones de los datos • Soluciones • Tecnologías semánticas Facebook Open Graph CloudRoom - Francisco Javier Sánchez Carmona Twitter Interest Graph Google Knowledge Graph 6
  • 7. Motivación Cloud Computing • Utility Computing • La computación como suministro • Como la electricidad, el agua o el teléfono • Cloud Computing • Una idea antigua rebautizada “If computers of the kind I have advocated become the computers of the future, then computing may someday be organized as a public utility just as the telephone system is a public utility... The computer utility could become the basis of a new and important industry.” —John McCarthy, discurso en el centenario del MIT en 1961 CloudRoom - Francisco Javier Sánchez Carmona 7
  • 8. Motivación Massive Open Online Courses (MOOC) • Educación aumentada tecnológicamente • Cursos Online Masivos y Abiertos • Metodología • • • • Curso con una estructura temporal definida Número de estudiantes ilimitado Impartido vía Internet Materiales accesibles de forma gratuita CloudRoom - Francisco Javier Sánchez Carmona 8
  • 9. Motivación Principales Plataformas • Creadas por prestigiosas Universidades • En España • MiriadaX • Para el futuro • Mooc.org (Google) CloudRoom - Francisco Javier Sánchez Carmona 9
  • 11. Objetivos • Plataforma MOOC desplegada en Cloud • Aplicación Software as a Service (SaaS) • Social • Multidispositivo (PC, Tablet, Smartphone …) • Semántica de los datos almacenados • Escalable y elástica CloudRoom - Francisco Javier Sánchez Carmona 11
  • 13. Fundamentos tecnológicos CloudRoom - Francisco Javier Sánchez Carmona 13
  • 15. Planteamiento del Problema • Concepción del producto desde la etapa inicial • Poca experiencia y conocimiento • Plataformas MOOC • Redes Sociales • Técnicas de Interacción Persona-Ordenador • Técnicas ágiles de análisis de requisitos • ERS • • • • Gestión de la Interfaz Principal Gestión de Cursos Interacciones Sociales Acceso a cursos, instituciones, usuarios … CloudRoom - Francisco Javier Sánchez Carmona 15
  • 17. Solución Propuesta Metodología y Ciclo de Vida • Ciclo de vida iterativo e incremental • Metodología personalizada • Métodos ágiles de Ingeniería del Software • Gestión de Configuración • Integración continua Bitbucket • Código CloudRoom - Francisco Javier Sánchez Carmona Dropbox • Documentación 17
  • 18. Solución Propuesta Arquitectura del Software • Todas las capas del sistema desacopladas • Front-end de Back-end • Facilita la creación de nuevos clientes (Android, iOS …) • Capa de datos del servicio web • Balanceo de carga • Servidores de respaldo • Escalabilidad CloudRoom - Francisco Javier Sánchez Carmona 18
  • 19. Solución Propuesta Modelo de Datos • Aplicación centrada en los datos • Ingente cantidad de datos (Big Data) • Muy variados (Texto, Videos, Fotos) • Generados a gran velocidad • Proporcionan un gran valor • Persistencia Poliglota • Sesiones en BBDD Clave-Valor • Datos sociales en BBDD de Grafos CloudRoom - Francisco Javier Sánchez Carmona 19
  • 20. Solución Propuesta Modelo de Datos • Almacenamiento de sesiones • Información volátil • Accedida potencialmente millones de veces • Base de Datos NoSQL Redis • Clave-Valor • Altamente escalable • Muy rápida para el dominio escogido CloudRoom - Francisco Javier Sánchez Carmona 20
  • 21. Solución Propuesta Modelo de Datos • Clasifican la información • Modelan conceptos de forma natural • Proporcionan semántica a los datos • Una Red Social es un Grafo CloudRoom - Francisco Javier Sánchez Carmona 21
  • 22. Solución Propuesta Modelo de Datos • Modelo de Redes Semánticas CloudRoom - Francisco Javier Sánchez Carmona 22
  • 23. Solución Propuesta Modelo de Datos • SGBD Neo4j • Grafo de propiedades etiquetado • Esquema opcional • Compatible con Tripletas (RDF) • Consultas • Lenguaje declarativo Cypher • Escala hasta 32.000 M de Nodos • Capaz de recorrer 1M de Nodos/s CloudRoom - Francisco Javier Sánchez Carmona 23
  • 24. Solución Propuesta Modelo de Datos • Modelo de diseño Neo4j • Etiquetas ayudan a clasificar e indexar • Clases y Subclases • Relaciones modelan conceptos CloudRoom - Francisco Javier Sánchez Carmona 24
  • 25. Solución Propuesta Back-end CloudRoom - Francisco Javier Sánchez Carmona 25
  • 26. Solución Propuesta Back-end • Servicio web con API REST • Express.js • Acceso a la capa de datos vía REST • Implementación • Javascript del lado del servidor (Node.js) • Modelo de entrada/salida no bloqueante • Concurrencia asíncrona sin threads • Aplicaciones en red altamente escalables CloudRoom - Francisco Javier Sánchez Carmona 26
  • 27. Solución Propuesta Front-end CloudRoom - Francisco Javier Sánchez Carmona 27
  • 28. Solución Propuesta Front-end • Interfaz web con Responsive Web Design • Proporciona cliente multidispositivo • Lógica de la interfaz en Javascript • Framework Modelo Vista Controlador • Cliente REST CloudRoom - Francisco Javier Sánchez Carmona 28
  • 29. Solución Propuesta Front-end CloudRoom - Francisco Javier Sánchez Carmona 29
  • 30. Solución Propuesta Despliegue en Amazon Web Services • Balanceo de carga elástico • Auto escalado dinámico • Dos zonas de disponibilidad • Tolerancia a fallos • Alta disponibilidad de Contenido • Amazon CloudFront (CDN) • Almacenamiento de objetos estáticos • Amazon S3 CloudRoom - Francisco Javier Sánchez Carmona 30
  • 31. Solución Propuesta Despliegue en Amazon Web Services • Dos modos Maestro/Esclavo • Neo4j • Datos replicados • Alta disponibilidad • Redis • Datos particionados y replicados • Tolerancia a fallos • Alta disponibilidad CloudRoom - Francisco Javier Sánchez Carmona 31
  • 33. Conclusiones • Proyecto integral de Ingeniería en Informática • Mayoría de áreas de conocimiento tratadas • Valoración de amplia gama de tecnologías • Trabajo centrado en diseño escalable y elástico • Idea original propuesta • Dificultad inherente • Ambiciones que exceden el tiempo dado CloudRoom - Francisco Javier Sánchez Carmona 33
  • 35. Líneas Futuras Buscador Semántico • Al estilo Facebook Graph Search • Consultas de la BBDD en lenguaje natural • Ya se han iniciado las investigaciones CloudRoom - Francisco Javier Sánchez Carmona 35
  • 36. Líneas Futuras Otras funcionalidades • Motor de recomendaciones • De cursos, de estudiantes para empleos • Funcionalidades educativas • Clases en video • Automatización de las evaluaciones • Fórmulas colaborativas • Certificados firmados • Chat Social CloudRoom - Francisco Javier Sánchez Carmona 36
  • 37. Escuela Técnica Superior de Ingenieros Informáticos Universidad Politécnica de Madrid TRABAJO FIN DE GRADO CloudRoom Una Plataforma Universitaria Social, Semántica y Ubicua Autor: Francisco Javier Sánchez Carmona Directora: Sonia de Frutos Cid