SlideShare una empresa de Scribd logo
1 de 20
Descargar para leer sin conexión
DESARROLLO DE UNA APLICACIÓN WEB
PARA ORGANIZAR EVENTOS DEPORTIVOS
Adrián Alonso Vega
Lien Valdés Izquierdo
1
¿Qué es WePlay?
• Este proyecto denominado Desarrollo de una Aplicación Web para
organizar eventos deportivos, es parte de otro proyecto
denominado Desarrollo de una Plataforma para organizar Eventos
Deportivos
• Plataforma online para organizar eventos deportivos accesible desde
la web y desde cualquier dispositivo Android.
• WePlay ofrece gestionar eventos deportivos de forma rápida,
empleando geolocalización y comunicación entre deportistas.
• Se busca sencillez, agilidad y fluida comunicación entre los usuarios.
2
Objetivos del proyecto
• Desarrollar un prototipo funcional de aplicación Web para gestionar
eventos deportivos en línea.
• Implementar una API e integrar con aplicaciones clientes.
• Integrar nuestra API con un desarrollo de una aplicación móvil que
consuma nuestras funcionalidades.
• Profundizar en las diferentes tecnologías impartidas en el master.
• Obtener una visión global de un proyecto real web trabajando en
equipo empleando metodologías ágiles.
• Profundizar en sistemas gestores de bases de datos NoSQL
• Profundizar en frameworks MVC
3
4
Arquitectura WePlay
Tecnologías Empleadas
Hemos empleado tecnologías muy
demandadas en el mundo del
desarrollo haciendo que nuestro
proyecto se enriquezca de multitud de
tecnologías
5
Diseño Base de Datos- Modelo de Datos
6
7
• BBDD NoSql Orientada a Documentos
• Manejo de grandes cantidades de datos.
• Escalable
• Eficiencia y Rendimiento en inserciones y consultas
• Encaja bien en proyectos que funcionarían sobre base de datos
relacionales
• No hay tablas y relaciones, hay colecciones y documentos.
Referencias a documentos y documentos embebidos
• ¿Quién utilza MongoDB? Foursquare, Sourceforge, Google, Facebook
o New York Times.
Diseño Base de Datos- Modelo de Datos
8
• Agilidad en el desarrollo
• Abstracción de la base de datos
• Acceso transparente al sistema de base de datos
• Mapeos de documentos embebidos y referenciados a través de
Anotaciones, XML, YAML o PHP.
• Seguridad
• Mantenimiento del código
Doctrine ODM (Object Document Mapper)
Diseño Base de Datos- Modelo de Datos
Desarrollo de la App Web - Symfony 2
9
• Framework MVC cada día mas popular entre la comunidad de
Desarrolladores PHP.
• Dividido en componentes reutilizables.
• Desarrollado con buenas prácticas, patrones y altamente
actualizado
• Buena documentación, pequeña curva de aprendizaje
• Ampliable con gran cantidad de bundles que proporcionan más
funcionalidad
Desarrollo de la App Web - Symfony 2
10
• DataAccessBundle
• BackendBundle
• PublicBundle
• IntranetBundle
• RestBundle
Tecnologías del Lado del Cliente - Frontend
11
• Bootstrap es un framework frontend para la creación de sitios y
aplicaciones web. Contiene plantillas de diseño basadas en HTML y
CSS con tipografías, formularios, botones, gráficos, barras de
navegación y demás componentes de interfaz, así como extensiones
opcionales de JavaScript
Tecnologías del Lado del Cliente - Frontend
12
• Twig es un motor de plantillas pensado para ofrecer una opción
seguro y potente, aportando un flexibilidad muy interesante a
nuestras vistas.
• Modularizar nuestras vistas de manera muy sencilla gracias a las
directivas extends e includes.
• Reutilización de plantillado y jerarquía en tres capas
Tecnologías del Lado del Cliente
jQuery, jQuery UI, Ajax
13
• JQuery es una biblioteca de JavaScript que permite simplificar la
manera de interactuar con los documentos HTML, manipular el
árbol DOM, manejar eventos, desarrollar animaciones y agregar
interacción con la técnica AJAX a páginas web.
• JQueryUI que es un conjunto de interfaces de usuario, efectos,
widgets y temas construidos con la librería Jquery que la completan
dándonos bastante componentes de funcionalidad básica.
Tecnologías del Lado del Cliente - Geolocalización
14
• Empleo de la API de Google Maps
• Api de Geolocalización de HTML5
Tecnologías del Lado del Cliente - Pusher
15
• Websocket es una tecnología que proporciona a nuestra aplicación
un canal de comunicación bidireccional sobre sockets TCP. Esta
tecnología está diseñada para ejecutarse sobre navegadores y
servidores web
• Hemos empleado Pusher, servicio online, permite crear aplicaciones
en tiempo real como pueden ser de chat, colaborativas a través de
un sistema de eventos.
• Pusher se integra con gran cantidad
de tecnologías.
• Esta tecnología nos permite añadir
funcionalidad en tiempo real
( Sistema de comentarios de
partidos en tiempo real)
Implementación de la API REST
16
• Para implementar la capa REST nos hemos apoyado en un bundle de
terceros llamado FOSRestBundle.
• Generación de controladores agnósticos pudiendo solicitar los datos
de la vista en distintos posibles formatos (XML, JSON…).
• Generación automática de rutas siguiendo las convenciones REST.
• Decodificación de las peticiones http, restricciones de cabeceras por
mime types y manejo de excepciones con estados http adecuados.
Para implementar lo anterior se crearon 4 controladores donde
definimos las API: GameController, LoginController, SportController y
UserController. Todos extienden de FOSRestController.
Implementación de la API REST - Securización
17
• WSSE o Web Service Security es una especificación de seguridad
definida por SOAP, se le conoce también como WS-Security y
permite proteger los mensajes entrantes y salientes contra distintas
amenazas de seguridad.
• Sistema de autenticación basado en tokens, se puede limitar el
acceso a organizaciones o individuos no autorizados a estos
métodos.
• Marca de tiempo para evitar que los mensajes se reproduzcan
repetidamente.
• Encriptación de la password
• Seguro frente ataques repetitivos usando cache de tokens
• Sencilla configuración e integración
UsernameToken Username="alonsus91",PasswordDigest="LlsD
qVDaw5nMs1iasbladXWvs5c=",Nonce="YzdlMzQ3NWQ4MTc1YTI3OA=="
, Created="2014-05-30T07:53:54Z"
Dificultades
18
• Gestión del tiempo entre los miembros del equipo
• Emplear mongo impuso una pequeña barrera de aprendizaje inicial
• Securización API e integración con las partes clientes
• Falta de experiencia con ciertas tecnologías
Ampliaciones
• Sistema de filtros
• Paginado y mejora de experiencia
• Mayor sociabilización de la aplicación
• Sistema de notificaciones PUSH
Conclusiones
19
• Se desarrollo una aplicación web funcional empleando tecnologías
web
• Se implementó una API para que clientes se integren con nuestra
aplicación
• Se empleó una metodología ágil adaptada a las circunstancias del
equipo.
• Se profundizó en muchas tecnologías impartidas y relacionadas con
el master
Hemos logrado nuestros objetivos y
estamos satisfechos con el trabajo realizado
Muchas gracias
Espero que haya sido una presentación
agradable para ustedes
20

