• No se han encontrado resultados

Aplicación web de gestión de bases de datos NoSQL a través de Apache Gora, en ExtJS y servicios REST en Spring

N/A
N/A
Protected

Academic year: 2021

Share "Aplicación web de gestión de bases de datos NoSQL a través de Apache Gora, en ExtJS y servicios REST en Spring"

Copied!
43
0
0

Texto completo

(1)

Aplicación web de gestión de bases de datos

NoSQL a través de Apache Gora, en ExtJS y

servicios REST en Spring

Alfonso Nishikawa Muñumer

Director: Miguel Rodríguez Penabad

Grado en Ingeniería Informática Mención en Ingeniería del Software

Proyecto clásico de Ingeniería Facultad de Informática

(2)

• Motivación

Product Vision Box • Demo • Desarrollo • Metodología (Scrum) • Historias de Usuario • Plan de entregas • Ejemplo de sprint

• Arquitectura y componentes técnicos • Conclusiones

2 / 42

(3)

Motivación

BD NoSQL

BD NoSQL Aplicación desarrollada

• Inexistencia de aplicaciones de acceso genérico a datos NoSQL

(4)

• Motivación

Product Vision Box • Demo • Desarrollo • Metodología (Scrum) • Historias de Usuario • Plan de entregas • Ejemplo de sprint

• Arquitectura y componentes técnicos • Conclusiones

4 / 42

(5)
(6)

• Motivación

Product Vision BoxDemo • Desarrollo • Metodología (Scrum) • Historias de Usuario • Plan de entregas • Ejemplo de sprint

• Arquitectura y componentes técnicos • Conclusiones

6 / 42

(7)

• Motivación

Product Vision Box • Demo • DesarrolloMetodología (Scrum) • Historias de Usuario • Plan de entregas • Ejemplo de sprint

• Arquitectura y componentes técnicos • Conclusiones

(8)

Metodología (Scrum)

• Historias de Usuario • Requisitos • Product Backlog • Scrum 8 / 42

(9)

• Motivación

Product Vision Box • Demo • Desarrollo • Metodología (Scrum) • Historias de Usuario • Plan de entregas • Ejemplo de sprint

• Arquitectura y componentes técnicos • Conclusiones

(10)

Historias de usuario

(11)

• Motivación

Product Vision Box • Demo • Desarrollo • Metodología (Scrum) • Historias de Usuario • Plan de entregas • Ejemplo de sprint

• Arquitectura y componentes técnicos • Conclusiones

(12)

Plan de entregas

(13)

• Motivación

Product Vision Box • Demo • Desarrollo • Metodología (Scrum) • Historias de Usuario • Plan de entregas • Ejemplo de sprint

• Arquitectura y componentes técnicos • Conclusiones

(14)

Ejemplo de sprint (I)

• Sprint Planning, sprint 3

(15)

Ejemplo de sprint (II)

(16)

Ejemplo de sprint (III)

• Daily Scrum

• Actualización de avance • Gráfica de burn-down

(17)

Ejemplo de sprint (IV)

(18)

Ejemplo de sprint (V)

• Desarrollo

(19)

Ejemplo de sprint (VI)

(20)

Ejemplo de sprint (VII)

• Sprint Review

• Lista de vídeos: https://youtu.be/TTtoRh5aaDI

(21)

Ejemplo de sprint (VIII)

• Sprint Retrospective

• Personas, procesos, relaciones y herramientas • ¿Qué se hizo bien?

• ¿Qué se hizo mal?

• ¿Qué se puede hacer para mejorar?

(22)

Ejemplo de sprint (IX)

• Daily Scrum sprint 2

• Gráfica de burn-down no siempre perfecta

(23)

Ejemplo de sprint (X)

(24)

Ejemplo de sprint (XI)

• Sprint Review: estimación del plan de entregas

(25)

Ejemplo de sprint (XII)

(26)

Ejemplo de sprint (XIII)

