SlideShare ist ein Scribd-Unternehmen logo
1 von 180
Downloaden Sie, um offline zu lesen
cenidet
Centro Nacional de Investigación y Desarrollo Tecnológico
Departamento de Ciencias Computacionales
TESIS DE MAESTRÍA EN CIENCIAS EN CIENCIAS
DE LA COMPUTACIÓN
Generador de mapas croquis en formato SVG-Tiny para
dispositivos móviles aplicando perfiles
presentada por
Omar Ríos González
Ing. en Sistemas Computacionales por el I. T. de Minatitlán
como requisito para la obtención del grado de:
Maestría en Ciencias en Ciencias de la Computación
Director de tesis:
Dr. Juan Gabriel González Serna
Co-Director de tesis:
Dr. Hugo Estrada Esquivel
Jurado:
Dr. Javier Ortiz Hernández – Presidente
Dra. Azucena Montes Rendón – Secretario
Dr. José Antonio Zarate Marceleño – Vocal
Dr. Juan Gabriel González Serna – Vocal Suplente
Cuernavaca, Morelos, México. Febrero de 2010
RESUMEN
En el presente documento se describe una metodología para la generación automática de
mapas croquis en formato SVG-Tiny en el proyecto “Generador de mapas tipos croquis en
formato SVG-Tiny para dispositivos móviles aplicando perfiles”, se identifican las
características técnicas del dispositivo celular que envía la solicitud para generar el mapa
en función de las características del dispositivo.
Este proyecto tiene como objetivo proporcionar servicios de búsquedas contextuales, para
localizar puntos de interés o prestadores de servicios que se encuentren cerca de la
ubicación del usuario que realiza la consulta.
El resultado de estas consultas es un mapa de tipo croquis en formato vector escalable
gráfico tiny (SVG-Tiny), el servicio utilizado para el envío de las solicitudes se realiza vía
HTTP, el resultado de esta solicitud es enviado en un archivo SVG-Tiny que contiene el
mapa croquis mostrando los resultados de la búsqueda contextual, por medio de
conexiones HTTP, la parte innovadora de este trabajo es la adopción de métodos para
identificar el perfil del dispositivo celular y en función de sus capacidades es generado un
mapa a la medida.
ABSTRACT
This document describes a methodology for automatic generation of sketch maps in SVG-
Tiny format in the "Generator type-sketch maps in SVG-Tiny format for mobile devices
applying profiles", identifies the technical characteristics of the mobile device that sends
the request to generate the map based on device characteristics.
The objective of this project is to provide services of contextual searches to locate points
of interest or service providers that are near the location of the user who make the
consultation.
The result of these consultations is a type sketch map in format tiny scalable vector
graphics (SVG-Tiny), the service used for sending the request is performed via HTTP, the
result of this request is sent to a file SVG-Tiny containing the sketch map showing the
contextual search results through HTTP connections, the innovative part of this work is the
adoption of methods to identify the profile of mobile device and based on their capacities is
generated a map to the measure.
i
TABLA DE CONTENIDO
CAPÍTULO I INTRODUCCIÓN _______________________________________ 1
1. Introducción__________________________________________________ 2
1.1 Descripción del problema _________________________________________3
1.2 Objetivo ________________________________________________________3
1.3 Justificación y beneficios__________________________________________4
1.4 Antecedentes____________________________________________________5
1.5 Alcances y limitaciones ___________________________________________7
1.5.1 Alcances _____________________________________________________________ 7
1.5.2 Limitaciones __________________________________________________________ 7
1.6 Estado del arte___________________________________________________8
1.6.1 Desarrollo de servicios de rutas de mapas para celulares basados en G-XML ______ 8
1.6.2 Mapas adaptivos para aplicaciones móviles _________________________________ 9
1.6.3 Mejorando las direcciones de ruta en dispositivos móviles _____________________ 11
1.6.4 Sistema de soporte para contenido multimedia dinámico personalizado en dispositivos
móviles ___________________________________________________________________ 12
1.6.5 Visualización Adaptiva de información geográfica en dispositivos móviles_________ 13
1.6.6 gvSIG para dispositivos móviles _________________________________________ 14
1.6.7 Sistema de Información Geográfica basado en SVG _________________________ 15
1.6.8 Procesando datos interoperables por Aplicaciones Geoespaciales Móviles _______ 16
1.6.9 Tabla comparativa del estado del arte _____________________________________ 19
1.7 Organización del documento______________________________________20
CAPÍTULO II MARCO TEÓRICO ____________________________________ 21
2. Marco teórico ________________________________________________ 22
2.1 Mapa tipo croquis _______________________________________________22
2.2 LBS. Servicios basados en localización_____________________________22
2.2.1 Componentes de los LBS_______________________________________________ 23
2.2.2 Funcionamiento ______________________________________________________ 24
2.2.3 Clasificación _________________________________________________________ 24
2.3 Sistema de información geográfica_________________________________26
2.3.1 GIS Vectoriales_______________________________________________________ 27
2.3.2 GIS Raster __________________________________________________________ 28
2.4 Imágenes Gráficos Vectoriales Escalables (SVG) _____________________29
2.5 Mensajería SMS_________________________________________________30
2.6 Mensajería MMS ________________________________________________31
ii
CAPÍTULO III ANÁLISIS Y DISEÑO __________________________________ 33
3. Análisis y diseño _____________________________________________ 34
3.1 Análisis________________________________________________________34
3.1.1 Arquitectura del generador de mapas croquis _______________________________ 34
3.1.2 Base de datos espacial ________________________________________________ 35
3.1.3 Algoritmo de ruta _____________________________________________________ 39
3.1.4 Casos de uso de la aplicación móvil SketchMap4U __________________________ 42
3.1.4.1 Caso de uso general ______________________________________________ 42
3.1.4.2 Caso de uso: Configurar RMS _______________________________________ 43
3.1.4.3 Caso de uso: Construir petición HTTP_________________________________ 48
3.1.4.4 Caso de uso: Enviar petición HTTP ___________________________________ 49
3.1.5 Casos de uso de la aplicación web SketchMapServer ________________________ 50
3.1.5.1 Casos de uso general______________________________________________ 50
3.1.5.2 Caso de uso: recibir petición HTTP ___________________________________ 51
3.1.5.3 Caso de uso: Interpretar petición HTTP________________________________ 52
3.1.5.4 Caso de uso: Generar mapa SVG-Tiny ________________________________ 53
3.1.5.5 Caso de uso: Enviar mapa SVGTiny __________________________________ 61
3.2 Diseño ________________________________________________________62
3.2.1 Paquetes diseñados___________________________________________________ 63
3.2.1.1 Paquete mx.edu.cenidet.gateway.database ____________________________ 63
3.2.1.2 Paquete mx.edu.cenidet.gateway.maps _______________________________ 64
3.2.1.3 Paquete mx.edu.cenidet.gateway.maps.coordinates______________________ 67
3.2.1.4 Paquete mx.edu.cenidet.gateway.servlet_______________________________ 69
3.2.1.5 Paquete mx.edu.cenidet.gateway.mobiledevice _________________________ 70
3.2.1.6 Paquete mx.edu.cenidet.gateway.routing ______________________________ 71
3.2.1.7 Paquete mx.edu.cenidet.gateway.SVGTiny_____________________________ 72
3.3 Base de datos MobileDevice ______________________________________74
3.3.1 DeviceMine v3.0______________________________________________________ 74
3.3.2 DeviceAtlas__________________________________________________________ 74
3.3.3 WURFL (Wireless Universal Resource File) ________________________________ 75
CAPÍTULO IV IMPLEMENTACIÓN __________________________________ 77
4. Implementación ______________________________________________ 78
4.1 Recibir petición HTTP____________________________________________78
4.2 Interpretar la petición HTTP _______________________________________79
4.3 Conexión a las bases de datos ____________________________________79
4.3.1 Obtener el perfil del dispositivo móvil______________________________________ 81
4.3.2 Obtener puntos de interés ______________________________________________ 82
4.3.3 Obtener puntos de referencia____________________________________________ 83
4.4 Generar mapa SVGTiny __________________________________________84
iii
4.5 Enviar mapa SVGTiny____________________________________________94
CAPÍTULO V PRUEBAS Y RESULTADOS ____________________________ 95
5. Pruebas y resultados__________________________________________ 96
5.1 Realización de las pruebas _______________________________________96
5.2 Evaluación de los resultados_____________________________________102
CAPÍTULO VI CONCLUSIONES____________________________________ 103
6.1 Conclusiones__________________________________________________104
6.2 Aportaciones __________________________________________________105
6.3 Problemas encontrados _________________________________________105
6.4 Trabajos futuros _______________________________________________106
6.5 Publicaciones _________________________________________________108
ANEXOS ______________________________________________________ 109
ANEXO A Análisis para representar puntos de interés ________________ 110
ANEXO B Estudio de plataformas móviles __________________________ 119
ANEXO C Plan de pruebas _______________________________________ 131
ANEXO D Scalable Vector Graphics (SVG)__________________________ 152
REFERENCIAS _________________________________________________ 163
iv
Listado de figuras
Figura 1-1 Usuarios de dispositivos móviles por cada 100 habitantes _______________________ 4
Figura 1-2 Representación del servicio de rutas ________________________________________ 8
Figura 1-3 Procedimiento para generar la ruta del mapa _________________________________ 9
Figura 1-4 Segmento de ruta presentado vía Web _____________________________________ 11
Figura 1-5 Descripción de ruta_____________________________________________________ 11
Figura 1-6 Navegación de mapas en PDA (CityMap) ___________________________________ 12
Figura 1-7 Arquitectura de MM4U __________________________________________________ 13
Figura 1-8 Interfaz de usuario de gvSIG Mobile _______________________________________ 14
Figura 1-9 Sincronización de datos desde gvSIG desktop _______________________________ 15
Figura 1-10 Arquitectura de GIAS __________________________________________________ 16
Figura 1-11 Creación de archivo SVG _______________________________________________ 16
Figura 1-12 Arquitectura para integrar aplicaciones móviles especificando dispositivos al SDI ___ 17
Figura 1-13 Principales componentes del prototipo del cliente móvil _______________________ 18
Figura 1-14 Representación y visualización de datos ___________________________________ 18
Figura 2-1 Representación de un Mapa tipo croquis ____________________________________ 22
Figura 2-2 Áreas que conforman los LBS ____________________________________________ 22
Figura 2-3 Componentes básicos LBS ______________________________________________ 23
Figura 2-4 Funcionamiento LBS____________________________________________________ 24
Figura 2-5 Clasificación de los LBS _________________________________________________ 25
Figura 2-6 Operaciones de geometría _______________________________________________ 27
Figura 2-7 Representación de un mapa vectorial ______________________________________ 28
Figura 2-8 Representación de un mapa ráster ________________________________________ 28
Figura 2-9 Perfiles SVG __________________________________________________________ 30
Figura 2-10 Estructura de un mensaje SMS. __________________________________________ 30
Figura 2-11 Esquema de composición de páginas en un mensaje MMS.____________________ 31
Figura 3-1 Arquitectura del generador de mapas croquis en un contexto de cliente/servidor ____ 34
Figura 3-2 Tablas de metadatos de la especificación OpenGIS ___________________________ 36
Figura 3-3 Representación de un BBOX _____________________________________________ 37
Figura 3-4 Algoritmo de Dijkstra____________________________________________________ 40
Figura 3-5 Representación del área de interés ________________________________________ 40
Figura 3-6 Aristas y nodos del área de interés ________________________________________ 41
Figura 3-7 Grafo con los nodos inferidos _____________________________________________ 41
Figura 3-9 Diagrama de flujo del proceso de obtención de la ruta _________________________ 42
Figura 3-8 Ruta obtenida del algoritmo de Dijkstra _____________________________________ 42
Figura 3-10 Diagrama general de los casos de uso de la aplicación SketchMap4U____________ 43
Figura 3-11 Diagrama de caso de uso: CU1 Configurar RMS_____________________________ 43
Figura 3-12 Diagrama de actividad del caso de uso: CU1 Configurar RMS __________________ 44
Figura 3-13 Diagrama de actividad del caso de uso: CU1.1 Crear RMS ____________________ 45
Figura 3-14 Diagrama de actividad del caso de uso: CU1.2 Leer RMS _____________________ 46
Figura 3-15 Diagrama de actividad del caso de uso: CU1.3 Actualizar RMS _________________ 47
Figura 3-16 Diagrama de caso de uso: CU2 Construir petición HTTP ______________________ 48
Figura 3-17 Diagrama de actividad del caso de uso: CU2 Construir petición HTTP____________ 48
Figura 3-18 Diagrama de caso de uso: CU3 Enviar trama _______________________________ 49
Figura 3-19 Diagrama de actividad del caso de uso: CU3 Enviar trama_____________________ 49
v
Figura 3-20 Diagrama general de casos de uso de la aplicación SketchMapServer ___________ 50
Figura 3-21 Diagrama de caso de uso: CU4 Recibir petición HTTP ________________________ 51
Figura 3-22 Diagrama de actividad del caso de uso: CU4 Recibir petición HTTP _____________ 51
Figura 3-23 Diagrama de caso de uso: CU5 Interpretar petición HTTP _____________________ 52
Figura 3-24 Diagrama de actividad del caso de uso: CU5 Interpretar petición HTTP___________ 53
Figura 3-25 Diagrama de caso de uso: CU6 Generar mapa SVGTiny ______________________ 53
Figura 3-26 Diagrama de actividad del caso de uso: CU6.1 Obtener perfil del dispositivo_______ 54
Figura 3-27 Diagrama de caso de uso: CU6.2 Crear imagen SVGTiny _____________________ 55
Figura 3-28 Diagrama de actividad del caso de uso: CU6.2.1 Obtener mapa SVG ____________ 56
Figura 3-29 Diagrama de actividad del caso de uso: CU6.2.2 Convertir SVG a SVGTiny _______ 57
Figura 3-30 Diagrama de actividad del caso de uso: CU6.2.3 Generar ruta__________________ 58
Figura 3-31 Diagrama de actividad del caso de uso 6.2.4 Obtener puntos de referencia________ 59
Figura 3-32 Diagrama de actividad del caso de uso: CU6.2.5 Agregar datos al SVGTiny _______ 60
Figura 3-33 Diagrama de caso de uso: CU7 Enviar mapa SVGTiny________________________ 61
Figura 3-34 Diagrama de actividad del caso de uso: CU7 Enviar mapa SVGTiny _____________ 61
Figura 3-35 Diagrama general de paquetes del generador de mapas croquis SVGTiny ________ 62
Figura 3-36 Diagrama de clases del paquete mx.edu.cenidet.gateway.database _____________ 63
Figura 3-37 Diagrama de secuencia para una conexión a postgres ________________________ 64
Figura 3-38 Diagrama de clases del paquete mx.edu.cenidet.gateway.maps ________________ 65
Figura 3-39 Diagrama de secuencia para la obtención del mapa SVG______________________ 66
Figura 3-40 Diagrama de secuencia para la obtención de los datos del SVGTiny _____________ 67
Figura 3-41 Diagrama de clases del paquete mx.edu.cenidet.gateway.maps.coordinates_______ 68
Figura 3-42 Diagrama de secuencia para convertir coordenadas UTM y georeferenciales ______ 69
Figura 3-43 Diagrama de clases del paquete mx.edu.cenidet.gateway.servlets_______________ 69
Figura 3-44 Diagrama de secuencia para dar al servlet el mapa SVGTiny___________________ 70
Figura 3-45 Diagrama de clases del paquete mx.edu.cenidet.edu.gateway.mobiledevice _______ 70
Figura 3-46 Diagrama de secuencia para la obtención del dispositivo móvil _________________ 71
Figura 3-47 Diagrama de clases del paquete mx.edu.cenidet.gateway.routing _______________ 71
Figura 3-48 Diagrama de secuencia para generar la ruta mínima _________________________ 72
Figura 3-49 Diagrama de clases del paquete mx.edu.cenidet.gateway.SVGTiny______________ 73
Figura 3-50 Diagrama de actividad para crear el mapa SVGTiny __________________________ 73
Figura 3-51 Diagrama relacional de la base de datos MobileDevice________________________ 76
Figura 4-1 Recepción de la petición HTTP. ___________________________________________ 79
Figura 4-2 Interpretación de la petición HTTP _________________________________________ 79
Figura 4-3 Conexión a la base de datos Postgres______________________________________ 80
Figura 4-4 Conexión a la extensión PostGIS de la base de datos Postgres __________________ 80
Figura 4-5 Ejemplo de conexión a la base de datos ____________________________________ 81
Figura 4-6 Obtención del perfil del dispositivo móvil ____________________________________ 82
Figura 4-7 Obtención de los puntos de interés ________________________________________ 83
Figura 4-8 Obtención de los puntos de referencia______________________________________ 84
Figura 4-9 Obtención del mapa SVGTiny ____________________________________________ 86
Figura 4-10 Generación y obtención del área de interés (BBOX) __________________________ 87
Figura 4-11 Obtención del mapa SVG _______________________________________________ 88
Figura 4-12 Conversión SVG a SVGTiny_____________________________________________ 89
Figura 4-13 Obtención de la ruta ___________________________________________________ 90
Figura 4-14 Conversión de coordenadas georeferenciales a pixeles _______________________ 91
vi
Figura 4-15 Ejemplo para convertir coordenadas georeferenciales a pixeles_________________ 92
Figura 4-16 Métodos de elementos que se agregan al mapa SVGTiny _____________________ 93
Figura 4-17 Métodos para agregar datos al mapa SVGT ________________________________ 94
Figura 4-18 Enviar el mapa SVGT al dispositivo móvil __________________________________ 94
Figura 5-1 Parámetros de conexión para el MBDR PostgreSQL __________________________ 97
Figura 5-2 Parámetros de conexión de la extensión PostGIS SBLAGWMMS ________________ 97
Figura 5-3 Interpretación del mensaje recibido ________________________________________ 97
Figura 5-4 Perfil del dispositivo móvil________________________________________________ 98
Figura 5-5 Proceso de obtención del mapa imagen en consola ___________________________ 99
Figura 5-6 Mapa obtenido ________________________________________________________ 99
Figura 5-7 Representación de la ruta en nodos________________________________________ 99
Figura 5-8 Visualización de la ruta mediante Netbeans ________________________________ 100
Figura 5-9 Obtención de los POR(Point of Reference - puntos de referencia) _______________ 100
Figura 5-10Visualización del proceso de una petición del servicio de taxis. _________________ 101
Listado de tablas
Tabla 1-1 Costos de mensajería de las telefónicas en México, 2009 ________________________ 5
Tabla 1-2 Comparativa de los trabajos del estado del arte _______________________________ 19
Tabla 2-1 Necesidades de los usuarios móviles _______________________________________ 25
Tabla 3-1 Descripción del caso de uso: CU1 Configurar RMS ____________________________ 44
Tabla 3-2 Descripción del caso de uso: CU1.1 Crear RMS_______________________________ 45
Tabla 3-3 Descripción del caso de uso: CU1.2 Leer RMS _______________________________ 46
Tabla 3-4 Descripción del caso de uso: CU1.3 Actualizar RMS ___________________________ 47
Tabla 3-5 Descripción del caso de uso: CU2 Construir petición HTTP ______________________ 48
Tabla 3-6 Descripción del caso de uso: CU3 Enviar trama _______________________________ 49
Tabla 3-7 Descripción del caso de uso: CU4 Recibir petición HTTP________________________ 51
Tabla 3-8 Descripción del caso de uso: CU5 Interpretar petición HTTP _____________________ 52
Tabla 3-9 Descripción del caso de uso: CU6.1 Obtener perfil del dispositivo móvil ____________ 53
Tabla 3-10 Descripción del caso de uso: CU6.2.1 Obtener mapa SVG _____________________ 55
Tabla 3-11 Descripción del caso de uso: CU 6.2.2 Convertir SVG a SVGTiny________________ 56
Tabla 3-12 Descripción del caso de uso: CU6.2.3 Generar ruta ___________________________ 57
Tabla 3-13 Descripción del caso de uso: CU6.2.4 Obtener puntos de referencia______________ 58
Tabla 3-14 Descripción del caso de uso: CU6.2.5 Agregar datos al SVGTiny ________________ 59
Tabla 3-15 Descripción del caso de uso: CU7 Enviar mapa SVGTiny ______________________ 61
Tabla 3-16 Descripción de los paquetes de la aplicación SketchMapServer. _________________ 62
Tabla 3-17 Comparación de los repositorios de dispositivos móviles _______________________ 75
Tabla 3-18 Descripción de las de la base de datos MobileDevice _________________________ 76
Tabla 5-1 Evaluación de resultados________________________________________________ 102
GLOSARIO
API Application Programming Interface. Interfaz de programación de
aplicación. Es el conjunto de funciones y procedimientos que ofrece cierta
librería para ser utilizado por otro software como una capa de abstracción.
Representa una interfaz de comunicación entre componentes de software.
BDE Base de Datos Espacial. Provee todos los servicios de los Sistemas
manejadores de bases de datos relacionales y una administración efectiva
y eficiente de datos espaciales
BBOX Bounding BOX. Es un rectángulo orientado por líneas x-y, contiene un
conjunto de datos geográficos especificado por dos coordenadas: xmin,
ymin and xmax, ymax.
Capa Unidad básica de información geográfica que puede solicitarse a un
servidor como un mapa.
Cartografía La cartografía es la creación, la producción y el estudio de mapas. Se
considera una subdisciplina de la geografía.
CDMA Code Division Multiple Access. El acceso múltiple por división de código o
CDMA es un término genérico para varios métodos de multiplexación o
control de acceso al medio basados en la tecnología de espectro
extendido (spread spectrum). Generalmente se emplea en
comunicaciones inalámbricas (por radiofrecuencia), aunque también
puede usarse en sistemas de fibra óptica o de cable.
DBMS Sistema Manejador de bases de datos.
Gateway Hardware o software que realiza la conversión de protocolos entre
diferentes tipos de redes.
GIS Geographic Information System. Los sistemas de información geográfica
son una integración organizada de hardware, software, datos geográficos
y personal, diseñado para capturar, almacenar, manipular, analizar y
desplegar en todas sus formas la información geográficamente
referenciada con el fin de resolver problemas complejos de planificación y
gestión.
GPS Global Positioning System. Sistema de Posicionamiento Global. Sistema
Global de Navegación por Satélite que permite determinar en todo el
mundo la posición de un objeto.
GPRS General Packet Radio Service. Es un servicio de datos móvil orientado a
paquetes. Está disponible para los usuarios del Sistema Global para
Comunicaciones Móviles (GSM). Permite velocidades de transferencia de
56 a 114 Kbps.
GSM Global System for Mobile communications. Es un sistema estándar para
comunicación utilizando teléfonos móviles que incorporan tecnología
digital.
HTTP HyperText Transfer Protocol. Es un protocolo orientado a transacciones
Web y sigue el esquema petición-respuesta entre un cliente y un servidor.
IEEE Institute of Electrical and Electronics Engineers. Instituto de Ingenieros
Eléctricos y Electrónicos, una asociación técnico-profesional mundial
dedicada a la estandarización, entre otras cosas. Es la mayor asociación
internacional sin fines de lucro formada por profesionales de las nuevas
tecnologías, como ingenieros de telecomunicaciones, ingenieros
electrónicos, Ingenieros en informática e Ingenieros en computación.
JCP Java Community Process. Es un proceso formalizado que permite a las
partes interesadas involucrarse en la definición de futuras versiones y
características de la plataforma Java.
JSR Java Specification Request. Son documentos formales que describen las
especificaciones y tecnologías propuestas para que sean añadidas a la
plataforma Java.
LBS Location Based Service. Ofrecen un servicio personalizado a los usuarios
basado en su información de ubicación geográfica. Para su operación
utiliza tecnología de sistemas de información geográfica, alguna
tecnología de posicionamiento y tecnología de comunicación de redes
para transmitir información hacia una aplicación LBS que pueda procesar
y responder la solicitud.
Mapa Representación de dos dimensiones de la distribución espacial de
fenómenos o de objetos. Por ejemplo, un mapa puede demostrar la
localización de ciudades, de gamas de la montaña, de los ríos, o de los
tipos de roca en una región dada. La mayoría de los mapas son planos,
haciendo su producción, almacenamiento y manipulación relativamente
fácil. Los mapas presentan su información al espectador en una escala
reducida. Son más pequeños que el área que representan y usan las
relaciones matemáticas para mantener relaciones geográficas
proporcionalmente exactas entre los puntos. Los mapas muestran la
información usando los símbolos que se identifican en una leyenda.
Mapa croquis Se define como una representación gráfica de la ubicación exacta de una
dirección o lugar que se está localizando por medio de coordenadas o
puntos de referencia, básicamente se utiliza para localizar una dirección
en particular. Los puntos de interés que se muestran en el mapa sirven
como referencia visual para orientar al usuario, presentándose la ruta con
la información pertinente representada mediante símbolos y textos.
MIDP Mobile Information Device Profiles. Perfil para dispositivos móviles de
información.
MMS Multimedia Messaging Service. Servicio de mensajería multimedia. Es un
estándar de para los sistemas de mensajería de las telefonías celulares
que permite el envío de mensajes que incluyen objetos de multimedia
tales como: imágenes, audio, video y texto enriquecido.
PostGIS Módulo que añade soporte de objetos geográficos a la base de datos
objeto relacional PostgreSQL para su utilización en Sistema de
Información Geográfica. Se publica bajo la GNU (General Public License).
PostgreSQL Servidor de base de datos libre desarrollado en su primera versión con el
nombre de Ingres, proyecto desarrollado en la universidad de Berkeley.
Considerado como el referente a los sistemas manejadores de base de
datos libres.
Shapefile Formato de archivo de tipo vectorial con extensión .shp desarrollado por la
empresa Esri para la representación de la información a través de
geometrías y un sistema de referencia espacial.
SRS Spatial Referencing System or Coordinate Reference System (CRS) es
un sistema de coordenadas locales, regionales o globales usados para
localizer entidades geográficas.
SVG Es un lenguaje para describir gráficos bidimensionales en XML. Soporta
tres tipos de objetos gráficos: figuras vectoriales (por ejemplo rutas
formadas por líneas rectas y curvas), imágenes y texto. Estos objetos se
pueden agrupar, estilizar, transformar y componer en nuevos objetos
previamente representados.
URL Uniform Resource Locator. Es una secuencia de caracteres, de acuerdo a
un formato estándar, que se usa para nombrar recursos como
documentos e imágenes en Internet para su localización.
URI Uniform Resource Identifier. Es una cadena corta de caracteres que
identifica inequívocamente un recurso (servicio, página, documento,
dirección de correo electrónico, enciclopedia, etc.). Normalmente estos
recursos son accesibles en una red o sistema.
WAP Wireless Application Protocol. Es un estándar abierto internacional para
aplicaciones que utilizan las comunicaciones inalámbricas, p.ej. acceso a
servicios de Internet desde un teléfono móvil.
Wi-Fi Es un sistema de envío de datos sobre redes computacionales que utiliza
ondas de radio en lugar de cables.
WMA Wireless Messaging API. Es un paquete opcional para J2ME que
proporciona acceso independiente de la plataforma a recursos de
comunicación inalámbrica como SMS.
WMS Servicio de Mapas en Web (Web Map Service por sus siglas en inglés) es
una especificación definida por la OGC caracterizada por ser un servicio
que provee mapas a través de la Web. Estos mapas tienen como fuente
de información datos vectoriales y ráster.
XML eXtensible Markup Language. Lenguaje de marcado extensible. Es un
meta-lenguaje que permite definir lenguajes de marcado adecuados a
usos determinados. En la práctica corresponde a un estándar que permite
a diferentes aplicaciones interactuar entre sí a través de una red.
CAPÍTULO I
INTRODUCCIÓN
En este capítulo se presenta una visión general del tema de investigación, se describe la
problemática que se abordó, el objetivo, la justificación, los beneficios, los alcances y las
limitaciones del proyecto de tesis. Además se muestra la investigación del estado del arte
realizado y la organización general del documento.
Capítulo I Introducción
Página 2
1. Introducción
Actualmente las interacciones con las aplicaciones móviles son limitadas por las
restricciones propias de los dispositivos, teniendo los desarrolladores el reto de diseñar
sistemas de mapas para dispositivos móviles, tomando en consideración las restricciones
conocidas para desarrollar aplicaciones de utilidad y de gran impacto en los usuarios.
Las restricciones de los dispositivos incluyen las limitaciones del tamaño de pantalla que
muestra el contenido de mapas descritos por un conjunto de datos, el bajo ancho de
banda para la transmisión de datos que son utilizados para renderizar1
los mapas y el
pobre poder computacional para procesar los datos, [Hampe, 2005].
Es por ello que las investigaciones con respecto a las cuestiones de diseño, interacción y
elaboración de modelos de los servicios de mapas móviles se han incrementado,
dominando los estilos de presentación en los dispositivos móviles, así como las diversas
formas de adaptación y comunicación entre los mismos.
La comunicación a través de dispositivos móviles ha mostrado un crecimiento interesante
como resultado de la facilidad de manejo, la reducción del costo y la disponibilidad de
servicios, abarcando un sector importante en la sociedad. Como resultado del crecimiento
en el uso de dispositivos móviles han surgido nuevas tecnologías y servicios basados en
la ubicación del usuario, es decir, servicios basados en localización (LBS pos sus siglas
en inglés), [LBSWiki, 2009].
Cabe señalar que las aplicaciones implementadas son apoyadas por servicios web, así
como la mayoría de las investigaciones realizadas a la fecha están enfocadas a los
sistemas de navegación utilizando dispositivos GPS (Global Positioning System)
[GPSWiki, 2009] para la transmisión de datos georeferenciales, desarrollando con ello
aplicaciones LBS.
Se propone una innovadora combinación de tecnologías de información dependiente de la
ubicación del usuario, para ofrecer un nuevo tipo de servicios multimedia móvil de valor
agregado. El estudio muestra que los nuevos servicios móviles se pueden desarrollar
utilizando información sobre la localización.
En la investigación de los servicios que prestan los principales proveedores de tecnología
móvil, se puede observar que este trabajo de investigación abarcó todos los servicios con
los que se cuenta actualmente en México.
El resultado de las consultas realizadas por el usuario es un mapa de tipo croquis en
formato vector escalable gráfico tiny [SVG, 2009], se utilizaron conexiones HTTP para
brindar el servicio de envío y recepción, el resultado es un archivo en formato SVG-Tiny
que contiene un mapa tipo croquis que muestra los resultados de la búsqueda contextual,
la parte innovadora de este trabajo es la adopción de métodos para identificar el perfil del
dispositivo celular y en función de sus capacidades se genera un mapa a la medida.
1
El concepto de renderizar en campo de los gráficos por computadora define el proceso de creación de
imágenes sintéticas.
Capítulo I Introducción
Página 3
1.1 Descripción del problema
Hoy en día las comunicaciones por medio de conexiones HTTP y los servicios de
multimedia MMS son explotados en el envío de diversos tipos de información, tales como:
imágenes estáticas ó dinámicas con texto plano, videos, entre otros.
Asimismo los servicios basados en localización (LBS) están siendo explotados en el área
de la telefonía celular, específicamente en consultas contextuales la respuesta que
obtiene el usuario es enviado mediante mensajes SMS. En el área de Sistemas
Distribuidos de CENIDET se desarrolló una API para la gestión de mapas de navegación
en dispositivos móviles, mediante el sistema GPS y mensajería SMS/MMS, haciendo falta
una aplicación en el lado del servidor que proporcione los mapas a dicha API.
Para esta tesis se realizó una investigación que permitió identificar las limitantes que
tienen los dispositivos móviles, tales como: tamaño de la pantalla, capacidad de
procesamiento y almacenamiento. Aunado a esto, se identificó que el uso de imágenes
comunes tales como: JPG, GIF, BMP tienden a distorsionarse cuando se realizan
acercamientos y alejamientos (zoom-in y zoom-out) además de que el peso del archivo se
considera otra limitante.
En resumen, el problema que se plantea es resolver solicitudes de información de
consultas contextuales mediante el uso de formatos de imágenes compatibles con la
mayoría de las plataformas de dispositivos celulares de última generación, utilizando un
modelo de mapas tipo croquis que identifiquen puntos de interés, que serán
representados por una imagen en función del perfil del dispositivo, siendo la solución
propuesta la siguiente:
Desarrollar un generador de mapas tipo croquis en formato SVG-Tiny, que dé respuesta a
las solicitudes que sean enviadas por el dispositivo móvil haciendo uso de la API2
,
enviando el mapa mediante solicitudes basadas en conexiones HTTP, que se pueda
visualizar en dispositivos móviles con diferentes características funcionales.
Cabe destacar que al mapa tipo croquis elimina información no pertinente, con el fin de
mostrar al usuario sólo la información necesaria para dar respuesta a la petición realizada.
1.2 Objetivo
Generación de mapas tipo croquis en formato SVG-Tiny considerando información del
perfil del dispositivo, aplicando técnicas de destilado para eliminar información geográfica
no pertinente para el usuario, utilizando el esquema de mensajes de tipo
solicitud/respuesta mediante mensajería de SMS así como conexiones basadas en
HTTP/GRPS.
2
API para la Gestión de Mapas de Navegación en Dispositivos Móviles Mediante el Sistema GPS y
Mensajería SMS/MMS. Desarrollado en el Laboratorio de Sistemas Distribuidos de Cenidet.
Capítulo I Introducción
Página 4
1.3 Justificación y beneficios
Hoy en día México tiene un gran crecimiento en la telefonía celular, teniendo más énfasis
en las promociones del servicio a bajo costo, el surgimiento de nuevos servicios para los
usuarios en cuanto a promociones vía mensajes SMS y la venta de descargas de archivos
multimedia. COFETEL [COFETEL, 2009] indica que 72 de cada 100 personas tiene al
menos un dispositivo móvil, tal como se muestra en la Figura 1-1, en la cual se puede ver
en una tabla a los usuarios existentes hasta el segundo trimestre del año 2009, y se
puede observar el crecimiento de los usuarios comprendidos desde el año 1990 a la
fecha.
AÑO MILES DE USUARIOS
1990 63.9
1991 160.9
1992 312.6
1993 386.1
1994 571.8
1995 688.5
1996 1,021.9
1997 1,740.8
1998 3,349.5
1999 7,731.6
2000 14,077.9
2001 21,757.6
2002 25,928.3
2003 30,097.7
2004 38,451.1
2005 47,141.0
2006 55,395.5
2007 66,559.5
2008 p/ 75,303.5
ago-09 78,257.3
El uso del servicio de mensajería SMS y MMS ha ido en aumento por los diversos
servicios que se brindan a través de ellos, los primeros brindan servicios de publicidad por
parte de las empresas privadas, mientras que los Mensajes Multimedia están tomando un
alto impacto en los usuarios en la compra-venta de tonos, videos, imágenes, entre otros,
por otro lado los Servicios Basados en Localización (LBS) lo brindan empresas tales como
Google, Multimap, Mapquest, iLocator de Nextel, entre otros, las cuales se tiene acceso
por medio de conexiones vía WiFi y GPRS. Uno de los limitantes en México para brindar
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008p/
jun-09
0.1 0.2 0.4 0.4 0.6 0.8 1.1 1.8 3.5
8.0
14.2
21.6
25.4
29.1
36.3
45.1
52.6
62.6
70.3
72.3
Figura 1-1 Usuarios de dispositivos móviles por cada 100 habitantes
Capítulo I Introducción
Página 5
servicios de multimedia es el costo, en la Tabla 1-1 se presenta el análisis de costos
mensajería SMS/MMS y GPRS en México.
Tabla 1-1 Costos de mensajería de las telefónicas en México, 2009
Movistar Telcel Iusacell Nextel
SMS $ 0.98 $ 0.85 $1.00 $0.86
MMS $2.00 $ 2.00 $5.00 $3.45
GPRS $0.14 x Kb $0.04 x Kb $0.12 x Kb Incluido en
Renta mensual
Como resultado de la limitada capacidad de los mensajes de SMS para transportar
información, en la presente tesis se propone el desarrollo de un generador de mapas en
formato SVG-Tiny, que permita proporcionar un servicio más eficiente al usuario,
presentando el resultado de su consulta en formato gráfico, lo que permite enviar mayor
cantidad de información de manera más amigable y comprensible por el usuario.
Los resultados serán dados de acuerdo a la ubicación y los sitios de interés del usuario,
para ello se debe de ingresar el perfil del usuario, la ubicación se adquiere del dispositivo
móvil, siendo estos datos necesarios para realizar la consulta, asimismo se considera el
perfil del dispositivo y el tipo de tecnología de transmisión de datos por el cual se realiza
dicha comunicación.
Los beneficios que se obtienen al término de este trabajo de tesis son los siguientes:
 Generación de mapas tipo croquis en formato SVG-Tiny para dispositivos móviles
