servidor gps mvc

5
SIMULADOR GPS, PATRÓN DE DISEÑO MVC  CLASES JAVA SOCKET Y SERVERSOCKET Natalia Herrera Rey e-mail: [email protected] Enrique Alcocer e-mail: [email protected] Daniel Armando Ochoa Suarez e-mail: [email protected] RESUMEN: La aplicación desarrollada y descrita en este documento trata de un Servidor GPS para el cual seutiliza la clase ServerSocket del paquete  java.net. Se diseñ a esta aplicación de esc ritorio en un modelo de 3 capas, separando los datos, la lógica y la presentación. Esta última parte se diseña siguiendo los lineamientos del patrón Modelo Vista Controlador. PALABRAS CLAVE: Socket, ServerSocket, Controlador, Modelo, Vista. 1. INTRODUCCION El paradigma Cliente/Servidor  es quizás el más conocido de los paradigmas para aplicaciones de red. Se usa para describir un modelo de interacción entre dos procesos, que se ejecutan de forma simultánea. Este modelo es una comunicación basada en una serie de preguntas y respuestas, que asegura que si dos aplicaciones intentan comunicarse, una comienza la ejecución y espera indefinidamente que la otra le responda y luego continua con el proceso.[1] El patrón MVC Inicialmente fue diseñado para reducir el esfuerzo de programación necesario en la implementación de sistemas múltiples y sincronizados de los mismos datos. Sus características principales están dadas por el hecho de que, el Modelo, las Vistas y los Controladores se tratan como entidades separadas; esto hace que cualquier cambio producido en el Modelo se refleje automáticamente en cada una de las vistas [2]. El Simulador GPS es un servidor que muestra en un mapa la ubicación de clientes por medio del  API de Google StaticMaps a partir de los parámetros que se envían en una trama con la latitud y longitud de cada cliente así como otra información adicional. 2. SOCKET En la tecnología Java las conexiones de red se establecen utilizando sockets (TCP/IP) y son implementadas utilizando la clases dentro del paquete java.net. El siguiente diagrama muestra qué ocurre durante el proceso de conexión en ambos lados cliente y servidor. [3] Figura 1. Conexión Servidor-Cliente La clase Socket se sitúa en la parte más alta de una implementación dependiente de la plataforma, ocultando los detalles de cualquier sistema particular al programa Java. Usando la clase  java.net.Socket en lugar de utilizar código nativo de la plataforma, los programas Java pueden comunicarse a través de la red de una forma totalmente independiente de la plataforma. De forma adicional, java.net incluye la clase ServerSocket, la cual implementa un socket  el cual los servidores pueden utilizar para escuchar y aceptar peticiones de conexión de clientes.[4]

Upload: enrique-alcocer-polo

Post on 15-Oct-2015

36 views

Category:

Documents


0 download

TRANSCRIPT

SIMULADOR GPS, PATRN DE DISEO MVCCLASES JAVA SOCKET Y SERVERSOCKET

Natalia Herrera Reye-mail: [email protected] Alcocere-mail: [email protected] Armando Ochoa Suareze-mail: [email protected]

RESUMEN: La aplicacin desarrollada y descrita en este documento trata de un Servidor GPS para el cual seutiliza la clase ServerSocket del paquete java.net. Se disea esta aplicacin de escritorio en un modelo de 3 capas, separando los datos, la lgica y la presentacin. Esta ltima parte se disea siguiendo los lineamientos del patrn Modelo Vista Controlador.

PALABRAS CLAVE: Socket, ServerSocket, Controlador, Modelo, Vista.

1. INTRODUCCIONEl paradigma Cliente/Servidor es quizs el ms conocido de los paradigmas para aplicaciones de red. Se usa para describir un modelo de interaccin entre dos procesos, que se ejecutan de forma simultnea. Este modelo es una comunicacin basada en una serie de preguntas y respuestas, que asegura que si dos aplicaciones intentan comunicarse, una comienza la ejecucin y espera indefinidamente que la otra le responda y luego continua con el proceso.[1]El patrn MVC Inicialmente fue diseado para reducir el esfuerzo de programacin necesario en la implementacin de sistemasmltiples y sincronizados de los mismos datos. Sus caractersticas principales estn dadas por el hechode que, el Modelo, las Vistas y los Controladores se tratan como entidades separadas; esto hace quecualquier cambio producido en el Modelo se refleje automticamente en cada una de las vistas [2].

El Simulador GPS es un servidor que muestra en un mapa la ubicacin de clientes por medio del API de Google StaticMaps a partir de los parmetros que se envan en una trama con la latitud y longitud de cada cliente as como otra informacin adicional.2. SOCKETEn la tecnologa Java las conexiones de red se establecen utilizando sockets (TCP/IP) y son implementadas utilizando la clases dentro del paquete java.net. El siguiente diagrama muestra qu ocurre durante el proceso de conexin en ambos lados cliente y servidor. [3]

