Upload
ivan-ortega
View
88
Download
0
Embed Size (px)
Citation preview
Desarrolladores:
● Carlos Campos Fuentes
● Francisco Javier Expósito Cruz
● Iván Ortega Alba
● Victor Coronas Lara
Evenge Gestor de eventos
1
ÍNDICE1. ¿Qué es Evenge? 2. Google App Engine
2.1. ¿Qué es?2.2. ¿Por qué lo hemos usado?2.3. ¿Qué ventajas e inconvenientes que presenta?
3. Método de trabajo del equipo3.1. Slack3.2. GitHub
4. Diseño de la app4.1. MVC(Modelo Vista Controlador)4.2. Frameworks:
4.2.1. Jinja4.2.2. Webapp24.2.3. Bootstrap
4.3. Diseños de clases5. Construyendo unas bases sólidas de desarrollo
5.1. Herramientas de Provisionamiento 5.2. Herramientas de IC y despliegue.5.3. Herramientas de Tests.
6. Pantallazos de intefaces2
1. ¿QUÉ ES EVENGE?● Evenge es una aplicación de gestión de eventos
● Una aplicación íntegramente en la nube
● Principios:
○ Creación y gestión
○ Difusión por Redes Sociales, E-mail y Blogs.
○ Generación de informes y diplomas
3
● Gestión de usuarios
● Inscripción
● Publicación del material
● Calendario de proyectos públicos para usuarios no
registrados
1. ¿QUÉ ES EVENGE?1.1. Características
4
2. Google App Engine2.2 ¿Por qué lo hemos usado?
● Usando las infraestructuras de Google
● Da soporte para diferentes tipos de lenguajes:○ Python○ Java○ Go○ PHP(incorporado recientemente)
6
2. Google App Engine2.3 ¿Qué ventajas e inconvenientes que presenta?
Ventajas:● Datastore
● Portal de administración
● Generar un entorno de desarrollo local
● En gratis te ofrece: 500MB de espacio para tu aplicación y admite
5 millones de visitas mensuales.
● Es altamente escalable, así como la estabilidad y la seguridad.
7
2. Google App Engine2.3 ¿Qué ventajas e inconvenientes que presenta?
Alguno de los inconvenientes que nos encontramos son:● El soporte para SSL solo está disponible par dominios *.
appspot.com
8
3. MÉTODO DE TRABAJO DEL EQUIPO3.1 SLACK
● Unificar las comunicaciones
● Crear diferentes canales
● Nos permite integración máxima:
○ GitHub
○ Google docs
9
3. MÉTODO DE TRABAJO DEL EQUIPO3.2 GitHub
● Proyecto y blog (bajo Jekyll) almacenado en el
repositorio Evenge
● Método de aceptación y revisión de código
10
4. Diseño de la app4.2 Diseños de clases
El modelo está dividido:● Usuarios● Organizaciones● Eventos● Asistentes● Ponentes
12
● Es una librería que nos permite renderizar script en Python a HTML de una forma "Python style".
● Es un motor de plantillas con todas las funciones de Python.
4. Diseño de la app4.3 Frameworks
13
● Se basa en request handler or simply handler: ● La decisión de usar Webapp2 es por :
○ Ligero, ○ simple○ contiene el mismo sistema de las plantillas de
Django
4. Diseño de la app4.2 Frameworks
14
● Es el framework desarrollado por Twitter que permite crear interfaces web con CSS y Javascript Responsive Desing.
● Establece estilos rápidamente asignando clases en el HTML.
4. Diseño de la app4.3 Frameworks
15
5. Construyendo unas bases sólidas de desarrollo5.1 Herramientas de aprovisionamiento
● Docker para el aprovisionamiento de un entorno de desarrollo para Evenge
● Así como otro script para automatizar el proceso de instalación de Docker, todas las dependencias que requiere para su correcto funcionamiento y instalamos la imagen producida con el Dockerfile.
16
5. Construyendo unas bases sólidas de desarrollo5.2 Herramientas de IC y despliegue
● Integración Continua:
○ Este sistema de integración continua permite crear, provisionar, testear y desplegar nuestra app en una máquina virtual, en el servidor que queramos.
17
5. Construyendo unas bases sólidas de desarrollo5.2 Herramientas de IC y despliegue
● Despliegue:
○ Podemos desplegarla en local para realizar toda la batería de pruebas que necesitemos.
○ Para el despliegue final es tan sencillo como darle al botón “Deploy”.
18
5. Construyendo unas bases sólidas de desarrollo5.3 Herramientas de Tests. NoseGae y Shippable
● Test unitariosdef testInsertarEvento(self):
evenge = Evenge()
evento = Evento (
evt.nombre = “Evento de prueba”
evt.tipo = 1
… )
response = evenge.testInsertarEvento(evento)
self.assertEqual(response, True)
19
22
Desde la sección Mi cuenta, podemos ver los datos del usuario registrado y organizaciones creadas.
6. Pantallazos de interfaces
23
Ésta será la vista por defecto de evenge, donde podremos ver los eventos creados
6. Pantallazos de interfaces
6. ¿Por que formar parte de Evenge?
● Aprender Google App Engine● Desarrollos rápidos de aplicaciones web● Conocimientos exportables a otras tecnologías
como Django● NoSQL y sistemas de plantillas● Participar en un SaaS (forma fácil de ganar
dinero)
27
¿Qué puedes hacer?
● Front-end (HTML,CSS y JS)● Back-end (Python)● Comunity manager● Aportar nuevas ideas
28
¿Qué queremos hacer en #hackathonugr?
32 issues abiertos, por ahora... (Scrum)○ Generar pdf○ Publicidad por Twitter y Facebook automática○ Algunas funcionalidades básicas:
■ ICMA Ponentes y asistentes■ Pasar lista a asistentes■ Darle dinamismo por JQuery■ Hacer un inicio de presentación de la app■ Y muchos etc más...
29
31
¿Preguntas?
Desarrolladores:
● Carlos Campos Fuentes
● Francisco Javier Expósito Cruz
● Iván Ortega Alba
● Victor Coronas Lara
Evenge Gestor de eventos