Más contenido relacionado

La actualidad más candente

Windows server 2012 jose luis
Windows server 2012 jose luisWindows server 2012 jose luis
Windows server 2012 jose luisyanez1814
 
Manual de instalación
Manual de instalación Manual de instalación
Manual de instalación Mafer Pinto
 
Typo3: El CMS que vino del frío
Typo3: El CMS que vino del fríoTypo3: El CMS que vino del frío
Typo3: El CMS que vino del fríoOpenExpoES
 
Dn13 u3 a35_mbe
Dn13 u3 a35_mbeDn13 u3 a35_mbe
Dn13 u3 a35_mbeUtec Dn
 
"MANUAL DEL USO DEL WORDPRESS"
"MANUAL DEL  USO DEL WORDPRESS""MANUAL DEL  USO DEL WORDPRESS"
"MANUAL DEL USO DEL WORDPRESS"NathCh
 
CMS Administración de contenidos. Un sistema de gestión de contenidos
CMS Administración de contenidos. Un sistema de gestión de contenidosCMS Administración de contenidos. Un sistema de gestión de contenidos
CMS Administración de contenidos. Un sistema de gestión de contenidosInterlat
 
Dn13 u3 a35_poe
Dn13 u3 a35_poeDn13 u3 a35_poe
Dn13 u3 a35_poeelisoyyo
 
