SIG para dispositivos móviles de la Junta de Extremadura Alumno: ALBERTO ROMEU Director empresa: MIGUEL MONTESINOS

Slides:



Advertisements
Presentaciones similares
Desarrollo de aplicaciones en n- capas
Advertisements

DESARROLLO DE SOLUCIONES EMPRESARIALES MOVILES USANDO TECNOLOGIA SUN
Dreamweaver Primeros Pasos.
Sistema de Información Cultural, CONACULTA México, 2006 SiC / RENiC Aspectos técnicos relevantes para un Sistema de Información (SI)
Internet y tecnologías web
PROVISIÓN DE SERVICIOS WEB DINÁMICOS ASOCIADOS A VIDEO BASADOS EN DISPOSITIVOS MÓVILES Autor: Juan Carlos Álvarez Martín Tutor: Francisco Javier Finat.
ADELA TORRES JONATHAN BEJARANO
El Sistema de Georeferenciación de gasolineras como base para el futuro geoportal IDEE del Mº de Industria, Turismo y Comercio Pablo Burgos Casado (MITYC.
SITNA en tu móvil.
LEVANTAMIENTO DE DATOS UTILIZANDO UN DISPOSITIVO TABLET CON GPS
Tecnologías Cliente / Servidor Capitulo III Richard Jiménez V. clienteserver.wordpress.com.
UNIVERSIDAD TECNOLÓGICA ISRAEL CARRERA DE SISTEMAS INFORMÁTICOS
CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament dArquitectura de Computadors (Seminaris de CASO) Autors MOVING JAVA INTO MOBILE PHONES Josep Pinyol.
Editor de Visual de Templates Open EHR-Gen
Desarrollo de un laboratorio para la enseñanza, diseño y desarrollo de servicios móviles abiertos Autor: D. Mario de Molina Gómez Tutor: D. Francisco Javier.
Desarrollo de aplicación DICOM mediante librerías JDT
Java 2 Platform Enterprise Edition
Cádiz Aplicación Web para la tele-gestión por procesos de la Calidad
Jesús Arellano. La plataforma Java Micro Edition, o anteriormente Java 2 Micro Edition(J2ME), es una especificación de un subconjunto de la plataforma.
Índice 01 Introducción 02 Descripción del funcionamiento.
S I T A R Sistema de Información Territorial de Aragón Primeros pasos hacia una Infraestructura de Datos Espaciales.
Desarrollo de aplicaciones web en entorno servidor
Aplicación Android Find Your Facebook Friends
Juan Andrada Romero Jose Domingo López López.  Introducción  Conceptos  Arquitectura JXTA  Protocolos  Demostración  Alternativas  Conclusiones.
Integrantes: Quintero Samuel Tovar Félix. Puntos a tratar: ¿Qué es Waze? Origen Objetivos Características Beneficios Usabilidad Accesibilidad Sociabilidad.
Observatorio tecnológico Novedades para dispositivos móviles: API’s adicionales para dispositivos BlackBerry La solución 3g para iPhone de Apple: el chip.
Ponente Cargo Inventario de Arqueología Juan Luis Cardoso Santos Área GeoWeb.
Juan Luis Cardoso Editor Web Arqueológico mediante WFS-T.
Madrid, 21 de junio de StereoWebMap Visualización estereoscópica de vuelos fotogramétricos a través de internet Instituto Tecnológico Agrario Consejería.
IV. SISTEMAS OPERATIVOS.. Un sistema operativo (SO) es el programa o conjunto de programas que efectúan la gestión de los procesos básicos de un sistema.
Manuel E. Manrique Oporto Ytalo E. Borja Mori
LEVANTAMIENTO DE DATOS UTILIZANDO UN DISPOSITIVO TABLET CON GPS
IDENA Infraestructura de Datos Espaciales de Navarra Diseño y Arquitectura Presentación: Jornadas IDEE 2004.
Programacion Web Practica 1 Estudio de la aplicación distribuida: Apache Hadoop.
Geoservicios Servicios de una IDE IDERA VII San Salvador de Jujuy 2012.
Estefanía Fernández Oviedo Laura Isabel Gómez Parra
BIENVENIDO A PREMIUMWEB. ORIENTADO HACIA LOS GERENTES.
INTRODUCCIÓN A AJAX. ¿Qué es AJAX? Acrónimo de Asynchronous JavaScript And XML No es ninguna tecnología, ni lenguaje de programación. Es una técnica de.
TEMA 10. SISTEMAS OPERATIVOS DISTRIBUIDOS
INGENIERÍA TÉCNICA EN INFORMÁTICA DE GESTIÓN PROYECTO FIN DE CARRERA
Carlos Fernández Durán Manuel Molina Menéndez Tutor: Miguel Gea Megías.
Programación de Dispositivos Móviles “Conceptos de J2ME” Rogelio Ferreira Escutia.
Aplicaciones usando Dispositivos Móviles Agustín J. González Departamento de Electrónica.
DISPOSITIVOS MOVILES ¿QUE ES UN DISPOSITIVO MOVIL?
Son una forma de interconectarse con otros dispositivos de manera sencilla facilitando la forma de comunicarse con las demás personas. Permite la fácil.
Departamento de eléctrica y electrónica
Desarrollos para dispositivos móviles PDA- Prospecciones de fuego bacteriano (Erwinia amylovora(Burr.) Winsl. et al)
Que es un Dispositivo Móvil Un dispositivo móvil se puede definir como un aparato de pequeño tamaño, con algunas capacidades de procesamiento, con conexión.
1 GESTIÓN DE UTILIZACIÓN DE REDES Noviembre 2013 Herramienta de Monitoreo Pandora FMS David González.
Tecnología Citrix Elaborado por: Lina María Monroy Cardona Grado 9-A.
WEB Y MULTIMEDIA INTEGRANTES: Piero Álvarez Milena Gómez Cristhian Rodríguez Mónica Pasaca Andrea Deleg Veronica Castillo.
Trabajo Profesional de Ing. Informática Alumnos: Agustín Bally Andrés G. Candal Tutora: Adriana Echeverría Sistema de Monitoreo Canino basado en GPS y.
Dispositivos Móviles John Alexander Cruz Arévalo.
Nombre: Germania Ruiz UNIVERSIDAD TECNOLOGICA AMERICA.
DISPOSITIVOS MOVILES.
Presentado Por: Albert Steven Veloza Aguirre Presentado A: Diana Esperanza López CONVERGENCIA TECNOLOGICA Grupo:
Tecnologías Cliente / Servidor Capitulo II Richard Jiménez V. clienteserver.wordpress.com.
ANDREA DAZA. Es un aparato de pequeño tamaño, con algunas capacidades de procesamiento, con conexión permanente a una red.
USO DE SISTEMAS DE INFORMACIÓN GEOGRÁFICA PARA LA LOCALIZACIÓN Y DOCUMENTACIÓN DE VADOS EN EL ÁMBITO MUNICIPAL David Roch Parsons.
Mapas animados e interactivos
 Un dispositivo móvil se puede definir como un aparato de pequeño tamaño, con algunas capacidades de procesamiento, con conexión permanente o intermitente.
Un dispositivo móvil lo podemos definir como un aparato de pequeño tamaño, con algunas capacidades de procesamiento, conexión permanente o intermitente.
 Un dispositivo móvil es aquel aparato pequeño que puede estar conectado a una red sea permanente o intermitente pueden ser:  Teléfono móvil  GPS 
SISTEMAS MOVILES PARA EL CONTROL DE LA FUERZA DE VENTAS
Elecnor Deimos - Localización Parque Tecnológico de Boecillo C/ Juan de Arfe y Villafañez Edificio Galileo; Módulo Gris, oficina —Boecillo.
D busca MOBILE SOLUCIÓN DE SEGUIMIENTO BASADA EN SU TERMINAL MOVIL Funcionalidades Aplicación software que se instala en el terminal móvil y permite la.
Servicio de Creación de Mapas Interactivos
Sistema de Monitoreo Canino Trabajo Profesional de Ing. Informática Alumnos: Agustín Bally Andrés G. Candal Tutora: Adriana Echeverría.
QUE ES UN DISPOSITIVO MOVIL Un dispositivo móvil se puede definir como un aparato de pequeño tamaño, con algunas capacidades de procesamiento, con conexión.
gvSIG en dispositivos móviles
Transcripción de la presentación:

SIG para dispositivos móviles de la Junta de Extremadura Alumno: ALBERTO ROMEU Director empresa: MIGUEL MONTESINOS Tutor UPV: VICENTE PELECHANO

Índice  Introducción  Contexto  Análisis requisitos  Arquitectura  J2ME (Java para dispositivos móviles)  LWUIT (Light Weight User Interface Toolkit)

Índice (II)  Desarrollo de la aplicación Casos de uso de cartografía Casos de uso de rutas Casos de uso de puntos de interés Casos de uso de GPS  Despliegue  Conclusiones  Demo

Introducción GISDispositivos móviles

Introducción - Objetivo  Visor cartografía Extremadura  + Rutas  + POI  + GPS

Introducción - Objetivo  Que funcione en muchos dispositivos (teléfonos, smartphone, blackberry, etc.)

Introducción - Retos  Conocer tecnología: J2ME, CLDC, LWUIT, índices espaciales, GIS, GPS, WMS, GeoJSON...  Desarrollar para dispositivos móviles Poca memoria Poca capacidad de procesamiento  Desarrollar a tiempo: Fecha límite

Contexto  Adaptación del SIG de la Junta de Extremadura: Consejería de Cultura y Turismo Difundir conocimiento sobre recursos turísticos y culturales a través del Software Libre  Prodevelop + Igo software + GeoDatum + Software Colaborativo  Financiado con fondos FEDER

Contexto

Análisis de requisitos  Un único actor: TURISTA  4 bloques: Casos de uso de Cartografía Casos de uso de Rutas Casos de uso de puntos de interés (POI) Casos de uso de GPS

Análisis de requisitos - Casos de uso de Cartografía  Navegar mapa Desplazar (4 direcciones) Zoom más Zoom menos  Centrar mapa GPS Cualquier punto (Geometría)

Análisis de requisitos - Casos de uso de Rutas  Establecer inicio  Establecer fin  Establecer paso  Eliminar punto paso  Calcular  Anular  Selección tipo ruta: a pie o en coche  Obtener indicaciones  Selección puntos ruta

Análisis de requisitos - Casos de uso de Puntos de interés  Mostrar POI  Buscar POI  Consultar información

Análisis de requisitos - Casos de uso de GPS  Obtener localización  Detener GPS

Arquitectura

J2ME – Java para móviles  Configuración CLDC 1.1 Coma flotante  Perfil MIDP 2.0  Paquetes opcionales JSR-75 (Ficheros) JSR-172 (Web services) JSR-179 (Location API)

J2ME – Java para móviles  Fragmentación de dispositivo  ¿Cómo evitar la fragmentación? J2ME Polish (Framework Open source) Sun LWUIT Open source (Objetivo: 1 solo jar) Compatibilidad vs Complejidad: Buenas prácticas  No se puede soportar TODOS los dispositivos

LWUIT – Light Weight User Interface Toolkit

LWUIT  Swing para dispositivos móviles  Light Weight  Superar la fragmentación IU  1 JAR para todos los dispositivos  MVC, Container + Layouts, List...

Desarrollo de la aplicación  Casos de uso de cartografía  Casos de uso de rutas  Casos de uso de puntos de interés  Casos de uso de GPS

Casos de uso de cartografía

 Desarrollo de un cliente WMS-c: Web Map Service – caché  Cartografía cacheada: tiles  Niveles de zoom predeterminados  Sólo implementamos operación GetMap

CU Cartografía - Arquitectura cliente WMS-c  Map: tamaño + Eventos  Layer: Capa base + vectorial  Grid: Gestión de tiles  Tile: Imagen + posición en píxels  ViewPort: píxel coordenadas  Extent == BoundingBox

CU Cartografía - ¿Qué es un Tile/Tesela?  Lado: 256px  BoundingBox  Resolución

CU Cartografía - Grid – Gestión de tiles  Cálculo de tamaño máximo en tiempo de ejecución  Liberar recursos  Gestión de peticiones

CU Cartografía - Caché de teselas  Acelerar carga de teselas  Disminuir acceso a Internet  3 niveles Memoria: Pequeña – 2 niveles de zoom Disco: Todo lo que se pueda Internet: Lo que no está en memoria ni en disco

CU Cartografía - Caché en disco Acceso a disco es lento ¿Cómo acelerar el acceso a caché? Extrapolar Quadkeys al sistema de ficheros

CU Cartografía - El proceso de pintado  Se inicia en Form  El mapa recorre sus capas: 1. Para la capa base: el grid recorre los tiles y pinta la imagen 2. Para la vectorial: Se recorren las geometrías y se pintan  Se pinta un acetato

CU Cartografía - Navegar por el mapa

CU Cartografía - Navegar por el mapa (II)

CU Cartografía - Centrar el mapa

CU Cartografía - Centrar el mapa (II)

Multi-threading

Multi-Threading  J2ME no gestiona bien hilos  Patrón ThreadPool  Evitar bloquear IU  Cancelación de tareas  Mejor gestión de hilos  1 tarea por cada operación bloqueante

Casos de uso de Rutas

 Definir un modelo de geometrías  Establecer una máquina de estados  Comunicación con el servidor vía servicios web SOAP  Seleccionar un formato de intercambio de geometrías

Casos de uso de rutas -Modelo de geometrías  Colecciones de Features  Feature = Geometría + metadatos  Geometría = Coordenadas + pintado

Casos de uso de rutas - DTE de una ruta  Ruta con 2 puntos: inicio + [paso | fin]  Ruta con N puntos: inicio + n ptos paso

Casos de uso de rutas - Servicio web SOAP  Interoperabilidad: Comunicación con visor web y visor móvil  Buena práctica: Dispositivos móviles como clientes de servicios pesados  Cliente SOAP: Se configura en tiempo de compilación

Casos de uso de rutas - GeoJSON  JSON: JavaScript Object Notation.  GeoJSON: Especificación JSON para codificar geometrías.  Más sencillo que XML.  Formato ligero: requiere poca codificación y procesamiento  Fácil de parsear y hay muchas implementaciones.

Casos de uso de rutas - Cálculo de rutas  Entrada: Geometría MultiPoint se convierte a GeoJSON MultiPoint  Salida: GeoJSON MultiLineString se convierte a Geometría MultiLineString

Casos de uso de rutas - Cálculo de rutas

Casos de uso de rutas - Obtener indicaciones de ruta Las propiedades de la ruta se guardan en memoria Cálculo de indicaciones y giros en local Más rápido que acceder al servicio web Peor en dispositivos con poca memoria

Casos de uso de Puntos de interés

 puntos de interés turístico: Categoría + Descripción + Localización  Cambio en los requisitos: los POI se gestionarán en local  Fuente: Fichero de texto  Diseño de una estructura de datos eficiente: Quadtree  Pre-procesar el fichero fuente para optimizar recursos

Casos de uso POI - Bucket PR-Quadtree  Quadtree: Cada cuadrante se subdivide en 4  Criterio de división: Número de elementos > 100

Casos de uso POI - Pre-procesado 1. Recorrer el fichero fuente y llenar el Quadtree (J2SE). 2. Persistir cada hoja en un fichero 3. Persistir descripciones en ficheros diferentes: Acceso aleatorio. 4. Persistir la información del Quadtree en un árbol

Casos de uso POI - Pre-procesado (II)  Recorrer el fichero fuente y llenar el Quadtree (J2SE).

Casos de uso POI - Pre-procesado (III)  Persistir cada hoja en un fichero  Cada fichero pocos KB  Mejor leer ficheros pequeños que uno grande

Casos de uso POI - Pre-procesado (IV)  Persistir descripciones en ficheros diferentes: (Pseudo)Acceso aleatorio  offset / tamFichero /1024 = Fichero número 78  offset % tamFichero % 1024 = byte 128

Casos de uso POI - Pre- procesado (V)  Persistir la información del Quadtree en un árbol  Para una búsqueda devuelve una colección de ficheros  Deserializar ficheros en background

Casos de uso POI - POI

Casos de uso POI - Tareas BackGround POI  Cada tarea resuelve un caso de uso  Quicksort para ordenar resultados  50 primeros resultados

Casos de uso POI - Visualizar POI

Casos de uso de GPS

 Centrar el mapa en la posición del GPS  JSR-179: Location API

Casos de uso de GPS – Clases  Un hilo dedicado para GPS  Conversión de EPSG:4326 a EPSG:23030  Com.henson.midp.Float1 1

Casos de uso de GPS – DTE

Despliegue  Compilación + Preverificación  Emulación + Profiler: Detectar cuellos de botella Es importante probar sobre dispositivos  Ofuscación + Firma (¿Opcional?)  Empaquetado (JAD + JAR)

Conclusiones  ‘write once, run everywhere’ == FALSE Fragmentación de dispositivo == TRUE (aunque cada vez menos)  Inconvenientes de J2ME: Modelo de seguridad: certificados + permisos Paquetes opcionales Operadoras: Tráfico Internet caro Impotencia del desarrollador

Conclusiones (II)  Éxito en el desarrollo La aplicación cumple los requisitos (de manera eficiente) Funciona en muchos (no en todos) los dispositivos ○ BlackBerry, Windows Mobile (JVM - J9), Nokia S60, Sony Ericsson, etc. III Jornadas SIG Libre - Girona

Siguientes pasos  gvSIG Mini Visor WMS, WMS-c, OSM Cliente YOURS Cliente NameFinder GPL Más eficiente y más compatible

Siguientes pasos (II)  gvSIG Mini Android SO Libre de Google Teléfonos (HTC, Motorola, Samsung...), PDA, Tablet PC,... Basado en Java 1.4 Más recursos Mas capacidad de procesamiento GPL

GRACIAS