• Sprint Review: estimación del plan de entregas

(27)

Ejemplo de sprint (XIV)

(28)

Ejemplo de sprint (XV)

• Sprint Review: estimación del plan de entregas

(29)

Ejemplo de sprint (y XVI)

• Sprint Retrospective

• Deuda técnica • Documentación

(30)

• Motivación

Product Vision Box • Demo • Desarrollo • Metodología (Scrum) • Historias de Usuario • Plan de entregas • Ejemplo de sprint

Arquitectura y componentes técnicos

Conclusiones

30 / 42

(31)
(32)

Arquitectura (II)

(33)
(34)

Arquitectura (IV)

(35)
(36)

Componentes técnicos (I)

• Jerarquía de clases que define un esquema y mapeo

(37)

Componentes técnicos (II)

(38)

Componentes técnicos (y III)

• Patrón Estado para el asistente

(39)

• Motivación

Product Vision Box • Demo • Desarrollo • Metodología (Scrum) • Historias de Usuario • Plan de entregas • Ejemplo de sprint

• Arquitectura y componentes técnicos • Conclusiones

(40)

Conclusiones

• Desarrollado una aplicación web y servidor durante 9 sprints: En ExtJS y servicios REST en Spring. Licencia efectiva GPLv3

• Funcionalidades: • Gestión de datos.

• Gestión de esquemas y mapeos.

• Instalación fácil mediante un único .war

• Integración parcial para acceso a datos en Hadoop. • Solución de bugs e issues de proyectos de software

libre: GORA-109/421/510/511/530, NUTCH-1741, Ext JS

(41)

Conclusiones: Lecciones aprendidas

• Spring (MVC, REST, Security, Data JPA) , JPA, Ext JS, Swagger, Flyway, Siesta, Gettext, patrón MVVM,

historias de usuario, SCSS, CORS, Amazon EC2, JsDuck, SQLite,…

• Puesta en práctica de Scrum.

• Estimar las historias de usuario como puntos de dificultad.

• Verificar los Requisitos No Funcionales sprint a sprint. • Errores cometidos en el proyecto:

• Expectativas irrealistas.

(42)

Conclusiones: Trabajo Futuro

• Historias de usuario pendientes para

desarrolladores, administradores y managers. • Soporte para más almacenes de datos

• Adaptación a dispositivos móviles • Sobre Apache Gora:

• Implementación del API JPA: definir entidades mediante anotaciones

• Optimizaciones de serialización y compresión

• Mayor flexibilidad de mapeo del módulo de HBase • Nuevos conectores

(43)

Aplicación web de gestión de bases de datos

NoSQL a través de Apache Gora, en ExtJS y

servicios REST en Spring

Referencias

Documento similar

Además de aparecer en forma de volumen, las Memorias conocieron una primera difusión, a los tres meses de la muerte del autor, en las páginas de La Presse en forma de folletín,

•cero que suplo con arreglo á lo que dice el autor en el Prólogo de su obra impresa: «Ya estaba estendida esta Noticia, año de 1750; y pareció forzo- so detener su impresión

que hasta que llegue el tiempo en que su regia planta ; | pise el hispano suelo... que hasta que el

Abstract: This paper reviews the dialogue and controversies between the paratexts of a corpus of collections of short novels –and romances– publi- shed from 1624 to 1637:

Después de una descripción muy rápida de la optimización así como los problemas en los sistemas de fabricación, se presenta la integración de dos herramientas existentes

por unidad de tiempo (throughput) en estado estacionario de las transiciones.. de una red de Petri

U-Ranking cuenta con la colaboración del Ministe- rio de Universidades, al permitirnos el acceso al Sistema Integrado de Información Universitaria (SIIU). El SIIU es

El valor agregado 6 del indicador por universidad se pre- senta en una escala de 0 (mínimo valor obtenido por una universidad del sistema en ese indicador) a 100 (correspondiente