Tendencia actual en la búsqueda de perfiles de software libre- OpenExpo Day 2015
Tendencia actual en la búsqueda de perfiles de software libre- OpenExpo Day 2015Tendencia actual en la búsqueda de perfiles de software libre- OpenExpo Day 2015
Tendencia actual en la búsqueda de perfiles de software libre- OpenExpo Day 2015OpenExpoES
 

La actualidad más candente (18)

Windows server 2012 jose luis
Windows server 2012 jose luisWindows server 2012 jose luis
Windows server 2012 jose luis
 
Manual de instalación
Manual de instalación Manual de instalación
Manual de instalación
 
Typo3: El CMS que vino del frío
Typo3: El CMS que vino del fríoTypo3: El CMS que vino del frío
Typo3: El CMS que vino del frío
 
Dn13 u3 a35_mbe
Dn13 u3 a35_mbeDn13 u3 a35_mbe
Dn13 u3 a35_mbe
 
"MANUAL DEL USO DEL WORDPRESS"
"MANUAL DEL  USO DEL WORDPRESS""MANUAL DEL  USO DEL WORDPRESS"
"MANUAL DEL USO DEL WORDPRESS"
 
WIKI
WIKIWIKI
WIKI
 
Joomla!
Joomla!Joomla!
Joomla!
 
Wordpress
WordpressWordpress
Wordpress
 
Wordpress
WordpressWordpress
Wordpress
 
CMS Administración de contenidos. Un sistema de gestión de contenidos
CMS Administración de contenidos. Un sistema de gestión de contenidosCMS Administración de contenidos. Un sistema de gestión de contenidos
CMS Administración de contenidos. Un sistema de gestión de contenidos
 
CMS
CMSCMS
CMS
 
JQuery
JQueryJQuery
JQuery
 
Semana 7 Instalación servicios OCI
Semana 7   Instalación servicios OCISemana 7   Instalación servicios OCI
Semana 7 Instalación servicios OCI
 
Dn13 u3 a35_poe
Dn13 u3 a35_poeDn13 u3 a35_poe
Dn13 u3 a35_poe
 
Visual basic
Visual basicVisual basic
Visual basic
 
Wordpress
WordpressWordpress
Wordpress
 
Tendencia actual en la búsqueda de perfiles de software libre- OpenExpo Day 2015
Tendencia actual en la búsqueda de perfiles de software libre- OpenExpo Day 2015Tendencia actual en la búsqueda de perfiles de software libre- OpenExpo Day 2015
Tendencia actual en la búsqueda de perfiles de software libre- OpenExpo Day 2015
 
Sprint 3 Despliegue a producción G55
Sprint 3 Despliegue a producción G55Sprint 3 Despliegue a producción G55
Sprint 3 Despliegue a producción G55
 

Similar a Organizar eventos deportivos con WePlay