en función de la ubicación del usuario.
 Ofrecer a los usuarios de telefonía móvil Servicios Basados en Localización (LBS),
haciendo uso de mensajería SMS y WiFi mediante conexiones HTTP/GPRS.
1.4 Antecedentes
Se describen tres proyectos que se consideran antecedentes de este trabajo de tesis que
fueron desarrollados en CENIDET durante el período 2005-2008, los cuales se describen
a continuación:
1. API SMS para el procesamiento de consultas georeferenciadas y no
georeferenciadas [Ruiz, 2007]. El proyecto consta de un conjunto de funciones para
desarrollar e implementar aplicaciones en dispositivos móviles para procesar
consultas dependientes/independientes de la ubicación de un usuario de dispositivos
móviles, utilizando mensajería de SMS y el sistema de posicionamiento global.
Cuando se trata de una consulta georeferenciada, la API es capaz de obtener la
ubicación del cliente móvil a través de un dispositivo GPS. Para ello, la API cuenta
con un paquete llamado Conexión, el cual realiza las tareas de detección y conexión
con el dispositivo GPS así como la extracción de los datos. También cuenta con un
paquete llamado Mensaje, que contiene las clases encargadas de la formación del
mensaje de SMS, su envío y recepción.
Capítulo I Introducción
Página 6
La API se diseñó en el marco de los servicios basados en localización, los cuales
responden a las preguntas ¿Qué hay cerca de..?, ¿Cómo llego a..?, ¿Qué pasa cerca
de..? y ¿Qué clima hay en..? Con base en lo anterior, identifica cuatro tipos de
objetos:
1. Punto de interés (georeferenciado o no georeferenciado). Para el primer caso, la
localización del usuario se realiza a través de información que obtiene de un
GPS Bluetooth3
; para el segundo caso, la localización se realiza a través de
información que el usuario proporciona (calle, número, colonia, código postal,
ciudad).
2. Camino. Sucesión de puntos que unen dos o más lugares.
3. Evento (político, religioso, cultural, etc.).
4. Clima.
2. Gateway SMS Pull para Servicios Basados en Localización con una Arquitectura de
Servicio Web [Quiñonez, 2007]. En este proyecto se desarrolló un gateway (pasarela)
para el procesamiento de mensajes de SMS/MMS identificando si es una consulta
dependiente o independiente de la ubicación del cliente móvil. Una vez identificado el
tipo de consulta, se procesa de manera local o externa sobre una arquitectura que
soporte las tecnologías de los servicios Web.
Los tipos de búsqueda que soporta la arquitectura del gateway mencionado, se
definen mediante un conjunto de palabras clave, cada una representa un servicio
reconocido por el servidor de consultas, y en base a éstas retorna la información
solicitada en el formato adecuado. A continuación se listan las palabras clave
soportadas por el gateway:
 Banco
 CCamion
 Cine
 Farmacia
 Hospital
 Restaurante
 SMercado
 NPOI (retorna el punto de interés más cercano a la posición del dispositivo móvil,
basado en una búsqueda por radio predefinido).
 POI (regresa las palabras claves de los puntos de interés cercanos a la posición
del dispositivo móvil en un radio de 20 a 30 metros).
 WIA (retorna la calle y colonia donde se encuentra el dispositivo móvil).
 RCORTA (regresa la ruta para llegar al servicio definido por la palabra clave
enviada desde la posición actual del dispositivo).
3
Es una especificación para redes inalámbricas de área personal (WPANs) que hace posible transmitir
voz y datos entre distintos dispositivos mediante un enlace por radiofrecuencia segura y globalmente
libre.
Capítulo I Introducción
Página 7
3. API para la gestión de mapas de navegación de dispositivos móviles mediante el
sistema GPS y la mensajería SMS/MMS [Victoria, 2008]. Se desarrolló una API bajo la
plataforma J2ME para procesar consultas georeferenciadas/no georeferenciadas a
través de mensajes SMS/MMS para representar puntos de interés sobre un mapa
vectorial SVG en un dispositivo móvil, que permita al usuario orientarse de mejor
manera al visualizar e interactuar con la información de referencia solicitada.
Los servicios basados en localización (LBS) así como los mapas de navegación, son
aplicaciones cada vez más comunes en los dispositivos móviles. Es posible
coleccionar datos y atributos geoespaciales para resolver necesidades de ubicación y
orientación de los usuarios. Se desarrolló una API para dispositivos móviles que
permite visualizar e interactuar con información georeferencial representada como
puntos de interés sobre un mapa vectorial SVG que se podrá obtener vía un mensaje
MMS o una conexión HTTP/GPRS. Busca aprovechar la tecnología actual de los
dispositivos móviles como Smartphones y PocketPCs para proporcionar servicios de
localización a los usuarios en un momento determinado, ya sea de manera textual o
gráfica.
1.5 Alcances y limitaciones
1.5.1 Alcances
 La aplicación del servidor realiza los puntos siguientes:
o Recibe e interpreta la trama de la petición
o Realiza peticiones al servidor de mapas.
o Para generar el camino se implementa un algoritmo de ruta, en la
obtención de los puntos de referencia es necesario realizar consultas a
la base de datos espacial.
o La imagen SVG obtenido del servidor de mapas es convertida al
formato SVG-Tiny, se añade el camino y los puntos de referencia.
 Las peticiones y el envío del mapa en formato SVG-Tiny es enviado por medio
de conexiones HTTP.
1.5.2 Limitaciones
 Sólo se muestran los puntos de referencia que cumplan con la condición de
búsqueda del camino generado.
 El medio para enviar la respuesta es vía HTTP.
 La aplicación cliente está limitado a los dispositivos móviles que soporten
como mínimo la configuración Java CLDC 1.1 (JSR 179) y el perfil MIDP 2.0
(JSR 118).
 Los dispositivos móviles deben soportar las siguientes APIs para J2ME:
o Location API(JSR 179),
o Wireless Messaing API 2.0 (JSR 205) y
o Scalable 2D Vector Graphics API (JSR 226).
Capítulo I Introducción
Página 8
1.6 Estado del arte
En el desarrollo de un proyecto es necesario tomar en cuenta el conocimiento disponible
en la actualidad en torno al tema de investigación, con el fin de que el conocimiento que
se produzca tenga carácter novedoso. En esta investigación se han tomado diversos
trabajos de diferentes centros de investigación.
Se ha realizado un estudio en cada uno de ellos, tomando en cuenta aquellos que están
más relacionados con la temática a tratar, seleccionando los puntos fundamentales, así
como la comparación de dichos puntos mostrando las ventajas que se obtienen como
resultado en esta investigación.
1.6.1 Desarrollo de servicios de rutas de mapas para celulares basados en G-XML
Este proyecto [ichiro, 2002] describe el desarrollo de servicios de rutas de mapas basados
en G-XML para dispositivos móviles, permitiendo al usuario describir diversos datos
espaciales en relación con las mismas condiciones, siendo tecnología clave para el
servicio de mapas móviles.
Figura 1-2 Representación del servicio de rutas
G-XML tiene un impacto mayor para el intercambio de información espacial a través de
Internet, porque es la especificación para codificar la información espacial con XML. En
estas circunstancias hicieron uso de G-XML para desarrollar un servicio de rutas en
mapas para la telefonía móvil como una variedad de la navegación. La característica
Capítulo I Introducción
Página 9
principal de este servicio es la presentación de un mapa de datos basados en G-XML,
[JIPDC, 2006].
En la Figura 1-2 se muestran los 4 tipos de representaciones en el servicio, las cuales
son:
1. Ruta. Describe una ruta de origen a destino, la información que se muestra es la
adecuada para pantallas pequeñas del dispositivo móvil.
2. Lista de etiquetas. Representación mediante iconos para indicar instrucciones de
guiado, por ejemplo: seguir a la derecha, izquierda o derecho, para reconocer en
donde se encuentra o a donde se debe dirigir.
3. Mapa. Permite a los usuarios reconocer que dirección se debe tomar de manera
visual.
4. Descripción general. Presenta el mapa con una ruta indicando el origen y hacia
donde se desea ir.
El procedimiento para generar la ruta de los mapas mostrado en la Figura 1-3 se
desarrolla en tres etapas:
 Primera etapa. Buscar la ruta óptima desde el principio hasta el fin. Al mismo
tiempo se obtienen los nodos y los enlaces de la ruta.
 Segunda etapa. Se especifican las posiciones de los nodos y los vínculos
(NodeRelativePoint y m) de la ruta como un elemento S-GXML y se representa
mediante una sentencia, lista de símbolos o un mapa.
Figura 1-3 Procedimiento para generar la ruta del mapa
1.6.2 Mapas adaptivos para aplicaciones móviles
En este proyecto Hampe se enfoca en las limitaciones de los dispositivos móviles tales
como: pantallas pequeñas y capacidad limitada de memoria. Teniendo estas limitaciones
se asegura una carga de información mínima, utilizando técnicas y experiencia de diseño
de interfaces de usuarios útiles, [Hampe, 2005].
Las características y restricciones de los dispositivos móviles, tienen un gran impacto
sobre el diseño de las interfaces de usuario. Para ello se diseñan presentaciones visuales
sujetas a un número de restricciones, siendo las más relevantes los siguientes:
 Resolución limitada. Restricción clave que debe ser dirigida mediante diseñadores
de interfaces.
Búsqueda de ruta
Obtener nodo y enlazarlo con
una ruta
Obtener nodo relativo con una
ruta
Renderizando (Sentencia, lista puntos de
interés, mapa simple)
S-GXML
Datos espaciales
Datos de la ruta
ID Nodo, ID Enlace
Capítulo I Introducción
Página 10
 Tamaño de pantalla. Restricción para aplicaciones que son encaminados a
diversos usuarios en donde se consideran los posibles problemas de visión.
 Número de colores disponibles. Es relevante para el diseño de la presentación
visual, porque limita el uso de color para información y la aplicabilidad de técnicas
basadas en transparencias, que pueden ser utilizadas en diversas capas de
información y
 Poder de procesamiento. Restringe la interactividad de animaciones en tiempo real
y la generación de gráficos complejos en pantalla.
Adicionalmente las diferencias introducidas mediante un contexto móvil de uso está
relacionado a lo siguiente:
 Ambiente auditivo. Puede ser limitado si el dispositivo es usado en un ambiente
público, ya que el ruido del ambiente puede enmascarar la salida del sonido o
cuando el sonido de la aplicación es indeseable (museo, biblioteca, etc.),
 Ambiente visual. Los dispositivos móviles pueden ser usados en varios contextos y
rangos desde el oscuro total hasta la luz solar en aplicaciones al aire libre.
 Nivel de atención. Las aplicaciones móviles se utilizan en cualquier lugar, por lo
que el nivel de atención del usuario es mínima y podría ser limitado o la interacción
del usuario podría ser interrumpida por atender eventos externos.
Un mapa adaptivo implica acomodarse a las especificaciones necesarias y requerimientos
del usuario y al dispositivo móvil. El sistema tiende a decidir acerca de la relevancia de
información para cada usuario y cada uso. Para determinar las preferencias del usuario,
se puede identificar la cantidad de información que se puede dar en la respuesta. Como
no existen muchos usuarios expertos el sistema puede decidir automáticamente qué
información es relevante para cierto usuario en cierta situación.
Reichenbacher [Reichenbacher, 2004] identifica cuatro dominios de adaptación:
 Dominio de información
 Dominio de interfaz de usuario
 Dominio de presentación
 Dominio de tecnología
Basado en ello se determinaron los posibles objetos de adaptación. Siendo los siguientes
subconjuntos los se ajustan al proceso:
 Visualización
o Diseño del mapa
o Sección del mapa
o Escala del mapa
o Generalización del mapa
o Dimensión
o Elementos gráficos
 Geo información

o Cantidad
o Clasificación
o Nivel de detalle
o Área geográfica
 Interfaz de usuario
