Backend de un portal de datos e información sobre la Tierra

34
Backend de un portal de datos e información sobre la Tierra Cristian Álvarez Belaustegui Dirigido por José Emilio Labra Gallo

description

This PFG was made by Cristian Álvarez Belaustegui and directed by Jose Emilio Labra Gayo inside the WESO Research Group. The lecture happened the July 23rd at the School of Computer Science (University of Oviedo). The project consists in the creation of the backend for the new LandPortal, property of the International Fund for Agricultural Development (IFAD - ONU).

Transcript of Backend de un portal de datos e información sobre la Tierra

Page 1: Backend de un portal de datos e información sobre la Tierra

Backend de un portal de datos e información sobre la Tierra

Cristian Álvarez Belaustegui

Dirigido por José Emilio Labra Gallo

Page 2: Backend de un portal de datos e información sobre la Tierra

landportal

Proyecto “RFQ/2013/016/SC: Rebuilding IFAD’s Land Portal”

Participantes:Fondo Internacional para el Desarrollo Agrícola (IFAD, ONU)

Land Portal Partnership

SBC4D Consulting

Grupo de Investigación WESO

Page 3: Backend de un portal de datos e información sobre la Tierra

landportal

Creado en marzo de 2011

1000 usuarios registrados

70 organizaciones

70000 visitantes únicos

10000 visitas mensuales

Page 4: Backend de un portal de datos e información sobre la Tierra

¿Qué queremos?

Crear un portal de datos abiertos enlazados

Utilizando datos de diversas fuentes independientes

Aportando visualizaciones de los datos

Fomentando la participación de los usuarios

Incluyendo un sistema sencillo de búsqueda

Soportando internacionalización de los contenidos

Page 5: Backend de un portal de datos e información sobre la Tierra

¿Qué queremos?

“Mejorar la gestión de la tierra para beneficiar a los más vulnerables y con menos derechos, a través del

intercambio de información y conocimientos”

Land Portal Strategy - Tim Davies

Page 6: Backend de un portal de datos e información sobre la Tierra

¿Existe algo similar?

Portal de datos del Gobierno de Estados Unidos

Page 7: Backend de un portal de datos e información sobre la Tierra

¿Existe algo similar?

Portal de datos del Gobierno Británico

Page 8: Backend de un portal de datos e información sobre la Tierra

¿Existe algo similar?

Land Matrix

Page 9: Backend de un portal de datos e información sobre la Tierra

¿Existe algo similar?

Antiguo Land Portal

Page 10: Backend de un portal de datos e información sobre la Tierra

¿Cómo funciona?

ImportadoresReceiver

MySQL

CKAN

Virtuoso

CMS

API

Buscador

Visualizaciones

VisualizadorRDF

Enrutador

Page 11: Backend de un portal de datos e información sobre la Tierra

¿Que se ha implementado?

Importadores

Receiver

MySQL

CKAN

Virtuoso

CMS

API

Buscador

Visualizaciones

VisualizadorRDF

Enrutador

Page 12: Backend de un portal de datos e información sobre la Tierra

Tecnologías utilizadas

Page 13: Backend de un portal de datos e información sobre la Tierra

landdebate

Page 14: Backend de un portal de datos e información sobre la Tierra

landdebate

• Utiliza las capacidades del CMS• Gestión de usuarios

• Gestión de contenidos

• Gestión de comentarios

• Tipos de contenido y roles de usuario personalizados

• Aspecto visual totalmente personalizado

• Internacionalización de la interfaz gráfica

• Integración con la búsqueda

Page 15: Backend de un portal de datos e información sobre la Tierra

landdebate (modelo de datos)

Usuario registrado

AdministradorUsuario con acceso al API

Evento

Noticia

Debate Comentario

Entrada del blog

Organización

Page 17: Backend de un portal de datos e información sobre la Tierra

landbook

Page 18: Backend de un portal de datos e información sobre la Tierra

landbook

• Punto de entrada de datos

• API interna para visualizaciones

• Framework MVC personalizado integrado en Drupal

• Internacionalización• Interfaces

• Datos

• Integración con la búsqueda

Page 19: Backend de un portal de datos e información sobre la Tierra

landbook (punto de entrada de datos)

Router

Controller

Services

CKAN Service

RDF Service

SQL Service

Parser

ORM(SQLAlchemy) MySQL

Virtuoso

CKAN

Page 20: Backend de un portal de datos e información sobre la Tierra

Plantillas e internacionalización

hook_menu Model

Languages

en.json

es.json

fr.json

datalabels

MustacheTemplates Javascript

HTML

template controller

Page 22: Backend de un portal de datos e información sobre la Tierra

Pruebas

Pruebas de integraciónDesarrollo Dirigido por Pruebas

Integración continua

Pruebas de rendimiento

Pruebas de aceptación

Page 23: Backend de un portal de datos e información sobre la Tierra

Ampliaciones

Página de inicio segura

Automatización de los debates

Sistema de solicitud de acceso al API

Futuros proyectos con el IFADLand Library

Hackatón

Page 24: Backend de un portal de datos e información sobre la Tierra

Conclusiones

Conocimiento de nuevos lenguajes, frameworks y CMS

Evitar caer en la optimización prematura

Beneficios de un buen diseño y arquitectura

Trabajo en equipo

Trabajo con un cliente real

Page 25: Backend de un portal de datos e información sobre la Tierra

Gracias.

Page 26: Backend de un portal de datos e información sobre la Tierra

Anexos

Page 27: Backend de un portal de datos e información sobre la Tierra

¿Qué opina el cliente?

• “This is looking really good visually: and looks like a great foundation for the renewed site.” – Tim Davies

• “Dear all - it's looking good!” – Sabine Pallas

• “Looks good!” – Christophe Guéret

• “Overall, very nice look and feel and good organization of the debates section.” – Valeria Pesce

• “I wish to say your work is really appreciable, a high degree of quality for a Drupal website. Congratulations!” – Alessandro Bonelli

• “It's an incredibly detailed set of information and excellent package of tools.” – Neil Sorensen

Page 28: Backend de un portal de datos e información sobre la Tierra

Pruebas de usabilidad

Medir la capacidad del software para cumplir con su cometido.

1. Crear un escenario realista para realizar las pruebas

2. Observar a los usuarios interactuar con la aplicación

3. Analizar resultados y obtener conclusions

4. Mejorar donde sea necesario

Requiere tiempo, esfuerzo y dinero.

Decisión: mockups + pruebas de aceptación

Page 29: Backend de un portal de datos e información sobre la Tierra

Receiver

Page 30: Backend de un portal de datos e información sobre la Tierra

CMS

Page 31: Backend de un portal de datos e información sobre la Tierra

Modelo ‘landdebate’

Page 32: Backend de un portal de datos e información sobre la Tierra

Modelo ‘landbook’

Page 33: Backend de un portal de datos e información sobre la Tierra

Framework MVC

Page 34: Backend de un portal de datos e información sobre la Tierra

API interna de visualizaciones