Aplicaciones Web SPA con WebAPI y TypeScript
Aplicaciones Web SPA con WebAPI y TypeScriptAplicaciones Web SPA con WebAPI y TypeScript
Aplicaciones Web SPA con WebAPI y TypeScriptLuis Guerrero
 
Realtime Apps en .NET Core by Carlos Landeras y Manuel Rodrigo Cabello
Realtime Apps en .NET Core by Carlos Landeras y Manuel Rodrigo CabelloRealtime Apps en .NET Core by Carlos Landeras y Manuel Rodrigo Cabello
Realtime Apps en .NET Core by Carlos Landeras y Manuel Rodrigo CabelloPlain Concepts
 
Plainconcepts .Net Core Event - Real Time Applications
Plainconcepts .Net Core Event - Real Time ApplicationsPlainconcepts .Net Core Event - Real Time Applications
Plainconcepts .Net Core Event - Real Time ApplicationsCarlos Landeras Martínez
 
Oracle WebCenter
Oracle WebCenterOracle WebCenter
Oracle WebCenterTEAdrian
 
Proyecto de Aplicación-Implementación de una INTRANET = Colegio Sagrado Coraz...
Proyecto de Aplicación-Implementación de una INTRANET = Colegio Sagrado Coraz...Proyecto de Aplicación-Implementación de una INTRANET = Colegio Sagrado Coraz...
Proyecto de Aplicación-Implementación de una INTRANET = Colegio Sagrado Coraz...Ianpierr Miranda
 
Drupal camp2010bcn cmis-drupal_alfresco-v1.1
Drupal camp2010bcn cmis-drupal_alfresco-v1.1Drupal camp2010bcn cmis-drupal_alfresco-v1.1
Drupal camp2010bcn cmis-drupal_alfresco-v1.1Roger CARHUATOCTO
 
API REST FOR THE BD2 DATABASE WITHIN THE IBM I SYSTEMS, USING THE PHP FRAMEWO...
API REST FOR THE BD2 DATABASE WITHIN THE IBM I SYSTEMS, USING THE PHP FRAMEWO...API REST FOR THE BD2 DATABASE WITHIN THE IBM I SYSTEMS, USING THE PHP FRAMEWO...
API REST FOR THE BD2 DATABASE WITHIN THE IBM I SYSTEMS, USING THE PHP FRAMEWO...Héctor Curbelo Barrios
 
APPSWEBI4.0.pptx
APPSWEBI4.0.pptxAPPSWEBI4.0.pptx
APPSWEBI4.0.pptx22040086
 
15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVC
15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVC15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVC
15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVCLuis Fernando Aguas Bucheli
 
Como sacar el máximo partido a los Cores de MuleSoft - optimización y buenas ...
Como sacar el máximo partido a los Cores de MuleSoft - optimización y buenas ...Como sacar el máximo partido a los Cores de MuleSoft - optimización y buenas ...
Como sacar el máximo partido a los Cores de MuleSoft - optimización y buenas ...Francisco Javier Toscano Lopez
 
herramientas tecnológicas
herramientas tecnológicasherramientas tecnológicas
herramientas tecnológicasGerardo Linares
 
Front end developer
Front end developerFront end developer
Front end developerSkynet Erp
 
Introducción al desarrollo web moderno
Introducción al desarrollo web modernoIntroducción al desarrollo web moderno
Introducción al desarrollo web modernoSebastián Rocco
 
Modulo1-Presentaciones-parte01.1.ppt
Modulo1-Presentaciones-parte01.1.pptModulo1-Presentaciones-parte01.1.ppt
Modulo1-Presentaciones-parte01.1.pptssuser73f459
 
Presentacion Capaintermedia
Presentacion CapaintermediaPresentacion Capaintermedia
Presentacion CapaintermediaJhon Zuluaga
 
Tienda Virtual.- Gygacom
Tienda Virtual.- GygacomTienda Virtual.- Gygacom
Tienda Virtual.- GygacomHikaiwaba
 