Capítulo I Introducción
Página 11
1.6.3 Mejorando las direcciones de ruta en dispositivos móviles
Este proyecto se enfoca en el descubrimiento de rutas para dispositivos móviles y trata de
describir cómo se llega al objetivo destino desde un estado inicial en el mundo real. Las
rutas tienen un alto nivel de descripción y proporciona un método para llevar a cabo la
instrucción de mayor prioridad. Se enfoca en las propiedades salientes del entorno y la
vista de rutas en un alto nivel de abstracción, siendo aspectos claves en el proceso de
guía en las rutas, dando como consecuencia el entendimiento de instrucciones
complejas, [Sabine, 2004].
La ruta se segmenta y se resume de manera significativa para ser representada mediante
un lenguaje de marcado. La estructura de la segmentación se desarrolló en un generador
jerárquico y las heurísticas son usadas para la identificación de segmentaciones
apropiadas.
Figura 1-4 Segmento de ruta presentado vía Web
Desarrollaron un lenguaje de marcado llamado RPML (Route Plan Markup Language) que
les permite entregar combinaciones de diferentes modalidades (texto, gráfico, y
eventualmente también voz). El mecanismo mencionado de segmentación produce
estructuras RPML como estructura de salida, a su vez usan XLST para entregar una ruta
completa vía Web (ver Figura 1-4), mientras que la Palm permite hacer exploración
interactiva paso a paso de la descripción cuando los usuarios realizan la tarea de
navegación como se muestra en la Figura 1-5.
Figura 1-5 Descripción de ruta
Capítulo I Introducción
Página 12
En resumen, no proporciona suficiente información para que el conductor pueda encontrar
la ruta correcta hacia el destino, excepto en el camino de regreso al punto de partida.
1.6.4 Sistema de soporte para contenido multimedia dinámico personalizado en
dispositivos móviles
Este proyecto tiene por objetivo representar mapas y rutas en tiempo real, para ello el
operador toma una imagen de tamaño arbitrario de una ciudad como entrada que
representa el mapa de la ciudad, una lista de puntos que consta de un ID y un factor x el
cual representa una posición global en el espacio para re-calcular las posiciones de los
puntos de interés en el mapa, [Scherp, 2004].
Para aprovechar al máximo la utilización de las pantallas de los dispositivos móviles,
utilizan los medios de comunicación para la visualización en el dispositivo móvil y, por
consiguiente, la cantidad de datos que se transfiere por medio de la red inalámbrica se
reduce.
Figura 1-6 Navegación de mapas en PDA (CityMap)
Los medios de comunicación son pertinentes a las limitaciones técnicas del dispositivo
móvil y de acuerdo al entorno del usuario, tal como ubicación, hora del día, el clima, o el
ruido. En lo que respecta a la ubicación, el usuario recibe sólo la presentación multimedia
de la vista. Además, si el entorno durante una visita de la ciudad es demasiado ruidoso,
los medios de comunicación audibles no son seleccionados para la presentación, sólo los
medios de comunicación visual.
La aplicación CityMap mostrada en la Figura 1-6 pregunta por los objetos multimedia que
coincidan con la preferencia de los intereses del usuario. Si el perfil de usuario cambia
durante la visita de la ciudad, la ruta es personalizada eliminando o añadiendo lugares de
interés turístico en el mapa.
Se desarrollaron generadores de SMIL, SVG, y HTML en el contexto de presentaciones
multimedia, considerando la limitación de los dispositivos móviles por medio de la
determinación de los perfiles que son especialmente diseñados para uso en dispositivos
móviles.
Capítulo I Introducción
Página 13
El perfil SVG-Tiny está destinado a multimedia para dispositivos móviles y el SVG-Basic
tiene por objeto el perfil de las computadoras de bolsillo como PDAs y computadoras de
mano.
En la Figura 1-7 se muestra la arquitectura cliente-servidor de CityMap, la información
sobre el perfil del usuario, los medios de comunicación y los metadatos se obtienen desde
Internet utilizando la red inalámbrica y en bases de datos.
Figura 1-7 Arquitectura de MM4U
1.6.5 Visualización Adaptiva de información geográfica en dispositivos móviles
En este trabajo se establece un punto de vista del marco conceptual para cartografía
móvil y la visualización de adaptación de información geográfica a dispositivos móviles. La
investigación se extiende enriqueciendo la teoría cartográfica, así como los métodos en el
ámbito de la información geográfica, comunicación en entornos móviles y los métodos de
adaptación para la visualización cartográfica en los dispositivos móviles.
Las soluciones cartográficas en un entorno móvil se centran en el uso de información
geográfica en ambientes urbanos, siendo como principal objetivo comunicar en forma de
aprendizaje (rutas, áreas forestales, etc.) o para explorar información geográfica mediante
los dispositivos móviles. Se hace hincapié en el apoyo de las actividades cotidianas de los
usuarios móviles, ofreciendo presentaciones de información no intrusiva tomando
decisiones rápidas. La siguiente lista describe los objetivos generales:
 Proporciona un marco de trabajo para la cartografía móvil y geovisualización
adaptable.
 Identifica los enlaces e interfaces para relacionar métodos de geovisualización.
Los objetivos específicos incluyen:
 Desarrollo de métodos de adaptación para geovisualización.
 Demostrar el potencial del SVG para móviles y geovisualización adaptables.
 Desarrollo de un prototipo que brinde servicios de geovisualización móvil.
La adaptación se lleva a cabo en los componentes de las actividades relacionadas con los
objetivos. Los usuarios demandan los servicios mediante solicitudes al servidor web
consumiendo datos geoespaciales, dando como resultado un archivo en el lenguaje de
marcado geográfico (GML), mismo que se transforma mediante el lenguaje de
transformación de estilo extensible (XSLT) a un documento en formato vector gráfico
PDA usando PoketSMIL
WinCE
HHC usando SVGBasic
Player
Celular móvil con
SVGTiny
Internet
Aplicación
multimedia
personaliza
da
ServidorCliente móvil
Capítulo I Introducción
Página 14
escalable (SVG). Las adaptaciones del documento SVG pueden ser manipulados
mediante el modelo objeto-documento (DOM).
Aunque el progreso de la tecnología en el campo de la computación móvil es significante
y la investigación está dirigida a los móviles con información geográfica, son varios los
problemas aun sin resolver y muchos conocimientos que se van adquiriendo al
desarrollar soluciones móviles para el contexto que se describe a continuación:
 Geovisualización. La visualización en los dispositivos móviles está limitado por el
tamaño y resolución de la pantalla, la falta de poder de procesamiento, la
memoria, la duración de la batería y el ancho de banda de la red móvil.
 Usabilidad. El uso de las soluciones móviles se obstaculiza por el uso de mapas
escaneados o la producción ilegible de mapas con resoluciones que no soportan
los dispositivos móviles.
 Lectura ilegible. La limitación de las pantallas pequeñas implica que no hay lugar
para elementos auxiliares tales como un mapa leyenda, lo que hace que la lectura
de mapas sea un proceso difícil.
 Movilidad. La movilidad del usuario tiene muchas consecuencias, el uso de la
información geográfica se ve afectada por los cambios de ubicación del usuario,
las diferentes actividades, asimismo se tienen diferentes distracciones en un
entorno público siendo rápidos los cambios de contexto haciendo más difícil las
condiciones de uso.
1.6.6 gvSIG para dispositivos móviles
gvSIG Mobile es una herramienta para dispositivos móviles, siendo sus características
principales las siguientes: soporte de los formatos de imágenes más utilizados para
almacenar datos geográficos, el acceso a diversas bases de datos, los servicios de
mapas, manipulación de datos vectoriales y ráster. Tiene la funcionalidad de un
visor/editor de cartografía con un módulo de GPS para la auto-localización de puntos de
interés mediante servicios remotos [Montesinos, 2008].
En la Figura 1-8 se muestra la interfaz de usuario del sistema en el que se incorpora el
concepto de grupo de barras de herramientas y un sistema de ayuda contextual.
Figura 1-8 Interfaz de usuario de gvSIG Mobile
Capítulo I Introducción
Página 15
Este proyecto es una extensión de gvSIG desktop que permite enviar datos a gvSIG
Mobile, configurar los aspectos de visualización de capas, definir formularios
personalizados y revisar las modificaciones realizadas por gvSIG Mobile, en la Figura 1-9
se muestra la sincronización de datos desde gvSIG desktop.
Figura 1-9 Sincronización de datos desde gvSIG desktop
1.6.7 Sistema de Información Geográfica basado en SVG
El Sistema de Análisis de Información Geográfica (GIAS), es un sistema autónomo que
utiliza técnicas de gráfico renderizado para aplicaciones locales. Describe una estructura
interna en la que se incluye la base de datos, los mecanismos de extracción de
información, el tratamiento de datos y su mantenimiento. Se expande mediante el
desarrollo de funciones para su uso en la Web a través de la utilización de los SVG.
Demuestra que el SVG tiende a ser una herramienta de gran alcance, siendo un reto para
la interfaz de programación de gráficos en la web, [Cabral, 2005].
GIAS fue desarrollado en la plataforma Borland Delphi 6, la arquitectura que proponen se
muestra en la Figura 1-10, describiendo de manera general el sistema.
La base de datos contiene información acerca de la ubicación real de toda la región en
estudio, así como las imágenes geométricas presentable de la región.
El uso del formato SVG permite representar tres tipos de objetos gráficos: formas de
vectores (definidos por líneas rectas y curvas), imagen y texto. Los vectores de objetos
tienen información sobre las curvas y líneas de una imagen, en lugar de información
acerca de los pixeles que componen la misma. Se utiliza la técnica de la agrupación en
capas, por lo que es posible tener en un dominio los elementos que tienen características
similares.
Capítulo I Introducción
Página 16
Figura 1-10 Arquitectura de GIAS
En la figura anterior el módulo de “Administración y registro de datos” es el responsable
de aplicar los intercambios y la manipulación de datos a través de la Web. El componente
“Servidor de mapas” es utilizado con el fin de extraer información de la base de datos y
generar datos en SVG (véase Figura 1-11) utilizando la información extraída, teniendo
como resultado un mapa en formato SVG.
Figura 1-11 Creación de archivo SVG
1.6.8 Procesando datos interoperables por Aplicaciones Geoespaciales Móviles
En este proyecto se propone una arquitectura de servicio para integrar clientes móviles a
una infraestructura de datos espaciales (SDI4
por siglas en inglés). Esta arquitectura
permite proveer mapas y objetos geoespaciales acorde a los requerimientos del
dispositivo móvil, apoya las fases locales (offline) y suministra documentos de contexto
que contienen información de los servicios relevantes, [Brinkhoffi, 2008].
Observan que existen diferencias en sus interfaces de usuario y en su rendimiento
tomando en cuenta las diversas categorías de dispositivos móviles, las plataformas y los
sistemas operativos, Por lo que no se asume que los servicios web geoespaciales
4
SDI: Spatial Data Infrastructure
Capítulo I Introducción
Página 17
puedan ser usadas como aplicaciones tradicionales. Es por ello que se adaptan los
resultados de los servicios a las necesidades de los dispositivos móviles. Estos
tratamientos se pueden hacer mediante:
1. Llamadas a los servicios SDI con un conjunto de parámetros para los
requerimientos del cliente móvil y/o
2. Modificando los resultados de los servicios SDI para simplificar o procesar
posteriormente mediante el móvil cliente.
La Figura 1-12 representa la arquitectura que provee mapas y datos. Las flechas indican
el flujo de datos. Para determinar los parámetros correctos para llamar a los servicios SDI
y para procesar sus resultados, una base de datos para administrar el perfil de cada tipo
de dispositivo.
Figura 1-12 Arquitectura para integrar aplicaciones móviles especificando dispositivos al SDI
El prototipo es desarrollado e implementado para la administración de desastres, dirigido
a dispositivos móviles tales como PDA‟s o Tablet PCs. La aplicación móvil consiste de los
siguientes módulos: el componente de visualización que consta de datos almacenados,
sensores e interfaces de comunicación, la Figura 1-13 representa los principales
componentes del prototipo.
Capítulo I Introducción
Página 18
Figura 1-13 Principales componentes del prototipo del cliente móvil
La estructura de datos del componente de visualización está basada en un documento
SVG, en la Figura 1-14 se representan las capas que son mapeadas, en donde cada capa
corresponde a un elemento imagen del documento SVG.
El administrador de capas es el responsable de visualizar las texturas de las capas
visibles en respuesta de eventos de los dispositivos de entrada como puede ser un
dispositivo señalador, un ratón o un lápiz óptico.
Figura 1-14 Representación y visualización de datos
Capítulo I Introducción
1.6.9 Tabla comparativa del estado del arte
A continuación se muestra la Tabla 1-2, en donde se compara los trabajos relacionados con el proyecto de investigación. Se puede
observar que todos los trabajos están enfocados a lo siguiente: al desarrollo de sistemas LBS, generar las rutas de los mapas, el
medio de transmisión de datos mediante GPRS y HTTP. Una ventaja del proyecto es el envío de mensajería SMS obteniendo la
respuesta por medio de conexión HTTP, teniendo como resultado un archivo en formato SVG-Tiny, que tiene la característica de
mostrar mapas estáticos, en 3D, audio y video5
, otro punto a destacar es J2ME como lenguaje de desarrollo, esto nos permitió
desarrollar el proyecto sin depender de algún software propietario, dando un enfoque heterogéneo al resultado que sean enviados a
la mayoría de los dispositivos móviles.
Tabla 1-2 Comparativa de los trabajos del estado del arte
PROYECTO
ORIENTADO
A LBS
LENGUAJE DE
DESARROLLO
GENERA
RUTA
SOPORTE DE
MENSAJERIA MEDIO DE
TRANSPORTE
FORMATOS
SMS MMS
[ichiro,2002]  S-GXML   HTTP SVG-Tiny
[Hampe, 2005]  No especifica  HTTP SVG-Tiny
[Sabine, 2004] 
Windows Mobile /
RPML, XSLT   GPRS | HTTP XSLT
[Scherp, 2004] 
Windows Mobile /
WFS, WMS, WMC   HTTP SMIL, SVG-Tiny
[Reichembacher, 2004] 
J2ME /
GML 
GPRS | UMTS,
HTTP
SVGB
[Montesinos, 2008] 
J2ME/
WMS, WFS  HTTP-WMS
ECW, JPEG,
PNG, GIF
/SHP
[Cabral, 2005] 
DELPHI 6 /
XML  HTTP SVG
[Brinkhoffi, 2008]  VC++ NET 
GPRS | HTTP-
WMS
SVG
Proyecto de tesis  J2ME   
GPRS | HTTP -
WMS
SVG-Tiny
5
http://www.w3c.es/Prensa/2006/nota060810_SVGTiny
Capítulo I Introducción
Página 20
1.7 Organización del documento
El documento de tesis se organizó en 6 capítulos cada uno de los cuales presenta la
siguiente información:
Capítulo II Marco Teórico. Describe los conceptos principales del tema de investigación
que facilitarán la comprensión del presente trabajo.
Capítulo III Análisis y Diseño. En este capítulo se presenta el análisis y diseño realizado
para desarrollar el sistema. Para ello se describe la arquitectura, los diagramas de casos
de uso, diagramas de actividad, diagramas de secuencia y los diagramas de clases.
Capítulo IV Implementación. En este capítulo se describen las clases implementadas que
muestran la funcionalidad del sistema.
Capítulo V. Presenta las pruebas y los resultados obtenidos que permitieron verificar el
funcionamiento de la aplicación web SketchMapServer de acuerdo a un plan de pruebas
elaborado conforme al estándar IEEE 829-1998.
Capítulo VI. Presenta las conclusiones, aportaciones y trabajos futuros de la investigación
realizada en esta tesis, de acuerdo a los resultados obtenidos y experiencia adquirida.
Anexos. Contiene el Análisis para representar puntos de interés, el estudio de plataformas
móviles (Sistemas operativos y Lenguajes de programación), el Plan de Pruebas
elaborado y un estudio del formato SVG.
CAPÍTULO II
MARCO TEÓRICO
En este capítulo se presentan los conceptos relevantes en el desarrollo del proyecto, lo
que se está desarrollando en la misma área de investigación.
Capítulo II Marco teórico
Página 22
2. Marco teórico
2.1 Mapa tipo croquis
Mapa tipo croquis se define como una representación gráfica de la ubicación exacta de
una dirección o lugar que se está localizando por medio de coordenadas o puntos de
referencia, básicamente se utiliza para localizar una dirección en particular. Los puntos de
interés que se muestran en el mapa sirven como referencia visual para orientar al usuario,
presentándose la ruta con la información pertinente representada mediante símbolos y
textos.
Figura 2-1 Representación de un Mapa tipo croquis
En la Figura 2-1 se representa un mapa tipo croquis en donde el punto inicial “A” parte de
la calle Adolfo López Mateos doblando por la Úrsulo Galván para finalmente llegar a la
calle Gustavo Díaz Ordaz donde se localiza el punto destino “B”, también se observa que
en el trazado de la ruta se presentan puntos de referencia para orientar a las personas.
2.2 LBS. Servicios basados en localización
Las NICTs (New Information and Communication Technologies, Tecnologías Nuevas de
Información y Telecomunicación), describe a los LBS como una intersección entre:
sistemas y dispositivos móviles, Internet y GIS (Geographic Information Systems,
Sistemas de información geográfica) con base de datos espaciales, [Steiniger, 2006].
Figura 2-2 Áreas que conforman los LBS
A
B
Capítulo II Marco teórico
Página 23
En la Figura 2-2 se observa que existen algunas características en común entre los LBS y
los GIS, tales como el manejo de datos con referencia posicional y funciones de análisis
espacial, las cuales responden preguntas como: ¿Dónde estoy…? ¿Qué está cerca
de…? ¿Cómo puedo llegar a…?
Sin embargo los LBS y los GIS tienen diferentes orígenes y grupos de usuarios.
Los GIS han sido desarrollados durante varias décadas en base a aplicaciones de datos
geográficos profesionales, mientras que los LBS surgieron recientemente por la evolución
de servicios móviles públicos. En lo que se refiere a grupos de usuarios, los GIS pueden
ser vistos como un sistema profesional y tradicional, destinado a usuarios con amplia
experiencia en sistemas geográficos, además de que consumen extensos recursos de
cómputo.
En contraste los LBS se desarrollaron como servicios limitados para un gran número de
usuarios no profesionales. La aplicaciones LBS operan con las restricciones del ambiente
de cómputo móvil como baja potencia computacional, pantallas pequeñas, o limitaciones
debidas al alto consumo de batería.
2.2.1 Componentes de los LBS
Los elementos necesarios para el funcionamiento de los LBS se muestran en la Figura
2-3, [Magon, 2006].
Figura 2-3 Componentes básicos LBS
Posicionamiento o localización. Se refiere a la forma de determinar la posición del
dispositivo móvil. Existen distintas tecnologías de posicionamiento entre las que destacan
las basadas en red y las basadas en dispositivos,
Datos geográficos. Se refiere al GIS que funciona como una base de datos con
información geográfica (datos alfanuméricos) que se encuentra asociada por un
identificador común a los objetos gráficos de un mapa digital. De esta forma, señalando
un objeto se conocen sus atributos e, inversamente, preguntando por un registro de la
base de datos se puede saber su localización en la cartografía.
Capítulo II Marco teórico
Página 24
Red de comunicaciones. Se refiere al medio de transporte de datos. La información de
ubicación puede enviarse por medio de SMS o de datos utilizando GPRS.
Centro de control. Es el administrador de los datos, recibe la información de ubicación,
accede al GIS para poder satisfacer los requerimientos del usuario y envía la respuesta.
2.2.2 Funcionamiento
A continuación se describe del funcionamiento de los sistemas basados en localización:
1. Se obtiene la posición del dispositivo móvil y se envía la solicitud, la cual contiene
el objetivo de la búsqueda y la ubicación del usuario, ésta se envía a través de la
red de comunicaciones a un determinado servidor de consultas contextuales.
2. El servidor tiene la tarea de intercambiar mensajes entre la red de comunicación e
Internet. Encamina la solicitud a un servidor específico. El servidor guarda
información acerca del dispositivo que ha solicitado la información.
3. El servidor de aplicaciones lee la solicitud y activa el servicio apropiado.
4. El servicio analiza nuevamente el mensaje y decide que información adicional
necesita, además del criterio de búsqueda y posición de usuario.
5. El servicio encontrará la información necesaria que satisfaga la solicitud.
6. Teniendo toda la información necesaria, el servicio hará una consulta de ruteo,
para obtener la respuesta a la solicitud. Una vez obtenida la respuesta esta se
envía al usuario.
Los resultados se pueden presentar al usuario ya sea como una lista de texto, o un dibujo
en un mapa.
Figura 2-4 Funcionamiento LBS
2.2.3 Clasificación
Los LBS se pueden clasificar según las necesidades que satisfacen. En la Tabla 2-1 se
resumen las necesidades que satisfacen los LBS, [Steiniger, 2006].
Posicionamiento
GPS
Red de
comunicaciones
Internet
Servidor
Envío de SMS
BD
Dispositivos móviles
Capítulo II Marco teórico
Página 25
Tabla 2-1 Necesidades de los usuarios móviles
Acción Preguntas Operaciones
Orientación y localización. ¿Dónde estoy?
¿Dónde está…?
Posicionamiento,
geocodificación.
Navegación a través de
espacio, trazado de ruta.
¿Cómo puedo llegara? Posicionamiento,
geocodificación, ruteo.
Búsqueda de personas y
objetos.
¿Qué hay cerca o de
interesante…?
Posicionamiento,
geocodificación, cálculo de
distancia y área, búsqueda
de relaciones.
Identificación y
reconocimiento de personas
u objetos.
¿Qué es? Directorio, selección,
búsqueda temática o
espacial.
Verificación de eventos,
determinación del estado de
objetos.
¿Qué ocurre aquí, allá,
etc.?
Posicionamiento, cálculo de
área, geocodificación,
búsqueda de relaciones.
En la Figura 2-5 se muestra la clasificación de los LBS según las necesidades que
satisfacen.
Figura 2-5 Clasificación de los LBS
Capítulo II Marco teórico
Página 26
2.3 Sistema de información geográfica
Los sistemas de información geográfica por sus siglas en inglés Geographic Information
System(GIS), son una tecnología para el manejo de información geográfica. Son un
conjunto de herramientas que permiten manejar eficientemente datos espaciales junto con
sus características alfanuméricas asociadas. Otra definición es la siguiente: un software
GIS se asemeja a un programa de base de datos, ya que analiza y relaciona información
almacenada bajo la forma de registros, con una diferencia crucial: cada registro en una
base de datos GIS contiene información que permite dibujar formas (normalmente un
punto, una línea, o un polígono) también denominada información espacial [Quiñonez,
2007].
El objetivo primordial de un GIS es abstraer la complejidad del mundo real a una
representación simplificada entendible para el lenguaje de las computadoras actuales.
Este proceso tiene diversos niveles y comienza con la concepción de la estructura de una
base de datos organizada generalmente en capas.
En los GIS existen relaciones espaciales entre los objetos geográficos que el sistema no
puede obviar; es lo que se denomina topología y se utiliza en la definición de las
relaciones espaciales entre los objetos geográficos. Los sistemas de información
geográfica se clasifican en dos categorías vectoriales y ráster que cuentan con
características diferentes para su procesamiento y utilización.
Los GIS representan toda una realidad en diversas capas, distinguidas principalmente en
tres tipos:
i. Puntos. Representan entidades únicas como: individuos, árboles, carros, ciudades
y/o cualquier entidad que pueda representarse mediante un punto.
ii. Líneas. Representan entidades como carreteras, calles, ríos etc.
iii. Polígonos. Representan cualquier superficie que tenga un perímetro, por ejemplo:
estados, municipios, países, colonias, cuadras etc.
Las consultas espaciales se pueden realizar mediante operaciones geométricas definidas
en [SFS, 2009], se obtiene información sobre objetos se encuentran cerca, la distancia
entre ellos, que objetos se encuentran dentro de una geometría y la relación entre
geometrías de distinta topología, en la Figura 2-6 se muestran las operaciones de
geometrías sobre las entidades GIS.
En las definiciones siguientes el término P se utiliza para referirse a dimensiones
geométricas 0 (Points y MultiPoints), L se utiliza para referirse a una dimensión
geometrías (LineStrings y MultiLineStrings) y A se utiliza para referirse a las geometrías
en dos dimensiones (Polígonos y MultiPolygons).
Capítulo II Marco teórico
Página 27
Figura 2-6 Operaciones de geometría
Operación toque. Son relaciones entre dos geometrías a y b se aplica a los A/A, L/L, L/A,
P/A y P/L de los grupos de relaciones, pero no a la relación P/P grupo.
Operación cruce. La relación se aplica a los cruces de P/L, P/A, L/L y situaciones L/A.
Operación en. La relación se aplica a las intersecciones de dos geometrías a y b
resultando b contenido en a.
Operación traslape. Se define entre dos geometrías para situaciones en las que se
tengan A/A, L/L y P/P.
2.3.1 GIS Vectoriales
Son GIS que utilizan vectores definidos por pares de coordenadas relativas a algún
sistema cartográfico para la descripción de los objetos geográficos. Con un par de
coordenadas y su altitud gestionan un punto, con dos puntos generan una línea y con una
agrupación de líneas forman polígonos. En la Figura 2-7 se muestra cómo se estructura la
información geográfica dentro de tablas en algún manejador de base de datos que
permita el tratamiento de esta información [Ortiz, 2001].
Capítulo II Marco teórico
Página 28
Figura 2-7 Representación de un mapa vectorial
En el modelo de datos vectorial los objetos se describen como puntos, líneas o áreas
(polígonos). Estos elementos existen como elementos geométricos no como objetos
físicos. Este modelo es adecuado cuando trabajamos con objetos geográficos con límites
bien establecidos, como pueden ser fincas, carreteras, puntos de interés etc.
2.3.2 GIS Raster
Los Sistemas de Información Raster basan su funcionalidad en una relación de vecindad
entre los objetos geográficos. Su funcionamiento se basa en dividir la zona en una retícula
o malla de pequeñas celdas (pixel) y atribuir un valor numérico a cada celda como
representación de su valor temático. Debido a que la malla es regular (el tamaño del pixel
es constante) y se conoce la posición en coordenadas del centro de cada una de las
celdas, se puede decir que todos los pixeles están georeferenciados [Ortiz, 2001].
Figura 2-8 Representación de un mapa ráster
El inconveniente de estos sistemas es que a mayor número de filas y columnas en la
malla (más resolución), existe mayor esfuerzo en el proceso de captura de la información
Código de las celdas:
1 = Bosque
2 = Carretera
3 = Casa
Capítulo II Marco teórico
Página 29
y mayor costo computacional a la hora de procesar la misma. La Figura 2-8 muestra la
representación de éste tipo de GIS.
Los datos de un mapa ráster se visualizan como una rejilla sobrepuesta sobre un terreno.
Cada celda almacena un código que describe el terreno de una celda en particular. El
modelo de datos ráster es útil en la descripción de objetos geográficos con límites difusos,
por ejemplo: la dispersión de una nube de contaminantes, o los niveles de contaminación
de un acuífero subterráneo, donde los contornos no son absolutamente nítidos; en esos
casos, el modelo ráster es más apropiado que el vectorial.
2.4 Imágenes Gráficos Vectoriales Escalables (SVG)
Como se explica en [SVG, 2009], SVG es un lenguaje para describir gráficos
bidimensionales en XML. Soporta tres tipos de objetos gráficos: figuras vectoriales (por
ejemplo rutas formadas por líneas rectas y curvas), imágenes y texto. Estos objetos se
pueden agrupar, estilizar, transformar y componer en nuevos objetos previamente
representados.
SVG se utiliza en diversas áreas incluyendo gráficos Web, animaciones, interfaces de
usuario, aplicaciones móviles, entre otros. Sus principales características son las
siguientes [Devmobi, 2007]:
 Forma compacta de representar gráficos vectoriales.
 Son gráficos escalables, es decir, es posible aumentar o modificar su tamaño