Figura 1. Conexin Servidor-ClienteLa clase Socket se sita en la parte ms alta de una implementacin dependiente de la plataforma, ocultando los detalles de cualquier sistema particular al programa Java. Usando la clase java.net.Socket en lugar de utilizar cdigo nativo de la plataforma, los programas Java pueden comunicarse a travs de la red de una forma totalmente independiente de la plataforma.De forma adicional, java.net incluye la clase ServerSocket, la cual implementa un socket el cual los servidores pueden utilizar para escuchar y aceptar peticiones de conexin de clientes.[4]

3. MODELO MVC

El Modelo Vista Controlador, tambin llamado Model View Controller (MVC) consisteen tener unas capas de clases en la que cada capa tiene una funcin precisa, y que puedan crecer exponencialmente sin afectar al rendimiento del juego. [5]3.1. MODELO

Es el objeto que representa los datos del programa. Maneja los datos y controla todassustransformaciones. El Modelo no tiene conocimiento especfico de los Controladores o de las Vistas, nisiquiera contiene referencias a ellos. Es el propio sistema el que tiene encomendada la responsabilidadde mantener enlaces entre el Modelo y sus Vistas, y notificar a las Vistas cuando cambia el Modelo. [2]

3.2. VISTA

Es el objeto que maneja la presentacin visual de los datos representados por el Modelo.Genera una representacin visual del Modelo y muestra los datos al usuario.Interactapreferentemente con el Controlador, pero es posible que trate directamente con el Modelo a travs deuna referencia al propio Modelo. [2]

3.3. CONTROLADOR

Es el objeto que proporciona significado a las rdenes del usuario, actuando sobre losdatos representados por el Modelo, centra toda la interaccin entre la Vista y el Modelo. Cuando serealiza algn cambio, entra en accin, bien sea por cambios en la informacin del Modelo o poralteraciones de la Vista. Interacta con el Modelo a travs de una referencia al propio Modelo.

4. DIAGRAMA DE CASOS DE USO

El siguiente diagrama muestra la relacin del usuario con la aplicacin Simulador GPS.

Figura 2. Diagrama de Casos de UsoEn el siguiente cuadro se describe las caractersticas del actor del sistema:ActorCaracterstica

UsuarioEs la persona que interacta con la aplicacin.

Cuadro 1. Caractersticas del usuario

5. DIAGRAMA DE CLASES

Figura 3. Diagrama de clases (Ver ANEXO 1)

6. MANUAL DE USUARIOEl Simulador GPS contiene las siguientes secciones: La pantalla principal donde se muestra el mapa, los clientes conectados, el registro de eventos y el control de zoom del mapa. En la Figura 4, se puede observar que inicialmente el nmero de clientes conectados es cero, se muestra un mapa por defecto con zoom igual a 14.

Figura 4.Inicio Simulador GPSCuando el simulador recibe la primera conexin de un cliente, se puede observar en el registro de eventos el nombre del cliente y la placa. En el mapa (Figura 5) se observa la imagen de un automvil con su placa para diferenciar claramente el recorrido del cliente 1.

Figura 5.Cliente 1 conectadoIgualmente cuando se conecta un segundo cliente queda registrada la informacin y as sucesivamente con cada cliente que se conecta. En la figura 6 se muestra el Cliente 2 que sigue la misma ruta del cliente 1, y en este caso se ha empleado un zoom de 17. La opcin de zoom se puede realizar mediante los botones o el scroll del mouse.

Figura 6.Cliente 2 conectadoCuando un cliente se desconecta igualmente queda registrado en el registro, y el simulador contina en espera de ms clientes como lo muestra la Figura 7.

Figura 7.Cliente 1 y 2 desconectados

7. REFERENCIAS[1] Lenguajes y Herramientas de Programacin. Universidad de La Laguna. Las clases Java Socket y ServerSocket. 2004.Disponible en: http://nereida.deioc.ull.es/~cleon/doctorado/doc05/0405/pspdf/p3.pdf

[2] Patrn Modelo-Vista-Controlador.Yenisleidy Fernndez Romero, Yanette Daz Gonzlez. Revista Telemtica. Vol. 11. No. 1, enero-abril, 2012, p. 47-57

[3] Conexin de redes Networking. Universidad TecMilenio.Disponible en:http://cursos.tecmilenio.edu.mx/cursos/at8q3ozr5p/prof/sb/sb04003/anexos/explica16.htm

[4] Java Sockets. Patricio Martnez Barco. 2000.Disponible en:http://www.dlsi.ua.es/asignaturas/sid/JSockets.pdf

[5] Alejandro Becerra. Modelo Vista Controlador Blog de Alejandro Becerra. Noviembre 2013. Disponible en:http://www.generaciondevideojuegos.com/modelo-vista-controlador/

[6] Google Maps Projection, and how to use it for clustering. Noviembre 2008. Disponible en: http://de.slideshare.net/lodeblomme/google-maps-projection-and-how-to-use-it-for-clustering-presentation

[7] Map Coordinates. Marzo 214. Disponible en: https://developers.google.com/maps/documentation/javascript/maptypes#MapCoordinates

ANEXO 1(DIAGRAMA DE CLASES)