Similar a Organizar eventos deportivos con WePlay (20)

Aplicaciones Web SPA con WebAPI y TypeScript
Aplicaciones Web SPA con WebAPI y TypeScriptAplicaciones Web SPA con WebAPI y TypeScript
Aplicaciones Web SPA con WebAPI y TypeScript
 
Realtime Apps en .NET Core by Carlos Landeras y Manuel Rodrigo Cabello
Realtime Apps en .NET Core by Carlos Landeras y Manuel Rodrigo CabelloRealtime Apps en .NET Core by Carlos Landeras y Manuel Rodrigo Cabello
Realtime Apps en .NET Core by Carlos Landeras y Manuel Rodrigo Cabello
 
Plainconcepts .Net Core Event - Real Time Applications
Plainconcepts .Net Core Event - Real Time ApplicationsPlainconcepts .Net Core Event - Real Time Applications
Plainconcepts .Net Core Event - Real Time Applications
 
Oracle WebCenter
Oracle WebCenterOracle WebCenter
Oracle WebCenter
 
Proyecto de Aplicación-Implementación de una INTRANET = Colegio Sagrado Coraz...
Proyecto de Aplicación-Implementación de una INTRANET = Colegio Sagrado Coraz...Proyecto de Aplicación-Implementación de una INTRANET = Colegio Sagrado Coraz...
Proyecto de Aplicación-Implementación de una INTRANET = Colegio Sagrado Coraz...
 
Drupal camp2010bcn cmis-drupal_alfresco-v1.1
Drupal camp2010bcn cmis-drupal_alfresco-v1.1Drupal camp2010bcn cmis-drupal_alfresco-v1.1
Drupal camp2010bcn cmis-drupal_alfresco-v1.1
 
API REST FOR THE BD2 DATABASE WITHIN THE IBM I SYSTEMS, USING THE PHP FRAMEWO...
API REST FOR THE BD2 DATABASE WITHIN THE IBM I SYSTEMS, USING THE PHP FRAMEWO...API REST FOR THE BD2 DATABASE WITHIN THE IBM I SYSTEMS, USING THE PHP FRAMEWO...
API REST FOR THE BD2 DATABASE WITHIN THE IBM I SYSTEMS, USING THE PHP FRAMEWO...
 
APPSWEBI4.0.pptx
APPSWEBI4.0.pptxAPPSWEBI4.0.pptx
APPSWEBI4.0.pptx
 
S7-DAW-2022S1.pptx
S7-DAW-2022S1.pptxS7-DAW-2022S1.pptx
S7-DAW-2022S1.pptx
 
15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVC
15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVC15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVC
15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVC
 
Como sacar el máximo partido a los Cores de MuleSoft - optimización y buenas ...
Como sacar el máximo partido a los Cores de MuleSoft - optimización y buenas ...Como sacar el máximo partido a los Cores de MuleSoft - optimización y buenas ...
Como sacar el máximo partido a los Cores de MuleSoft - optimización y buenas ...
 
ASP.NET MVC
ASP.NET MVCASP.NET MVC
ASP.NET MVC
 
herramientas tecnológicas
herramientas tecnológicasherramientas tecnológicas
herramientas tecnológicas
 
Front end developer
Front end developerFront end developer
Front end developer
 
UWE
UWEUWE
UWE
 
Introducción al desarrollo web moderno
Introducción al desarrollo web modernoIntroducción al desarrollo web moderno
Introducción al desarrollo web moderno
 
Modulo1-Presentaciones-parte01.1.ppt
Modulo1-Presentaciones-parte01.1.pptModulo1-Presentaciones-parte01.1.ppt
Modulo1-Presentaciones-parte01.1.ppt
 
Presentacion Capaintermedia
Presentacion CapaintermediaPresentacion Capaintermedia
Presentacion Capaintermedia
 