arbitrariamente sin pérdida de calidad.
 Es un estándar abierto, es una recomendación de W3C (Wide Web Consortium).
 Está basado en XML (Extensible Markup Language).
 SVG se integra con otros estándares como DOM6
(Document Objetc Model) y XSL
(Extensible Stylesheet Language).
SVG surgió para cubrir las necesidades de diversos casos de uso para gráficos
bidimensionales orientados a computadoras de escritorio; sin embargo, la industria móvil
se unió al grupo de trabajo de W3C para especificar un perfil dirigido a dispositivos
móviles. Estas demandas originaron inicialmente dos perfiles SVG: SVG Full y SVG
Mobile.
La especificación SVG Mobile está dirigida a dispositivos de recursos limitados y es parte
de la plataforma 3GPP para la tercera generación de teléfonos móviles. Un único perfil
móvil no es suficiente para una gran variedad de dispositivos debido a las distintas
características en términos de velocidad de CPU, memoria y soporte de colores. Por esta
razón, se definieron dos perfiles dirigidos al amplio rango de familias de dispositivos:
 SVG Basic. Es un subconjunto estricto de SVG Full, es decir, los gráficos que se
realizan en SVG Basic son compatibles con SVG Full, está dirigido a PDAs y
dispositivos móviles de última generación con capacidades avanzadas.
6
Es un modelo computacional a través del cual los programas y scripts pueden acceder y modificar
dinámicamente y en tiempo real el contenido, estructura y estilo de los documentos HTML y XML.
Capítulo II Marco teórico
Página 30
 SVG Tiny. Es un subconjunto estricto de SVG Basic, es decir, los gráficos que se
realizan en SVG Tiny son compatibles con SVG Basic y Full, está dirigido a
dispositivos móviles de capacidades limitadas.
Figura 2-9 Perfiles SVG
Los perfiles SVG se pueden mostrar como una pirámide que represente las capacidades
computacionales de los dispositivos para los cuales está dirigido un perfil en específico
así como las características SVG que soporta (ver Figura 2-9). En la parte alta y media de
la pirámide se encuentra el conjunto de características de los teléfonos móviles y PDAs y
en la base, el conjunto de características correspondientes a una computadora de
escritorio.
La principal diferencia entre SVG Tiny y SVG Basic es que SVG Tiny no proporciona
soporte para scripts y definición de estilos. Esto para evitar desbordamiento de memoria
al mantener el modelo de objeto del documento (DOM) en anexo D se describe de forma
extensa el formato SVG en específico el perfil Mobile.
2.5 Mensajería SMS
De acuerdo con la definición de [Roldán, 2005], el servicio de mensajes cortos SMS
(Short Message Service) permite enviar mensajes compuestos por un máximo de 140
bytes (el número de caracteres depende de la codificación que se utilice).
Un mensaje SMS se compone por una cabecera en la que se indican datos relativos al
protocolo de transmisión del mensaje (dirección de origen, tipo de codificación, etc.) y el
cuerpo del mensaje que contiene el texto que se transmite (ver Figura 2-10).
1120 bits
Codificación de 7 bits: 160 caracteres (mensaje de texto latino).
Codificación de 6 bits: 140 bytes (mensaje de datos).
Codificación Unicode: 70 caracteres (mensaje de texto griego o árabe).
Perfil
MOBILE
Perfil
FULL
DATOSCABECERA
Figura 2-10 Estructura de un mensaje SMS.
Capítulo II Marco teórico
Página 31
El servicio SMS emplea los canales de señalización y control de la red GSM. La
comunicación a través de un mensaje SMS es una comunicación en tiempo diferido, es
decir, que no existe ninguna conexión directa entre los dos extremos. De hecho, la red
almacena el mensaje antes de enviarlo durante un corto espacio de tiempo (generalmente
entre 0,5 y 2 s).
Las aplicaciones más comunes de los SMS son las destinadas al público en general. Es
posible clasificarlas en cuatro grandes grupos:
 Información. Envío de información al usuario sobre algún tema en concreto como:
horóscopo, eventos deportivos, noticias, clima, entre otros (requiere suscripción).
 Personalización. Descarga de logos, melodías, fondos de pantalla, imágenes,
fotos, etc.
 Chat. Consiste en el intercambio de mensajes SMS.
 Entretenimiento. El usuario que envía un SMS participa en un juego, concurso,
sorteo, etc.
2.6 Mensajería MMS
MMS (Multimedia Messaging System) es una evolución de SMS para enviar mensajes
multimedia. MMS ofrece mayor flexibilidad en el contenido del mensaje ya que, además
de mensajes de texto, soporta otro tipo de formatos (sonidos, animaciones, imágenes,
etc.) e integra otros servicios de mensajería como el correo electrónico o los mensajes de
voz. El usuario puede escribir el mensaje MMS desde su teléfono móvil, su computadora,
su PDA o cualquier otro dispositivo con un cliente MMS instalado [Roldán, 2005].
El servicio MMS permite adjuntar archivos y como valor añadido y diferenciador permite
utilizar presentaciones animadas. Esto es posible mediante la inclusión de un elemento de
presentación llamado SMIL (Synchronized Multimedia Integration Language). El mensaje
se puede componer por varias páginas consecutivas, denominadas slides, cada una con
un tiempo de presentación que se determina al formar el mensaje (ver Figura 2-11). Cada
slide contiene uno o varios de los siguientes campos: texto, imágenes (simples o
animadas), sonido e incluso vídeo.
Figura 2-11 Esquema de composición de páginas en un mensaje MMS.
Capítulo II Marco teórico
Página 32
MMS es un estándar abierto, especificado por el Foro WAP (Wireless Application
Protocol) y 3GPP (Third Generation Partnership Project). La especificación de 3GPP
define la arquitectura de la red y funciones generales. La especificación del Foro WAP
define la encapsulación de los mensajes y los protocolos de aplicación. Sin embargo, el
estándar no especifica un tamaño máximo para un MMS. Esto es para asegurar la
interoperabilidad futura y evitar limitaciones similares a las de los mensajes SMS. El
tamaño del mensaje depende del operador, quien probablemente establezca un tamaño
estandarizado para propósitos particulares de 100 ó 300 Kb [NokiaMMS, 2007].
CAPÍTULO III
ANÁLISIS Y DISEÑO
En este capítulo se presenta el análisis y diseño realizado para este proyecto de tesis.
Para ello se describe la arquitectura, los diagramas de casos de uso, diagramas de
actividad, diagramas de secuencia y los diagramas de clases.
Capítulo III Análisis y diseño
Página 34
3. Análisis y diseño
3.1 Análisis
Se describe la arquitectura del generador de mapas croquis desarrollado. Se presentan
los diagramas de caso de uso, la definición de escenarios y los diagramas de actividad
que corresponden a la fase de análisis del proyecto.
3.1.1 Arquitectura del generador de mapas croquis
El generador de mapas croquis en formato SVG para dispositivos móviles permite
satisfacer las peticiones de información del cliente considerando el perfil del dispositivo,
es decir, se generarán los mapas de acuerdo a las características propias del dispositivo.
En la Figura 3-1 se muestra la arquitectura donde se presentan los módulos
implementados para el desarrollo del proyecto. Los componentes y tecnologías sobre las
cuales se desarrolló esta plataforma son las siguientes:
 Negocio2sms. Está relacionado con el proveedor del servicio que registra sus
productos o servicios mediante una interfaz Web.
 GW-SMS. Realiza la interacción con el cliente que demanda los servicios.
 Geoserver. Servidor de mapas que provee los mapas cartográficos en diferentes
formatos, los cuales se explotarán a través de servicios Web.
 SketchMapServer. Realiza la generación del mapa SVG-Tiny realizado por capas
que contienen información de los puntos de interés, ruta y los puntos de
referencia.
 Base de datos espacial. Proporciona toda la información al módulo que interactúa
con el cliente y sirve para almacenar y registrar nuevos proveedores de servicios
desde el módulo Negocio2sms.
Figura 3-1 Arquitectura del generador de mapas croquis en un contexto de cliente/servidor
El proceso para obtener un mapa tipo croquis en formato SVG-Tiny se describe a
continuación en los siguientes pasos:
Capítulo III Análisis y diseño
Página 35
1. Se realiza una petición a la aplicación Web SketchMapServer vía HTTP mediante
un dispositivo móvil para obtener un mapa tipo croquis.
2. La aplicación Web SketchMapServer recibe e interpreta la petición enviada por el
dispositivo móvil.
3. Se realizan consultas relacionales y espaciales a partir de los datos interpretados
por la aplicación web. La consulta relacional se realiza para obtener el perfil del
dispositivo móvil, mientras que las consultas espaciales son realizadas para
obtener coordenadas georeferenciales del punto o los puntos de interés destino.
4. Se obtiene el área de interés mediante los puntos georeferenciales origen y
destino, dicha área de interés se utiliza para realizar una petición WMS al servidor
de mapas para obtener como respuesta una imagen en formato SVG v1.0 que
contiene los polígonos que representan las manzanas delimitadas por las calles.
La imagen SVG (Basic) v1.0 obtenida del servidor de mapas es convertido al
formato SVG (Tiny) v1.1 el cual es compatible con los dispositivos móviles.
5. Se obtienen los nodos y las aristas mediante consultas espaciales, para ello se
utiliza el área de interés obtenido en el punto anterior. A partir de los nodos y las
aristas se genera el grafo del cual se obtiene la ruta origen-destino compuesta por
la unión de nodos mediante las aristas.
6. Se realizan consultas de radio a la base de datos espacial para obtener los puntos
de referencia de cada nodo que contiene la ruta obtenida.
7. Se agregan los elementos ruta y sus puntos de referencia a la imagen SVG-Tiny.
8. Por último se envía la imagen SVG-Tiny del mapa tipo croquis al dispositivo móvil
en respuesta de la petición realizada vía HTTP.
3.1.2 Base de datos espacial
Los Sistemas de Administración de Bases de Datos Espaciales (SDBMS) tienen como
objetivo el proveer todos los servicios de los DBMS relacionales y una administración
efectiva y eficiente de datos espaciales. Los requerimientos y técnicas que se necesitan
para modelar objetos geográficos que tienen extensión, ubicación, operaciones
geométricas (unión, intersección, resta, entre otros) y relaciones especiales son
complejos, haciendo insuficientes los servicios que ofrecen los sistemas de bases de
datos tradicionales.
Los sistemas de base de datos espaciales cuentan con dos tipos de representaciones:
1. Objetos espaciales. Son entidades geográficas distribuidas en un espacio de
representación que se pueden distinguir, consultar y manipular, por ejemplo
ciudades, rutas, zonas de reforestación, etc.
2. Espacio. Describe el espacio en sí mismo, esto es que se quiere decir algo sobre
cada punto del espacio, es utilizado para describir mapas temáticos como la
división política de un país.
El modelo en el que nos basamos es el estándar SQL de OpenGIS que contiene dos tipos
de atributos: los atributos espaciales que son valores geométricos de dos dimensiones
con interpolación lineal entre sus vértices y los atributos descriptivos.
Las consultas espaciales en este proyecto de tesis se realizan en el SDBMS PostGIS, el
cual es una extensión al DBMS PostgreSQL que permite el uso de objetos GIS
Capítulo III Análisis y diseño
Página 36
(Geographic Information Systems). La especificación para SQL de características simples
de OpenGIS define tipos de objetos GIS estándar, los cuales son manipulados por
funciones y un conjunto de tablas de metadatos. Esta especificación tiene dos tablas de
metadatos:
SPATIAL_REF_SYS
PK SRID
AUTH_NAME
AUTH_SRID
SRTEXT
PROJ4TEXT
GEOMETRY_COLUMNS
SRID
F_TABLE_CATALOG
F_TABLE_SCHEMA
F_TABLE_NAME
F_GEOMETRY_COLUMN
COORD_DIMENSION
TYPE
Figura 3-2 Tablas de metadatos de la especificación OpenGIS
Se describen las columnas de las tablas de los metadatos de la especificación OpenGIS
que se muestran en la Figura 3-2:
Tabla GEOMETRY_COLUMNS
 F_TABLE_CATALOG, F_TABLE_SCHEMA, F_TABLE_NAME. Distingue
totalmente la tabla de características que contiene la columna geométrica.
 F_GEOMETRY_COLUMN. Nombre de la columna geométrica en la tabla de
características.
 COORD_DIMENSION. Dimensión espacial de la columna (2D o 3D).
 SRID. Es una clave foránea que referencia SPATIAL_REF_SYS.
 TYPE. Tipo de objeto espacial (POINT, LINESTRING, POLYGON, MULTYPOINT,
GEOMETRYCOLLECTION). Para un tipo heterogéneo se usa el tipo GEOMETRY.
Tabla SPATIAL_REF_SYS
 SRID: Valor entero que identifica el sistema de referencia espacial.
 AUTH_NAME: Nombre del estándar para el sistema de referencia. Por ejemplo:
EPSG.
 AUTH_SRID: Identificador según el estándar AUTH_NAME. En el ejemplo anterior
es el id según EPSG.
 SRTEXT: Una Well-know text 7
representación para el sistema de referencia
espacial. Ejemplo: WKT para SRS.
 PROJ4TEXT: Proj4 es una librería que usa PostGIS para transformar
coordenadas. Esta columna contiene una cadena con definición de las
coordenadas de Proj4 para un SRID dado.
7
WKT (Well-Know Text) es la codificación o sintaxis diseñada específicamente para describir objetos
espaciales expresados de forma vectorial.
Capítulo III Análisis y diseño
Página 37
PostGIS soporta los objetos GIS definidos por OpenGIS y el API de representación de la
especificación OpenGIS pero no tiene varios de los operadores de comparación. A
continuación se muestran unos ejemplos de la representación en modo texto:
POINT(0 0 0)
LINESTRING(0 0,1 1,1 2)
POLYGON((0 0 0,4 0 0,4 4 0,0 4 0,0 0 0),(1 1 0,2 1 0,2 2 0,1 2 0,1 1 0))
MULTIPOINT(0 0 0, 1 2 1)
MULTILINESTRING((0 0 0, 1 1 0, 1 2 1),(2 3 1,3 2 1,5 4 1))
MULTIPOLYGON(((0 0 0,4 0 0,4 4 0,0 4 0,0 0 0),(1 1 0,2 1 0,2 2 0,1 2 0,1 1 0)),(-1 -1 0 -1
-2 0,-2 -2 0,-2 -1 0,-1 -1 0))
GEOMETRYCOLLECTION(POINT(2 3 9),LINESTRING(2 3 4,3 4 5))
En los ejemplos se pueden ver características con coordenadas en 2D y 3D, las funciones
force_2d() y force_3d() son para convertir una característica a 3D o 2D.
Las consultas espaciales en este proyecto de tesis localizan puntos de interés a partir de
una ubicación geoespacial, se obtiene la distancia de dos puntos geográficos y se obtiene
un número finito de información de los puntos de referencia localizados en un área
específica.
La siguiente sentencia representa la forma de obtener puntos de interés a una
determinada distancia de la ubicación georeferencial del dispositivo móvil.
SELECT distance(s.the_geom, GeometryFromText(„POINT(Longitud Latitud)‟, -1))*100000 as distancia,
s.nomservicio, col.descripcion, s.calle, s.numero, col.cp
FROM servicios As s, categoria As c, colonia As col
WHERE distance(s.the_geom, GeometryFromText(„POINT(Longitud Latitud)‟, -1))*100000 <= Distancia
ORDER BY distancia
Para la búsqueda de información en un contexto geoespacial se necesita tener un área de
interés llamado Bounding Box (BBOX) que contenga información referente a datos
geográficos. En esta área de interés existe información asociada a un mapa o un
repositorio geoespacial. En la Figura 3-3 se muestra la representación de los puntos
máximos y mínimos de un BBOX.
.
xMin xMax
yMax
yMin
Figura 3-3 Representación de un BBOX
Capítulo III Análisis y diseño
Página 38
En el contexto de los servicios basados en localización se encuentra información de las
manzanas, calles, puntos de interés y puntos de referencia que representan instituciones
públicas o privadas que prestan algún servicio a usuarios o instituciones.
La siguiente sentencia SQL genera un BBOX definido por un punto georeferencial y una
distancia radial.
SELECT CAST(ST_Expand(ST_GeomFromText(„POINT(x y)‟), distance) AS BOX2D)
Sin embargo, al utilizar esta área para realizar peticiones Web Map Service al servidor de
mapas se obtiene un mapa con áreas innecesarias y un incremento en el tiempo para la
generación de las rutas, ya que se obtiene información no pertinente para el usuario. Por
ello se realiza un proceso para obtener el BBOX de búsqueda a partir de los puntos de
interés. El procedimiento para generar el BBOX es el siguiente:
i. Obtener puntos de interés mediante consulta a la base de datos espacial.
ii. Comparar los valores georeferenciales de longitud de los puntos de referencia
que se obtuvieron y la ubicación georeferencial del dispositivo móvil, con el fin
de obtener los valores georeferenciales de longitud mínimo y máximo.
iii. Comparar los valores georeferenciales de latitud de los puntos de referencia
que se obtuvieron y la ubicación georeferencial del dispositivo móvil, con el fin
de obtener los valores georeferenciales de latitud mínimo y máximo.
iv. Generar el BBOX a partir de los datos obtenidos en los pasos ii y iii, el BBOX
se presenta de la siguiente forma: (minLongitud minLatitud, maxLongitud
maxLatitud).
En la siguiente sentencia SQL se utiliza el BBOX generado para obtener las aristas que
representan las calles.
SELECT DISTINCT street.gid, sum(length(street.the_geom))*100000 as largo, numpoints(the_geom),
astext(startpoint(street.the_geom)) as inicio, x(startpoint(street.the_geom)), y(startpoint(street.the_geom)),
astext(endpoint(street.the_geom))as fin, x(endpoint(street.the_geom)), y(endpoint(street.the_geom)),
sum(length(street.the_geom))*100000 as largo, astext(reverse(the_geom)) as geom_inverso
FROM street
WHERE street.the_geom && „BOX3D(xMin yMin, xMax yMax)‟::box3d
GROUP BY street.the_geom,street.gid
La siguiente sentencia SQL se utiliza para obtener los nodos que representan las
intersecciones de las calles.
SELECT DISTINCT nodos.gid as id, AsText(nodos.the_geom) as nodos, X(the_geom),Y(the_geom)
FROM nodos
WHERE nodos.the_geom && „BOX3D(xMin yMin, xMax yMax)‟::box3d
ORDER BY id
Los puntos de referencia se obtienen a partir de las consultas espaciales realizadas a los
nodos que integran la ruta mínima. La siguiente sentencia SQL obtiene los puntos de
referencia, en donde cada nodo es representado por una coordenada georeferencial
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles

Weitere ähnliche Inhalte

Ähnlich wie Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles

Proyecto de ruta
Proyecto de rutaProyecto de ruta
Proyecto de ruta
neidr
 
Diseño y animación en la web movil
Diseño y animación en la web movilDiseño y animación en la web movil
Diseño y animación en la web movil
Mejorandola
 
Desarrollo de una aplicacion web
Desarrollo de una aplicacion webDesarrollo de una aplicacion web
Desarrollo de una aplicacion web
RuthReyes71
 
Infraestructuras de datos espaciales en dispositivos móviles
Infraestructuras de datos espaciales en dispositivos móvilesInfraestructuras de datos espaciales en dispositivos móviles
Infraestructuras de datos espaciales en dispositivos móviles
Daniela Ballari
 
Presentacion de sistemas
Presentacion de sistemasPresentacion de sistemas
Presentacion de sistemas
omaira_06
 
Desarrollo fi s1
Desarrollo fi s1Desarrollo fi s1
Desarrollo fi s1
svaclaro
 

Ähnlich wie Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles (20)

Proyecto de ruta
Proyecto de rutaProyecto de ruta
Proyecto de ruta
 
Inmobiliario java
Inmobiliario javaInmobiliario java
Inmobiliario java
 
Plata aplicación móvil multiplataforma y web para la gestión de una comuni...
Plata   aplicación móvil multiplataforma  y web para la gestión de una comuni...Plata   aplicación móvil multiplataforma  y web para la gestión de una comuni...
Plata aplicación móvil multiplataforma y web para la gestión de una comuni...
 
Diseño y animación en la web movil
Diseño y animación en la web movilDiseño y animación en la web movil
Diseño y animación en la web movil
 
CTParking documentacion aplicacion
CTParking documentacion aplicacion CTParking documentacion aplicacion
CTParking documentacion aplicacion
 
Propuestafinal
PropuestafinalPropuestafinal
Propuestafinal
 
Servitec jak doc
Servitec jak docServitec jak doc
Servitec jak doc
 
Capitulo 5
Capitulo 5Capitulo 5
Capitulo 5
 
Met.desarrollar aplic.
Met.desarrollar aplic.Met.desarrollar aplic.
Met.desarrollar aplic.
 
Desarrollo de una aplicacion web
Desarrollo de una aplicacion webDesarrollo de una aplicacion web
Desarrollo de una aplicacion web
 
Infraestructuras de datos espaciales en dispositivos móviles
Infraestructuras de datos espaciales en dispositivos móvilesInfraestructuras de datos espaciales en dispositivos móviles
Infraestructuras de datos espaciales en dispositivos móviles
 
cong_1997_ESRI_Visualizacion.pdf
cong_1997_ESRI_Visualizacion.pdfcong_1997_ESRI_Visualizacion.pdf
cong_1997_ESRI_Visualizacion.pdf
 
Perfil y demas para pry empresarial
Perfil y demas para pry empresarialPerfil y demas para pry empresarial
Perfil y demas para pry empresarial
 
Acta de constitucion de proyecto
Acta de constitucion de proyectoActa de constitucion de proyecto
Acta de constitucion de proyecto
 
03.infraestructura (1)
03.infraestructura (1)03.infraestructura (1)
03.infraestructura (1)
 
Presentacion de sistemas
Presentacion de sistemasPresentacion de sistemas
Presentacion de sistemas
 
Proyecto en Android Studio (MoviCuenca)
Proyecto en Android Studio (MoviCuenca)Proyecto en Android Studio (MoviCuenca)
Proyecto en Android Studio (MoviCuenca)
 
Desarrollo fi s1
Desarrollo fi s1Desarrollo fi s1
Desarrollo fi s1
 
Mapas en línea
Mapas en líneaMapas en línea
Mapas en línea
 
Formato proyecto i web fase 1
Formato proyecto i web fase 1Formato proyecto i web fase 1
Formato proyecto i web fase 1
 

Mehr von Gabriel Gonzalez Serna

Metodología para la Generación de Explicaciones para Sistemas de Recomendació...
Metodología para la Generación de Explicaciones para Sistemas de Recomendació...Metodología para la Generación de Explicaciones para Sistemas de Recomendació...
Metodología para la Generación de Explicaciones para Sistemas de Recomendació...
Gabriel Gonzalez Serna
 
Clasificación Automática de Objetos de Conocimiento con Contenido no Estruct...
 Clasificación Automática de Objetos de Conocimiento con Contenido no Estruct... Clasificación Automática de Objetos de Conocimiento con Contenido no Estruct...
Clasificación Automática de Objetos de Conocimiento con Contenido no Estruct...
Gabriel Gonzalez Serna
 
Metodología para Evaluación de SRSC Centrada en el Usuario, Basada en Caracte...
Metodología para Evaluación de SRSC Centrada en el Usuario, Basada en Caracte...Metodología para Evaluación de SRSC Centrada en el Usuario, Basada en Caracte...
Metodología para Evaluación de SRSC Centrada en el Usuario, Basada en Caracte...
Gabriel Gonzalez Serna
 
API SMS para el Procesamiento de Consultas Georeferenciadas / No Georeferenci...
API SMS para el Procesamiento de Consultas Georeferenciadas / No Georeferenci...API SMS para el Procesamiento de Consultas Georeferenciadas / No Georeferenci...
API SMS para el Procesamiento de Consultas Georeferenciadas / No Georeferenci...
Gabriel Gonzalez Serna
 
Gateway SMS Pull para Servicios Basados en Localización con una Arquitectura ...
Gateway SMS Pull para Servicios Basados en Localización con una Arquitectura ...Gateway SMS Pull para Servicios Basados en Localización con una Arquitectura ...
Gateway SMS Pull para Servicios Basados en Localización con una Arquitectura ...
Gabriel Gonzalez Serna
 
Herramienta para la Generación de Estilos Definidos por el Usuario para su As...
Herramienta para la Generación de Estilos Definidos por el Usuario para su As...Herramienta para la Generación de Estilos Definidos por el Usuario para su As...
Herramienta para la Generación de Estilos Definidos por el Usuario para su As...
Gabriel Gonzalez Serna
 
Personalización de contenidos Web del dominio de egobierno mediante ontologías
Personalización de contenidos Web del dominio de egobierno mediante ontologíasPersonalización de contenidos Web del dominio de egobierno mediante ontologías
Personalización de contenidos Web del dominio de egobierno mediante ontologías
Gabriel Gonzalez Serna
 
Búsquedas contextuales de Servicios Basados en Localización en un entorno de ...
Búsquedas contextuales de Servicios Basados en Localización en un entorno de ...Búsquedas contextuales de Servicios Basados en Localización en un entorno de ...
Búsquedas contextuales de Servicios Basados en Localización en un entorno de ...
Gabriel Gonzalez Serna
 
Sistema de Recomendación Contextual Basado en Ontologías para Ambientes Organ...
Sistema de Recomendación Contextual Basado en Ontologías para Ambientes Organ...Sistema de Recomendación Contextual Basado en Ontologías para Ambientes Organ...
Sistema de Recomendación Contextual Basado en Ontologías para Ambientes Organ...
Gabriel Gonzalez Serna
 
Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de...
Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de...Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de...
Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de...
Gabriel Gonzalez Serna
 
API para servicios de localización en interiores basada en tecnología Wi-Fi, ...
API para servicios de localización en interiores basada en tecnología Wi-Fi, ...API para servicios de localización en interiores basada en tecnología Wi-Fi, ...
API para servicios de localización en interiores basada en tecnología Wi-Fi, ...
Gabriel Gonzalez Serna
 
Servicios de Recomendación Contextual para Instituciones de Educación Superio...
Servicios de Recomendación Contextual para Instituciones de Educación Superio...Servicios de Recomendación Contextual para Instituciones de Educación Superio...
Servicios de Recomendación Contextual para Instituciones de Educación Superio...
Gabriel Gonzalez Serna
 

Mehr von Gabriel Gonzalez Serna (20)

Metodología para la Generación de Explicaciones para Sistemas de Recomendació...
Metodología para la Generación de Explicaciones para Sistemas de Recomendació...Metodología para la Generación de Explicaciones para Sistemas de Recomendació...
Metodología para la Generación de Explicaciones para Sistemas de Recomendació...
 
Clasificación Automática de Objetos de Conocimiento con Contenido no Estruct...
 Clasificación Automática de Objetos de Conocimiento con Contenido no Estruct... Clasificación Automática de Objetos de Conocimiento con Contenido no Estruct...
Clasificación Automática de Objetos de Conocimiento con Contenido no Estruct...
 
Metodología para Evaluación de SRSC Centrada en el Usuario, Basada en Caracte...
Metodología para Evaluación de SRSC Centrada en el Usuario, Basada en Caracte...Metodología para Evaluación de SRSC Centrada en el Usuario, Basada en Caracte...
Metodología para Evaluación de SRSC Centrada en el Usuario, Basada en Caracte...
 
Tutorial Near Field Communication (NFC)
Tutorial Near Field Communication (NFC)Tutorial Near Field Communication (NFC)
Tutorial Near Field Communication (NFC)
 
Context-Aware Recommender System
Context-Aware Recommender System�Context-Aware Recommender System�
Context-Aware Recommender System
 
Cómputo Consciente del Contexto: Cognición Aumentada mediante Interfaz Cerebr...
Cómputo Consciente del Contexto: Cognición Aumentada mediante Interfaz Cerebr...Cómputo Consciente del Contexto: Cognición Aumentada mediante Interfaz Cerebr...
Cómputo Consciente del Contexto: Cognición Aumentada mediante Interfaz Cerebr...
 
Tecnologías de Interacción Humano-Computadora para Sistemas de Información Co...
Tecnologías de Interacción Humano-Computadora para Sistemas de Información Co...Tecnologías de Interacción Humano-Computadora para Sistemas de Información Co...
Tecnologías de Interacción Humano-Computadora para Sistemas de Información Co...
 
API SMS para el Procesamiento de Consultas Georeferenciadas / No Georeferenci...
API SMS para el Procesamiento de Consultas Georeferenciadas / No Georeferenci...API SMS para el Procesamiento de Consultas Georeferenciadas / No Georeferenci...
API SMS para el Procesamiento de Consultas Georeferenciadas / No Georeferenci...
 
Gateway SMS Pull para Servicios Basados en Localización con una Arquitectura ...
Gateway SMS Pull para Servicios Basados en Localización con una Arquitectura ...Gateway SMS Pull para Servicios Basados en Localización con una Arquitectura ...
Gateway SMS Pull para Servicios Basados en Localización con una Arquitectura ...
 
Herramienta para la Generación de Estilos Definidos por el Usuario para su As...
Herramienta para la Generación de Estilos Definidos por el Usuario para su As...Herramienta para la Generación de Estilos Definidos por el Usuario para su As...
Herramienta para la Generación de Estilos Definidos por el Usuario para su As...
 
Servicios de localización conscientes del contexto aplicando perfiles de movi...
Servicios de localización conscientes del contexto aplicando perfiles de movi...Servicios de localización conscientes del contexto aplicando perfiles de movi...
Servicios de localización conscientes del contexto aplicando perfiles de movi...
 
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWLGenerador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
 
Personalización de contenidos Web del dominio de egobierno mediante ontologías
Personalización de contenidos Web del dominio de egobierno mediante ontologíasPersonalización de contenidos Web del dominio de egobierno mediante ontologías
Personalización de contenidos Web del dominio de egobierno mediante ontologías
 
Búsquedas contextuales de Servicios Basados en Localización en un entorno de ...
Búsquedas contextuales de Servicios Basados en Localización en un entorno de ...Búsquedas contextuales de Servicios Basados en Localización en un entorno de ...
Búsquedas contextuales de Servicios Basados en Localización en un entorno de ...
 
Sistema de Recomendación Contextual Basado en Ontologías para Ambientes Organ...
Sistema de Recomendación Contextual Basado en Ontologías para Ambientes Organ...Sistema de Recomendación Contextual Basado en Ontologías para Ambientes Organ...
Sistema de Recomendación Contextual Basado en Ontologías para Ambientes Organ...
 
Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de...
Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de...Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de...
Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de...
 
API para servicios de localización en interiores basada en tecnología Wi-Fi, ...
API para servicios de localización en interiores basada en tecnología Wi-Fi, ...API para servicios de localización en interiores basada en tecnología Wi-Fi, ...
API para servicios de localización en interiores basada en tecnología Wi-Fi, ...
 
Servicios de Recomendación Contextual para Instituciones de Educación Superio...
Servicios de Recomendación Contextual para Instituciones de Educación Superio...Servicios de Recomendación Contextual para Instituciones de Educación Superio...
Servicios de Recomendación Contextual para Instituciones de Educación Superio...
 
Generación y Explotación de Mapas Semánticos de Instalaciones Organizacionale...
Generación y Explotación de Mapas Semánticos de Instalaciones Organizacionale...Generación y Explotación de Mapas Semánticos de Instalaciones Organizacionale...
Generación y Explotación de Mapas Semánticos de Instalaciones Organizacionale...
 
Servicios de recomendación contextual para Instituciones de Educación Superio...
Servicios de recomendación contextual para Instituciones de Educación Superio...Servicios de recomendación contextual para Instituciones de Educación Superio...
Servicios de recomendación contextual para Instituciones de Educación Superio...
 

Kürzlich hochgeladen

Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
AnnimoUno1
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
FagnerLisboa3
 

Kürzlich hochgeladen (15)

PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmeril
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
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
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptx
 
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
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 

Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles

  • 1. cenidet Centro Nacional de Investigación y Desarrollo Tecnológico Departamento de Ciencias Computacionales TESIS DE MAESTRÍA EN CIENCIAS EN CIENCIAS DE LA COMPUTACIÓN Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles presentada por Omar Ríos González Ing. en Sistemas Computacionales por el I. T. de Minatitlán como requisito para la obtención del grado de: Maestría en Ciencias en Ciencias de la Computación Director de tesis: Dr. Juan Gabriel González Serna Co-Director de tesis: Dr. Hugo Estrada Esquivel Jurado: Dr. Javier Ortiz Hernández – Presidente Dra. Azucena Montes Rendón – Secretario Dr. José Antonio Zarate Marceleño – Vocal Dr. Juan Gabriel González Serna – Vocal Suplente Cuernavaca, Morelos, México. Febrero de 2010
  • 2.
  • 3. RESUMEN En el presente documento se describe una metodología para la generación automática de mapas croquis en formato SVG-Tiny en el proyecto “Generador de mapas tipos croquis en formato SVG-Tiny para dispositivos móviles aplicando perfiles”, se identifican las características técnicas del dispositivo celular que envía la solicitud para generar el mapa en función de las características del dispositivo. Este proyecto tiene como objetivo proporcionar servicios de búsquedas contextuales, para localizar puntos de interés o prestadores de servicios que se encuentren cerca de la ubicación del usuario que realiza la consulta. El resultado de estas consultas es un mapa de tipo croquis en formato vector escalable gráfico tiny (SVG-Tiny), el servicio utilizado para el envío de las solicitudes se realiza vía HTTP, el resultado de esta solicitud es enviado en un archivo SVG-Tiny que contiene el mapa croquis mostrando los resultados de la búsqueda contextual, por medio de conexiones HTTP, la parte innovadora de este trabajo es la adopción de métodos para identificar el perfil del dispositivo celular y en función de sus capacidades es generado un mapa a la medida. ABSTRACT This document describes a methodology for automatic generation of sketch maps in SVG- Tiny format in the "Generator type-sketch maps in SVG-Tiny format for mobile devices applying profiles", identifies the technical characteristics of the mobile device that sends the request to generate the map based on device characteristics. The objective of this project is to provide services of contextual searches to locate points of interest or service providers that are near the location of the user who make the consultation. The result of these consultations is a type sketch map in format tiny scalable vector graphics (SVG-Tiny), the service used for sending the request is performed via HTTP, the result of this request is sent to a file SVG-Tiny containing the sketch map showing the contextual search results through HTTP connections, the innovative part of this work is the adoption of methods to identify the profile of mobile device and based on their capacities is generated a map to the measure.
  • 4.
  • 5. i TABLA DE CONTENIDO CAPÍTULO I INTRODUCCIÓN _______________________________________ 1 1. Introducción__________________________________________________ 2 1.1 Descripción del problema _________________________________________3 1.2 Objetivo ________________________________________________________3 1.3 Justificación y beneficios__________________________________________4 1.4 Antecedentes____________________________________________________5 1.5 Alcances y limitaciones ___________________________________________7 1.5.1 Alcances _____________________________________________________________ 7 1.5.2 Limitaciones __________________________________________________________ 7 1.6 Estado del arte___________________________________________________8 1.6.1 Desarrollo de servicios de rutas de mapas para celulares basados en G-XML ______ 8 1.6.2 Mapas adaptivos para aplicaciones móviles _________________________________ 9 1.6.3 Mejorando las direcciones de ruta en dispositivos móviles _____________________ 11 1.6.4 Sistema de soporte para contenido multimedia dinámico personalizado en dispositivos móviles ___________________________________________________________________ 12 1.6.5 Visualización Adaptiva de información geográfica en dispositivos móviles_________ 13 1.6.6 gvSIG para dispositivos móviles _________________________________________ 14 1.6.7 Sistema de Información Geográfica basado en SVG _________________________ 15 1.6.8 Procesando datos interoperables por Aplicaciones Geoespaciales Móviles _______ 16 1.6.9 Tabla comparativa del estado del arte _____________________________________ 19 1.7 Organización del documento______________________________________20 CAPÍTULO II MARCO TEÓRICO ____________________________________ 21 2. Marco teórico ________________________________________________ 22 2.1 Mapa tipo croquis _______________________________________________22 2.2 LBS. Servicios basados en localización_____________________________22 2.2.1 Componentes de los LBS_______________________________________________ 23 2.2.2 Funcionamiento ______________________________________________________ 24 2.2.3 Clasificación _________________________________________________________ 24 2.3 Sistema de información geográfica_________________________________26 2.3.1 GIS Vectoriales_______________________________________________________ 27 2.3.2 GIS Raster __________________________________________________________ 28 2.4 Imágenes Gráficos Vectoriales Escalables (SVG) _____________________29 2.5 Mensajería SMS_________________________________________________30 2.6 Mensajería MMS ________________________________________________31
  • 6. ii CAPÍTULO III ANÁLISIS Y DISEÑO __________________________________ 33 3. Análisis y diseño _____________________________________________ 34 3.1 Análisis________________________________________________________34 3.1.1 Arquitectura del generador de mapas croquis _______________________________ 34 3.1.2 Base de datos espacial ________________________________________________ 35 3.1.3 Algoritmo de ruta _____________________________________________________ 39 3.1.4 Casos de uso de la aplicación móvil SketchMap4U __________________________ 42 3.1.4.1 Caso de uso general ______________________________________________ 42 3.1.4.2 Caso de uso: Configurar RMS _______________________________________ 43 3.1.4.3 Caso de uso: Construir petición HTTP_________________________________ 48 3.1.4.4 Caso de uso: Enviar petición HTTP ___________________________________ 49 3.1.5 Casos de uso de la aplicación web SketchMapServer ________________________ 50 3.1.5.1 Casos de uso general______________________________________________ 50 3.1.5.2 Caso de uso: recibir petición HTTP ___________________________________ 51 3.1.5.3 Caso de uso: Interpretar petición HTTP________________________________ 52 3.1.5.4 Caso de uso: Generar mapa SVG-Tiny ________________________________ 53 3.1.5.5 Caso de uso: Enviar mapa SVGTiny __________________________________ 61 3.2 Diseño ________________________________________________________62 3.2.1 Paquetes diseñados___________________________________________________ 63 3.2.1.1 Paquete mx.edu.cenidet.gateway.database ____________________________ 63 3.2.1.2 Paquete mx.edu.cenidet.gateway.maps _______________________________ 64 3.2.1.3 Paquete mx.edu.cenidet.gateway.maps.coordinates______________________ 67 3.2.1.4 Paquete mx.edu.cenidet.gateway.servlet_______________________________ 69 3.2.1.5 Paquete mx.edu.cenidet.gateway.mobiledevice _________________________ 70 3.2.1.6 Paquete mx.edu.cenidet.gateway.routing ______________________________ 71 3.2.1.7 Paquete mx.edu.cenidet.gateway.SVGTiny_____________________________ 72 3.3 Base de datos MobileDevice ______________________________________74 3.3.1 DeviceMine v3.0______________________________________________________ 74 3.3.2 DeviceAtlas__________________________________________________________ 74 3.3.3 WURFL (Wireless Universal Resource File) ________________________________ 75 CAPÍTULO IV IMPLEMENTACIÓN __________________________________ 77 4. Implementación ______________________________________________ 78 4.1 Recibir petición HTTP____________________________________________78 4.2 Interpretar la petición HTTP _______________________________________79 4.3 Conexión a las bases de datos ____________________________________79 4.3.1 Obtener el perfil del dispositivo móvil______________________________________ 81 4.3.2 Obtener puntos de interés ______________________________________________ 82 4.3.3 Obtener puntos de referencia____________________________________________ 83 4.4 Generar mapa SVGTiny __________________________________________84
  • 7. iii 4.5 Enviar mapa SVGTiny____________________________________________94 CAPÍTULO V PRUEBAS Y RESULTADOS ____________________________ 95 5. Pruebas y resultados__________________________________________ 96 5.1 Realización de las pruebas _______________________________________96 5.2 Evaluación de los resultados_____________________________________102 CAPÍTULO VI CONCLUSIONES____________________________________ 103 6.1 Conclusiones__________________________________________________104 6.2 Aportaciones __________________________________________________105 6.3 Problemas encontrados _________________________________________105 6.4 Trabajos futuros _______________________________________________106 6.5 Publicaciones _________________________________________________108 ANEXOS ______________________________________________________ 109 ANEXO A Análisis para representar puntos de interés ________________ 110 ANEXO B Estudio de plataformas móviles __________________________ 119 ANEXO C Plan de pruebas _______________________________________ 131 ANEXO D Scalable Vector Graphics (SVG)__________________________ 152 REFERENCIAS _________________________________________________ 163
  • 8. iv Listado de figuras Figura 1-1 Usuarios de dispositivos móviles por cada 100 habitantes _______________________ 4 Figura 1-2 Representación del servicio de rutas ________________________________________ 8 Figura 1-3 Procedimiento para generar la ruta del mapa _________________________________ 9 Figura 1-4 Segmento de ruta presentado vía Web _____________________________________ 11 Figura 1-5 Descripción de ruta_____________________________________________________ 11 Figura 1-6 Navegación de mapas en PDA (CityMap) ___________________________________ 12 Figura 1-7 Arquitectura de MM4U __________________________________________________ 13 Figura 1-8 Interfaz de usuario de gvSIG Mobile _______________________________________ 14 Figura 1-9 Sincronización de datos desde gvSIG desktop _______________________________ 15 Figura 1-10 Arquitectura de GIAS __________________________________________________ 16 Figura 1-11 Creación de archivo SVG _______________________________________________ 16 Figura 1-12 Arquitectura para integrar aplicaciones móviles especificando dispositivos al SDI ___ 17 Figura 1-13 Principales componentes del prototipo del cliente móvil _______________________ 18 Figura 1-14 Representación y visualización de datos ___________________________________ 18 Figura 2-1 Representación de un Mapa tipo croquis ____________________________________ 22 Figura 2-2 Áreas que conforman los LBS ____________________________________________ 22 Figura 2-3 Componentes básicos LBS ______________________________________________ 23 Figura 2-4 Funcionamiento LBS____________________________________________________ 24 Figura 2-5 Clasificación de los LBS _________________________________________________ 25 Figura 2-6 Operaciones de geometría _______________________________________________ 27 Figura 2-7 Representación de un mapa vectorial ______________________________________ 28 Figura 2-8 Representación de un mapa ráster ________________________________________ 28 Figura 2-9 Perfiles SVG __________________________________________________________ 30 Figura 2-10 Estructura de un mensaje SMS. __________________________________________ 30 Figura 2-11 Esquema de composición de páginas en un mensaje MMS.____________________ 31 Figura 3-1 Arquitectura del generador de mapas croquis en un contexto de cliente/servidor ____ 34 Figura 3-2 Tablas de metadatos de la especificación OpenGIS ___________________________ 36 Figura 3-3 Representación de un BBOX _____________________________________________ 37 Figura 3-4 Algoritmo de Dijkstra____________________________________________________ 40 Figura 3-5 Representación del área de interés ________________________________________ 40 Figura 3-6 Aristas y nodos del área de interés ________________________________________ 41 Figura 3-7 Grafo con los nodos inferidos _____________________________________________ 41 Figura 3-9 Diagrama de flujo del proceso de obtención de la ruta _________________________ 42 Figura 3-8 Ruta obtenida del algoritmo de Dijkstra _____________________________________ 42 Figura 3-10 Diagrama general de los casos de uso de la aplicación SketchMap4U____________ 43 Figura 3-11 Diagrama de caso de uso: CU1 Configurar RMS_____________________________ 43 Figura 3-12 Diagrama de actividad del caso de uso: CU1 Configurar RMS __________________ 44 Figura 3-13 Diagrama de actividad del caso de uso: CU1.1 Crear RMS ____________________ 45 Figura 3-14 Diagrama de actividad del caso de uso: CU1.2 Leer RMS _____________________ 46 Figura 3-15 Diagrama de actividad del caso de uso: CU1.3 Actualizar RMS _________________ 47 Figura 3-16 Diagrama de caso de uso: CU2 Construir petición HTTP ______________________ 48 Figura 3-17 Diagrama de actividad del caso de uso: CU2 Construir petición HTTP____________ 48 Figura 3-18 Diagrama de caso de uso: CU3 Enviar trama _______________________________ 49 Figura 3-19 Diagrama de actividad del caso de uso: CU3 Enviar trama_____________________ 49
  • 9. v Figura 3-20 Diagrama general de casos de uso de la aplicación SketchMapServer ___________ 50 Figura 3-21 Diagrama de caso de uso: CU4 Recibir petición HTTP ________________________ 51 Figura 3-22 Diagrama de actividad del caso de uso: CU4 Recibir petición HTTP _____________ 51 Figura 3-23 Diagrama de caso de uso: CU5 Interpretar petición HTTP _____________________ 52 Figura 3-24 Diagrama de actividad del caso de uso: CU5 Interpretar petición HTTP___________ 53 Figura 3-25 Diagrama de caso de uso: CU6 Generar mapa SVGTiny ______________________ 53 Figura 3-26 Diagrama de actividad del caso de uso: CU6.1 Obtener perfil del dispositivo_______ 54 Figura 3-27 Diagrama de caso de uso: CU6.2 Crear imagen SVGTiny _____________________ 55 Figura 3-28 Diagrama de actividad del caso de uso: CU6.2.1 Obtener mapa SVG ____________ 56 Figura 3-29 Diagrama de actividad del caso de uso: CU6.2.2 Convertir SVG a SVGTiny _______ 57 Figura 3-30 Diagrama de actividad del caso de uso: CU6.2.3 Generar ruta__________________ 58 Figura 3-31 Diagrama de actividad del caso de uso 6.2.4 Obtener puntos de referencia________ 59 Figura 3-32 Diagrama de actividad del caso de uso: CU6.2.5 Agregar datos al SVGTiny _______ 60 Figura 3-33 Diagrama de caso de uso: CU7 Enviar mapa SVGTiny________________________ 61 Figura 3-34 Diagrama de actividad del caso de uso: CU7 Enviar mapa SVGTiny _____________ 61 Figura 3-35 Diagrama general de paquetes del generador de mapas croquis SVGTiny ________ 62 Figura 3-36 Diagrama de clases del paquete mx.edu.cenidet.gateway.database _____________ 63 Figura 3-37 Diagrama de secuencia para una conexión a postgres ________________________ 64 Figura 3-38 Diagrama de clases del paquete mx.edu.cenidet.gateway.maps ________________ 65 Figura 3-39 Diagrama de secuencia para la obtención del mapa SVG______________________ 66 Figura 3-40 Diagrama de secuencia para la obtención de los datos del SVGTiny _____________ 67 Figura 3-41 Diagrama de clases del paquete mx.edu.cenidet.gateway.maps.coordinates_______ 68 Figura 3-42 Diagrama de secuencia para convertir coordenadas UTM y georeferenciales ______ 69 Figura 3-43 Diagrama de clases del paquete mx.edu.cenidet.gateway.servlets_______________ 69 Figura 3-44 Diagrama de secuencia para dar al servlet el mapa SVGTiny___________________ 70 Figura 3-45 Diagrama de clases del paquete mx.edu.cenidet.edu.gateway.mobiledevice _______ 70 Figura 3-46 Diagrama de secuencia para la obtención del dispositivo móvil _________________ 71 Figura 3-47 Diagrama de clases del paquete mx.edu.cenidet.gateway.routing _______________ 71 Figura 3-48 Diagrama de secuencia para generar la ruta mínima _________________________ 72 Figura 3-49 Diagrama de clases del paquete mx.edu.cenidet.gateway.SVGTiny______________ 73 Figura 3-50 Diagrama de actividad para crear el mapa SVGTiny __________________________ 73 Figura 3-51 Diagrama relacional de la base de datos MobileDevice________________________ 76 Figura 4-1 Recepción de la petición HTTP. ___________________________________________ 79 Figura 4-2 Interpretación de la petición HTTP _________________________________________ 79 Figura 4-3 Conexión a la base de datos Postgres______________________________________ 80 Figura 4-4 Conexión a la extensión PostGIS de la base de datos Postgres __________________ 80 Figura 4-5 Ejemplo de conexión a la base de datos ____________________________________ 81 Figura 4-6 Obtención del perfil del dispositivo móvil ____________________________________ 82 Figura 4-7 Obtención de los puntos de interés ________________________________________ 83 Figura 4-8 Obtención de los puntos de referencia______________________________________ 84 Figura 4-9 Obtención del mapa SVGTiny ____________________________________________ 86 Figura 4-10 Generación y obtención del área de interés (BBOX) __________________________ 87 Figura 4-11 Obtención del mapa SVG _______________________________________________ 88 Figura 4-12 Conversión SVG a SVGTiny_____________________________________________ 89 Figura 4-13 Obtención de la ruta ___________________________________________________ 90 Figura 4-14 Conversión de coordenadas georeferenciales a pixeles _______________________ 91
  • 10. vi Figura 4-15 Ejemplo para convertir coordenadas georeferenciales a pixeles_________________ 92 Figura 4-16 Métodos de elementos que se agregan al mapa SVGTiny _____________________ 93 Figura 4-17 Métodos para agregar datos al mapa SVGT ________________________________ 94 Figura 4-18 Enviar el mapa SVGT al dispositivo móvil __________________________________ 94 Figura 5-1 Parámetros de conexión para el MBDR PostgreSQL __________________________ 97 Figura 5-2 Parámetros de conexión de la extensión PostGIS SBLAGWMMS ________________ 97 Figura 5-3 Interpretación del mensaje recibido ________________________________________ 97 Figura 5-4 Perfil del dispositivo móvil________________________________________________ 98 Figura 5-5 Proceso de obtención del mapa imagen en consola ___________________________ 99 Figura 5-6 Mapa obtenido ________________________________________________________ 99 Figura 5-7 Representación de la ruta en nodos________________________________________ 99 Figura 5-8 Visualización de la ruta mediante Netbeans ________________________________ 100 Figura 5-9 Obtención de los POR(Point of Reference - puntos de referencia) _______________ 100 Figura 5-10Visualización del proceso de una petición del servicio de taxis. _________________ 101 Listado de tablas Tabla 1-1 Costos de mensajería de las telefónicas en México, 2009 ________________________ 5 Tabla 1-2 Comparativa de los trabajos del estado del arte _______________________________ 19 Tabla 2-1 Necesidades de los usuarios móviles _______________________________________ 25 Tabla 3-1 Descripción del caso de uso: CU1 Configurar RMS ____________________________ 44 Tabla 3-2 Descripción del caso de uso: CU1.1 Crear RMS_______________________________ 45 Tabla 3-3 Descripción del caso de uso: CU1.2 Leer RMS _______________________________ 46 Tabla 3-4 Descripción del caso de uso: CU1.3 Actualizar RMS ___________________________ 47 Tabla 3-5 Descripción del caso de uso: CU2 Construir petición HTTP ______________________ 48 Tabla 3-6 Descripción del caso de uso: CU3 Enviar trama _______________________________ 49 Tabla 3-7 Descripción del caso de uso: CU4 Recibir petición HTTP________________________ 51 Tabla 3-8 Descripción del caso de uso: CU5 Interpretar petición HTTP _____________________ 52 Tabla 3-9 Descripción del caso de uso: CU6.1 Obtener perfil del dispositivo móvil ____________ 53 Tabla 3-10 Descripción del caso de uso: CU6.2.1 Obtener mapa SVG _____________________ 55 Tabla 3-11 Descripción del caso de uso: CU 6.2.2 Convertir SVG a SVGTiny________________ 56 Tabla 3-12 Descripción del caso de uso: CU6.2.3 Generar ruta ___________________________ 57 Tabla 3-13 Descripción del caso de uso: CU6.2.4 Obtener puntos de referencia______________ 58 Tabla 3-14 Descripción del caso de uso: CU6.2.5 Agregar datos al SVGTiny ________________ 59 Tabla 3-15 Descripción del caso de uso: CU7 Enviar mapa SVGTiny ______________________ 61 Tabla 3-16 Descripción de los paquetes de la aplicación SketchMapServer. _________________ 62 Tabla 3-17 Comparación de los repositorios de dispositivos móviles _______________________ 75 Tabla 3-18 Descripción de las de la base de datos MobileDevice _________________________ 76 Tabla 5-1 Evaluación de resultados________________________________________________ 102
  • 11. GLOSARIO API Application Programming Interface. Interfaz de programación de aplicación. Es el conjunto de funciones y procedimientos que ofrece cierta librería para ser utilizado por otro software como una capa de abstracción. Representa una interfaz de comunicación entre componentes de software. BDE Base de Datos Espacial. Provee todos los servicios de los Sistemas manejadores de bases de datos relacionales y una administración efectiva y eficiente de datos espaciales BBOX Bounding BOX. Es un rectángulo orientado por líneas x-y, contiene un conjunto de datos geográficos especificado por dos coordenadas: xmin, ymin and xmax, ymax. Capa Unidad básica de información geográfica que puede solicitarse a un servidor como un mapa. Cartografía La cartografía es la creación, la producción y el estudio de mapas. Se considera una subdisciplina de la geografía. CDMA Code Division Multiple Access. El acceso múltiple por división de código o CDMA es un término genérico para varios métodos de multiplexación o control de acceso al medio basados en la tecnología de espectro extendido (spread spectrum). Generalmente se emplea en comunicaciones inalámbricas (por radiofrecuencia), aunque también puede usarse en sistemas de fibra óptica o de cable. DBMS Sistema Manejador de bases de datos. Gateway Hardware o software que realiza la conversión de protocolos entre diferentes tipos de redes. GIS Geographic Information System. Los sistemas de información geográfica son una integración organizada de hardware, software, datos geográficos y personal, diseñado para capturar, almacenar, manipular, analizar y desplegar en todas sus formas la información geográficamente referenciada con el fin de resolver problemas complejos de planificación y gestión. GPS Global Positioning System. Sistema de Posicionamiento Global. Sistema Global de Navegación por Satélite que permite determinar en todo el mundo la posición de un objeto. GPRS General Packet Radio Service. Es un servicio de datos móvil orientado a paquetes. Está disponible para los usuarios del Sistema Global para Comunicaciones Móviles (GSM). Permite velocidades de transferencia de 56 a 114 Kbps.
  • 12. GSM Global System for Mobile communications. Es un sistema estándar para comunicación utilizando teléfonos móviles que incorporan tecnología digital. HTTP HyperText Transfer Protocol. Es un protocolo orientado a transacciones Web y sigue el esquema petición-respuesta entre un cliente y un servidor. IEEE Institute of Electrical and Electronics Engineers. Instituto de Ingenieros Eléctricos y Electrónicos, una asociación técnico-profesional mundial dedicada a la estandarización, entre otras cosas. Es la mayor asociación internacional sin fines de lucro formada por profesionales de las nuevas tecnologías, como ingenieros de telecomunicaciones, ingenieros electrónicos, Ingenieros en informática e Ingenieros en computación. JCP Java Community Process. Es un proceso formalizado que permite a las partes interesadas involucrarse en la definición de futuras versiones y características de la plataforma Java. JSR Java Specification Request. Son documentos formales que describen las especificaciones y tecnologías propuestas para que sean añadidas a la plataforma Java. LBS Location Based Service. Ofrecen un servicio personalizado a los usuarios basado en su información de ubicación geográfica. Para su operación utiliza tecnología de sistemas de información geográfica, alguna tecnología de posicionamiento y tecnología de comunicación de redes para transmitir información hacia una aplicación LBS que pueda procesar y responder la solicitud. Mapa Representación de dos dimensiones de la distribución espacial de fenómenos o de objetos. Por ejemplo, un mapa puede demostrar la localización de ciudades, de gamas de la montaña, de los ríos, o de los tipos de roca en una región dada. La mayoría de los mapas son planos, haciendo su producción, almacenamiento y manipulación relativamente fácil. Los mapas presentan su información al espectador en una escala reducida. Son más pequeños que el área que representan y usan las relaciones matemáticas para mantener relaciones geográficas proporcionalmente exactas entre los puntos. Los mapas muestran la información usando los símbolos que se identifican en una leyenda. Mapa croquis Se define como una representación gráfica de la ubicación exacta de una dirección o lugar que se está localizando por medio de coordenadas o puntos de referencia, básicamente se utiliza para localizar una dirección en particular. Los puntos de interés que se muestran en el mapa sirven como referencia visual para orientar al usuario, presentándose la ruta con la información pertinente representada mediante símbolos y textos.
  • 13. MIDP Mobile Information Device Profiles. Perfil para dispositivos móviles de información. MMS Multimedia Messaging Service. Servicio de mensajería multimedia. Es un estándar de para los sistemas de mensajería de las telefonías celulares que permite el envío de mensajes que incluyen objetos de multimedia tales como: imágenes, audio, video y texto enriquecido. PostGIS Módulo que añade soporte de objetos geográficos a la base de datos objeto relacional PostgreSQL para su utilización en Sistema de Información Geográfica. Se publica bajo la GNU (General Public License). PostgreSQL Servidor de base de datos libre desarrollado en su primera versión con el nombre de Ingres, proyecto desarrollado en la universidad de Berkeley. Considerado como el referente a los sistemas manejadores de base de datos libres. Shapefile Formato de archivo de tipo vectorial con extensión .shp desarrollado por la empresa Esri para la representación de la información a través de geometrías y un sistema de referencia espacial. SRS Spatial Referencing System or Coordinate Reference System (CRS) es un sistema de coordenadas locales, regionales o globales usados para localizer entidades geográficas. SVG Es un lenguaje para describir gráficos bidimensionales en XML. Soporta tres tipos de objetos gráficos: figuras vectoriales (por ejemplo rutas formadas por líneas rectas y curvas), imágenes y texto. Estos objetos se pueden agrupar, estilizar, transformar y componer en nuevos objetos previamente representados. URL Uniform Resource Locator. Es una secuencia de caracteres, de acuerdo a un formato estándar, que se usa para nombrar recursos como documentos e imágenes en Internet para su localización. URI Uniform Resource Identifier. Es una cadena corta de caracteres que identifica inequívocamente un recurso (servicio, página, documento, dirección de correo electrónico, enciclopedia, etc.). Normalmente estos recursos son accesibles en una red o sistema. WAP Wireless Application Protocol. Es un estándar abierto internacional para aplicaciones que utilizan las comunicaciones inalámbricas, p.ej. acceso a servicios de Internet desde un teléfono móvil. Wi-Fi Es un sistema de envío de datos sobre redes computacionales que utiliza ondas de radio en lugar de cables.
  • 14. WMA Wireless Messaging API. Es un paquete opcional para J2ME que proporciona acceso independiente de la plataforma a recursos de comunicación inalámbrica como SMS. WMS Servicio de Mapas en Web (Web Map Service por sus siglas en inglés) es una especificación definida por la OGC caracterizada por ser un servicio que provee mapas a través de la Web. Estos mapas tienen como fuente de información datos vectoriales y ráster. XML eXtensible Markup Language. Lenguaje de marcado extensible. Es un meta-lenguaje que permite definir lenguajes de marcado adecuados a usos determinados. En la práctica corresponde a un estándar que permite a diferentes aplicaciones interactuar entre sí a través de una red.
  • 15. CAPÍTULO I INTRODUCCIÓN En este capítulo se presenta una visión general del tema de investigación, se describe la problemática que se abordó, el objetivo, la justificación, los beneficios, los alcances y las limitaciones del proyecto de tesis. Además se muestra la investigación del estado del arte realizado y la organización general del documento.
  • 16. Capítulo I Introducción Página 2 1. Introducción Actualmente las interacciones con las aplicaciones móviles son limitadas por las restricciones propias de los dispositivos, teniendo los desarrolladores el reto de diseñar sistemas de mapas para dispositivos móviles, tomando en consideración las restricciones conocidas para desarrollar aplicaciones de utilidad y de gran impacto en los usuarios. Las restricciones de los dispositivos incluyen las limitaciones del tamaño de pantalla que muestra el contenido de mapas descritos por un conjunto de datos, el bajo ancho de banda para la transmisión de datos que son utilizados para renderizar1 los mapas y el pobre poder computacional para procesar los datos, [Hampe, 2005]. Es por ello que las investigaciones con respecto a las cuestiones de diseño, interacción y elaboración de modelos de los servicios de mapas móviles se han incrementado, dominando los estilos de presentación en los dispositivos móviles, así como las diversas formas de adaptación y comunicación entre los mismos. La comunicación a través de dispositivos móviles ha mostrado un crecimiento interesante como resultado de la facilidad de manejo, la reducción del costo y la disponibilidad de servicios, abarcando un sector importante en la sociedad. Como resultado del crecimiento en el uso de dispositivos móviles han surgido nuevas tecnologías y servicios basados en la ubicación del usuario, es decir, servicios basados en localización (LBS pos sus siglas en inglés), [LBSWiki, 2009]. Cabe señalar que las aplicaciones implementadas son apoyadas por servicios web, así como la mayoría de las investigaciones realizadas a la fecha están enfocadas a los sistemas de navegación utilizando dispositivos GPS (Global Positioning System) [GPSWiki, 2009] para la transmisión de datos georeferenciales, desarrollando con ello aplicaciones LBS. Se propone una innovadora combinación de tecnologías de información dependiente de la ubicación del usuario, para ofrecer un nuevo tipo de servicios multimedia móvil de valor agregado. El estudio muestra que los nuevos servicios móviles se pueden desarrollar utilizando información sobre la localización. En la investigación de los servicios que prestan los principales proveedores de tecnología móvil, se puede observar que este trabajo de investigación abarcó todos los servicios con los que se cuenta actualmente en México. El resultado de las consultas realizadas por el usuario es un mapa de tipo croquis en formato vector escalable gráfico tiny [SVG, 2009], se utilizaron conexiones HTTP para brindar el servicio de envío y recepción, el resultado es un archivo en formato SVG-Tiny que contiene un mapa tipo croquis que muestra los resultados de la búsqueda contextual, la parte innovadora de este trabajo es la adopción de métodos para identificar el perfil del dispositivo celular y en función de sus capacidades se genera un mapa a la medida. 1 El concepto de renderizar en campo de los gráficos por computadora define el proceso de creación de imágenes sintéticas.
  • 17. Capítulo I Introducción Página 3 1.1 Descripción del problema Hoy en día las comunicaciones por medio de conexiones HTTP y los servicios de multimedia MMS son explotados en el envío de diversos tipos de información, tales como: imágenes estáticas ó dinámicas con texto plano, videos, entre otros. Asimismo los servicios basados en localización (LBS) están siendo explotados en el área de la telefonía celular, específicamente en consultas contextuales la respuesta que obtiene el usuario es enviado mediante mensajes SMS. En el área de Sistemas Distribuidos de CENIDET se desarrolló una API para la gestión de mapas de navegación en dispositivos móviles, mediante el sistema GPS y mensajería SMS/MMS, haciendo falta una aplicación en el lado del servidor que proporcione los mapas a dicha API. Para esta tesis se realizó una investigación que permitió identificar las limitantes que tienen los dispositivos móviles, tales como: tamaño de la pantalla, capacidad de procesamiento y almacenamiento. Aunado a esto, se identificó que el uso de imágenes comunes tales como: JPG, GIF, BMP tienden a distorsionarse cuando se realizan acercamientos y alejamientos (zoom-in y zoom-out) además de que el peso del archivo se considera otra limitante. En resumen, el problema que se plantea es resolver solicitudes de información de consultas contextuales mediante el uso de formatos de imágenes compatibles con la mayoría de las plataformas de dispositivos celulares de última generación, utilizando un modelo de mapas tipo croquis que identifiquen puntos de interés, que serán representados por una imagen en función del perfil del dispositivo, siendo la solución propuesta la siguiente: Desarrollar un generador de mapas tipo croquis en formato SVG-Tiny, que dé respuesta a las solicitudes que sean enviadas por el dispositivo móvil haciendo uso de la API2 , enviando el mapa mediante solicitudes basadas en conexiones HTTP, que se pueda visualizar en dispositivos móviles con diferentes características funcionales. Cabe destacar que al mapa tipo croquis elimina información no pertinente, con el fin de mostrar al usuario sólo la información necesaria para dar respuesta a la petición realizada. 1.2 Objetivo Generación de mapas tipo croquis en formato SVG-Tiny considerando información del perfil del dispositivo, aplicando técnicas de destilado para eliminar información geográfica no pertinente para el usuario, utilizando el esquema de mensajes de tipo solicitud/respuesta mediante mensajería de SMS así como conexiones basadas en HTTP/GRPS. 2 API para la Gestión de Mapas de Navegación en Dispositivos Móviles Mediante el Sistema GPS y Mensajería SMS/MMS. Desarrollado en el Laboratorio de Sistemas Distribuidos de Cenidet.
  • 18. Capítulo I Introducción Página 4 1.3 Justificación y beneficios Hoy en día México tiene un gran crecimiento en la telefonía celular, teniendo más énfasis en las promociones del servicio a bajo costo, el surgimiento de nuevos servicios para los usuarios en cuanto a promociones vía mensajes SMS y la venta de descargas de archivos multimedia. COFETEL [COFETEL, 2009] indica que 72 de cada 100 personas tiene al menos un dispositivo móvil, tal como se muestra en la Figura 1-1, en la cual se puede ver en una tabla a los usuarios existentes hasta el segundo trimestre del año 2009, y se puede observar el crecimiento de los usuarios comprendidos desde el año 1990 a la fecha. AÑO MILES DE USUARIOS 1990 63.9 1991 160.9 1992 312.6 1993 386.1 1994 571.8 1995 688.5 1996 1,021.9 1997 1,740.8 1998 3,349.5 1999 7,731.6 2000 14,077.9 2001 21,757.6 2002 25,928.3 2003 30,097.7 2004 38,451.1 2005 47,141.0 2006 55,395.5 2007 66,559.5 2008 p/ 75,303.5 ago-09 78,257.3 El uso del servicio de mensajería SMS y MMS ha ido en aumento por los diversos servicios que se brindan a través de ellos, los primeros brindan servicios de publicidad por parte de las empresas privadas, mientras que los Mensajes Multimedia están tomando un alto impacto en los usuarios en la compra-venta de tonos, videos, imágenes, entre otros, por otro lado los Servicios Basados en Localización (LBS) lo brindan empresas tales como Google, Multimap, Mapquest, iLocator de Nextel, entre otros, las cuales se tiene acceso por medio de conexiones vía WiFi y GPRS. Uno de los limitantes en México para brindar 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008p/ jun-09 0.1 0.2 0.4 0.4 0.6 0.8 1.1 1.8 3.5 8.0 14.2 21.6 25.4 29.1 36.3 45.1 52.6 62.6 70.3 72.3 Figura 1-1 Usuarios de dispositivos móviles por cada 100 habitantes
  • 19. Capítulo I Introducción Página 5 servicios de multimedia es el costo, en la Tabla 1-1 se presenta el análisis de costos mensajería SMS/MMS y GPRS en México. Tabla 1-1 Costos de mensajería de las telefónicas en México, 2009 Movistar Telcel Iusacell Nextel SMS $ 0.98 $ 0.85 $1.00 $0.86 MMS $2.00 $ 2.00 $5.00 $3.45 GPRS $0.14 x Kb $0.04 x Kb $0.12 x Kb Incluido en Renta mensual Como resultado de la limitada capacidad de los mensajes de SMS para transportar información, en la presente tesis se propone el desarrollo de un generador de mapas en formato SVG-Tiny, que permita proporcionar un servicio más eficiente al usuario, presentando el resultado de su consulta en formato gráfico, lo que permite enviar mayor cantidad de información de manera más amigable y comprensible por el usuario. Los resultados serán dados de acuerdo a la ubicación y los sitios de interés del usuario, para ello se debe de ingresar el perfil del usuario, la ubicación se adquiere del dispositivo móvil, siendo estos datos necesarios para realizar la consulta, asimismo se considera el perfil del dispositivo y el tipo de tecnología de transmisión de datos por el cual se realiza dicha comunicación. Los beneficios que se obtienen al término de este trabajo de tesis son los siguientes:  Generación de mapas tipo croquis en formato SVG-Tiny para dispositivos móviles en función de la ubicación del usuario.  Ofrecer a los usuarios de telefonía móvil Servicios Basados en Localización (LBS), haciendo uso de mensajería SMS y WiFi mediante conexiones HTTP/GPRS. 1.4 Antecedentes Se describen tres proyectos que se consideran antecedentes de este trabajo de tesis que fueron desarrollados en CENIDET durante el período 2005-2008, los cuales se describen a continuación: 1. API SMS para el procesamiento de consultas georeferenciadas y no georeferenciadas [Ruiz, 2007]. El proyecto consta de un conjunto de funciones para desarrollar e implementar aplicaciones en dispositivos móviles para procesar consultas dependientes/independientes de la ubicación de un usuario de dispositivos móviles, utilizando mensajería de SMS y el sistema de posicionamiento global. Cuando se trata de una consulta georeferenciada, la API es capaz de obtener la ubicación del cliente móvil a través de un dispositivo GPS. Para ello, la API cuenta con un paquete llamado Conexión, el cual realiza las tareas de detección y conexión con el dispositivo GPS así como la extracción de los datos. También cuenta con un paquete llamado Mensaje, que contiene las clases encargadas de la formación del mensaje de SMS, su envío y recepción.
  • 20. Capítulo I Introducción Página 6 La API se diseñó en el marco de los servicios basados en localización, los cuales responden a las preguntas ¿Qué hay cerca de..?, ¿Cómo llego a..?, ¿Qué pasa cerca de..? y ¿Qué clima hay en..? Con base en lo anterior, identifica cuatro tipos de objetos: 1. Punto de interés (georeferenciado o no georeferenciado). Para el primer caso, la localización del usuario se realiza a través de información que obtiene de un GPS Bluetooth3 ; para el segundo caso, la localización se realiza a través de información que el usuario proporciona (calle, número, colonia, código postal, ciudad). 2. Camino. Sucesión de puntos que unen dos o más lugares. 3. Evento (político, religioso, cultural, etc.). 4. Clima. 2. Gateway SMS Pull para Servicios Basados en Localización con una Arquitectura de Servicio Web [Quiñonez, 2007]. En este proyecto se desarrolló un gateway (pasarela) para el procesamiento de mensajes de SMS/MMS identificando si es una consulta dependiente o independiente de la ubicación del cliente móvil. Una vez identificado el tipo de consulta, se procesa de manera local o externa sobre una arquitectura que soporte las tecnologías de los servicios Web. Los tipos de búsqueda que soporta la arquitectura del gateway mencionado, se definen mediante un conjunto de palabras clave, cada una representa un servicio reconocido por el servidor de consultas, y en base a éstas retorna la información solicitada en el formato adecuado. A continuación se listan las palabras clave soportadas por el gateway:  Banco  CCamion  Cine  Farmacia  Hospital  Restaurante  SMercado  NPOI (retorna el punto de interés más cercano a la posición del dispositivo móvil, basado en una búsqueda por radio predefinido).  POI (regresa las palabras claves de los puntos de interés cercanos a la posición del dispositivo móvil en un radio de 20 a 30 metros).  WIA (retorna la calle y colonia donde se encuentra el dispositivo móvil).  RCORTA (regresa la ruta para llegar al servicio definido por la palabra clave enviada desde la posición actual del dispositivo). 3 Es una especificación para redes inalámbricas de área personal (WPANs) que hace posible transmitir voz y datos entre distintos dispositivos mediante un enlace por radiofrecuencia segura y globalmente libre.
  • 21. Capítulo I Introducción Página 7 3. API para la gestión de mapas de navegación de dispositivos móviles mediante el sistema GPS y la mensajería SMS/MMS [Victoria, 2008]. Se desarrolló una API bajo la plataforma J2ME para procesar consultas georeferenciadas/no georeferenciadas a través de mensajes SMS/MMS para representar puntos de interés sobre un mapa vectorial SVG en un dispositivo móvil, que permita al usuario orientarse de mejor manera al visualizar e interactuar con la información de referencia solicitada. Los servicios basados en localización (LBS) así como los mapas de navegación, son aplicaciones cada vez más comunes en los dispositivos móviles. Es posible coleccionar datos y atributos geoespaciales para resolver necesidades de ubicación y orientación de los usuarios. Se desarrolló una API para dispositivos móviles que permite visualizar e interactuar con información georeferencial representada como puntos de interés sobre un mapa vectorial SVG que se podrá obtener vía un mensaje MMS o una conexión HTTP/GPRS. Busca aprovechar la tecnología actual de los dispositivos móviles como Smartphones y PocketPCs para proporcionar servicios de localización a los usuarios en un momento determinado, ya sea de manera textual o gráfica. 1.5 Alcances y limitaciones 1.5.1 Alcances  La aplicación del servidor realiza los puntos siguientes: o Recibe e interpreta la trama de la petición o Realiza peticiones al servidor de mapas. o Para generar el camino se implementa un algoritmo de ruta, en la obtención de los puntos de referencia es necesario realizar consultas a la base de datos espacial. o La imagen SVG obtenido del servidor de mapas es convertida al formato SVG-Tiny, se añade el camino y los puntos de referencia.  Las peticiones y el envío del mapa en formato SVG-Tiny es enviado por medio de conexiones HTTP. 1.5.2 Limitaciones  Sólo se muestran los puntos de referencia que cumplan con la condición de búsqueda del camino generado.  El medio para enviar la respuesta es vía HTTP.  La aplicación cliente está limitado a los dispositivos móviles que soporten como mínimo la configuración Java CLDC 1.1 (JSR 179) y el perfil MIDP 2.0 (JSR 118).  Los dispositivos móviles deben soportar las siguientes APIs para J2ME: o Location API(JSR 179), o Wireless Messaing API 2.0 (JSR 205) y o Scalable 2D Vector Graphics API (JSR 226).
  • 22. Capítulo I Introducción Página 8 1.6 Estado del arte En el desarrollo de un proyecto es necesario tomar en cuenta el conocimiento disponible en la actualidad en torno al tema de investigación, con el fin de que el conocimiento que se produzca tenga carácter novedoso. En esta investigación se han tomado diversos trabajos de diferentes centros de investigación. Se ha realizado un estudio en cada uno de ellos, tomando en cuenta aquellos que están más relacionados con la temática a tratar, seleccionando los puntos fundamentales, así como la comparación de dichos puntos mostrando las ventajas que se obtienen como resultado en esta investigación. 1.6.1 Desarrollo de servicios de rutas de mapas para celulares basados en G-XML Este proyecto [ichiro, 2002] describe el desarrollo de servicios de rutas de mapas basados en G-XML para dispositivos móviles, permitiendo al usuario describir diversos datos espaciales en relación con las mismas condiciones, siendo tecnología clave para el servicio de mapas móviles. Figura 1-2 Representación del servicio de rutas G-XML tiene un impacto mayor para el intercambio de información espacial a través de Internet, porque es la especificación para codificar la información espacial con XML. En estas circunstancias hicieron uso de G-XML para desarrollar un servicio de rutas en mapas para la telefonía móvil como una variedad de la navegación. La característica
  • 23. Capítulo I Introducción Página 9 principal de este servicio es la presentación de un mapa de datos basados en G-XML, [JIPDC, 2006]. En la Figura 1-2 se muestran los 4 tipos de representaciones en el servicio, las cuales son: 1. Ruta. Describe una ruta de origen a destino, la información que se muestra es la adecuada para pantallas pequeñas del dispositivo móvil. 2. Lista de etiquetas. Representación mediante iconos para indicar instrucciones de guiado, por ejemplo: seguir a la derecha, izquierda o derecho, para reconocer en donde se encuentra o a donde se debe dirigir. 3. Mapa. Permite a los usuarios reconocer que dirección se debe tomar de manera visual. 4. Descripción general. Presenta el mapa con una ruta indicando el origen y hacia donde se desea ir. El procedimiento para generar la ruta de los mapas mostrado en la Figura 1-3 se desarrolla en tres etapas:  Primera etapa. Buscar la ruta óptima desde el principio hasta el fin. Al mismo tiempo se obtienen los nodos y los enlaces de la ruta.  Segunda etapa. Se especifican las posiciones de los nodos y los vínculos (NodeRelativePoint y m) de la ruta como un elemento S-GXML y se representa mediante una sentencia, lista de símbolos o un mapa. Figura 1-3 Procedimiento para generar la ruta del mapa 1.6.2 Mapas adaptivos para aplicaciones móviles En este proyecto Hampe se enfoca en las limitaciones de los dispositivos móviles tales como: pantallas pequeñas y capacidad limitada de memoria. Teniendo estas limitaciones se asegura una carga de información mínima, utilizando técnicas y experiencia de diseño de interfaces de usuarios útiles, [Hampe, 2005]. Las características y restricciones de los dispositivos móviles, tienen un gran impacto sobre el diseño de las interfaces de usuario. Para ello se diseñan presentaciones visuales sujetas a un número de restricciones, siendo las más relevantes los siguientes:  Resolución limitada. Restricción clave que debe ser dirigida mediante diseñadores de interfaces. Búsqueda de ruta Obtener nodo y enlazarlo con una ruta Obtener nodo relativo con una ruta Renderizando (Sentencia, lista puntos de interés, mapa simple) S-GXML Datos espaciales Datos de la ruta ID Nodo, ID Enlace
  • 24. Capítulo I Introducción Página 10  Tamaño de pantalla. Restricción para aplicaciones que son encaminados a diversos usuarios en donde se consideran los posibles problemas de visión.  Número de colores disponibles. Es relevante para el diseño de la presentación visual, porque limita el uso de color para información y la aplicabilidad de técnicas basadas en transparencias, que pueden ser utilizadas en diversas capas de información y  Poder de procesamiento. Restringe la interactividad de animaciones en tiempo real y la generación de gráficos complejos en pantalla. Adicionalmente las diferencias introducidas mediante un contexto móvil de uso está relacionado a lo siguiente:  Ambiente auditivo. Puede ser limitado si el dispositivo es usado en un ambiente público, ya que el ruido del ambiente puede enmascarar la salida del sonido o cuando el sonido de la aplicación es indeseable (museo, biblioteca, etc.),  Ambiente visual. Los dispositivos móviles pueden ser usados en varios contextos y rangos desde el oscuro total hasta la luz solar en aplicaciones al aire libre.  Nivel de atención. Las aplicaciones móviles se utilizan en cualquier lugar, por lo que el nivel de atención del usuario es mínima y podría ser limitado o la interacción del usuario podría ser interrumpida por atender eventos externos. Un mapa adaptivo implica acomodarse a las especificaciones necesarias y requerimientos del usuario y al dispositivo móvil. El sistema tiende a decidir acerca de la relevancia de información para cada usuario y cada uso. Para determinar las preferencias del usuario, se puede identificar la cantidad de información que se puede dar en la respuesta. Como no existen muchos usuarios expertos el sistema puede decidir automáticamente qué información es relevante para cierto usuario en cierta situación. Reichenbacher [Reichenbacher, 2004] identifica cuatro dominios de adaptación:  Dominio de información  Dominio de interfaz de usuario  Dominio de presentación  Dominio de tecnología Basado en ello se determinaron los posibles objetos de adaptación. Siendo los siguientes subconjuntos los se ajustan al proceso:  Visualización o Diseño del mapa o Sección del mapa o Escala del mapa o Generalización del mapa o Dimensión o Elementos gráficos  Geo información  o Cantidad o Clasificación o Nivel de detalle o Área geográfica  Interfaz de usuario
  • 25. Capítulo I Introducción Página 11 1.6.3 Mejorando las direcciones de ruta en dispositivos móviles Este proyecto se enfoca en el descubrimiento de rutas para dispositivos móviles y trata de describir cómo se llega al objetivo destino desde un estado inicial en el mundo real. Las rutas tienen un alto nivel de descripción y proporciona un método para llevar a cabo la instrucción de mayor prioridad. Se enfoca en las propiedades salientes del entorno y la vista de rutas en un alto nivel de abstracción, siendo aspectos claves en el proceso de guía en las rutas, dando como consecuencia el entendimiento de instrucciones complejas, [Sabine, 2004]. La ruta se segmenta y se resume de manera significativa para ser representada mediante un lenguaje de marcado. La estructura de la segmentación se desarrolló en un generador jerárquico y las heurísticas son usadas para la identificación de segmentaciones apropiadas. Figura 1-4 Segmento de ruta presentado vía Web Desarrollaron un lenguaje de marcado llamado RPML (Route Plan Markup Language) que les permite entregar combinaciones de diferentes modalidades (texto, gráfico, y eventualmente también voz). El mecanismo mencionado de segmentación produce estructuras RPML como estructura de salida, a su vez usan XLST para entregar una ruta completa vía Web (ver Figura 1-4), mientras que la Palm permite hacer exploración interactiva paso a paso de la descripción cuando los usuarios realizan la tarea de navegación como se muestra en la Figura 1-5. Figura 1-5 Descripción de ruta
  • 26. Capítulo I Introducción Página 12 En resumen, no proporciona suficiente información para que el conductor pueda encontrar la ruta correcta hacia el destino, excepto en el camino de regreso al punto de partida. 1.6.4 Sistema de soporte para contenido multimedia dinámico personalizado en dispositivos móviles Este proyecto tiene por objetivo representar mapas y rutas en tiempo real, para ello el operador toma una imagen de tamaño arbitrario de una ciudad como entrada que representa el mapa de la ciudad, una lista de puntos que consta de un ID y un factor x el cual representa una posición global en el espacio para re-calcular las posiciones de los puntos de interés en el mapa, [Scherp, 2004]. Para aprovechar al máximo la utilización de las pantallas de los dispositivos móviles, utilizan los medios de comunicación para la visualización en el dispositivo móvil y, por consiguiente, la cantidad de datos que se transfiere por medio de la red inalámbrica se reduce. Figura 1-6 Navegación de mapas en PDA (CityMap) Los medios de comunicación son pertinentes a las limitaciones técnicas del dispositivo móvil y de acuerdo al entorno del usuario, tal como ubicación, hora del día, el clima, o el ruido. En lo que respecta a la ubicación, el usuario recibe sólo la presentación multimedia de la vista. Además, si el entorno durante una visita de la ciudad es demasiado ruidoso, los medios de comunicación audibles no son seleccionados para la presentación, sólo los medios de comunicación visual. La aplicación CityMap mostrada en la Figura 1-6 pregunta por los objetos multimedia que coincidan con la preferencia de los intereses del usuario. Si el perfil de usuario cambia durante la visita de la ciudad, la ruta es personalizada eliminando o añadiendo lugares de interés turístico en el mapa. Se desarrollaron generadores de SMIL, SVG, y HTML en el contexto de presentaciones multimedia, considerando la limitación de los dispositivos móviles por medio de la determinación de los perfiles que son especialmente diseñados para uso en dispositivos móviles.
  • 27. Capítulo I Introducción Página 13 El perfil SVG-Tiny está destinado a multimedia para dispositivos móviles y el SVG-Basic tiene por objeto el perfil de las computadoras de bolsillo como PDAs y computadoras de mano. En la Figura 1-7 se muestra la arquitectura cliente-servidor de CityMap, la información sobre el perfil del usuario, los medios de comunicación y los metadatos se obtienen desde Internet utilizando la red inalámbrica y en bases de datos. Figura 1-7 Arquitectura de MM4U 1.6.5 Visualización Adaptiva de información geográfica en dispositivos móviles En este trabajo se establece un punto de vista del marco conceptual para cartografía móvil y la visualización de adaptación de información geográfica a dispositivos móviles. La investigación se extiende enriqueciendo la teoría cartográfica, así como los métodos en el ámbito de la información geográfica, comunicación en entornos móviles y los métodos de adaptación para la visualización cartográfica en los dispositivos móviles. Las soluciones cartográficas en un entorno móvil se centran en el uso de información geográfica en ambientes urbanos, siendo como principal objetivo comunicar en forma de aprendizaje (rutas, áreas forestales, etc.) o para explorar información geográfica mediante los dispositivos móviles. Se hace hincapié en el apoyo de las actividades cotidianas de los usuarios móviles, ofreciendo presentaciones de información no intrusiva tomando decisiones rápidas. La siguiente lista describe los objetivos generales:  Proporciona un marco de trabajo para la cartografía móvil y geovisualización adaptable.  Identifica los enlaces e interfaces para relacionar métodos de geovisualización. Los objetivos específicos incluyen:  Desarrollo de métodos de adaptación para geovisualización.  Demostrar el potencial del SVG para móviles y geovisualización adaptables.  Desarrollo de un prototipo que brinde servicios de geovisualización móvil. La adaptación se lleva a cabo en los componentes de las actividades relacionadas con los objetivos. Los usuarios demandan los servicios mediante solicitudes al servidor web consumiendo datos geoespaciales, dando como resultado un archivo en el lenguaje de marcado geográfico (GML), mismo que se transforma mediante el lenguaje de transformación de estilo extensible (XSLT) a un documento en formato vector gráfico PDA usando PoketSMIL WinCE HHC usando SVGBasic Player Celular móvil con SVGTiny Internet Aplicación multimedia personaliza da ServidorCliente móvil
  • 28. Capítulo I Introducción Página 14 escalable (SVG). Las adaptaciones del documento SVG pueden ser manipulados mediante el modelo objeto-documento (DOM). Aunque el progreso de la tecnología en el campo de la computación móvil es significante y la investigación está dirigida a los móviles con información geográfica, son varios los problemas aun sin resolver y muchos conocimientos que se van adquiriendo al desarrollar soluciones móviles para el contexto que se describe a continuación:  Geovisualización. La visualización en los dispositivos móviles está limitado por el tamaño y resolución de la pantalla, la falta de poder de procesamiento, la memoria, la duración de la batería y el ancho de banda de la red móvil.  Usabilidad. El uso de las soluciones móviles se obstaculiza por el uso de mapas escaneados o la producción ilegible de mapas con resoluciones que no soportan los dispositivos móviles.  Lectura ilegible. La limitación de las pantallas pequeñas implica que no hay lugar para elementos auxiliares tales como un mapa leyenda, lo que hace que la lectura de mapas sea un proceso difícil.  Movilidad. La movilidad del usuario tiene muchas consecuencias, el uso de la información geográfica se ve afectada por los cambios de ubicación del usuario, las diferentes actividades, asimismo se tienen diferentes distracciones en un entorno público siendo rápidos los cambios de contexto haciendo más difícil las condiciones de uso. 1.6.6 gvSIG para dispositivos móviles gvSIG Mobile es una herramienta para dispositivos móviles, siendo sus características principales las siguientes: soporte de los formatos de imágenes más utilizados para almacenar datos geográficos, el acceso a diversas bases de datos, los servicios de mapas, manipulación de datos vectoriales y ráster. Tiene la funcionalidad de un visor/editor de cartografía con un módulo de GPS para la auto-localización de puntos de interés mediante servicios remotos [Montesinos, 2008]. En la Figura 1-8 se muestra la interfaz de usuario del sistema en el que se incorpora el concepto de grupo de barras de herramientas y un sistema de ayuda contextual. Figura 1-8 Interfaz de usuario de gvSIG Mobile
  • 29. Capítulo I Introducción Página 15 Este proyecto es una extensión de gvSIG desktop que permite enviar datos a gvSIG Mobile, configurar los aspectos de visualización de capas, definir formularios personalizados y revisar las modificaciones realizadas por gvSIG Mobile, en la Figura 1-9 se muestra la sincronización de datos desde gvSIG desktop. Figura 1-9 Sincronización de datos desde gvSIG desktop 1.6.7 Sistema de Información Geográfica basado en SVG El Sistema de Análisis de Información Geográfica (GIAS), es un sistema autónomo que utiliza técnicas de gráfico renderizado para aplicaciones locales. Describe una estructura interna en la que se incluye la base de datos, los mecanismos de extracción de información, el tratamiento de datos y su mantenimiento. Se expande mediante el desarrollo de funciones para su uso en la Web a través de la utilización de los SVG. Demuestra que el SVG tiende a ser una herramienta de gran alcance, siendo un reto para la interfaz de programación de gráficos en la web, [Cabral, 2005]. GIAS fue desarrollado en la plataforma Borland Delphi 6, la arquitectura que proponen se muestra en la Figura 1-10, describiendo de manera general el sistema. La base de datos contiene información acerca de la ubicación real de toda la región en estudio, así como las imágenes geométricas presentable de la región. El uso del formato SVG permite representar tres tipos de objetos gráficos: formas de vectores (definidos por líneas rectas y curvas), imagen y texto. Los vectores de objetos tienen información sobre las curvas y líneas de una imagen, en lugar de información acerca de los pixeles que componen la misma. Se utiliza la técnica de la agrupación en capas, por lo que es posible tener en un dominio los elementos que tienen características similares.
  • 30. Capítulo I Introducción Página 16 Figura 1-10 Arquitectura de GIAS En la figura anterior el módulo de “Administración y registro de datos” es el responsable de aplicar los intercambios y la manipulación de datos a través de la Web. El componente “Servidor de mapas” es utilizado con el fin de extraer información de la base de datos y generar datos en SVG (véase Figura 1-11) utilizando la información extraída, teniendo como resultado un mapa en formato SVG. Figura 1-11 Creación de archivo SVG 1.6.8 Procesando datos interoperables por Aplicaciones Geoespaciales Móviles En este proyecto se propone una arquitectura de servicio para integrar clientes móviles a una infraestructura de datos espaciales (SDI4 por siglas en inglés). Esta arquitectura permite proveer mapas y objetos geoespaciales acorde a los requerimientos del dispositivo móvil, apoya las fases locales (offline) y suministra documentos de contexto que contienen información de los servicios relevantes, [Brinkhoffi, 2008]. Observan que existen diferencias en sus interfaces de usuario y en su rendimiento tomando en cuenta las diversas categorías de dispositivos móviles, las plataformas y los sistemas operativos, Por lo que no se asume que los servicios web geoespaciales 4 SDI: Spatial Data Infrastructure
  • 31. Capítulo I Introducción Página 17 puedan ser usadas como aplicaciones tradicionales. Es por ello que se adaptan los resultados de los servicios a las necesidades de los dispositivos móviles. Estos tratamientos se pueden hacer mediante: 1. Llamadas a los servicios SDI con un conjunto de parámetros para los requerimientos del cliente móvil y/o 2. Modificando los resultados de los servicios SDI para simplificar o procesar posteriormente mediante el móvil cliente. La Figura 1-12 representa la arquitectura que provee mapas y datos. Las flechas indican el flujo de datos. Para determinar los parámetros correctos para llamar a los servicios SDI y para procesar sus resultados, una base de datos para administrar el perfil de cada tipo de dispositivo. Figura 1-12 Arquitectura para integrar aplicaciones móviles especificando dispositivos al SDI El prototipo es desarrollado e implementado para la administración de desastres, dirigido a dispositivos móviles tales como PDA‟s o Tablet PCs. La aplicación móvil consiste de los siguientes módulos: el componente de visualización que consta de datos almacenados, sensores e interfaces de comunicación, la Figura 1-13 representa los principales componentes del prototipo.
  • 32. Capítulo I Introducción Página 18 Figura 1-13 Principales componentes del prototipo del cliente móvil La estructura de datos del componente de visualización está basada en un documento SVG, en la Figura 1-14 se representan las capas que son mapeadas, en donde cada capa corresponde a un elemento imagen del documento SVG. El administrador de capas es el responsable de visualizar las texturas de las capas visibles en respuesta de eventos de los dispositivos de entrada como puede ser un dispositivo señalador, un ratón o un lápiz óptico. Figura 1-14 Representación y visualización de datos
  • 33. Capítulo I Introducción 1.6.9 Tabla comparativa del estado del arte A continuación se muestra la Tabla 1-2, en donde se compara los trabajos relacionados con el proyecto de investigación. Se puede observar que todos los trabajos están enfocados a lo siguiente: al desarrollo de sistemas LBS, generar las rutas de los mapas, el medio de transmisión de datos mediante GPRS y HTTP. Una ventaja del proyecto es el envío de mensajería SMS obteniendo la respuesta por medio de conexión HTTP, teniendo como resultado un archivo en formato SVG-Tiny, que tiene la característica de mostrar mapas estáticos, en 3D, audio y video5 , otro punto a destacar es J2ME como lenguaje de desarrollo, esto nos permitió desarrollar el proyecto sin depender de algún software propietario, dando un enfoque heterogéneo al resultado que sean enviados a la mayoría de los dispositivos móviles. Tabla 1-2 Comparativa de los trabajos del estado del arte PROYECTO ORIENTADO A LBS LENGUAJE DE DESARROLLO GENERA RUTA SOPORTE DE MENSAJERIA MEDIO DE TRANSPORTE FORMATOS SMS MMS [ichiro,2002]  S-GXML   HTTP SVG-Tiny [Hampe, 2005]  No especifica  HTTP SVG-Tiny [Sabine, 2004]  Windows Mobile / RPML, XSLT   GPRS | HTTP XSLT [Scherp, 2004]  Windows Mobile / WFS, WMS, WMC   HTTP SMIL, SVG-Tiny [Reichembacher, 2004]  J2ME / GML  GPRS | UMTS, HTTP SVGB [Montesinos, 2008]  J2ME/ WMS, WFS  HTTP-WMS ECW, JPEG, PNG, GIF /SHP [Cabral, 2005]  DELPHI 6 / XML  HTTP SVG [Brinkhoffi, 2008]  VC++ NET  GPRS | HTTP- WMS SVG Proyecto de tesis  J2ME    GPRS | HTTP - WMS SVG-Tiny 5 http://www.w3c.es/Prensa/2006/nota060810_SVGTiny
  • 34. Capítulo I Introducción Página 20 1.7 Organización del documento El documento de tesis se organizó en 6 capítulos cada uno de los cuales presenta la siguiente información: Capítulo II Marco Teórico. Describe los conceptos principales del tema de investigación que facilitarán la comprensión del presente trabajo. Capítulo III Análisis y Diseño. En este capítulo se presenta el análisis y diseño realizado para desarrollar el sistema. Para ello se describe la arquitectura, los diagramas de casos de uso, diagramas de actividad, diagramas de secuencia y los diagramas de clases. Capítulo IV Implementación. En este capítulo se describen las clases implementadas que muestran la funcionalidad del sistema. Capítulo V. Presenta las pruebas y los resultados obtenidos que permitieron verificar el funcionamiento de la aplicación web SketchMapServer de acuerdo a un plan de pruebas elaborado conforme al estándar IEEE 829-1998. Capítulo VI. Presenta las conclusiones, aportaciones y trabajos futuros de la investigación realizada en esta tesis, de acuerdo a los resultados obtenidos y experiencia adquirida. Anexos. Contiene el Análisis para representar puntos de interés, el estudio de plataformas móviles (Sistemas operativos y Lenguajes de programación), el Plan de Pruebas elaborado y un estudio del formato SVG.
  • 35. CAPÍTULO II MARCO TEÓRICO En este capítulo se presentan los conceptos relevantes en el desarrollo del proyecto, lo que se está desarrollando en la misma área de investigación.
  • 36. Capítulo II Marco teórico Página 22 2. Marco teórico 2.1 Mapa tipo croquis Mapa tipo croquis se define como una representación gráfica de la ubicación exacta de una dirección o lugar que se está localizando por medio de coordenadas o puntos de referencia, básicamente se utiliza para localizar una dirección en particular. Los puntos de interés que se muestran en el mapa sirven como referencia visual para orientar al usuario, presentándose la ruta con la información pertinente representada mediante símbolos y textos. Figura 2-1 Representación de un Mapa tipo croquis En la Figura 2-1 se representa un mapa tipo croquis en donde el punto inicial “A” parte de la calle Adolfo López Mateos doblando por la Úrsulo Galván para finalmente llegar a la calle Gustavo Díaz Ordaz donde se localiza el punto destino “B”, también se observa que en el trazado de la ruta se presentan puntos de referencia para orientar a las personas. 2.2 LBS. Servicios basados en localización Las NICTs (New Information and Communication Technologies, Tecnologías Nuevas de Información y Telecomunicación), describe a los LBS como una intersección entre: sistemas y dispositivos móviles, Internet y GIS (Geographic Information Systems, Sistemas de información geográfica) con base de datos espaciales, [Steiniger, 2006]. Figura 2-2 Áreas que conforman los LBS A B
  • 37. Capítulo II Marco teórico Página 23 En la Figura 2-2 se observa que existen algunas características en común entre los LBS y los GIS, tales como el manejo de datos con referencia posicional y funciones de análisis espacial, las cuales responden preguntas como: ¿Dónde estoy…? ¿Qué está cerca de…? ¿Cómo puedo llegar a…? Sin embargo los LBS y los GIS tienen diferentes orígenes y grupos de usuarios. Los GIS han sido desarrollados durante varias décadas en base a aplicaciones de datos geográficos profesionales, mientras que los LBS surgieron recientemente por la evolución de servicios móviles públicos. En lo que se refiere a grupos de usuarios, los GIS pueden ser vistos como un sistema profesional y tradicional, destinado a usuarios con amplia experiencia en sistemas geográficos, además de que consumen extensos recursos de cómputo. En contraste los LBS se desarrollaron como servicios limitados para un gran número de usuarios no profesionales. La aplicaciones LBS operan con las restricciones del ambiente de cómputo móvil como baja potencia computacional, pantallas pequeñas, o limitaciones debidas al alto consumo de batería. 2.2.1 Componentes de los LBS Los elementos necesarios para el funcionamiento de los LBS se muestran en la Figura 2-3, [Magon, 2006]. Figura 2-3 Componentes básicos LBS Posicionamiento o localización. Se refiere a la forma de determinar la posición del dispositivo móvil. Existen distintas tecnologías de posicionamiento entre las que destacan las basadas en red y las basadas en dispositivos, Datos geográficos. Se refiere al GIS que funciona como una base de datos con información geográfica (datos alfanuméricos) que se encuentra asociada por un identificador común a los objetos gráficos de un mapa digital. De esta forma, señalando un objeto se conocen sus atributos e, inversamente, preguntando por un registro de la base de datos se puede saber su localización en la cartografía.
  • 38. Capítulo II Marco teórico Página 24 Red de comunicaciones. Se refiere al medio de transporte de datos. La información de ubicación puede enviarse por medio de SMS o de datos utilizando GPRS. Centro de control. Es el administrador de los datos, recibe la información de ubicación, accede al GIS para poder satisfacer los requerimientos del usuario y envía la respuesta. 2.2.2 Funcionamiento A continuación se describe del funcionamiento de los sistemas basados en localización: 1. Se obtiene la posición del dispositivo móvil y se envía la solicitud, la cual contiene el objetivo de la búsqueda y la ubicación del usuario, ésta se envía a través de la red de comunicaciones a un determinado servidor de consultas contextuales. 2. El servidor tiene la tarea de intercambiar mensajes entre la red de comunicación e Internet. Encamina la solicitud a un servidor específico. El servidor guarda información acerca del dispositivo que ha solicitado la información. 3. El servidor de aplicaciones lee la solicitud y activa el servicio apropiado. 4. El servicio analiza nuevamente el mensaje y decide que información adicional necesita, además del criterio de búsqueda y posición de usuario. 5. El servicio encontrará la información necesaria que satisfaga la solicitud. 6. Teniendo toda la información necesaria, el servicio hará una consulta de ruteo, para obtener la respuesta a la solicitud. Una vez obtenida la respuesta esta se envía al usuario. Los resultados se pueden presentar al usuario ya sea como una lista de texto, o un dibujo en un mapa. Figura 2-4 Funcionamiento LBS 2.2.3 Clasificación Los LBS se pueden clasificar según las necesidades que satisfacen. En la Tabla 2-1 se resumen las necesidades que satisfacen los LBS, [Steiniger, 2006]. Posicionamiento GPS Red de comunicaciones Internet Servidor Envío de SMS BD Dispositivos móviles
  • 39. Capítulo II Marco teórico Página 25 Tabla 2-1 Necesidades de los usuarios móviles Acción Preguntas Operaciones Orientación y localización. ¿Dónde estoy? ¿Dónde está…? Posicionamiento, geocodificación. Navegación a través de espacio, trazado de ruta. ¿Cómo puedo llegara? Posicionamiento, geocodificación, ruteo. Búsqueda de personas y objetos. ¿Qué hay cerca o de interesante…? Posicionamiento, geocodificación, cálculo de distancia y área, búsqueda de relaciones. Identificación y reconocimiento de personas u objetos. ¿Qué es? Directorio, selección, búsqueda temática o espacial. Verificación de eventos, determinación del estado de objetos. ¿Qué ocurre aquí, allá, etc.? Posicionamiento, cálculo de área, geocodificación, búsqueda de relaciones. En la Figura 2-5 se muestra la clasificación de los LBS según las necesidades que satisfacen. Figura 2-5 Clasificación de los LBS
  • 40. Capítulo II Marco teórico Página 26 2.3 Sistema de información geográfica Los sistemas de información geográfica por sus siglas en inglés Geographic Information System(GIS), son una tecnología para el manejo de información geográfica. Son un conjunto de herramientas que permiten manejar eficientemente datos espaciales junto con sus características alfanuméricas asociadas. Otra definición es la siguiente: un software GIS se asemeja a un programa de base de datos, ya que analiza y relaciona información almacenada bajo la forma de registros, con una diferencia crucial: cada registro en una base de datos GIS contiene información que permite dibujar formas (normalmente un punto, una línea, o un polígono) también denominada información espacial [Quiñonez, 2007]. El objetivo primordial de un GIS es abstraer la complejidad del mundo real a una representación simplificada entendible para el lenguaje de las computadoras actuales. Este proceso tiene diversos niveles y comienza con la concepción de la estructura de una base de datos organizada generalmente en capas. En los GIS existen relaciones espaciales entre los objetos geográficos que el sistema no puede obviar; es lo que se denomina topología y se utiliza en la definición de las relaciones espaciales entre los objetos geográficos. Los sistemas de información geográfica se clasifican en dos categorías vectoriales y ráster que cuentan con características diferentes para su procesamiento y utilización. Los GIS representan toda una realidad en diversas capas, distinguidas principalmente en tres tipos: i. Puntos. Representan entidades únicas como: individuos, árboles, carros, ciudades y/o cualquier entidad que pueda representarse mediante un punto. ii. Líneas. Representan entidades como carreteras, calles, ríos etc. iii. Polígonos. Representan cualquier superficie que tenga un perímetro, por ejemplo: estados, municipios, países, colonias, cuadras etc. Las consultas espaciales se pueden realizar mediante operaciones geométricas definidas en [SFS, 2009], se obtiene información sobre objetos se encuentran cerca, la distancia entre ellos, que objetos se encuentran dentro de una geometría y la relación entre geometrías de distinta topología, en la Figura 2-6 se muestran las operaciones de geometrías sobre las entidades GIS. En las definiciones siguientes el término P se utiliza para referirse a dimensiones geométricas 0 (Points y MultiPoints), L se utiliza para referirse a una dimensión geometrías (LineStrings y MultiLineStrings) y A se utiliza para referirse a las geometrías en dos dimensiones (Polígonos y MultiPolygons).
  • 41. Capítulo II Marco teórico Página 27 Figura 2-6 Operaciones de geometría Operación toque. Son relaciones entre dos geometrías a y b se aplica a los A/A, L/L, L/A, P/A y P/L de los grupos de relaciones, pero no a la relación P/P grupo. Operación cruce. La relación se aplica a los cruces de P/L, P/A, L/L y situaciones L/A. Operación en. La relación se aplica a las intersecciones de dos geometrías a y b resultando b contenido en a. Operación traslape. Se define entre dos geometrías para situaciones en las que se tengan A/A, L/L y P/P. 2.3.1 GIS Vectoriales Son GIS que utilizan vectores definidos por pares de coordenadas relativas a algún sistema cartográfico para la descripción de los objetos geográficos. Con un par de coordenadas y su altitud gestionan un punto, con dos puntos generan una línea y con una agrupación de líneas forman polígonos. En la Figura 2-7 se muestra cómo se estructura la información geográfica dentro de tablas en algún manejador de base de datos que permita el tratamiento de esta información [Ortiz, 2001].
  • 42. Capítulo II Marco teórico Página 28 Figura 2-7 Representación de un mapa vectorial En el modelo de datos vectorial los objetos se describen como puntos, líneas o áreas (polígonos). Estos elementos existen como elementos geométricos no como objetos físicos. Este modelo es adecuado cuando trabajamos con objetos geográficos con límites bien establecidos, como pueden ser fincas, carreteras, puntos de interés etc. 2.3.2 GIS Raster Los Sistemas de Información Raster basan su funcionalidad en una relación de vecindad entre los objetos geográficos. Su funcionamiento se basa en dividir la zona en una retícula o malla de pequeñas celdas (pixel) y atribuir un valor numérico a cada celda como representación de su valor temático. Debido a que la malla es regular (el tamaño del pixel es constante) y se conoce la posición en coordenadas del centro de cada una de las celdas, se puede decir que todos los pixeles están georeferenciados [Ortiz, 2001]. Figura 2-8 Representación de un mapa ráster El inconveniente de estos sistemas es que a mayor número de filas y columnas en la malla (más resolución), existe mayor esfuerzo en el proceso de captura de la información Código de las celdas: 1 = Bosque 2 = Carretera 3 = Casa
  • 43. Capítulo II Marco teórico Página 29 y mayor costo computacional a la hora de procesar la misma. La Figura 2-8 muestra la representación de éste tipo de GIS. Los datos de un mapa ráster se visualizan como una rejilla sobrepuesta sobre un terreno. Cada celda almacena un código que describe el terreno de una celda en particular. El modelo de datos ráster es útil en la descripción de objetos geográficos con límites difusos, por ejemplo: la dispersión de una nube de contaminantes, o los niveles de contaminación de un acuífero subterráneo, donde los contornos no son absolutamente nítidos; en esos casos, el modelo ráster es más apropiado que el vectorial. 2.4 Imágenes Gráficos Vectoriales Escalables (SVG) Como se explica en [SVG, 2009], SVG es un lenguaje para describir gráficos bidimensionales en XML. Soporta tres tipos de objetos gráficos: figuras vectoriales (por ejemplo rutas formadas por líneas rectas y curvas), imágenes y texto. Estos objetos se pueden agrupar, estilizar, transformar y componer en nuevos objetos previamente representados. SVG se utiliza en diversas áreas incluyendo gráficos Web, animaciones, interfaces de usuario, aplicaciones móviles, entre otros. Sus principales características son las siguientes [Devmobi, 2007]:  Forma compacta de representar gráficos vectoriales.  Son gráficos escalables, es decir, es posible aumentar o modificar su tamaño arbitrariamente sin pérdida de calidad.  Es un estándar abierto, es una recomendación de W3C (Wide Web Consortium).  Está basado en XML (Extensible Markup Language).  SVG se integra con otros estándares como DOM6 (Document Objetc Model) y XSL (Extensible Stylesheet Language). SVG surgió para cubrir las necesidades de diversos casos de uso para gráficos bidimensionales orientados a computadoras de escritorio; sin embargo, la industria móvil se unió al grupo de trabajo de W3C para especificar un perfil dirigido a dispositivos móviles. Estas demandas originaron inicialmente dos perfiles SVG: SVG Full y SVG Mobile. La especificación SVG Mobile está dirigida a dispositivos de recursos limitados y es parte de la plataforma 3GPP para la tercera generación de teléfonos móviles. Un único perfil móvil no es suficiente para una gran variedad de dispositivos debido a las distintas características en términos de velocidad de CPU, memoria y soporte de colores. Por esta razón, se definieron dos perfiles dirigidos al amplio rango de familias de dispositivos:  SVG Basic. Es un subconjunto estricto de SVG Full, es decir, los gráficos que se realizan en SVG Basic son compatibles con SVG Full, está dirigido a PDAs y dispositivos móviles de última generación con capacidades avanzadas. 6 Es un modelo computacional a través del cual los programas y scripts pueden acceder y modificar dinámicamente y en tiempo real el contenido, estructura y estilo de los documentos HTML y XML.
  • 44. Capítulo II Marco teórico Página 30  SVG Tiny. Es un subconjunto estricto de SVG Basic, es decir, los gráficos que se realizan en SVG Tiny son compatibles con SVG Basic y Full, está dirigido a dispositivos móviles de capacidades limitadas. Figura 2-9 Perfiles SVG Los perfiles SVG se pueden mostrar como una pirámide que represente las capacidades computacionales de los dispositivos para los cuales está dirigido un perfil en específico así como las características SVG que soporta (ver Figura 2-9). En la parte alta y media de la pirámide se encuentra el conjunto de características de los teléfonos móviles y PDAs y en la base, el conjunto de características correspondientes a una computadora de escritorio. La principal diferencia entre SVG Tiny y SVG Basic es que SVG Tiny no proporciona soporte para scripts y definición de estilos. Esto para evitar desbordamiento de memoria al mantener el modelo de objeto del documento (DOM) en anexo D se describe de forma extensa el formato SVG en específico el perfil Mobile. 2.5 Mensajería SMS De acuerdo con la definición de [Roldán, 2005], el servicio de mensajes cortos SMS (Short Message Service) permite enviar mensajes compuestos por un máximo de 140 bytes (el número de caracteres depende de la codificación que se utilice). Un mensaje SMS se compone por una cabecera en la que se indican datos relativos al protocolo de transmisión del mensaje (dirección de origen, tipo de codificación, etc.) y el cuerpo del mensaje que contiene el texto que se transmite (ver Figura 2-10). 1120 bits Codificación de 7 bits: 160 caracteres (mensaje de texto latino). Codificación de 6 bits: 140 bytes (mensaje de datos). Codificación Unicode: 70 caracteres (mensaje de texto griego o árabe). Perfil MOBILE Perfil FULL DATOSCABECERA Figura 2-10 Estructura de un mensaje SMS.
  • 45. Capítulo II Marco teórico Página 31 El servicio SMS emplea los canales de señalización y control de la red GSM. La comunicación a través de un mensaje SMS es una comunicación en tiempo diferido, es decir, que no existe ninguna conexión directa entre los dos extremos. De hecho, la red almacena el mensaje antes de enviarlo durante un corto espacio de tiempo (generalmente entre 0,5 y 2 s). Las aplicaciones más comunes de los SMS son las destinadas al público en general. Es posible clasificarlas en cuatro grandes grupos:  Información. Envío de información al usuario sobre algún tema en concreto como: horóscopo, eventos deportivos, noticias, clima, entre otros (requiere suscripción).  Personalización. Descarga de logos, melodías, fondos de pantalla, imágenes, fotos, etc.  Chat. Consiste en el intercambio de mensajes SMS.  Entretenimiento. El usuario que envía un SMS participa en un juego, concurso, sorteo, etc. 2.6 Mensajería MMS MMS (Multimedia Messaging System) es una evolución de SMS para enviar mensajes multimedia. MMS ofrece mayor flexibilidad en el contenido del mensaje ya que, además de mensajes de texto, soporta otro tipo de formatos (sonidos, animaciones, imágenes, etc.) e integra otros servicios de mensajería como el correo electrónico o los mensajes de voz. El usuario puede escribir el mensaje MMS desde su teléfono móvil, su computadora, su PDA o cualquier otro dispositivo con un cliente MMS instalado [Roldán, 2005]. El servicio MMS permite adjuntar archivos y como valor añadido y diferenciador permite utilizar presentaciones animadas. Esto es posible mediante la inclusión de un elemento de presentación llamado SMIL (Synchronized Multimedia Integration Language). El mensaje se puede componer por varias páginas consecutivas, denominadas slides, cada una con un tiempo de presentación que se determina al formar el mensaje (ver Figura 2-11). Cada slide contiene uno o varios de los siguientes campos: texto, imágenes (simples o animadas), sonido e incluso vídeo. Figura 2-11 Esquema de composición de páginas en un mensaje MMS.
  • 46. Capítulo II Marco teórico Página 32 MMS es un estándar abierto, especificado por el Foro WAP (Wireless Application Protocol) y 3GPP (Third Generation Partnership Project). La especificación de 3GPP define la arquitectura de la red y funciones generales. La especificación del Foro WAP define la encapsulación de los mensajes y los protocolos de aplicación. Sin embargo, el estándar no especifica un tamaño máximo para un MMS. Esto es para asegurar la interoperabilidad futura y evitar limitaciones similares a las de los mensajes SMS. El tamaño del mensaje depende del operador, quien probablemente establezca un tamaño estandarizado para propósitos particulares de 100 ó 300 Kb [NokiaMMS, 2007].
  • 47. CAPÍTULO III ANÁLISIS Y DISEÑO En este capítulo se presenta el análisis y diseño realizado para este proyecto de tesis. Para ello se describe la arquitectura, los diagramas de casos de uso, diagramas de actividad, diagramas de secuencia y los diagramas de clases.
  • 48. Capítulo III Análisis y diseño Página 34 3. Análisis y diseño 3.1 Análisis Se describe la arquitectura del generador de mapas croquis desarrollado. Se presentan los diagramas de caso de uso, la definición de escenarios y los diagramas de actividad que corresponden a la fase de análisis del proyecto. 3.1.1 Arquitectura del generador de mapas croquis El generador de mapas croquis en formato SVG para dispositivos móviles permite satisfacer las peticiones de información del cliente considerando el perfil del dispositivo, es decir, se generarán los mapas de acuerdo a las características propias del dispositivo. En la Figura 3-1 se muestra la arquitectura donde se presentan los módulos implementados para el desarrollo del proyecto. Los componentes y tecnologías sobre las cuales se desarrolló esta plataforma son las siguientes:  Negocio2sms. Está relacionado con el proveedor del servicio que registra sus productos o servicios mediante una interfaz Web.  GW-SMS. Realiza la interacción con el cliente que demanda los servicios.  Geoserver. Servidor de mapas que provee los mapas cartográficos en diferentes formatos, los cuales se explotarán a través de servicios Web.  SketchMapServer. Realiza la generación del mapa SVG-Tiny realizado por capas que contienen información de los puntos de interés, ruta y los puntos de referencia.  Base de datos espacial. Proporciona toda la información al módulo que interactúa con el cliente y sirve para almacenar y registrar nuevos proveedores de servicios desde el módulo Negocio2sms. Figura 3-1 Arquitectura del generador de mapas croquis en un contexto de cliente/servidor El proceso para obtener un mapa tipo croquis en formato SVG-Tiny se describe a continuación en los siguientes pasos:
  • 49. Capítulo III Análisis y diseño Página 35 1. Se realiza una petición a la aplicación Web SketchMapServer vía HTTP mediante un dispositivo móvil para obtener un mapa tipo croquis. 2. La aplicación Web SketchMapServer recibe e interpreta la petición enviada por el dispositivo móvil. 3. Se realizan consultas relacionales y espaciales a partir de los datos interpretados por la aplicación web. La consulta relacional se realiza para obtener el perfil del dispositivo móvil, mientras que las consultas espaciales son realizadas para obtener coordenadas georeferenciales del punto o los puntos de interés destino. 4. Se obtiene el área de interés mediante los puntos georeferenciales origen y destino, dicha área de interés se utiliza para realizar una petición WMS al servidor de mapas para obtener como respuesta una imagen en formato SVG v1.0 que contiene los polígonos que representan las manzanas delimitadas por las calles. La imagen SVG (Basic) v1.0 obtenida del servidor de mapas es convertido al formato SVG (Tiny) v1.1 el cual es compatible con los dispositivos móviles. 5. Se obtienen los nodos y las aristas mediante consultas espaciales, para ello se utiliza el área de interés obtenido en el punto anterior. A partir de los nodos y las aristas se genera el grafo del cual se obtiene la ruta origen-destino compuesta por la unión de nodos mediante las aristas. 6. Se realizan consultas de radio a la base de datos espacial para obtener los puntos de referencia de cada nodo que contiene la ruta obtenida. 7. Se agregan los elementos ruta y sus puntos de referencia a la imagen SVG-Tiny. 8. Por último se envía la imagen SVG-Tiny del mapa tipo croquis al dispositivo móvil en respuesta de la petición realizada vía HTTP. 3.1.2 Base de datos espacial Los Sistemas de Administración de Bases de Datos Espaciales (SDBMS) tienen como objetivo el proveer todos los servicios de los DBMS relacionales y una administración efectiva y eficiente de datos espaciales. Los requerimientos y técnicas que se necesitan para modelar objetos geográficos que tienen extensión, ubicación, operaciones geométricas (unión, intersección, resta, entre otros) y relaciones especiales son complejos, haciendo insuficientes los servicios que ofrecen los sistemas de bases de datos tradicionales. Los sistemas de base de datos espaciales cuentan con dos tipos de representaciones: 1. Objetos espaciales. Son entidades geográficas distribuidas en un espacio de representación que se pueden distinguir, consultar y manipular, por ejemplo ciudades, rutas, zonas de reforestación, etc. 2. Espacio. Describe el espacio en sí mismo, esto es que se quiere decir algo sobre cada punto del espacio, es utilizado para describir mapas temáticos como la división política de un país. El modelo en el que nos basamos es el estándar SQL de OpenGIS que contiene dos tipos de atributos: los atributos espaciales que son valores geométricos de dos dimensiones con interpolación lineal entre sus vértices y los atributos descriptivos. Las consultas espaciales en este proyecto de tesis se realizan en el SDBMS PostGIS, el cual es una extensión al DBMS PostgreSQL que permite el uso de objetos GIS
  • 50. Capítulo III Análisis y diseño Página 36 (Geographic Information Systems). La especificación para SQL de características simples de OpenGIS define tipos de objetos GIS estándar, los cuales son manipulados por funciones y un conjunto de tablas de metadatos. Esta especificación tiene dos tablas de metadatos: SPATIAL_REF_SYS PK SRID AUTH_NAME AUTH_SRID SRTEXT PROJ4TEXT GEOMETRY_COLUMNS SRID F_TABLE_CATALOG F_TABLE_SCHEMA F_TABLE_NAME F_GEOMETRY_COLUMN COORD_DIMENSION TYPE Figura 3-2 Tablas de metadatos de la especificación OpenGIS Se describen las columnas de las tablas de los metadatos de la especificación OpenGIS que se muestran en la Figura 3-2: Tabla GEOMETRY_COLUMNS  F_TABLE_CATALOG, F_TABLE_SCHEMA, F_TABLE_NAME. Distingue totalmente la tabla de características que contiene la columna geométrica.  F_GEOMETRY_COLUMN. Nombre de la columna geométrica en la tabla de características.  COORD_DIMENSION. Dimensión espacial de la columna (2D o 3D).  SRID. Es una clave foránea que referencia SPATIAL_REF_SYS.  TYPE. Tipo de objeto espacial (POINT, LINESTRING, POLYGON, MULTYPOINT, GEOMETRYCOLLECTION). Para un tipo heterogéneo se usa el tipo GEOMETRY. Tabla SPATIAL_REF_SYS  SRID: Valor entero que identifica el sistema de referencia espacial.  AUTH_NAME: Nombre del estándar para el sistema de referencia. Por ejemplo: EPSG.  AUTH_SRID: Identificador según el estándar AUTH_NAME. En el ejemplo anterior es el id según EPSG.  SRTEXT: Una Well-know text 7 representación para el sistema de referencia espacial. Ejemplo: WKT para SRS.  PROJ4TEXT: Proj4 es una librería que usa PostGIS para transformar coordenadas. Esta columna contiene una cadena con definición de las coordenadas de Proj4 para un SRID dado. 7 WKT (Well-Know Text) es la codificación o sintaxis diseñada específicamente para describir objetos espaciales expresados de forma vectorial.
  • 51. Capítulo III Análisis y diseño Página 37 PostGIS soporta los objetos GIS definidos por OpenGIS y el API de representación de la especificación OpenGIS pero no tiene varios de los operadores de comparación. A continuación se muestran unos ejemplos de la representación en modo texto: POINT(0 0 0) LINESTRING(0 0,1 1,1 2) POLYGON((0 0 0,4 0 0,4 4 0,0 4 0,0 0 0),(1 1 0,2 1 0,2 2 0,1 2 0,1 1 0)) MULTIPOINT(0 0 0, 1 2 1) MULTILINESTRING((0 0 0, 1 1 0, 1 2 1),(2 3 1,3 2 1,5 4 1)) MULTIPOLYGON(((0 0 0,4 0 0,4 4 0,0 4 0,0 0 0),(1 1 0,2 1 0,2 2 0,1 2 0,1 1 0)),(-1 -1 0 -1 -2 0,-2 -2 0,-2 -1 0,-1 -1 0)) GEOMETRYCOLLECTION(POINT(2 3 9),LINESTRING(2 3 4,3 4 5)) En los ejemplos se pueden ver características con coordenadas en 2D y 3D, las funciones force_2d() y force_3d() son para convertir una característica a 3D o 2D. Las consultas espaciales en este proyecto de tesis localizan puntos de interés a partir de una ubicación geoespacial, se obtiene la distancia de dos puntos geográficos y se obtiene un número finito de información de los puntos de referencia localizados en un área específica. La siguiente sentencia representa la forma de obtener puntos de interés a una determinada distancia de la ubicación georeferencial del dispositivo móvil. SELECT distance(s.the_geom, GeometryFromText(„POINT(Longitud Latitud)‟, -1))*100000 as distancia, s.nomservicio, col.descripcion, s.calle, s.numero, col.cp FROM servicios As s, categoria As c, colonia As col WHERE distance(s.the_geom, GeometryFromText(„POINT(Longitud Latitud)‟, -1))*100000 <= Distancia ORDER BY distancia Para la búsqueda de información en un contexto geoespacial se necesita tener un área de interés llamado Bounding Box (BBOX) que contenga información referente a datos geográficos. En esta área de interés existe información asociada a un mapa o un repositorio geoespacial. En la Figura 3-3 se muestra la representación de los puntos máximos y mínimos de un BBOX. . xMin xMax yMax yMin Figura 3-3 Representación de un BBOX
  • 52. Capítulo III Análisis y diseño Página 38 En el contexto de los servicios basados en localización se encuentra información de las manzanas, calles, puntos de interés y puntos de referencia que representan instituciones públicas o privadas que prestan algún servicio a usuarios o instituciones. La siguiente sentencia SQL genera un BBOX definido por un punto georeferencial y una distancia radial. SELECT CAST(ST_Expand(ST_GeomFromText(„POINT(x y)‟), distance) AS BOX2D) Sin embargo, al utilizar esta área para realizar peticiones Web Map Service al servidor de mapas se obtiene un mapa con áreas innecesarias y un incremento en el tiempo para la generación de las rutas, ya que se obtiene información no pertinente para el usuario. Por ello se realiza un proceso para obtener el BBOX de búsqueda a partir de los puntos de interés. El procedimiento para generar el BBOX es el siguiente: i. Obtener puntos de interés mediante consulta a la base de datos espacial. ii. Comparar los valores georeferenciales de longitud de los puntos de referencia que se obtuvieron y la ubicación georeferencial del dispositivo móvil, con el fin de obtener los valores georeferenciales de longitud mínimo y máximo. iii. Comparar los valores georeferenciales de latitud de los puntos de referencia que se obtuvieron y la ubicación georeferencial del dispositivo móvil, con el fin de obtener los valores georeferenciales de latitud mínimo y máximo. iv. Generar el BBOX a partir de los datos obtenidos en los pasos ii y iii, el BBOX se presenta de la siguiente forma: (minLongitud minLatitud, maxLongitud maxLatitud). En la siguiente sentencia SQL se utiliza el BBOX generado para obtener las aristas que representan las calles. SELECT DISTINCT street.gid, sum(length(street.the_geom))*100000 as largo, numpoints(the_geom), astext(startpoint(street.the_geom)) as inicio, x(startpoint(street.the_geom)), y(startpoint(street.the_geom)), astext(endpoint(street.the_geom))as fin, x(endpoint(street.the_geom)), y(endpoint(street.the_geom)), sum(length(street.the_geom))*100000 as largo, astext(reverse(the_geom)) as geom_inverso FROM street WHERE street.the_geom && „BOX3D(xMin yMin, xMax yMax)‟::box3d GROUP BY street.the_geom,street.gid La siguiente sentencia SQL se utiliza para obtener los nodos que representan las intersecciones de las calles. SELECT DISTINCT nodos.gid as id, AsText(nodos.the_geom) as nodos, X(the_geom),Y(the_geom) FROM nodos WHERE nodos.the_geom && „BOX3D(xMin yMin, xMax yMax)‟::box3d ORDER BY id Los puntos de referencia se obtienen a partir de las consultas espaciales realizadas a los nodos que integran la ruta mínima. La siguiente sentencia SQL obtiene los puntos de referencia, en donde cada nodo es representado por una coordenada georeferencial