Descubriendo windows azure
Descubriendo windows azureDescubriendo windows azure
Descubriendo windows azure
 
Tienda Virtual.- Gygacom
Tienda Virtual.- GygacomTienda Virtual.- Gygacom
Tienda Virtual.- Gygacom
 

Último

Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofJuancarlosHuertasNio1
 
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
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
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
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...JaquelineJuarez15
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...AlanCedillo9
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
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
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 

Último (20)

Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sof
 
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
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
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)
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
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
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 

Organizar eventos deportivos con WePlay

  • 1. DESARROLLO DE UNA APLICACIÓN WEB PARA ORGANIZAR EVENTOS DEPORTIVOS Adrián Alonso Vega Lien Valdés Izquierdo 1
  • 2. ¿Qué es WePlay? • Este proyecto denominado Desarrollo de una Aplicación Web para organizar eventos deportivos, es parte de otro proyecto denominado Desarrollo de una Plataforma para organizar Eventos Deportivos • Plataforma online para organizar eventos deportivos accesible desde la web y desde cualquier dispositivo Android. • WePlay ofrece gestionar eventos deportivos de forma rápida, empleando geolocalización y comunicación entre deportistas. • Se busca sencillez, agilidad y fluida comunicación entre los usuarios. 2
  • 3. Objetivos del proyecto • Desarrollar un prototipo funcional de aplicación Web para gestionar eventos deportivos en línea. • Implementar una API e integrar con aplicaciones clientes. • Integrar nuestra API con un desarrollo de una aplicación móvil que consuma nuestras funcionalidades. • Profundizar en las diferentes tecnologías impartidas en el master. • Obtener una visión global de un proyecto real web trabajando en equipo empleando metodologías ágiles. • Profundizar en sistemas gestores de bases de datos NoSQL • Profundizar en frameworks MVC 3
  • 5. Tecnologías Empleadas Hemos empleado tecnologías muy demandadas en el mundo del desarrollo haciendo que nuestro proyecto se enriquezca de multitud de tecnologías 5
  • 6. Diseño Base de Datos- Modelo de Datos 6
  • 7. 7 • BBDD NoSql Orientada a Documentos • Manejo de grandes cantidades de datos. • Escalable • Eficiencia y Rendimiento en inserciones y consultas • Encaja bien en proyectos que funcionarían sobre base de datos relacionales • No hay tablas y relaciones, hay colecciones y documentos. Referencias a documentos y documentos embebidos • ¿Quién utilza MongoDB? Foursquare, Sourceforge, Google, Facebook o New York Times. Diseño Base de Datos- Modelo de Datos
  • 8. 8 • Agilidad en el desarrollo • Abstracción de la base de datos • Acceso transparente al sistema de base de datos • Mapeos de documentos embebidos y referenciados a través de Anotaciones, XML, YAML o PHP. • Seguridad • Mantenimiento del código Doctrine ODM (Object Document Mapper) Diseño Base de Datos- Modelo de Datos
  • 9. Desarrollo de la App Web - Symfony 2 9 • Framework MVC cada día mas popular entre la comunidad de Desarrolladores PHP. • Dividido en componentes reutilizables. • Desarrollado con buenas prácticas, patrones y altamente actualizado • Buena documentación, pequeña curva de aprendizaje • Ampliable con gran cantidad de bundles que proporcionan más funcionalidad
  • 10. Desarrollo de la App Web - Symfony 2 10 • DataAccessBundle • BackendBundle • PublicBundle • IntranetBundle • RestBundle
  • 11. Tecnologías del Lado del Cliente - Frontend 11 • Bootstrap es un framework frontend para la creación de sitios y aplicaciones web. Contiene plantillas de diseño basadas en HTML y CSS con tipografías, formularios, botones, gráficos, barras de navegación y demás componentes de interfaz, así como extensiones opcionales de JavaScript
  • 12. Tecnologías del Lado del Cliente - Frontend 12 • Twig es un motor de plantillas pensado para ofrecer una opción seguro y potente, aportando un flexibilidad muy interesante a nuestras vistas. • Modularizar nuestras vistas de manera muy sencilla gracias a las directivas extends e includes. • Reutilización de plantillado y jerarquía en tres capas
  • 13. Tecnologías del Lado del Cliente jQuery, jQuery UI, Ajax 13 • JQuery es una biblioteca de JavaScript que permite simplificar la manera de interactuar con los documentos HTML, manipular el árbol DOM, manejar eventos, desarrollar animaciones y agregar interacción con la técnica AJAX a páginas web. • JQueryUI que es un conjunto de interfaces de usuario, efectos, widgets y temas construidos con la librería Jquery que la completan dándonos bastante componentes de funcionalidad básica.
  • 14. Tecnologías del Lado del Cliente - Geolocalización 14 • Empleo de la API de Google Maps • Api de Geolocalización de HTML5
  • 15. Tecnologías del Lado del Cliente - Pusher 15 • Websocket es una tecnología que proporciona a nuestra aplicación un canal de comunicación bidireccional sobre sockets TCP. Esta tecnología está diseñada para ejecutarse sobre navegadores y servidores web • Hemos empleado Pusher, servicio online, permite crear aplicaciones en tiempo real como pueden ser de chat, colaborativas a través de un sistema de eventos. • Pusher se integra con gran cantidad de tecnologías. • Esta tecnología nos permite añadir funcionalidad en tiempo real ( Sistema de comentarios de partidos en tiempo real)
  • 16. Implementación de la API REST 16 • Para implementar la capa REST nos hemos apoyado en un bundle de terceros llamado FOSRestBundle. • Generación de controladores agnósticos pudiendo solicitar los datos de la vista en distintos posibles formatos (XML, JSON…). • Generación automática de rutas siguiendo las convenciones REST. • Decodificación de las peticiones http, restricciones de cabeceras por mime types y manejo de excepciones con estados http adecuados. Para implementar lo anterior se crearon 4 controladores donde definimos las API: GameController, LoginController, SportController y UserController. Todos extienden de FOSRestController.
  • 17. Implementación de la API REST - Securización 17 • WSSE o Web Service Security es una especificación de seguridad definida por SOAP, se le conoce también como WS-Security y permite proteger los mensajes entrantes y salientes contra distintas amenazas de seguridad. • Sistema de autenticación basado en tokens, se puede limitar el acceso a organizaciones o individuos no autorizados a estos métodos. • Marca de tiempo para evitar que los mensajes se reproduzcan repetidamente. • Encriptación de la password • Seguro frente ataques repetitivos usando cache de tokens • Sencilla configuración e integración UsernameToken Username="alonsus91",PasswordDigest="LlsD qVDaw5nMs1iasbladXWvs5c=",Nonce="YzdlMzQ3NWQ4MTc1YTI3OA==" , Created="2014-05-30T07:53:54Z"
  • 18. Dificultades 18 • Gestión del tiempo entre los miembros del equipo • Emplear mongo impuso una pequeña barrera de aprendizaje inicial • Securización API e integración con las partes clientes • Falta de experiencia con ciertas tecnologías Ampliaciones • Sistema de filtros • Paginado y mejora de experiencia • Mayor sociabilización de la aplicación • Sistema de notificaciones PUSH
  • 19. Conclusiones 19 • Se desarrollo una aplicación web funcional empleando tecnologías web • Se implementó una API para que clientes se integren con nuestra aplicación • Se empleó una metodología ágil adaptada a las circunstancias del equipo. • Se profundizó en muchas tecnologías impartidas y relacionadas con el master Hemos logrado nuestros objetivos y estamos satisfechos con el trabajo realizado
  • 20. Muchas gracias Espero que haya sido una presentación agradable para ustedes 20