Está en la página 1de 77

ESCUELA TCNICA SUPERIOR DE INGENIERA DE TELECOMUNICACIN UNIVERSIDAD POLITCNICA DE CARTAGENA

Proyecto Fin de Carrera

Desarrollo de una aplicacin distribuida de control y gestin logstica

AUTOR: Justo Alcn Cazorla DIRECTOR: Esteban Egea Lpez CODIRECTOR: Alejandro Martnez Sala

Enero / 2.008

Autor E-mail del Autor Director(es) E-mail del Director Codirector(es) Ttulo del PFC Descriptores Resumen

Justo Alcn Cazorla justo.alcon@gmail.com Esteban Egea Lpez esteban.egea@upct.es Alejandro Martnez Sala Desarrollo de una aplicacin distribuida de control y gestin logstica. C#, localizacin, aplicaciones distribuidas.

El objetivo de este Proyecto Fin de Carrera es el desarrollo de una aplicacin distribuida de control y gestin logstica. Esta aplicacin permitir la localizacin de vehculos, no slo como medida de control de una empresa, sino tambin para poder ofertar mayores servicios a los clientes. Una vez finalizado este Proyecto Fin de Carrera se podr realizar una gestin de todos los datos relacionados con la logstica en una empresa y localizar sus vehculos desde una misma aplicacin. La localizacin de los vehculos se realizar gracias a unos dispositivos, asociados a un vehculo o un conductor, que irn enviando sus coordenadas a una base datos, de forma peridica. Todos los datos referentes a la logstica y los servicios adicionales ofrecidos se encontrarn en un servidor, al que se tendr acceso remotamente desde los clientes. El control y la gestin de los datos se realizarn desde un interfaz de usuario situado en los clientes, el cual permitir, adems, la representacin mediante Google Earth de las ltimas ubicaciones conocidas de los vehculos y las rutas seguidas por stos.

Titulacin Intensificacin Departamento Fecha de Presentacin

Ingeniera de Telecomunicacin

Tecnologa de la Informacin y las Comunicaciones Enero 2.008

ndice de Contenidos

ndice de Contenidos
Captulo 1 - Introduccin .................................................................................................. 6 1.1 Introduccin. ........................................................................................................... 6 1.2 Soluciones existentes. .............................................................................................. 6 1.3 Solucin propuesta.................................................................................................. 8 1.3.1 Solucin bsica a los objetivos fijados para el Proyecto Fin de Carrera............ 9 1.3.2 Qu base de datos? ......................................................................................... 10 1.3.2.1 Base de datos Access. ............................................................................... 10 1.3.2.2 Base de datos Microsoft SQL Server........................................................ 10 1.3.2.3 Base de datos MySQL............................................................................... 11 1.3.2.4 Base de datos PostgreSQL. ....................................................................... 11 1.3.2.5 Base de datos elegida. ............................................................................... 12 1.3.3 Qu lenguaje de programacin usar? ............................................................. 12 1.3.4 Cmo se comunican Cliente y Servidor? ....................................................... 13 1.3.4.1 Protocolos y estndares utilizados por los servicios Web......................... 14 1.3.4.2 Ventajas de los servicios Web. ................................................................. 14 1.3.4.3 Inconvenientes de los servicios Web. ....................................................... 15 1.4 Resumen de contenidos del presente documento. .............................................. 15 Captulo 2 - Arquitectura del sistema.............................................................................. 16 2.1 Introduccin a la arquitectura del sistema. ........................................................ 16 2.2 Arquitectura de la Base de Datos. ....................................................................... 16 2.2.1 Introduccin. .................................................................................................... 16 2.2.2 Requisitos para Microsoft SQL Server Express............................................... 17 2.2.3 Principales Caractersticas de Microsoft SQL Server Express. ....................... 17 2.2.4 Nomenclatura utilizada para las tablas............................................................. 18 2.2.5 Modelo Entidad Relacin de la Base de Datos. ............................................ 18 2.2.5.1 Diagrama E-R del sistema global.............................................................. 18 2.2.5.2 E-R de cada tabla. ..................................................................................... 20 2.2.5.2.1 E-R ItemDatos. ............................................................................... 20 2.2.5.2.2 E-R PropietarioDatos...................................................................... 20 2.2.5.2.3 E-R CoordenadasDatos................................................................... 21 2.2.5.2.4 E-R ContextoDatos......................................................................... 22 2.2.5.2.5 E-R OrigenDestinoDatos. ............................................................... 22 2.2.5.2.6 E-R ConductorDatos....................................................................... 23 2.2.5.2.7 E-R CamionDatos........................................................................... 24 2.2.5.2.8 E-R RemolqueDatos. ...................................................................... 24 2.2.5.2.9 E-R CargaDatos.............................................................................. 25 2.2.5.2.10 E-R ItemContextoCoordenadas. ................................................... 25 2.2.5.2.11 E-R ItemContexto......................................................................... 26 2.2.5.2.12 E-R ContextoCargas. .................................................................... 26 2.2.6 Uso de SQL Server 2005 Express Edition. ...................................................... 27 2.2.6.1 Habilitar conexiones remotas con SQL Server Express Edition............... 27 2.2.6.2 Protocolo de seguridad utilizado en Microsoft SQL Server. .................... 28 2.2.6.3 Permisos para acceder al servidor Microsoft SQL Server Express Edition. ......................................................................................................................................... 28 2.3 Arquitectura de la aplicacin............................................................................... 28 2.3.1 Introduccin a la arquitectura de la aplicacin. ............................................... 28 2.3.2 Requisitos para Microsoft Visual Studio C# Express. ..................................... 28 4

ndice de Contenidos

2.3.3 Caractersticas de Microsoft Visual Studio C# Express. ................................. 29 2.3.4 Arquitectura del Servidor................................................................................. 29 2.3.4.1 Introduccin. ............................................................................................. 29 2.3.4.2 Diagrama de la estructura del Servidor..................................................... 30 2.3.4.3 Arquitectura de la capa DataAccess.......................................................... 31 2.3.4.3.1 Subcapa SQLProvider. ................................................................... 31 2.3.4.3.2 Subcapa Provider............................................................................ 32 2.3.4.3.3 Subcapa DataAccess....................................................................... 32 2.3.4.4 Arquitectura de la capa Business. ............................................................. 32 2.3.4.5 Arquitectura de la capa Facade. ................................................................ 33 2.3.4.6 Arquitectura de la capa Service................................................................. 33 2.4 Arquitectura del Cliente....................................................................................... 33 2.4.1 Introduccin. .................................................................................................... 33 2.4.2 Diagrama de la estructura del Cliente. ............................................................. 34 2.4.3 Estructura del Cliente....................................................................................... 34 2.5 Arquitectura del Sistema Global. ........................................................................ 35 2.5.1 Introduccin. .................................................................................................... 35 2.5.2 Objetivos del Sistema Global........................................................................... 35 2.5.3 Ventajas del Sistema desarrollado. .................................................................. 36 2.5.4 Diagrama del Sistema Global .......................................................................... 36 2.5.5 Descripcin de la integracin de los diferentes componentes principales ....... 37 Captulo 3 - Manual del usuario ..................................................................................... 38 3.1 Introduccin al manual de usuario...................................................................... 38 3.2 Requisitos del Sistema de Localizacin de Camiones. ....................................... 38 3.3 Requisitos del Servidor......................................................................................... 38 3.4 Requisitos de los Clientes. .................................................................................... 39 3.5 Instalacin y configuracin de .NET Framework 2.0........................................ 39 3.6 Instalacin y configuracin de los elementos especficos del Servidor............. 39 3.6.1 Instalacin y configuracin de Microsoft SQL Server Express....................... 39 3.6.2 Instalacin y configuracin del Servidor Web de IIS de Microsoft................. 41 3.7 Instalacin y configuracin de la aplicacin Servidor. ...................................... 42 3.8 Instalacin y configuracin de la aplicacin Cliente.......................................... 44 3.9 Manual del usuario del Cliente ............................................................................ 44 3.9.1 Introduccin ..................................................................................................... 44 3.9.2 Ejecucin y entorno principal de la aplicacin Cliente.................................... 45 3.9.3 Descripcin del entorno grfico principal........................................................ 45 3.9.4 Descripcin de la informacin representada en cada pestaa. ......................... 47 3.9.5 Descripcin de los formularios disponibles ..................................................... 56 3.9.6 Descripcin de las herramientas para mostrar puntos y rutas en Google Earth. ............................................................................................................................................. 73 Captulo 4 - Conclusiones y lneas futuras ..................................................................... 75 4.1 Conclusiones. ......................................................................................................... 75 4.1.1 Conclusiones de Microsoft SQL Server........................................................... 75 4.1.2 Conclusiones de Microsoft Visual Studio C#. ................................................. 75 4.1.3 Conclusiones del Sistema de Localizacin. ..................................................... 76 4.2 Lneas futuras........................................................................................................ 76 Captulo 5 - Bibliografa .................................................................................................. 77 5

Captulo 1 - Introduccin

Captulo 1 Introduccin
1.1 Introduccin.
El presente documento se encargar de describir una herramienta software desarrollada como Proyecto Fin de Carrera. El software en cuestin ser un Sistema de Localizacin de Camiones para aplicarlo en el mbito logstico de las empresas. Este Sistema de Localizacin de Camiones ofrece: Una base de datos diseada para contener todos los datos necesarios para la logstica y los servicios ofrecidos. Un software para la gestin remota de los datos de logstica y la representacin de puntos y rutas en Google Earth. Una documentacin explicando la estructura del sistema para futuras implementaciones y el manual del usuario necesario para la correcta instalacin, configuracin y utilizacin de la aplicacin.

Las herramientas software de este tipo ofrecen un mtodo para el control de la situacin geogrfica de los vehculos de una empresa, permitiendo una mejor optimizacin en el transporte. Estas herramientas permiten ofrecer una serie de servicios y facilidades, tanto para el cliente como para la empresa, permitiendo reducir costes, tiempo y esfuerzos. Cabe destacar que en este Proyecto Fin de Carrera no se incluye el sistema necesario para que las coordenadas, mandadas por los diferentes dispositivos de localizacin desde los vehculos, lleguen a la base de datos y sean registradas. Atendiendo a esto, se dar por hecho que ya existe un sistema implementado para tal fin. La finalidad de este Sistema de Localizacin de Camiones no ser ofrecer una herramienta final, totalmente funcional y libre de errores, sino la de mostrar una versin de prueba de las posibilidades que se pueden alcanzar con su desarrollo en futuros proyectos. El fin ltimo que deber perseguir esta aplicacin ser el de unificar todas las funcionalidades y servicios necesarios para poder realizar un control avanzado de la actividad empresarial y de la flota de vehculos. Para no olvidar al usuario, se deber perseguir la claridad y la sencillez sin perder la funcionalidad necesaria.

1.2 Soluciones existentes.


Dentro del mbito de este Proyecto Fin de Carrera se pueden encontrar diversas soluciones comerciales como pueden ser las siguientes: 1. Seguimiento y Localizacin de Flotas de NetProfider. Est destinada al seguimiento, posicionamiento y localizacin de flotas de vehculos y sus incidencias en tiempo real. Las comunicaciones se realizan con un servidor (Server) a travs de Internet usando tecnologa GPRS. A este servidor pueden estar conectados uno o ms clientes 6

Captulo 1 - Introduccin

(Pcs, PDA, Telfono mvil,...) para realizar el seguimiento y control en tiempo real de los vehculos.

Ilustracin 1. Captura del sistema de localizacin de NetProvider.

2. OnlineAVL de Crambo Wireless. Es, junto con el dispositivo instalado, el corazn del sistema de gestin de flotas. Proporciona una visibilidad total de la actividad de la empresa gracias a lo que se puede conseguir una mayor productividad y aumentar la satisfaccin de los clientes. OnlineAVL le permite gestionar su flota de forma eficaz desde casi cualquier PC. El programa slo requiere una conexin a Internet, de este modo, evita los gastos que puede suponer mantener un centro de control y reduce los riesgos de cadas del sistema.

Ilustracin 2. Captura del sistema OnlineAVL de Crambo Wireless.

3. TransCar. 7

Captulo 1 - Introduccin

Transcar es una aplicacin para la gestin integral de empresas que se dediquen al transporte de mercancas, agencias de transporte o logstica. Este programa de transportes adems de la gestin propia, incluye mdulos de tesorera, CRM, Remuneracin, Exportacin a los principales programas de contabilidad Con TransCar se podr llevar una gestin ms exacta y gil de una empresa, y de esta manera podr reducir costes y aumentar la productividad. Igualmente, una vez se comience a trabajar con la aplicacin, el aprendizaje ser rpido, con lo que conseguir adems de ahorrar una gran cantidad de trabajo, aumentar de forma significativa la calidad de ste.

Ilustracin 3. Captura del sistema de localizacin de TransCar.

1.3 Solucin propuesta.


Para este Proyecto Fin de Carrera se plante el crear una aplicacin que gestionase una base de datos diseada especficamente para el mbito logstico de las empresas. En el desarrollo de la aplicacin se necesitaron tomar las siguientes decisiones: Base de datos a utilizar en el sistema, con la que debera comunicarse la aplicacin Servidor. Lenguaje de programacin a utilizar tanto en la aplicacin Cliente como en la aplicacin Servidor. Modo de comunicacin entre los Clientes y el Servidor.

En los prximos subapartados se discutir y razonar las posibles soluciones que se barajaron y cules fueron las adoptadas finalmente.

Captulo 1 - Introduccin

1.3.1 Solucin bsica a los objetivos fijados para el Proyecto Fin de Carrera.
Antes de decidir las tecnologas a usar, se va a mostrar un boceto de lo que sera la solucin para este Proyecto Fin de Carrera. El Sistema de Localizacin estar compuesto por: Una base de datos desarrollada especficamente para el sistema. En ella se almacenar toda la informacin necesaria. Una aplicacin Servidor a la que se conectar los Clientes remotamente y que gestionar la informacin de la base de datos. Un servidor Web, gracias al cual se podr tener acceso a la aplicacin Servidor. Una aplicacin Cliente, ubicada en cada una de las computadoras de los usuarios, que se conectar con el Servidor. Un conjunto de dispositivos de localizacin instalados en los vehculos. Estos dispositivos, que estarn basados en GPS o GPRS, mandarn al Servidor peridicamente su identificador y las coordenadas en las que se encuentran en ese instante.

Ilustracin 4. Diagrama de la solucin bsica.

Captulo 1 - Introduccin

1.3.2 Qu base de datos?


Dentro de las bases de datos disponibles podemos encontrar diferentes alternativas:

Tabla 1. Comparativa de bases de datos obtenida de Internet.

Como se puede observar en la tabla anterior, se estudiaron cuatro posibilidades y se analizaron sus pros y contras en sus caractersticas ms destacables.

1.3.2.1 Base de datos Access.


Disponibles slo bajo sistema operativo Windows. Realizar una aplicacin ASP sobre bases de datos Access es recomendable en los casos en que sea especialmente cmoda la actualizacin de la informacin por el procedimiento de enviar el archivo .mdb al servidor mediante FTP. Ahora bien, para que la aplicacin sobre base de datos Access no tenga problemas, es recomendable que cumpla estas condiciones: El volumen de datos a manejar es pequeo. (Adems as ser ms rpida su actualizacin por FTP). El nmero de visitantes simultneos no es muy alto. La aplicacin ASP no cambia la base de datos, simplemente muestra datos. Esto es consistente con el hecho de enviar peridicamente el archivo .mdb al servidor, pues si la aplicacin ASP cambiase la base de datos, esos cambios se perderan al sobrescribirse con la nueva base de datos.

Cuando por alguno de los anteriores motivos, su aplicacin no es consistente, o no va a poder cumplir alguno de los mismos, es preferible el uso de un sistema de base de datos ms robusto, como SQL Server.

1.3.2.2 Base de datos Microsoft SQL Server.


Disponibles slo bajo sistema operativo Windows. SQL Server es el sistema de bases de datos ms completo y potente, y resulta ideal para los programadores especializados en productos Microsoft: ASP, Visual Basic, modelos de objetos, componentes, etc. Adems, es un sistema de base de datos perfectamente adecuado para aplicaciones crticas y con cualquier grado de complejidad. 10

Captulo 1 - Introduccin

SQL Server utiliza una parte del espacio de la base de datos para guardar el log de transacciones con los comandos pendientes, lo que asegura que, independientemente de si el programador usa o no transacciones en su cdigo, en ningn caso la base de datos quedara en un estado inconsistente debido a una ejecucin parcial de comandos. Tambin ofrece otras muchas caractersticas avanzadas orientadas a mantener la integridad de la base de datos, como son los triggers, y ofrece soporte completo ACID (Atomicity Consistency Isolation Durability). El principal punto negativo que tiene esta base de datos es su relacin Coste/MB. Si el volumen de datos a manejar no excede de 4 GB se puede optar por elegir la versin Express, versin gratuita que tiene muchas de las ventajas y las prestaciones de la versin comercial.

1.3.2.3 Base de datos MySQL.


Disponibles bajo sistema operativo Windows o Linux. MySQL tiene como principales caractersticas: Su gran velocidad y su precio reducido. Es el servidor de bases de datos ms rpido de todos los que ofrecemos y el de menor precio por MB. MySQL es muy utilizado en aplicaciones PHP o Perl en servidores Linux. En general, si no necesita caractersticas como transacciones, procedimientos almacenados, triggers o sentencias SQL complejas, MySQL cumplir la misma funcin que otras bases de datos ms potentes, pero de forma ms rpida y con un coste menor. Para aplicaciones Windows, MySQL es una alternativa econmica a SQL Server, pues su coste por MB es menor y adems se puede aprovechar todo el espacio para datos, mientras que SQL Server necesita una parte del espacio para el Log de transacciones.

Las limitaciones de MySQL vienen dadas por sus carencias respecto de los otros sistemas de bases de datos y por el grado de criticidad de su aplicacin. MySQL no es adecuada para aplicaciones crticas. Al no utilizar transacciones, un problema de cualquier tipo que interrumpiese una serie de comandos podra dejar su base de datos en un estado inconsistente, lo cual nunca ocurrira con SQL Server o PostgreSQL. Tampoco tiene triggers por lo que no se pueden establecer reglas de integridad y consistencia a nivel de servidor.

1.3.2.4 Base de datos PostgreSQL.


Disponibles bajo sistema operativo Windows o Linux. Caractersticas: PostgreSQL es el servidor de bases de datos de cdigo abierto ms potente que existe y es por tanto la alternativa a MySQL cuando se necesitan caractersticas avanzadas como transacciones, procedimientos almacenados, triggers, vistas, etc. Es el servidor de bases de datos ms utilizado por los programadores de servlets de Java y, en general, por todos aquellos que realizan aplicaciones cliente servidor complejas o crticas en el mundo Linux/Unix. 11

Captulo 1 - Introduccin

Para aplicaciones Windows, PostgreSQL es una alternativa econmica a SQL Server, pues su coste por MB es menor y tiene similares prestaciones. Esta diferencia econmica es especialmente sustancial si se necesita un Servidor Dedicado de bases de datos.

La mayor limitacin de PostgreSQL viene dada por su velocidad: es el sistema de bases de datos ms lento de los estudiados.

1.3.2.5 Base de datos elegida.


Finalmente, la base de datos que se eligi para el PFC fue Microsoft SQL Server Express Edition. Esta base de datos, adems de ser gratuita, cumpla ampliamente con las necesidades requeridas para el Sistema de Localizacin de Camiones. Sus principales limitaciones estaban en el volumen mximo de datos y en la plataforma a usar, pero ninguna de estas limitaciones supona un problema. Adems de esto, una de las principales ventajas de usar SQL Server Express de Microsoft era poder obtener un montn de facilidades en la implementacin si se usaba alguna de las versiones de Visual Studio.

1.3.3 Qu lenguaje de programacin usar?


Una vez se seleccion la base de datos a utilizar se tuvo que elegir cul sera el lenguaje de programacin empleado en el desarrollo de la aplicacin. De entre todas las posibles elecciones, se decidi la programacin en C# con Microsoft Visual C# Studio 2005 Express Edition (versin gratuita de Microsoft Visual Studio 2005 Professional). Las razones por las que se eligi C#, frente a los dems, fueron las siguientes: Ventajas frente a C y C++: o Compila a cdigo intermedio (CIL) independiente del lenguaje en que haya sido escrita la aplicacin e independiente de la mquina donde vaya a ejecutarse. Recoleccin de basura automtica. Eliminacin del uso punteros, en C# no se necesitan. Capacidades de reflexin. No hay que preocuparse por archivos de cabecera ".h". No importa el orden en que hayan sido definidas las clases ni las funciones. No hay necesidad de declarar funciones y clases antes de definirlas. No existen las dependencias circulares. Soporta definicin de clases dentro de otras. No existen funciones, ni variables globales, todo pertenece a una clase. Todos los valores son inicializados antes de ser usados (automticamente por defecto, o manualmente desde constructores estticos). No se pueden utilizar valores no booleanos (enteros, coma flotante...) para condicionales. Es mucho ms limpio y menos propenso a errores. Puede ejecutarse en una sandbox restringida. 12

o o o o o o o o o o

o o

Captulo 1 - Introduccin

Ventajas Frente a C++ y Java: o o Concepto formalizado de los mtodos get y set, con lo que se consigue cdigo mucho ms legible. Gestin de eventos (usando delegados) mucho ms limpia.

Ventajas frente a Java: o o o o o o o o El rendimiento es, por lo general, mucho mejor. CLI est estandarizado, mientras que los bytecodes de java no lo estn. Soporta bastantes ms tipos primitivos (value types), incluyendo tipos numricos sin signo. Indizadores que permiten acceder a cualquier objeto como si se tratase de un array. Compilacin condicional. Aplicaciones multi-hilo simplificadas. Soporta la sobrecarga de operadores, que aunque pueden complicar el desarrollo son opcionales y algunas veces muy tiles. Permite el uso (limitado) de punteros cuando realmente se necesiten, como al acceder a libreras que no se ejecuten sobre la mquina virtual.

1.3.4 Cmo se comunican Cliente y Servidor?


Para la comunicacin entre los Clientes y el Servidor se eligi usar los servicios Web de Microsoft, integrados en sus herramientas de desarrollo y que resuelven el problema de interoperabilidad. Un servicio Web es una coleccin de protocolos y estndares que sirven para intercambiar datos, a travs de una red o de Internet, entre distintas aplicaciones. Estas aplicaciones pueden estar desarrolladas en lenguajes de programacin diferentes y pueden ser ejecutadas sobre cualquier plataforma. Gracias a la adopcin de estndares abiertos se consigue resolver los problemas de interoperabilidad. Las organizaciones OASIS y W3C son los comits responsables de la arquitectura y reglamentacin de los servicios Web. Por otro lado, el organismo WS-I es el encargado de mejorar la interoperabilidad entre distintas implementaciones de servicios Web y desarrollar diversos perfiles para definir de manera ms exhaustiva los estndares a usar. Las principales razones de elegir los servicios Web, como solucin a los problemas de interoperabilidad, han sido las siguientes: Las redes de las organizaciones protegidas con firewalls normalmente cierran casi todos los puertos TCP salvo el 80, que es precisamente el usado por los navegadores Web. Como los servicios Web estn basados en HTTP sobre TCP en el puerto 80, no son bloqueados por los firewalls Gracias a SOAP se dispone de una buena interfaz para acceder a las funcionalidades de otros ordenadores en red. Los servicios Web pueden aportar gran independencia entre la aplicacin que usa el servicio Web y el propio servicio. De este modo, los cambios efectuados en uno no afectarn al otro.

13

Captulo 1 - Introduccin

1.3.4.1 Protocolos y estndares utilizados por los servicios Web.


A continuacin se listarn la coleccin de protocolos y estndares utilizados por los servicios Web para ms tarde explicarlos resumidamente. Web Services Protocol Stack (pila de protocolos para los servicios Web): As se denomina al conjunto de servicios y protocolos de los servicios Web. XML (Extensible Markup Language): Es el formato estndar para los datos que se vayan a intercambiar. SOAP (Simple Object Access Protocol) o XML-RPC (XML Remote Producer Call): Protocolos sobre los que se establece el intercambio. Otros protocolos: los datos en XML tambin pueden enviarse de una aplicacin a otra mediante protocolos normales como HTTP (Hypertext Transfer Protocol), FTP (File Transfer Protocol), o SMTP (Simple Mail Transfer Protocol). WSDL (Web Services Description Languages): Es el lenguaje de la interfaz pblica para los servicios Web. Es una descripcin basada en XML de los requisitos funcionales necesarios para establecer una comunicacin con los servicios Web. UDDI (Universal Description, Discovery and Integration): Protocolo para publicar la informacin de los servicios Web. Permite comprobar qu servicios Web estn disponibles. WS-Security (Web Service Security): Protocolo de seguridad aceptado como estndar por OASIS (Organization for the Advancement of Structured Information Standards). Garantiza la autenticacin de los actores y la confidencialidad de los mensajes enviados.

1.3.4.2 Ventajas de los servicios Web.


Las ventajas de usar los servicios Web, para la interoperabilidad entre distintas aplicaciones, son las siguientes: Aportan interoperabilidad entre aplicaciones de software independientemente de sus propiedades o de las plataformas sobre las que se instalen. Los servicios Web fomentan los estndares y protocolos basados en texto, que hacen ms fcil acceder a su contenido y entender su funcionamiento. Al apoyarse en HTTP, los servicios Web pueden aprovecharse de los sistemas de seguridad firewall sin necesidad de cambiar las reglas de filtrado. Permiten que servicios y software de diferentes compaas ubicadas en diferentes lugares geogrficos puedan ser combinados fcilmente para proveer servicios integrados. Permiten la interoperabilidad entre plataformas de distintos fabricantes por medio de protocolos estndar. 14

Captulo 1 - Introduccin

1.3.4.3 Inconvenientes de los servicios Web.


Los inconvenientes de usar los servicios Web son los siguientes: Para realizar transacciones no pueden compararse en su grado de desarrollo con los estndares abiertos de computacin distribuida como CORBA (Common Object Request Broker Architecture). Su rendimiento es bajo si se compara con otros modelos de computacin distribuida, tales como RMI (Remote Method Invocation), CORBA, o DCOM (Distributed Component Object Model). Es uno de los inconvenientes derivados de adoptar un formato basado en texto. Y es que entre los objetivos de XML no se encuentra la concisin ni la eficacia de procesamiento. Al apoyarse en HTTP, pueden esquivar medidas de seguridad basadas en firewall cuyas reglas tratan de bloquear o auditar la comunicacin entre programas a ambos lados de la barrera.

1.4 Resumen de contenidos del presente documento.


Una vez introducido el presente Proyecto Fin de Carrera se explicar, de modo resumido, el contenido de los prximos captulos. Captulo 2: Arquitectura del sistema. Se proporcionar la documentacin necesaria para la comprensin de la estructura del sistema para que todo aquel que desee modificar o implementar nuevas funcionalidades pueda hacerlo. En este captulo se incluirn diagramas y tablas explicativas de la arquitectura. Captulo 3: Manual del usuario. Se proporcionar la documentacin necesaria para que cualquier usuario pueda instalar, configurar y manejar adecuadamente la aplicacin del Sistema de Localizacin de Camiones. Se mostrarn diversas capturas junto a las instrucciones oportunas para facilitar el aprendizaje. Captulo 4: Conclusiones y lneas futuras. Se explicarn brevemente las conclusiones, indicando los conocimientos obtenidos con este Proyecto Fin de Carrera y la experiencia tenida tanto con SQL Server como con Visual Studio C#. Adems, se plantearn ideas para futuras implementaciones.

15

Captulo 2 Arquitectura del sistema

Captulo 2 Arquitectura del sistema


2.1 Introduccin a la arquitectura del sistema.
En este captulo se explicar detenidamente la arquitectura y el funcionamiento del sistema. Para ello se describirn los diferentes componentes, su funcionalidad y la forma en que se comunican stos dentro del sistema. La arquitectura bsica del sistema est compuesta por cuatro elementos principales: Base de Datos: utilizando Microsoft SQL Server Express y gestionada con Microsoft SQL Server Management Studio Express. Aplicacin Servidor: programado en C# con Microsoft Visual Studio C# 2005 Express. Servidor Web de Microsoft: Permite el acceso por red o Internet desde cada aplicacin Cliente, mediante SOAP, a la aplicacin Servidor. Aplicacin Cliente: programado en C# con Microsoft Visual Studio C# 2005 Express. Cada uno de estos elementos principales ser desarrollado en apartados de forma independiente, mostrando los diagramas y explicando su funcionalidad. Finalmente se dedicar un apartado para tratar la forma en que se integrarn los diferentes componentes para crear el conjunto.

2.2 Arquitectura de la Base de Datos.


2.2.1 Introduccin.
La base de datos utilizada para la aplicacin ha sido Microsoft SQL Server Express, versin gratuita de Microsoft SQL Server. Esta versin, por ser gratuita, tiene una serie de limitaciones en las caractersticas de memoria, base de datos y esquemas. A pesar de estas limitaciones, las prestaciones ofrecidas por la versin gratuita son suficientes para las necesidades requeridas en el sistema. Entre las ventajas que tiene usar Microsoft SQL Server Express, se puede destacar la posibilidad de usar SQL Server Management Studio Express para gestionar la base de datos. Esta herramienta gratuita facilita las tareas necesarias para la gestin de Microsoft SQL Server Express, permitiendo modificar las configuraciones de la base de datos y crear, modificar y eliminar tablas de forma grfica. Para poder usar otras bases de datos, como pueden ser Oracle Database o MySQL, ser necesario implementar en el servidor la clase abstracta Provider de la capa DataAccess. La implementacin de la clase abstracta Provider (permitiendo el polimorfismo con dicha clase) deber tener la misma funcionalidad que la implementacin ya realizada para Microsoft SQL Server y que se encuentra en la clase

16

Captulo 2 Arquitectura del sistema

SQLProvider. En cualquier caso, este tema se tratar en el apartado dedicado al Servidor del sistema.

2.2.2 Requisitos para Microsoft SQL Server Express.


Los requisitos para Microsoft SQL Server Express son los siguientes: Procesador: o o Mnimo: 600 MHz o superior, compatible con Pentium III. Recomendado: 1 GHz o superior.

Framework: o .NET Framework 2.0.

Sistema Operativo: o o o o o o o o o o Microsoft Windows XP con SP2. Microsoft Windows 2000 Profesional con SP4. Microsoft Windows Server 2003 Standard con SP1 o posterior. Microsoft Windows Server 2003 Enterprise con SP1 o posterior. Microsoft Windows Server 2003 Datacenter con SP1 o posterior. Microsoft Windows Server 2003 Web Edition con SP1 o posterior. Microsoft Windows Small Business Server 2003 con SP1 o posterior. Microsoft Windows Vista Home Basic o superior (aadiendo SQL Express Advanced SP2). Microsoft Windows XP Embedded SP2 Feature Pack 2007. Microsoft Windows Embedded for Point of Service SP2.

2.2.3 Principales Caractersticas de Microsoft SQL Server Express.


Microsoft SQL Server 2005 Express se basa en Microsoft SQL Server 2005 y admite la mayora de las caractersticas del motor de base de datos de ese producto y de las versiones anteriores. A continuacin se muestran algunas de las principales caractersticas y componentes que admite: Procedimientos almacenados. Administrador de configuracin de SQL Server. Vistas. Rplica (slo como suscriptor). Desencadenadores. Optimizador de consultas avanzado. Cursores.

17

Captulo 2 Arquitectura del sistema

SMO/RMO. Utilidades sqlcmd y osql. Integracin con Microsoft Visual Studio 2005. Niveles de aislamiento de instantnea. Service Broker (nicamente como cliente). Compatibilidad con XML nativo, incluidos Xquery y esquemas XML. CLR de SQL. Compatibilidad con lenguajes Transact-SQL. Conjunto de resultados activos mltiples (MARS). Conexin de administrador dedicada.

2.2.4 Nomenclatura utilizada para las tablas.


Las tablas representativas de las entidades principales se nombrarn usando: Nombre entidad + Datos (Ejemplo: CargaDatos). En los casos en los que se han usado tablas para relacionar diferentes entidades principales, la nomenclatura es la suma de los nombres de las entidades (Ejemplos: ItemContextoCoordenadas es una tabla donde se indica las coordenadas que tena un tem y el contexto que estaba cursando en esas coordenadas; ContextoCargas es una tabla donde se le asocia a cada contexto una o varias cargas). En las tablas, las claves sern nombradas con id + Nombre entidad para las entidades principales y id + Nombre tabla para las dems tablas. As, la clave de CargaDatos ser idCarga, y la de ContextoCargas ser idContextoCargas.

2.2.5 Modelo Entidad Relacin de la Base de Datos.


2.2.5.1 Diagrama E-R del sistema global.
El sistema est modelado por las siguientes entidades: tem. Propietario. Coordenadas. Contexto. Origen/Destino. Conductor. Camin. Remolque. Carga.

Adems de las tablas mencionadas, han sido necesarias otras tablas para complementar la informacin y as formar la estructura global de la base de datos.

18

Captulo 2 Arquitectura del sistema

A continuacin se muestra el diagrama global de la base de datos:

Ilustracin 5. Diagrama de la estructura de la base de datos.

En este diagrama, un contexto har referencia a un viaje, al que asociaremos un conductor, un camin, un remolque, un tem y una o ms cargas (ya que en cada viaje se podr llevar ms de una carga). Para poder asociar a cada contexto una o ms cargas se utilizar la tabla ContextoCargas, que tendr una entrada por cada carga registrada en la tabla CargaDatos. Una carga podr tener tanto un origen como un destino. Cada origen/destino podr tener, adems de una serie de datos, unas coordenadas y un propietario. Este propietario podr ser una empresa o un individuo. Para registrar las coordenadas de un tem en cada momento junto con el contexto que tiene asociado en ese momento, la base de datos dispondr de la tabla ItemContextoCoordenadas. En la tabla ItemContexto tendremos un campo llamado idContextoActual que ser el que indique qu contexto est cursando cada tem y as, tener toda la informacin necesaria para crear registros en la tabla ItemContextoCoordenadas.

19

Captulo 2 Arquitectura del sistema

2.2.5.2 E-R de cada tabla.


2.2.5.2.1 E-R ItemDatos.

ItemDatos Clave Primaria Atributos idItem codigo fabricante modelo versionFirmware fechaCompra Tipo de datos Int varchar(50) varchar(50) varchar(50) varchar(50) varchar(50) Permite Nulos No No No No S S

Tabla 2. Tabla ItemDatos de la base de datos.

idItem: Es un identificador autoincremental usado como clave principal. codigo: Cdigo o nmero de serie del dispositivo de localizacin. fabricante: Empresa que ha fabricado el dispositivo de localizacin. modelo: Nombre del modelo del dispositivo. versionFirmware: Versin de Firmware del dispositivo. fechaCompra: Fecha en la que la empresa compr el dispositivo.

2.2.5.2.2 E-R PropietarioDatos.

PropietarioDatos Clave Atributos datos Primaria idPropietario nifcifdni nombreFiscal int varchar(50) varchar(50) Tipo de Nulos No No S Permite

20

Captulo 2 Arquitectura del sistema

nombreComercial nombrePropietario apellido1Propietario apellido2Propietario telefono

varchar(50) varchar(50) varchar(50) varchar(50) varchar(50)

S S S S S

Tabla 3. Tabla PropietarioDatos de la base de datos.

idPropietario: Es un identificador autoincremental usado como clave principal en esta tabla. nifcifdni: CIF/DNI/NIF del propietario. Ser una cosa u otra dependiendo de si el propietario es una persona o es una empresa. nombreFiscal: Nombre fiscal de la empresa. nombreComercial: Nombre comercial de la empresa. nombrePropietario: En caso de que el propietario sea una persona, el nombre de esa persona. apellido1Propietario: Primer apellido del propietario. apellido2Propietario: Segundo apellido del propietario. telefono: Telfono de contacto.

2.2.5.2.3 E-R CoordenadasDatos.

CoordenadasDatos Clave Primaria Atributos idCoordenadas latitud longitud altitud tiempo Tipo de datos Int float float float datetime Permite Nulos No No No S S

Tabla 4. tabla CoordenadasDatos de la base de datos.

idCoordenadas: Es un identificador autoincremental usado como clave principal en esta tabla. 21

Captulo 2 Arquitectura del sistema

latitud: Latitud de las coordenadas. longitud: Longitud de las coordenadas. altitud: Altitud de las coordenadas. tiempo: Marca temporal de la toma de las coordenadas.

2.2.5.2.4 E-R ContextoDatos.

ContextoDatos Clave Primaria Atributos idContexto idConductor idCamion idRemolque Tipo de datos Int Int Int Int Permite Nulos No S S S

Tabla 5. Tabla ContextoDatos de la base de datos.

idContexto: Identificador autoincremental usado como clave principal de la tabla. idConductor: Identificador del conductor asociado a este contexto (o viaje). idCamion: Identificador del camin asociado a este contexto. idRemolque: Identificador del remolque asociado a este contexto.

2.2.5.2.5 E-R OrigenDestinoDatos.

OrigenDestinoDatos Clave Primaria Externa Atributos idOrigenDestino idPropietario direccion numero Tipo de datos Int Int varchar(50) varchar(50) Permite Nulos No S No S

22

Captulo 2 Arquitectura del sistema

ciudad provincia region pais codigoPostal Externa idCoordenadas

varchar(50) varchar(50) varchar(50) varchar(50) varchar(50) Int

No S No No S S

Tabla 6. Tabla OrigenDestinoDatos de la base de datos.

idOrigenDestino: Identificador no autoincremental usado como clave principal de la tabla. idPropietario: Identificador del propietario al que pertenece este origen/destino (que en la mayora de las ocasiones ser un almacn). direccion: Direccin del origen/destino. numero: Nmero de la direccin. ciudad: Ciudad en la que se encuentra el origen/destino. region: Regin del origen/destino. pais: Pas del origen/destino. codigoPostal: Cdigo postal de origen/destino. idCoordenadas: origen/destino. Identificador de las coordenadas que tendr el

2.2.5.2.6 E-R ConductorDatos.

ConductorDatos Clave Primaria Atributos idConductor dni nombre apellido1 apellido2 Tipo de datos Int varchar(50) varchar(50) varchar(50) varchar(50) Permite Nulos No No No No No

23

Captulo 2 Arquitectura del sistema

permisoConducir

varchar(50)

No

Tabla 7. Tabla ConductorDatos de la base de datos.

2.2.5.2.7 E-R CamionDatos.

CamionDatos Clave Primaria Atributos idCamion numerobastidor matricula marca modelo tipo Tipo de datos Int varchar(50) varchar(50) varchar(50) varchar(50) varchar(50) Permite Nulos No No No No No S

Tabla 8. Tabla CamionDatos de la base de datos.

idCamion: Identificador autoincremental usado como clave principal de la tabla. numerobastidor: Nmero de bastidor del camin. matricula: Matrcula asociada al camin. marca: Fabricante del camin. modelo: Modelo del fabricante de camiones. tipo: Tipo de vehculo.

2.2.5.2.8 E-R RemolqueDatos.

RemolqueDatos Clave Primaria Atributos idRemolque numerobastidor Tipo de datos Int varchar(50) Permite Nulos No No

24

Captulo 2 Arquitectura del sistema

matricula marca modelo tipo

varchar(50) varchar(50) varchar(50) varchar(50)

No No No S

Tabla 9. Tabla RemolqueDatos de la base de datos.

idRemolque: Identificador autoincremental usado como clave principal de la tabla. numerobastidor: Nmero de bastidor del remolque. matricula: Matrcula asociada al remolque marca: Fabricante del remolque. modelo: Modelo del fabricante de remolques. tipo: Tipo de remolque.

2.2.5.2.9 E-R CargaDatos.

CargaDatos Clave Primaria Atributos idCarga codigo tipo clase peso Externa Externa idOrigen idDestino Tipo de datos Int varchar(50) varchar(50) varchar(50) float Int Int Permite Nulos No No S S S S S

Tabla 10. Tabla CargaDatos de la base de datos.

2.2.5.2.10

E-R ItemContextoCoordenadas.

25

Captulo 2 Arquitectura del sistema

ItemContextoCoordenadas Clave Atributos datos Primaria Externa Externa Externa idItemContextoCoordenadas idItem idCoordenadas idContexto int int int int Tipo de Nulos No No No S Permite

Tabla 11. Tabla ItemContextoCoordenadas de la base de datos.

idItemContextoCoordenadas: Identificador autoincremental usado como clave principal de la tabla. idItem: Identificador del tem al que pertenecen las coordenadas recibidas. idCoordenadas: Identificador de las coordenadas. idContexto: Identificador del contexto que tiene asociado en ese momento el tem.

2.2.5.2.11

E-R ItemContexto.

ItemContexto Clave Primaria Externa Externa Atributos idItemContexto idItem idContextoActual Tipo de datos Int Int Int Permite Nulos No No S

Tabla 12. Tabla ItemContexto de la base de datos.

idItemContexto: Identificador autoincremental usado como clave principal de la tabla. idItem: Identificador de un tem. idContexto: Identificador del contexto que tiene actualmente asociado el tem que acompaa a este contexto.

2.2.5.2.12

E-R ContextoCargas.

26

Captulo 2 Arquitectura del sistema

ContextoCargas Clave Atributos Tipo de datos Nulos Primaria Externa Externa idContextoCargas idContexto idCarga int int int No S No Permite

Tabla 13. Tabla ContextoCargas de la base de datos.

idContextoCargas: Identificador autoincremental usado como clave principal de la tabla. idContexto: Identificador de un contexto al que se asocia la carga que le acompaa en la tabla. idCarga: Identificador de la carga asociada al contexto.

2.2.6 Uso de SQL Server 2005 Express Edition.


A continuacin se explicarn algunas consideraciones y configuraciones necesarias para utilizar esta base de datos.

2.2.6.1 Habilitar conexiones remotas con SQL Server Express Edition.

Para habilitar un protocolo de red: 1. En el men Inicio, seleccione Todos los programas, seleccione Microsoft SQL Server 2005 y haga clic en Administrador de configuracin de SQL Server. Opcionalmente, puede abrir Administracin de equipos; para ello, haga clic con el botn secundario en Mi PC y elija Administrar. En Administracin de equipos, expanda Servicios y Aplicaciones y Administrador de configuracin de SQL Server. 2. Expanda Configuracin de red de SQL Server 2005 y, a continuacin, haga clic en Protocolos de NombreServidor. 3. En la lista de protocolos, haga clic con el botn secundario en el protocolo que desea habilitar y, a continuacin, haga clic en Habilitar. El icono del protocolo cambiar para indicar que el protocolo est habilitado. 4. Para deshabilitar el protocolo, realice el mismo procedimiento pero elija Deshabilitar en el paso 3.

Para configurar un protocolo de red: 1. En el men Inicio, haga clic con el botn secundario en Mi PC y elija Administrar.

27

Captulo 2 Arquitectura del sistema

2. En Administracin de equipos, expanda Servicios y Aplicaciones, Administrador de configuracin de SQL Server, Configuracin del servidor de red y Protocolos de NombreServidor, y, a continuacin, haga clic en el protocolo que desea configurar. (Si selecciona TCP, tendr la opcin de habilitar direcciones IP especficas en el panel derecho.) 3. Haga clic con el botn secundario en el protocolo que desea configurar y, a continuacin, elija Propiedades. 4. En Propiedades, puede establecer opciones especficas del protocolo. Adems, para que funcione Microsoft SQL Server en red habr que deshabilitar el firewall y el antivirus o introducir la excepcin adecuada en cada uno.

2.2.6.2 Protocolo de seguridad utilizado en Microsoft SQL Server.


Tanto en el servidor SQL como en la conexin desde la aplicacin (variable ConnectionString del archivo de configuracin en el servidor) se utiliza Integrated Security de Windows con el valor SSPI. SSPI (Security Support Provider Interface) permite a una aplicacin usar diferentes modelos de seguridad disponibles en la computadora o en la red sin cambiar el interfaz con el sistema de seguridad.

2.2.6.3 Permisos para acceder al servidor Microsoft SQL Server Express Edition.
Usando SQL Server Management Studio Express, en el panel de la izquierda, haciendo clic con el botn derecho encima del nombre del servidor se selecciona Propiedades -> Permisos. En el panel de Inicio de sesin o funciones se selecciona public y en el panel Permisos explcitos para public se activan todas las casillas WITH GRANT.

2.3 Arquitectura de la aplicacin.


2.3.1 Introduccin a la arquitectura de la aplicacin.
La aplicacin Servidor y la aplicacin Cliente del sistema han sido desarrollados en C# usando Microsoft Visual Studio C# 2005 Express, versin gratuita de Microsoft Visual Studio 2005. A pesar de tener una serie de limitaciones, esta versin es suficiente para el desarrollo de la aplicacin.

2.3.2 Requisitos para Microsoft Visual Studio C# Express.

Procesador:
o o

Mnimo: Procesador de tipo Pentium a 600 MHz. Recomendado: Procesador de tipo Pentium a 1 GHz.

Sistema Operativo:

28

Captulo 2 Arquitectura del sistema

o o o

Microsoft Windows 2003 Server. Microsoft Windows XP. Microsoft Windows 2000. Mnimo: 128 MB. Recomendado: 256 MB.

RAM:
o o

Disco Duro: Pueden ser necesarios hasta 1,3 GB de espacio disponible. Pantalla:
o o

Mnimo: 800 x 600, 256 colores. Recomendado: 1024 x 768, color de alta densidad de 16 bits.

2.3.3 Caractersticas de Microsoft Visual Studio C# Express.


Las principales caractersticas de Microsoft Visual Studio C# Express son las siguientes: Diseadores visuales para la creacin de Formularios Windows. Un editor de cdigo de primera categora con caractersticas de productividad mejoradas como IntelliSense Statement Completion, IntelliSense Code Snippets, y refactoring. Depurador simplificado que incluye Editar y Continuar y adems otras mejoras como visualizadores de datos para DataSets, HTML, XML, y datos de texto. Habilidad para publicar y compartir automticamente tus aplicaciones completas en Internet, tu red de rea local o en CDs utilizando ClickOnce. Soporte para la creacin de aplicaciones preparadas para datos utilizando SQL Server 2005 Express. El kit de inicio RSS Screensaver para construir protectores de pantalla personalizados para Windows. El kit de inicio Movie Collection: es una aplicacin Windows Form que utiliza el servicio Web de Amazon.com para buscar dinmicamente ttulos de pelculas. El kit demuestra tecnologas como: llamadas a servicios Web XML, databinding, almacenamiento local de datos usando SQL Server 2005 Express Edition, y ms. Guas para programadores noveles incluyendo tutoriales paso a paso.

2.3.4 Arquitectura del Servidor.


2.3.4.1 Introduccin.
El Servidor est compuesto por varias capas de abstraccin. Estas capas facilitan la creacin, modificacin y eliminacin de funcionalidad en las capas inferiores sin que influya a las capas superiores. Las capas, nombradas de la inferior a la superior, son las siguientes:

29

Captulo 2 Arquitectura del sistema

DataAccess: Provee un interfaz a la capa Business para insertar/modificar/eliminar datos en los registros de las tablas. Est dividida a su vez en subcapas. Business: Ofrece un interfaz a la capa Facade, abstrayendo una serie de funcionalidades implementadas en esta capa. Facade: Desacopla al usuario del Servidor. Service: Servicio Web usando SOAP para la comunicacin entre cada uno de los Clientes y el Servidor.

En los prximos apartados se describir la funcionalidad de cada una de las capas del Servidor.

2.3.4.2 Diagrama de la estructura del Servidor.


En este apartado se mostrar un diagrama UML que describe las clases que forman el Servidor y las relaciones que existen entre ellas. Estas clases estarn agrupadas en paquetes, los cuales representarn las diferentes capas de las que consta el Servidor. Debido a que algunas clases tienen un gran nmero de atributos y mtodos, la forma de representar el Diagrama de Clases ser mostrando el diagrama con todas las clases contradas (sin mostrar los atributos y los mtodos, mostrando tan solo los nombres de las clases), dando una vista general de las relaciones existentes. En este apartado no se proporcionar informacin sobre los mtodos y los atributos ya que la funcionalidad de cada uno de ellos se puede ver en el API del Servidor. Este API se puede encontrar en el directorio DocsServidor del Proyecto, siendo el ndice de dicho API el archivo index.html.

30

Captulo 2 Arquitectura del sistema

Ilustracin 6. Diagrama UML contrado de la aplicacin Servidor.

2.3.4.3 Arquitectura de la capa DataAccess.


Esta capa se comunica directamente con la base de datos y ofrece un interfaz a la capa Business para la creacin, modificacin y eliminacin de informacin. Esta capa est dividida a su vez en subcapas: SQLProvider: Proveedor de datos especfico para Microsoft SQL Server 2005 o Microsoft SQL Server 2005 Express. Provider: Clase abstracta que funciona de clase padre para cada una de las implementaciones de los diferentes proveedores de datos. DataAccess: Proporciona un interfaz para la capa Business. Mediante el polimorfismo, esta subcapa tendr instancias de la clase abstracta Provider y, dependiendo de la base de datos que se est usando, las llamadas se harn a la referencia de una u otra implementacin.

Debido a que esta capa tiene que comunicarse directamente con la base de datos, ambos tendrn que estar en la misma computadora.

2.3.4.3.1 Subcapa SQLProvider.

31

Captulo 2 Arquitectura del sistema

Se trata de una implementacin especfica para Microsoft SQL Server 2005 de la clase abstracta Provider. Esta implementacin hace uso de ADO.NET para la comunicacin con la base de datos y para los tipos de datos necesarios. Esta subcapa es la que se comunica directamente con la base de datos y ofrece a la subcapa DataAccess, mediante polimorfismo a travs de la clase Provider, una coleccin de mtodos para la creacin, modificacin y eliminacin de informacin en las diferentes tablas de la base de datos.

2.3.4.3.2 Subcapa Provider.


Clase abstracta de la que heredarn cada una de las implementaciones que se hagan de los diferentes proveedores de datos (como Microsoft SQL Server o MySQL). Todas las implementaciones que se hagan de esta clase tendrn que ofrecer la funcionalidad descrita en el API para cada uno de sus mtodos (todos ellos abstractos). Como ejemplo para la implementacin correcta de nuevos proveedores de datos se recomienda tomar la implementacin ya realizada para Microsoft SQL Server (clase SQLProvider).

2.3.4.3.3 Subcapa DataAccess.


Es un nivel de abstraccin de las diferentes implementaciones de los proveedores de datos. Ofrece a la capa Business un interfaz para la comunicacin con la base de datos, independientemente de cul se utilice. Esta subcapa lee de un fichero de configuracin (Web.config) cual es la base de datos usada y los parmetros para conectarse a ella. Atendiendo a la base de datos especificada en el fichero de configuracin, crea una instancia del proveedor de datos adecuado. Una vez se ha creado una instancia del proveedor de datos adecuado, DataAccess hace de interfaz entre el proveedor de datos elegido y la capa Business. De esta forma, la base de datos usada y la forma en la que se interacta con ella es transparente para las capas superiores.

2.3.4.4 Arquitectura de la capa Business.


Tambin conocida como Business Logic. Es una capa que ofrece un interfaz a las capas superiores mediante la abstraccin de DataAccess. Implementa funcionalidades para facilitar el acceso a la base de datos y proveer un interfaz ms sencillo y claro. Esta capa se encuentra formada por varios componentes, los cuales son agrupaciones lgicas de diferentes entidades de la base de datos. Gracias a esto se tendr ms transparencia de la estructura de la base de datos en las capas superiores, consiguiendo un interfaz ms claro y sencillo. Los componentes que forma la capa Business son: CamionHandlerBusiness: Gestiona los datos relacionados con los camiones. CargaHandlerBusiness: Gestiona los datos relacionados con los pedidos. ConductorHandlerBusiness: Gestiona los datos de los conductores.

32

Captulo 2 Arquitectura del sistema

ContextoHandlerBusiness: Gestiona los datos sobre la configuracin de los pedidos. CoordenadasHandlerBusiness: Gestiona los datos sobre las coordenadas de orgenes/destinos o de la ubicacin de los dispositivos de localizacin o tems. ItemHandlerBusiness: Gestiona los dispositivos de localizacin o tems. datos relacionados con los

OrigenDestinoHandlerBusiness: Gestiona los datos de los almacenes que puede ser usados como origen o destino de las mercancas. PropietarioHandlerBusiness: Gestiona los datos de los propietarios de los almacenes. RemolqueHandlerBusiness: Gestiona los datos relacionados con los remolques.

Esta capa se ha desarrollado para ser ejecutada en la misma computadora que la capa DataAccess. A pesar de esto, se podra modificar para poder encontrarse en otra computadora, utilizando para ello el protocolo SOAP de Microsoft.

2.3.4.5 Arquitectura de la capa Facade.


Tambin conocida como Facade Pattern. Se encuentra formado por los mismos componentes que la capa inferior (Business) y provee un interfaz sencillo, abstrayendo a las capas superiores de la implementacin realizada en la capa inferior (Business en nuestro caso). Esta capa permite desacoplar el interfaz de usuario del Servidor, de forma que slo ofrecer la funcionalidad a la que el usuario final pueda tener acceso.

2.3.4.6 Arquitectura de la capa Service.


Los diferentes Clientes se conectarn al Servidor haciendo uso del protocolo SOAP (basado en XML) a travs de la capa Service. Esta capa ofrecer un interfaz para el acceso a los datos remotamente.

2.4 Arquitectura del Cliente.


2.4.1 Introduccin.
El Cliente est diseado para cumplir tres objetivos fundamentales: Comunicarse con el Servidor mediante SOAP. El Cliente enva y recibe datos utilizando este protocolo. Ofrecer un interfaz grfico intuitivo, funcional y claro al usuario. Este interfaz grfico se encargar de representar los datos y de ofrecer un conjunto de formularios para la creacin/modificacin/eliminacin de informacin de la base de datos. Representacin mediante Google Earth de puntos o rutas pertenecientes a diferentes tems.

33

Captulo 2 Arquitectura del sistema

En los prximos apartados se explicar detenidamente la estructura y la funcionalidad del Cliente. No se entrar en detalle en el diseo del interfaz grfico que ser detallado en el captulo dedicado al manual del usuario.

2.4.2 Diagrama de la estructura del Cliente.


En este apartado se mostrar un diagrama UML que describe las clases que forman el Cliente y las relaciones que existen entre ellas. Debido a que algunas clases tienen un gran nmero de atributos y mtodos, la forma de representar el Diagrama de Clases ser mostrando el diagrama con todas las clases contradas (sin mostrar los atributos y los mtodos, mostrando tan solo los nombres de las clases), dando una vista general de las relaciones existentes. En este apartado no se proporcionar informacin sobre los mtodos y los atributos ya que la funcionalidad de cada uno de ellos se puede ver en el API del Cliente. Este API se puede encontrar en el directorio DocsCliente del Proyecto, siendo el ndice de dicho API el archivo index.html.

Ilustracin 7. Diagrama UML contrado de la aplicacin Cliente.

NOTA: Por motivos de espacio y de claridad no se han representado todos los formularios existentes. La clase Formularios representa al conjunto de todos los formularios. Mencionar que, aunque la clase Formularios tiene una instancia para cada clase del tipo *Cliente en el diagrama mostrado, en la realidad esto no ser as y cada formulario contendr slo una instancia de las clases necesarias. En el diagrama mostrado hay que destacar que la clase WebReference representa el interfaz de comunicacin, por red o por Internet, con la clase Service del Servidor. Hay que recordar que la comunicacin con el Servidor se realiza usando servicios Web de Microsoft (protocolo SOAP).

2.4.3 Estructura del Cliente.


El diseo grfico del Cliente se basa en la agrupacin de los datos en pestaas y en la creacin, modificacin, eliminacin y filtrado de stos mediante formularios. El 34

Captulo 2 Arquitectura del sistema

objetivo de este diseo es el de ofrecer al usuario un interfaz claro e intuitivo, permitiendo trabajar en los diferentes roles de forma ordenada. Cada una de las pestaas representa los datos agrupados de forma lgica, facilitndose la representacin y el entendimiento por parte del usuario. Para facilitar esta agrupacin, se dispone de una clase para cada pestaa que implementa la funcionalidad relacionada con la representacin, creacin, modificacin, eliminacin y filtrado de datos. Los formularios permitirn acceder a la funcionalidad disponible en cada pestaa. Cada formulario se muestra en forma de cuadro de dilogo, donde el usuario introducir los datos pedidos. De esta forma, toda la funcionalidad implementada por la clase asociada a cada pestaa ser accesible mediante formularios. Adems de esto, el cliente permite la representacin de puntos y rutas en Google Earth. Para conseguir esto, se ha implementado una clase (llamada GestorKML.cs) que permite generar ficheros KML que son mostrados automticamente. Si se desea conocer con ms detalle el funcionamiento de esta clase, consulte el API y el cdigo referente a esta clase.

2.5 Arquitectura del Sistema Global.


2.5.1 Introduccin.
Una vez se han comentado todos los componentes de los que consta el Sistema de Localizacin de Camiones se pasar a explicar la forma en la que se integran los diferentes elementos para formar el sistema global.

2.5.2 Objetivos del Sistema Global.


El principal objetivo que se pretenda alcanzar con el desarrollo de este Sistema era el obtener una herramienta que integrase los servicios ms utilizados en el mbito de la logstica, as como ofrecer una serie de servicios adicionales tiles para los diferentes clientes. Aunque ste era el objetivo final de la aplicacin a desarrollar, tambin ha sido necesario cubrir otras necesidades o cuestiones sumamente importantes: El diseo de la base de datos se ha realizado de forma genrica. Esto ha sido as para que este sistema, como primera versin de pruebas, pueda ser adaptado en adelante a las empresas interesadas. Si se hubiera especializado demasiado en un caso concreto, dispondramos de un diseo difcilmente adaptable a las necesidades de las diferentes empresas del sector. Por este motivo, el diseo de la base de datos slo contiene aquella informacin que se consider comn para todas las empresas con una flota de vehculos de transporte. La aplicacin Servidor consta de los suficientes niveles de abstraccin para poder cambiar de base de datos sin tener que modificar toda la aplicacin entera. Adems, se ha procurado facilitar la extensibilidad y la modularidad de la aplicacin, con vistas a futuras implementaciones para funcionalidades adicionales. El interfaz grfico de la aplicacin Cliente ha sido diseado pensando en la comodidad y sencillez de cara al usuario, sin descuidar toda la funcionalidad que deba ofrecer. Adems, en este diseo se ha 35

Captulo 2 Arquitectura del sistema

agrupado toda la informacin en pestaas con vistas a que, en un futuro, dependiendo del tipo de usuario, ste podr acceder a una funcionalidad u otra. El modo de comunicarse entre los Clientes y el Servidor ha sido mediante servicios Web, los cuales estn basados en estndares abiertos y utilizables con otras herramientas de desarrollo. En la implementacin, tanto del Cliente como del Servidor, se ha procurado disminuir, en la medida de lo posible, la carga en la red, con vistas a que este Sistema se utilice va Internet, donde es importante la cantidad de datos a enviar/recibir. Para la representacin de ubicaciones y rutas se ha utilizado Google Earth. Esta herramienta es en la actualidad una de las ms potentes, ofreciendo una enorme cantidad de servicios y funciones. Google Earth posee en la actualidad una de las mejores bases de datos de cartografa y de imgenes va satlite. Durante el desarrollo del Sistema se han utilizado nicamente herramientas gratuitas. Esto implica que ser posible desarrollar nuevas funcionalidades sin necesidad de tener que gastar en licencias.

2.5.3 Ventajas del Sistema desarrollado.


Como consecuencia de los objetivos mencionados en el apartado anterior, podemos mencionar algunas de las ventajas que tiene este Sistema: Ser fcilmente ampliable la cantidad de servicios ofrecidos. Ofrece una solucin genrica al problema de localizacin de vehculos que podr ser modificada para resolver problemas ms especficos. Consta de un interfaz grfico funcional, cmodo y sencillo. Para la comunicacin se han usado servicios Web, basado en protocolos y estndares abiertos, que permite compatibilidad con otros lenguajes y entornos de desarrollo, adems de presentar menos problemas ante firewalls. La representacin de puntos y rutas se ha implementado para usar Google Earth que posee una base de datos muy completa de todo el planeta. Basado en tecnologas de acceso gratuito, y cuyas herramientas de desarrollo bsicas tambin lo son.

2.5.4 Diagrama del Sistema Global


A continuacin se mostrar un diagrama para visualizar la estructura global del sistema y ayudar a su comprensin.

36

Captulo 2 Arquitectura del sistema

Ilustracin 8. Diagrama bsico del sistema global.

2.5.5 Descripcin de la integracin de los diferentes componentes principales


Durante los apartados anteriores, dentro de este captulo, se han ido describiendo cada uno de los elementos que componen el Sistema global. Una vez comprendidos todos los componentes, es momento de explicar la forma en que se integran todos ellos. Dentro del Servidor nos encontramos con tres de los cuatro componentes fundamentales del Sistema (BBDD, Aplicacin Servidor y Servidor Web). La aplicacin Servidor se comunica con la base de datos gracias a la utilizacin de ADO.NET (conjunto de clases que exponen servicios de acceso a datos para el programador de .NET) en su cdigo, mientras que, gracias a los servicios Web de Microsoft, se pueden realizar llamadas a la aplicacin Servidor desde la red o Internet. Por ltimo, la forma de comunicarse cada una de las aplicaciones Cliente con la aplicacin Servidor es mediante servicios Web, basado en protocolos (dentro de los cuales se encuentra SOAP basado en XML) y estndares abiertos. La aplicacin Servidor se encontrar en un servidor Web que recibir las peticiones y enviar la informacin necesaria a los diferentes Clientes.

37

Captulo 3 - Manual del usuario

Captulo 3 Manual del usuario


3.1 Introduccin al manual de usuario.
La finalidad de este captulo ser proporcionar al usuario la documentacin necesaria para la utilizacin del sistema. Se incluirn instrucciones para la instalacin, configuracin y ejecucin del software necesario tanto para el Servidor como para el Cliente, as como el manual del interfaz grfico del Cliente. El manual del usuario est dividido en los siguientes apartados: Requisitos del Sistema de Localizacin de Camiones. Instalacin y configuracin de .NET Framework 2.0. Instalacin y configuracin de los requisitos especficos del Servidor. Instalacin y configuracin de la aplicacin Servidor. Instalacin y configuracin de la aplicacin Cliente. Manual de usuario del Cliente. o o o o o Ejecucin y entorno principal de la aplicacin Cliente. Descripcin del entorno grfico principal del Cliente. Descripcin de la informacin representada en cada pestaa. Descripcin de los formularios disponibles. Descripcin de las herramientas para mostrar puntos y rutas en Google Earth.

3.2 Requisitos del Sistema de Localizacin de Camiones.


Debido a que el Sistema est compuesto por tres elementos principales, cada uno de ellos tendr unos requisitos para su correcto funcionamiento. Tanto la base de datos como la aplicacin Servidor se encontrarn en una computadora situada en la red, mientras que las aplicaciones Cliente se encontrarn en las computadoras de los usuarios. Todos estos Clientes se conectarn con el Servidor utilizando SOAP.

3.3 Requisitos del Servidor.


En la computadora que funciona como Servidor se necesitar tener instalado el siguiente software: Microsoft SQL Server o Microsoft SQL Server Express para la base de datos. El entorno de ejecucin .NET Framework 2.0 para la aplicacin Servidor.

38

Captulo 3 - Manual del usuario

El servidor Web de IIS (Internet Information Services) de Microsoft Windows.

3.4 Requisitos de los Clientes.


Cualquier usuario que desee utilizar el Cliente del sistema necesitar tener instalado el entorno de ejecucin .NET Framework 2.0.

3.5 Instalacin y configuracin de .NET Framework 2.0.


El nico requisito comn al Servidor y a los Clientes ser tener instalado .NET Framework 2.0, el cual se puede descargar gratuitamente por Internet desde Microsoft. Una vez instalado .NET Framework 2.0 se podrn ejecutar tanto la aplicacin Cliente como la aplicacin Servidor.

3.6 Instalacin y configuracin de los elementos especficos del Servidor.


Como ya se ha comentado en los requisitos del Servidor, adems de necesitar .NET Framework 2.0, se necesita tener instalado la base de datos y el servidor Web. En los prximos subapartados se explicar detalladamente cmo instalar y configurar estos componentes en el Servidor. En el caso de la base de datos, se darn instrucciones para su instalacin y configuracin. Esto slo se har para la base de datos usada (Microsoft SQL Server Express) y no para otra.

3.6.1 Instalacin y configuracin de Microsoft SQL Server Express.


Esta base de datos se puede descargar gratuitamente por Internet desde Microsoft. Su instalacin es sencilla y tan slo hay que seguir los pasos explicados durante la instalacin. Una vez descargada e instalada la base de datos con las opciones elegidas por el administrador del sistema se proceder a instalar la herramienta SQL Server Management Studio Express para la gestin y la configuracin de la base de datos. sta herramienta se puede obtener gratuitamente por Internet desde Microsoft. Con SQL Server Management Studio Express instalado, se proceder a aadir la base de datos del Sistema de Localizacin de Camiones y a configurar los permisos de acceso para el correcto funcionamiento. Tras entrar en SQL Server Management Studio Express y haberse autenticado, se adjuntar la base de datos del Sistema de Localizacin de Camiones. Para ello, en el Explorador de soluciones haremos clic con el botn derecho del ratn y elegiremos la opcin Adjuntar, obteniendo la siguiente ventana:

39

Captulo 3 - Manual del usuario

Ilustracin 9. Captura de cmo adjuntar una base de datos con SSMSEE.

En esta ventana se elegir Agregar y se seleccionar el archivo LocalizacionCamiones.mdf que contiene la base de datos del Sistema de Localizacin de Camiones. Una vez hecho esto, restar configurar los permisos de acceso a la base de datos. Para hacer esto, se hace clic con el botn derecho del ratn encima del nombre del servidor de la base de datos en el Explorar de soluciones y se elije Propiedades. La ventana que aparecer ser la siguiente:

40

Captulo 3 - Manual del usuario

Ilustracin 10. Captura de cmo configurar los permisos de acceso a SQL Server.

En Permisos -> public se marcarn todas las filas de la columna WITH GRANT y se aceptarn los cambios. Llegado este punto, la base de datos estar correctamente configurada y ser accesible por la aplicacin Servidor.

3.6.2 Instalacin y configuracin del Servidor Web de IIS de Microsoft.


IIS (Internet Information Services) es una serie de servicios para los ordenadores que funcionan con Windows y a menudo viene incluido en l. Este servicio convierte un ordenador en un servidor de Internet o Intranet. En las computadoras que tienen este servicio instalado se pueden publicar pginas Web tanto local como remotamente (servidor Web). El servidor Web de IIS se basa en varios mdulos que le dan capacidad para procesar distintos tipos de pginas, por ejemplo Microsoft incluye los de Active Server Pages (ASP) y ASP.NET. Tambin pueden ser incluidos los de otros fabricantes, como PHP o Perl. Para poder instalar la versin del servidor Web de IIS, necesario para el Sistema, hay que tener alguna de las siguientes versiones de Windows:

IIS 5.0, Windows 2000. IIS 5.1, Windows XP Professional. IIS 6.0, Windows Server 2003 y Windows XP Professional x64 Edition. 41

Captulo 3 - Manual del usuario

IIS 7.0, Windows Vista y Windows Server 2008.

Para la instalacin del servidor Web se har desde Agregar y quitar programas del Panel de control. Desde ah se acceder a Agregar o quitar componentes de Windows y se marcar el elemento mostrado en la siguiente imagen:

Ilustracin 11. Captura de instalacin de IIS.

Por defecto, al marcar esta casilla se instalar el servidor Web y el servidor FTP. Dado que el servidor FTP no es necesario para el Sistema de Localizacin de Camiones se podr evitar su instalacin desmarcndolo en los Detalles de este elemento.

3.7 Instalacin y configuracin de la aplicacin Servidor.


Para la instalacin de la aplicacin Servidor habr que copiar el directorio WebSite en la ruta C:\Inetpub\wwwroot y configurar el archivo Web.config que se encuentra en dicho directorio. Los directorios C:\Inetpub y C:\Inetpub\wwwroot sern creados automticamente al instalar el servidor Web que viene con el IIS de Windows. A continuacin es necesario configurar las propiedades del servidor Web para que reconozca el contenido del directorio como una aplicacin, ya que en caso contrario no funcionar el servicio Web. Para realizar esto, se hace clic con el botn derecho del ratn encima del icono de Mi Pc y se selecciona Administrar, obteniendo la siguiente ventana:

42

Captulo 3 - Manual del usuario

Ilustracin 12. Captura Administracin de equipos.

Dentro de Servicios de Internet Information Server -> Sitios Web -> Sitio Web predeterminado se encuentra ahora el directorio que anteriormente se ha copiado en wwwroot. Haciendo clic con el botn derecho del ratn y entrando en las Propiedades del directorio WebSite se mostrar una ventana como la siguiente:

Ilustracin 13. Captura de cmo configurar la aplicacin en el servidor Web.

En la ventana que aparece se pulsar sobre el botn Crear, opcin sealada en la imagen anterior. Una vez realizado esto, sin realizar ninguna accin ms, se aceptarn los cambios y se saldr de la ventana de administracin de Windows. Como ltimo paso para la configuracin del Servidor, restar modificar el archivo Web.config localizado en el directorio WebSite. En este archivo se deber especificar el nombre del servidor SQL y el nombre de la base de datos. La lnea a cambiar en el archivo Web.config es la siguiente (mostrada con los campos configurados por defecto): 43

Captulo 3 - Manual del usuario

< add key="cnStr" value="server=JUSTO-LAPTOP\SQLEXPRESS; database=LocalizacionCamiones; Integrated Security=SSPI" />

En esta lnea se pasa a la aplicacin una serie de parmetros: server: tras el smbolo = se indica el nombre de la computadora y el nombre del servidor SQL, separados por el smbolo \. database: tras el smbolo = se especifica el nombre de la base de datos del Sistema de Localizacin de Camiones. Integrated Security: se especifica el modo de seguridad integrada usada.

3.8 Instalacin y configuracin de la aplicacin Cliente


La aplicacin Cliente no ser necesario instalarla pero, antes de su ejecucin, habr que modificar los parmetros necesarios para que pueda comunicarse con el Servidor de forma remota. Para indicar la direccin del Servidor se deber editar el archivo LocalizacionCamionesCliente.exe.config situado en el directorio que contiene los ejecutables del Cliente. Dentro de este archivo se modificar el contenido que hay entre los tags <value> </value> por la direccin en la que se encuentre el archivo Service.asmx, en el Servidor. Si se siguieron los pasos explicados en el apartado referido a la Instalacin y configuracin de la aplicacin Servidor, el contenido que habr entre los tags <value> </value> deber tener el siguiente formato:

http://IP_Servidor/WebSite/Service.asmx

Una vez realizado esto, y si se ha configurado todo correctamente, el Cliente al ejecutarse se conectar con la base de datos ubicada en el Servidor.

3.9 Manual del usuario del Cliente


3.9.1 Introduccin
Una vez se han configurado todos los componentes del Sistema de Localizacin de Camiones, cada uno de los usuarios puede pasar a ejecutar el Cliente. Si alguna de las configuraciones no es correcta o no existe comunicacin con el Servidor no se podr conectar y se ir obteniendo un mensaje de error por cada una de las conexiones fallidas que ocurran. En caso de que aparezcan problemas obteniendo los datos del Servidor, se deber revisar ms detenidamente la configuracin realizada en busca de posibles errores.

44

Captulo 3 - Manual del usuario

El interfaz de usuario para el Cliente ha sido diseado para ser intuitivo, fcil y claro. Su distribucin est basada en la representacin de los datos agrupados en pestaas. Cada pestaa agrupa datos asociados directamente y tiene una serie de formularios para realizar la creacin, modificacin, eliminacin y filtrado de datos de forma sencilla visualmente. A continuacin se irn describiendo cada uno de los elementos del interfaz, as como los diferentes pasos necesarios para realizar cada una de las posibles tareas.

3.9.2 Ejecucin y entorno principal de la aplicacin Cliente.


En el directorio de la aplicacin Cliente el ejecutable es el archivo LocalizacionCamionesCliente.exe. Tras la ejecucin de la aplicacin Cliente se mostrar una ventana como la siguiente:

Ilustracin 14. Captura entorno principal de la aplicacin Cliente.

3.9.3 Descripcin del entorno grfico principal


Los elementos presentes en la ventana principal de la aplicacin Cliente son los siguientes: 1. Archivo. Muestra un men desplegable con las siguientes opciones: a. Guardar tabla actual en formato XML: Permite los datos mostrados en la pestaa actual en fichero XML. b. Salir: Permite salir de la aplicacin. 45

Captulo 3 - Manual del usuario

2. Edicin. Muestra un men desplegable con las siguientes opciones: a. Nuevo: Muestra un formulario para crear una nueva entrada en la tabla mostrada en la pestaa activa en ese momento. b. Eliminar: Muestra un formulario para elegir la entrada a eliminar de la tabla mostrada en la pestaa activa en ese momento. c. Modificar: Muestra un formulario para modificar la entrada elegida de la tabla mostrada en la pestaa activa en ese momento. d. Filtrar: Muestra un formulario para elegir la columna y la cadena a buscar en la tabla mostrada en la pestaa activa en ese momento. e. Limpiar Filtro: Elimina la tabla secundaria que aparece al aplicar un filtro en la pestaa activa en ese momento. f. Actualizar Tabla: Actualiza los datos mostrados en la tabla activa en ese momento.

g. Configurar Pedido: Independientemente de la pestaa que se encuentre activa en ese momento, aparecer un formulario que permitir asociar a un pedido un contexto. Un contexto se interpreta como un viaje, el cual tendr asociado un conductor, un camin, un remolque y un tem. Si se desea modificar alguno de los contextos, estando con la pestaa ConfiguracinPedidos activa se deber acceder al formulario para modificar datos de esa pestaa. 3. Herramientas. Muestra un men desplegable con las siguientes opciones: a. Ver posicin actual de un tem: Muestra un formulario en el que se selecciona el identificador del tem del que se quiere saber la posicin actual. b. Ver ruta de un pedido: Muestra un formulario en el que se selecciona el identificador del tem del que se quiere ver la ruta. Esta ruta ser la que ha seguido desde que sali de su origen, cursando el ltimo contexto que le fue asignado. 4. Ayuda: Muestra un men desplegable con las siguientes opciones: a. Acerca de: Muestra los crditos de la aplicacin. 5. Botn Nuevo: Muestra un formulario para crear una nueva entrada en la tabla mostrada en la pestaa activa en ese momento. 6. Botn Eliminar: Muestra un formulario para elegir la entrada a eliminar de la tabla mostrada en la pestaa activa en ese momento. 7. Botn Modificar: Muestra un formulario para modificar la entrada elegida de la tabla mostrada en la pestaa activa en ese momento. 8. Botn Filtrar: Muestra un formulario para elegir la columna y la cadena a buscar en la tabla mostrada en la pestaa activa en ese momento. 9. Botn Limpiar Filtro: Elimina la tabla secundaria que aparece al aplicar un filtro en la pestaa activa en ese momento. 10. Botn Actualizar Tabla: Actualiza los datos mostrados en la tabla activa en ese momento. 11. Botn Configurar Pedido: Independientemente de la pestaa que se encuentre activa en ese momento, aparecer un formulario que permitir asociar a un pedido un contexto. Un contexto se interpreta como un viaje, 46

Captulo 3 - Manual del usuario

el cual tendr asociado un conductor, un camin, un remolque y un tem. Si se desea modificar alguno de los contextos, estando con la pestaa ConfiguracinPedidos activa se deber acceder al formulario para modificar datos de esa pestaa. 12. Botn Ver posicin actual de un tem: Muestra un formulario en el que se selecciona el identificador del tem del que se quiere saber la posicin actual. 13. Botn Ver ruta de un pedido: Muestra un formulario en el que se selecciona el identificador del tem del que se quiere ver la ruta. Esta ruta ser la que ha seguido desde que sali de su origen, cursando el ltimo contexto que le fue asignado. 14. Botn Guardar: Independientemente de la pestaa que se encuentre activa en ese momento, aparecer un formulario que permitir asociar a un pedido un contexto. Un contexto se interpreta como un viaje, el cual tendr asociado un conductor, un camin, un remolque y un tem. Si se desea modificar alguno de los contextos, estando con la pestaa ConfiguracinPedidos activa se deber acceder al formulario para modificar datos de esa pestaa. 15. Pestaa Camiones: Muestra la informacin referente a los diferentes camiones registrados en la base de datos. 16. Pestaa Conductores: Muestra la informacin referente a los diferentes conductores registrados en la base de datos. 17. Pestaa ConfiguracinPedidos: Muestra informacin referente a los pedidos, as como la asignacin que se le ha realizado. 18. Pestaa Coordenadas: Muestra la informacin referente a las coordenadas de cada uno de los tems registrados en la base de datos. 19. Pestaa tems: Muestra la informacin referente a los diferentes dispositivos de localizacin registrados en la base de datos. 20. Pestaa Origenes/Destinos: Muestra informacin sobre los diferentes orgenes/destinos registrados en la base de datos. Normalmente sern almacenes de proveedores y de clientes. 21. Pestaa Pedidos: Muestra la informacin referente a los pedidos registrados en la base de datos. Una vez realizado un pedido, ste deber ser configurado. 22. Pestaa Propietarios: Muestra la informacin referente a los propietarios de los diferentes orgenes/destinos registrados en la base de datos. 23. Pestaa Remolques: Muestra la informacin referente a los diferentes remolques registrados en la base de datos. 24. Panel presente en todas las pestaas, en el que se mostrarn tablas para representar la informacin relacionada con cada una de dichas pestaas.

3.9.4 Descripcin de la informacin representada en cada pestaa.


Dado que cada pestaa contendr una tabla con una serie de campos cuyos nombres estarn abreviados, se explicar resumidamente qu es y qu representa cada uno de estos campos.

47

Captulo 3 - Manual del usuario

1. Descripcin pestaa Camiones. En la siguiente imagen se pueden ver los campos mostrados en esta pestaa:

Ilustracin 15. Captura de la pestaa Camiones.

a. Campo IDCamion: Nmero entero que representa el identificador que es asignado por la base de datos a cada uno de los camiones registrados. b. Campo NumeroBastidor: Cadena con el nmero de bastidor del camin. c. Campo Matricula: Cadena con la matrcula del camin. d. Campo Marca: Cadena con el fabricante del camin. e. Campo Modelo: Cadena con el modelo de camin. f. Campo Tipo: Cadena con el tipo de camin del que se trata. 2. Descripcin pestaa Conductores. En la siguiente imagen se pueden ver los campos mostrados en esta pestaa:

48

Captulo 3 - Manual del usuario

Ilustracin 16. Captura de la pestaa Conductores.

a. Campo IDConductor: Nmero entero que representa el identificador que es asignado por la base de datos a cada uno de los conductores registrados. b. Campo DNI: Cadena con el DNI del conductor. c. Campo Nombre: Cadena con el nombre del conductor. d. Campo 1Apellido: Cadena con el primer apellido del conductor. e. Campo 2Apellido: Cadena con el segundo apellido del conductor. f. Campo PermisoDeConducir: Cadena con el permiso de conducir del conductor. 3. Descripcin pestaa ConfiguracinPedidos. En la siguiente imagen se pueden ver los campos mostrados en esta pestaa:

49

Captulo 3 - Manual del usuario

Ilustracin 17. Captura de la pestaa ConfiguracinPedidos.

a. Campo CodigoCarga: Cadena con el cdigo que permite identificar una carga. Se debe de poner un cdigo diferente a la carga. b. Campo IDContexto: Nmero entero con el identificador del contexto (o viaje) al que se ha asociado el pedido. c. Campo IDConductor: Nmero entero con el identificador del conductor que cursa o cursar el pedido. d. Campo DniConductor: Cadena con el DNI del conductor que cursa o cursar el pedido. e. Campo IDCamion: Nmero entero con el identificador del camin que cursa o cursar el pedido. f. Campo NumeroBastidorCamion: Cadena con el nmero de bastidor del camin que cursa o cursar el pedido. g. Campo IDRemolque: Nmero entero con el identificador del remolque que cursa o cursar el pedido. h. Campo NumeroBastidorRemolque: Cadena con el nmero de bastidor del remolque que cursa o cursar el pedido. i. Campo IDItem: Nmero entero con el identificador del tem que permitir localizar al pedido. j. Campo CodigoItem: Cadena con el cdigo del tem que permitir localizar al pedido. 4. Descripcin pestaa Coordenadas. En la siguiente imagen se pueden ver los campos mostrados en esta pestaa:

50

Captulo 3 - Manual del usuario

Ilustracin 18. Captura de la pestaa Coordenadas.

a. Campo IDItem: Nmero entero con el identificador del tem al que pertenecen las coordenadas. b. Campo Contexto: Nmero entero con el identificador del contexto asociado al tem. c. Campo CoordenadasLatitud: Latitud de las coordenadas. d. Campo CoordenadasLongitud: Longitud de las coordenadas. e. Campo CoordenadasAltitud: Altitud de las coordenadas. f. Campo CoordenadasFecha: Fecha y hora a la que fueron registradas las coordenadas. 5. Descripcin pestaa Items. En la siguiente imagen se pueden ver los campos mostrados en esta pestaa:

51

Captulo 3 - Manual del usuario

Ilustracin 19. Captura de la pestaa Items.

a. Campo IDItem: Nmero entero con el identificador asociado por la base de datos al tem. b. Campo Codigo: Cadena con el cdigo asociado al tem. Podr ser desde un nmero de serie a un cdigo representativo arbitrario. c. Campo Fabricante: Cadena con el fabricante del tem o dispositivo de localizacin. d. Campo Modelo: Modelo del tem. e. Campo VersionFirmware: Cadena con el firmware y su versin. f. Campo FechaCompra: Fecha de la compra o del registro del tem. g. Campo ContextoActual: Nmero entero con el identificador del contexto que tiene asociado actualmente el tem. 6. Descripcin pestaa Origenes/Destinos. En la siguiente imagen se pueden ver los campos mostrados en esta pestaa:

52

Captulo 3 - Manual del usuario

Ilustracin 20. Captura de la pestaa OrigenesDestinos.

a. Campo IDOrigenDestino: Nmero entero con el identificador del origen/destino. b. Campo IDPropietario: Nmero entero con el identificador del propietario al que pertenece el origen/destino. c. Campo Direccion: Cadena con la direccin del origen/destino. d. Campo Numero: Cadena con el nmero del domicilio. e. Campo Ciudad: Cadena con la ciudad a la que pertenece el origen/destino. f. Campo Provincia: Cadena con la provincia a la que pertenece el origen/destino. g. Campo Region: Cadena con la regin a la que pertenece el origen/destino. h. Campo Pais: Cadena con el pas al que pertenece el origen/destino. i. Campo CodigoPostal: Cadena con el cdigo postal del origen/destino. j. Campo CoordenadasLatitud: Latitud de las coordenadas en las que se encuentra el origen/destino. k. Campo CoordenadasLongitud: Longitud de las coordenadas en las que se encuentra el origen/destino. l. Campo CoordenadasAltitud: Altitud de las coordenadas en las que se encuentra el origen/destino. 7. Descripcin pestaa Pedidos. En la siguiente imagen se pueden ver los campos mostrados en esta pestaa:

53

Captulo 3 - Manual del usuario

Ilustracin 21. Captura de la pestaa Pedidos.

a. Campo IDCarga: Nmero entero con el identificador asociado por la base de datos al pedido. b. Campo IDContexto: Nmero entero con el identificador del contexto al que est asociado el pedido. c. Campo IDItem: Nmero entero con el identificador del tem asociado al pedido. d. Campo CodigoItem: Cadena con el cdigo del tem asociado al pedido. e. Campo CodigoCarga: Cadena con el cdigo identificativo del pedido. f. Campo TipoCarga: Cadena con el tipo de carga del pedido. g. Campo ClaseCarga: Clase de carga del pedido. Ejemplo: en el caso de melones de galia, melones sera el tipo de carga y galia sera la clase de carga. h. Campo PesoCarga: Peso del pedido. i. Campo IDOrigen: Identificador del origen de la carga. j. Campo CiudadOrigen: Ciudad de origen de la carga. k. Campo IDDestino: Identificador del destino de la carga. l. Campo CiudadDestino: Ciudad de destino de la carga. m. Campo IDConductor: Identificador del conductor encargado de entregar el pedido. n. Campo DniConductor: DNI del conductor encargado de entregar el pedido. o. Campo IDCamion: Identificador del camin encargado de llevar el pedido. p. Campo NumeroBastidorCamion: Nmero de bastidor del camin encargado de llevar el pedido.

54

Captulo 3 - Manual del usuario

q. Campo IDRemolque: Identificador del remolque llevado por el camin. r. Campo NumeroBastidorRemolque: Nmero de bastidor del remolque llevado por el camin. 8. Descripcin pestaa Propietarios. En la siguiente imagen se pueden ver los campos mostrados en esta pestaa:

Ilustracin 22. Captura de la pestaa Propietarios.

a. Campo IDPropietario: Nmero entero con el identificador del propietario al que pertenece uno o varios orgenes/destinos (normalmente sern almacenes o fbricas). b. Campo Cif/Dni/Nif: Dependiendo de si el propietario es una persona o una empresa se utilizar uno u otro. c. Campo NombreFiscal: En el caso de que el propietario sea una empresa aqu se introducir su nombre fiscal. d. Campo NombreComercial: En el caso de que el propietario sea una empresa aqu se introducir su nombre comercial. e. Campo NombrePropietario: En el caso de que el propietario sea una persona aqu se introducir su nombre. f. Campo Apellido1Propietario: En el caso de que el propietario sea una persona aqu se introducir su primer apellido. g. Campo Apellido2Propietario: En el caso de que el propietario sea una persona aqu se introducir su segundo apellido. h. Campo Telefonos: Telfono/Telfonos de contacto.

55

Captulo 3 - Manual del usuario

9. Descripcin pestaa Remolques. En la siguiente imagen se pueden ver los campos mostrados en esta pestaa:

Ilustracin 23. Captura de la pestaa Remolques.

a. Campo IDRemolque: Nmero entero que representa el identificador que es asignado por la base de datos a cada uno de los remolques registrados. b. Campo NumeroBastidor: Cadena con el nmero de bastidor del remolque. c. Campo Matricula: Cadena con la matrcula actual del remolque. d. Campo Marca: Cadena con el fabricante del remolque. e. Campo Modelo: Cadena con el modelo de remolque. f. Campo Tipo: Cadena con el tipo de remolque del que se trata.

3.9.5 Descripcin de los formularios disponibles


Como ya se ha comentado anteriormente, en cada una de las pestaas se puede acceder a una serie de formularios para poder crear, modificar, eliminar y filtrar la informacin mostrada en las tablas. Los formularios que se mostrarn dependern de la pestaa que est activa. Por ejemplo, al estar la pestaa Camiones activa, los formularios que se mostrarn al pulsar sobre Nuevo, Eliminar, Modificar o Filtrar sern los correspondientes a esta pestaa. A continuacin se describir brevemente cada uno de los formularios y se explicar qu contenido deber introducirse en cada uno de los campos disponibles de

56

Captulo 3 - Manual del usuario

cada formulario. Para su descripcin se seguir el orden en el que son mostradas las diferentes pestaas. 1. Formularios disponibles para la pestaa Camiones: 1.1. Formulario para crear un nuevo registro: Permite registrar un nuevo camin en la base de datos.

Ilustracin 24. Captura del formulario para registrar un camin.

1.1.1. 1.1.2. 1.1.3. 1.1.4. 1.1.5.

Cadena con el nmero de bastidor del camin. No permite valor nulo. Cadena con la matrcula del camin. No permite valor nulo. Cadena con el fabricante del camin. No permite valor nulo. Cadena con el modelo del camin. No permite valor nulo. Cadena con el tipo del camin. S permite valor nulo.

1.2. Formulario para eliminar un registro: Permite eliminar los datos de un camin registrado en la base de datos. Seleccionando la opcin deseada, se podr eliminar el camin por su identificador, por su matrcula o por su nmero de bastidor.

Ilustracin 25. Captura del formulario para eliminar un camin.

57

Captulo 3 - Manual del usuario

1.2.1. Identificador del camin a eliminar. 1.2.2. Matrcula del camin a eliminar. 1.2.3. Nmero de bastidor del camin a eliminar. 1.3. Formulario para modificar un registro: Permite modificar los datos de un camin registrado en la base de datos.

Ilustracin 26. Captura del formulario para modificar un camin.

1.3.1. 1.3.2. 1.3.3. 1.3.4. 1.3.5. 1.3.6.

Identificador del camin a modificar. No permite valor nulo. Cadena con el nmero de bastidor del camin. No permite valor nulo. Cadena con la matrcula del camin. No permite valor nulo. Cadena con el fabricante del camin. No permite valor nulo. Cadena con el modelo del camin. No permite valor nulo. Cadena con el tipo del camin. S permite valor nulo.

1.4. Formulario para filtrar datos: Permite filtrar los datos de la tabla.

Ilustracin 27. Captura del formulario para filtrar los camiones.

1.4.1. Nombre de la columna en la que buscar datos. 1.4.2. Cadena a buscar en la columna seleccionada en el anterior campo.

58

Captulo 3 - Manual del usuario

2. Formularios disponibles para la pestaa Conductores: 2.1. Formulario para crear un nuevo registro: Permite registrar un nuevo conductor en la base de datos.

Ilustracin 28. Captura del formulario para crear un conductor.

2.1.1. 2.1.2. 2.1.3. 2.1.4. 2.1.5.

Cadena con el DNI del conductor. No permite valor nulo. Cadena con el nombre del conductor. No permite valor nulo. Cadena con el primer apellido del conductor. No permite valor nulo. Cadena con el segundo apellido del conductor. No permite valor nulo. Cadena con el permiso de conducir del conductor. No permite nulos.

2.2. Formulario para eliminar un registro: Permite eliminar los datos de un conductor registrado en la base de datos. Seleccionando la opcin deseada, se podr eliminar el conductor por su identificador o por su DNI.

Ilustracin 29. Captura del formulario para eliminar un conductor.

2.2.1. Identificador del conductor a eliminar. 2.2.2. Cadena con el DNI del conductor a eliminar. 2.3. Formulario para modificar un registro: Permite modificar los datos de un conductor registrado en la base de datos.

59

Captulo 3 - Manual del usuario

Ilustracin 30. Captura del formulario para modificar un conductor.

2.3.1. 2.3.2. 2.3.3. 2.3.4. 2.3.5. 2.3.6.

Identificador del conductor a modificar. No permite valor nulo. Cadena con el DNI del conductor. No permite valor nulo. Cadena con el nombre del conductor. No permite valor nulo. Cadena con el primer apellido del conductor. No permite valor nulo. Cadena con el segundo apellido del conductor. No permite valor nulo. Cadena con el permiso de conducir del conductor. No permite nulos.

2.4. Formulario para filtrar datos: Permite filtrar los datos de la tabla.

Ilustracin 31. Captura del formulario para filtrar conductores.

2.4.1. Nombre de la columna en la que buscar datos. 2.4.2. Cadena a buscar en la columna seleccionada en el anterior campo. 3. Formularios disponibles para la pestaa ConfiguracinPedidos: 3.1. Formulario para crear un nuevo registro: Permite registrar un nuevo contexto o viaje en la base de datos.

60

Captulo 3 - Manual del usuario

Ilustracin 32. Captura del formulario para crear un contexto.

3.1.1. 3.1.2. 3.1.3. 3.1.4.

Identificador del conductor a asociar al contexto. S permite valor nulo. Identificador del camin a asociar al contexto. S permite valor nulo. Identificador del remolque a asociar al contexto. S permite valor nulo. Identificador del tem a asociar al contexto. S permite valor nulo.

3.2. Formulario para eliminar un registro: Permite eliminar los datos de un contexto o viaje registrado en la base de datos.

Ilustracin 33. Captura del formulario para eliminar un contexto.

3.2.1. Identificador del contexto a eliminar. No permite valor nulo. 3.3. Formulario para modificar un registro: Permite modificar los datos de un contexto registrado en la base de datos.

61

Captulo 3 - Manual del usuario

Ilustracin 34. Captura del formulario para modificar un contexto.

3.3.1. 3.3.2. 3.3.3. 3.3.4. 3.3.5.

Identificador del contexto a modificar. No permite valor nulo. Identificador del conductor a asociar al contexto. S permite valor nulo. Identificador del camin a asociar al contexto. S permite valor nulo. Identificador del remolque a asociar al contexto. S permite valor nulo. Identificador del tem a asociar al contexto. S permite valor nulo.

3.4. Formulario para filtrar datos: Permite filtrar los datos de la tabla.

Ilustracin 35. Captura del formulario para filtrar contextos.

3.4.1. Nombre de la columna en la que buscar datos. 3.4.2. Cadena a buscar en la columna seleccionada en el anterior campo. 4. Formularios disponibles para la pestaa Coordenadas: 4.1. Formulario para filtrar datos: Permite filtrar los datos de la tabla.

62

Captulo 3 - Manual del usuario

Ilustracin 36. Captura del formulario para filtrar coordenadas.

4.1.1. Nombre de la columna en la que buscar datos. 4.1.2. Cadena a buscar en la columna seleccionada en el anterior campo. 5. Formularios disponibles para la pestaa Items: 5.1. Formulario para crear un nuevo registro: Permite registrar un nuevo tem en la base de datos.

Ilustracin 37. Captura del formulario para crear un item.

5.1.1. Cadena con el cdigo o nmero de serie del tem. No permite valor nulo. 5.1.2. Cadena con el fabricante del tem. No permite valor nulo. 5.1.3. Cadena con el modelo del tem. No permite valor nulo. 5.1.4. Cadena con el firmware o su versin. S permite valor nulo. 5.1.5. Entero con el ao de la compra del tem. S permite valor nulo. 5.1.6. Entero con el mes de la compra del tem. S permite valor nulo. 5.1.7. Entero con el da de la compra del tem. S permite valor nulo. 5.2. Formulario para eliminar un registro: Permite eliminar los datos de un tem registrado en la base de datos. Seleccionando la opcin deseada, se podr eliminar el tem por su identificador o por su cdigo.

63

Captulo 3 - Manual del usuario

Ilustracin 38. Captura del formulario para eliminar un item.

5.2.1. Identificador del tem a eliminar. 5.2.2. Cadena con el cdigo del tem a eliminar. 5.3. Formulario para modificar un registro: Permite modificar los datos de un tem registrado en la base de datos.

Ilustracin 39. Captura del formulario para modificar un item.

5.3.1. Identificador del tem a modificar. No permite valor nulo. 5.3.2. Cadena con el cdigo o nmero de serie del tem. No permite valor nulo. 5.3.3. Cadena con el fabricante del tem. No permite valor nulo. 5.3.4. Cadena con el modelo del tem. No permite valor nulo. 5.3.5. Cadena con el firmware o su versin. S permite valor nulo. 5.3.6. Entero con el ao de la compra del tem. S permite valor nulo. 5.3.7. Entero con el mes de la compra del tem. S permite valor nulo. 5.3.8. Entero con el da de la compra del tem. S permite valor nulo. 5.4. Formulario para filtrar datos: Permite filtrar los datos de la tabla.

64

Captulo 3 - Manual del usuario

Ilustracin 40. Captura del formulario para filtrar tems.

5.4.1. Nombre de la columna en la que buscar datos. 5.4.2. Cadena a buscar en la columna seleccionada en el anterior campo. 6. Formularios disponibles para la pestaa Orgenes/Destinos: 6.1. Formulario para crear un nuevo registro: Permite registrar un nuevo origen/destino en la base de datos.

Ilustracin 41. Captura del formulario para crear un origen/destino.

6.1.1. 6.1.2. 6.1.3. 6.1.4. 6.1.5. 6.1.6. 6.1.7. 6.1.8. 6.1.9.

Identificador del origen/destino. No permite valor nulo. Identificador del propietario del origen/destino. S permite valor nulo. Cadena con la direccin del origen/destino. No permite valor nulo. Cadena con el nmero de la direccin. S permite valor nulo. Cadena con la ciudad del origen/destino. No permite valor nulo. Cadena con la provincia del origen/destino. S permite valor nulo. Cadena con la regin del origen/destino. No permite valor nulo. Cadena con el pas del origen/destino. No permite valor nulo. Cadena con el cdigo postal del origen/destino. S permite valor nulo. 65

Captulo 3 - Manual del usuario

6.1.10. Latitud del origen/destino. S permite valor nulo. 6.1.11. Longitud del origen/destino. S permite valor nulo. 6.1.12. Altitud del origen/destino. S permite valor nulo. 6.2. Formulario para eliminar un registro: Permite eliminar los datos de un origen/destino registrado en la base de datos.

Ilustracin 42. Captura del formulario para eliminar un origen/destino.

6.2.1. Identificador del origen/destino a eliminar. 6.3. Formulario para modificar un registro: Permite modificar los datos de un origen/destino registrado en la base de datos.

Ilustracin 43. Captura del formulario para modificar un origen/destino.

6.3.1. 6.3.2. 6.3.3. 6.3.4.

Identificador del origen/destino. No permite valor nulo. Identificador del propietario del origen/destino. S permite valor nulo. Cadena con la direccin del origen/destino. No permite valor nulo. Cadena con el nmero de la direccin. S permite valor nulo. 66

Captulo 3 - Manual del usuario

6.3.5. Cadena con la ciudad del origen/destino. No permite valor nulo. 6.3.6. Cadena con la provincia del origen/destino. S permite valor nulo. 6.3.7. Cadena con la regin del origen/destino. No permite valor nulo. 6.3.8. Cadena con el pas del origen/destino. No permite valor nulo. 6.3.9. Cadena con el cdigo postal del origen/destino. S permite valor nulo. 6.3.10. Latitud del origen/destino. S permite valor nulo. 6.3.11. Longitud del origen/destino. S permite valor nulo. 6.3.12. Altitud del origen/destino. S permite valor nulo. 6.4. Formulario para filtrar datos: Permite filtrar los datos de la tabla.

Ilustracin 44. Captura del formulario para filtrar orgenes/destinos.

6.4.1. Nombre de la columna en la que buscar datos. 6.4.2. Cadena a buscar en la columna seleccionada en el anterior campo. 7. Formularios disponibles para la pestaa Pedidos: 7.1. Formulario para crear un nuevo registro: Permite registrar un nuevo pedido en la base de datos.

Ilustracin 45. Captura del formulario para crear un pedido.

7.1.1. 7.1.2. 7.1.3. 7.1.4.

Cadena con el cdigo del pedido. No permite valor nulo. Cadena con el tipo del pedido. S permite valor nulo. Cadena con la clase del pedido. S permite valor nulo. Peso del pedido. S permite valor nulo. 67

Captulo 3 - Manual del usuario

7.1.5. Identificador del origen del pedido. S permite valor nulo. 7.1.6. Identificador del destino del pedido. S permite valor nulo. 7.2. Formulario para eliminar un registro: Permite eliminar los datos de un pedido registrado en la base de datos. Seleccionando la opcin deseada, se podr eliminar el pedido por su identificador o por su cdigo.

Ilustracin 46. Captura del formulario para eliminar un pedido.

7.2.1. Identificador del pedido a eliminar. 7.2.2. Cadena con el cdigo del pedido a eliminar. 7.3. Formulario para modificar un registro: Permite modificar los datos de un pedido registrado en la base de datos.

Ilustracin 47. Captura del formulario para modificar un pedido.

7.3.1. 7.3.2. 7.3.3. 7.3.4.

Identificador del pedido a modificar. No permite valor nulo. Cadena con el cdigo del pedido. No permite valor nulo. Cadena con el tipo del pedido. S permite valor nulo. Cadena con la clase del pedido. S permite valor nulo. 68

Captulo 3 - Manual del usuario

7.3.5. Peso del pedido. S permite valor nulo. 7.3.6. Identificador del origen del pedido. S permite valor nulo. 7.3.7. Identificador del destino del pedido. S permite valor nulo. 7.4. Formulario para filtrar datos: Permite filtrar los datos de la tabla.

Ilustracin 48. Captura del formulario para filtrar pedidos.

7.4.1. Nombre de la columna en la que buscar datos. 7.4.2. Cadena a buscar en la columna seleccionada en el anterior campo. 7.5. Formulario para configurar un pedido: Permite asociar una carga a un contexto.

Ilustracin 49. Captura del formulario para configurar un pedido.

7.5.1. Cdigo de la carga o pedido que se desea configurar. 7.5.2. Identificador del contexto al que asociar una carga o pedido. 8. Formularios disponibles para la pestaa Propietarios: 8.1. Formulario para crear un nuevo registro: Permite registrar un nuevo propietario en la base de datos.

69

Captulo 3 - Manual del usuario

Ilustracin 50. Captura del formulario para crear un propietario.

8.1.1. 8.1.2. 8.1.3. 8.1.4. 8.1.5. 8.1.6. 8.1.7.

Cadena con el CIF/DNI/NIF del propietario. No permite valor nulo. Cadena con el nombre fiscal del propietario. S permite valor nulo. Cadena con el nombre comercial del propietario. S permite valor nulo. Cadena con el nombre del propietario. S permite valor nulo. Cadena con el primer apellido del propietario. S permite valor nulo. Cadena con el segundo apellido del propietario. S permite valor nulo. Cadena con el/los telfono/s del propietario. S permite valor nulo.

8.2. Formulario para eliminar un registro: Permite eliminar los datos de un propietario registrado en la base de datos. Seleccionando la opcin deseada, se podr eliminar el propietario por su identificador o por su CIF/DNI/NIF.

Ilustracin 51. Captura del formulario para eliminar un propietario.

8.2.1. Identificador del propietario a eliminar. 8.2.2. Cadena con el CIF/DNI/NIF del propietario a eliminar. 8.3. Formulario para modificar un registro: Permite modificar los datos de un propietario registrado en la base de datos.

70

Captulo 3 - Manual del usuario

Ilustracin 52. Captura del formulario para modificar un propietario.

8.3.1. 8.3.2. 8.3.3. 8.3.4. 8.3.5. 8.3.6. 8.3.7. 8.3.8.

Identificador del propietario a modificar. No permite valor nulo. Cadena con el CIF/DNI/NIF del propietario. No permite valor nulo. Cadena con el nombre fiscal del propietario. S permite valor nulo. Cadena con el nombre comercial del propietario. S permite valor nulo. Cadena con el nombre del propietario. S permite valor nulo. Cadena con el primer apellido del propietario. S permite valor nulo. Cadena con el segundo apellido del propietario. S permite valor nulo. Cadena con el/los telfono/s del propietario. S permite valor nulo.

8.4. Formulario para filtrar datos: Permite filtrar los datos de la tabla.

Ilustracin 53. Captura del formulario para filtrar propietarios.

8.4.1. Nombre de la columna en la que buscar datos. 8.4.2. Cadena a buscar en la columna seleccionada en el anterior campo. 9. Formularios disponibles para la pestaa Remolques: 9.1. Formulario para crear un nuevo registro: Permite registrar un nuevo remolque en la base de datos.

71

Captulo 3 - Manual del usuario

Ilustracin 54. Captura del formulario para crear un remolque.

9.1.1. 9.1.2. 9.1.3. 9.1.4. 9.1.5.

Cadena con el nmero de bastidor del remolque. No permite valor nulo. Cadena con la matrcula del remolque. No permite valor nulo. Cadena con el fabricante del remolque. No permite valor nulo. Cadena con el modelo del remolque. No permite valor nulo. Cadena con el tipo de remolque. S permite valor nulo.

9.2. Formulario para eliminar un registro: Permite eliminar los datos de un remolque registrado en la base de datos. Seleccionando la opcin deseada, se podr eliminar el remolque por su identificador o por su nmero de bastidor.

Ilustracin 55. Captura del formulario para eliminar un remolque.

9.2.1. Identificador del remolque a eliminar. 9.2.2. Cadena con el nmero de bastidor del remolque a eliminar. 9.3. Formulario para modificar un registro: Permite modificar los datos de un remolque registrado en la base de datos.

72

Captulo 3 - Manual del usuario

Ilustracin 56. Captura del formulario para modificar un remolque.

9.3.1. 9.3.2. 9.3.3. 9.3.4. 9.3.5. 9.3.6.

Identificador del remolque a eliminar. No permite valor nulo. Cadena con el nmero de bastidor del remolque. No permite valor nulo. Cadena con la matrcula del remolque. No permite valor nulo. Cadena con el fabricante del remolque. No permite valor nulo. Cadena con el modelo del remolque. No permite valor nulo. Cadena con el tipo de remolque. S permite valor nulo.

9.4. Formulario para filtrar datos: Permite filtrar los datos de la tabla.

Ilustracin 57. Captura del formulario para filtrar remolques.

9.4.1. Nombre de la columna en la que buscar datos. 9.4.2. Cadena a buscar en la columna seleccionada en el anterior campo.

3.9.6 Descripcin de las herramientas para mostrar puntos y rutas en Google Earth.
Una de las funcionalidades implementadas en la aplicacin Cliente es la capacidad de poder mostrar puntos y rutas, de los diferentes tems, en el Google Earth. Para poder acceder a estas herramientas se podr hacer desde el men Herramientas o desde los botones ubicados en la barra de botones.

73

Captulo 3 - Manual del usuario

La herramienta para mostrar la posicin de un tem visualiza en Google Earth la ltima posicin conocida de ste. Al acceder a la herramienta se muestra un cuadro de dilogo en el que se elige el tem que se desea localizar y, tras pulsar en Aceptar, se abre automticamente el Google Earth mostrando su ltima posicin conocida.

Ilustracin 58. Captura de la visualizacin en Google Earth de un punto.

La herramienta para mostrar la ruta seguida por un tem es muy similar a la existente para mostrar la posicin. La principal diferencia radica en que al mostrar una ruta se examina cul es el contexto que est cursando actualmente el tem y, cogiendo las coordenadas registradas con este contexto, se construye la ruta siguiendo los puntos ordenados por fecha.

Ilustracin 59. Captura de la visualizacin en Google Earth de una ruta.

74

Captulo 4 Conclusiones y lneas futuras

Captulo 4 Conclusiones y lneas futuras


4.1 Conclusiones.
4.1.1 Conclusiones de Microsoft SQL Server.
Las experiencias con Microsoft SQL Server han sido realmente positivas, sobre todo gracias a la herramienta de configuracin, SQL Server Management Studio, que proporciona Microsoft. Durante el desarrollo, SQL Server ha demostrado ser una de las bases de datos ms potentes que existe en la actualidad en el mercado. Realmente sera difcil decidir si es mejor o peor que otras bases de datos como MySQL o PostgreSQL, pero s est claro que si se va a desarrollar una aplicacin para Windows y se va a usar Visual Studio, es mejor usar SQL Server por la integracin con ste. El diseo de la base de datos ha sido tan sencillo como cuando se crean tablas en Microsoft Word. Tan slo es necesario crear la tabla, indicar los nombres de los campos, el tipo de datos de cada campo y configurar las propiedades deseadas en el panel de configuracin. Los principales puntos negativos que se pueden encontrar con esta base de datos son la mala documentacin proporcionada por MSDN y el elevado coste por MB en la versin completa. Existiendo otras alternativas gratuitas y ms compatibles con otros entornos de desarrollo, ya que no siempre saldr rentable optar por esta base de datos cuya versin gratuita contiene ciertas limitaciones importantes.

4.1.2 Conclusiones de Microsoft Visual Studio C#.


La implementacin en C# de una aplicacin tan compleja como la desarrollada en este Proyecto Fin de carrera, ha permitido aprender un lenguaje de programacin relativamente nuevo y desconocido para muchos. Durante el desarrollo, C# ha demostrado ser un lenguaje de programacin sencillo y potente. Gracias al compilador y al entorno de desarrollo Visual Studio, la programacin ha sido bastante sencilla y positiva si se compara con las experiencias con otros lenguajes en otros entornos de desarrollo. Como alumno, han sido varios los lenguajes de programacin utilizados a lo largo de la carrera y no es necesario mencionar los problemas que pueden dar otros lenguajes como C o C++. En este sentido, la aparicin de lenguajes como C# o Java aumentan la productividad en el desarrollo de aplicaciones, aunque este aumento de productividad conlleva un sacrificio en el consumo de recursos hardware. Por otro lado, Visual Studio y .NET Framework proporcionan muchas facilidades para la integracin con otros productos de Microsoft. As, cuando se utilizan las tecnologas de Microsoft, el desarrollo no presenta casi dificultades. Esto no ocurre as si no todos los productos pertenecen a Microsoft, en cuyo caso se presentara algunas dificultades en el desarrollo.

75

Captulo 4 Conclusiones y lneas futuras

La parte ms negativa en el desarrollo con C# ha sido la documentacin escasa y complicada que proporciona MSDN. En muchas ocasiones, frente a dudas surgidas durante el desarrollo, la documentacin proporcionada por los APIs de Microsoft no era suficiente. En este aspecto, Microsoft deber seguir trabajando para conseguir APIs similares a los proporcionados por Java, ya que por ahora no estn a la altura.

4.1.3 Conclusiones del Sistema de Localizacin.


Se ha conseguido desarrollar una aplicacin que cumple con los objetivos fijados en el inicio de este Proyecto Fin de Carrera. Esta primera versin no est libre de errores y ni exenta de futuras modificaciones para su futura mejora. Esta aplicacin no podr utilizarse todava en empresas, ya que antes de eso tendr que ser probada el tiempo suficiente y corregir todos los errores que existan. A pesar de ser una primera versin de pruebas, el resultado obtenido ha sido muy positivo, y puede incentivar la inversin en futuros desarrollos relacionados con este Proyecto Fin de Carrera. Ha sido muy positivo todo lo aprendido durante el desarrollo de este Proyecto Fin de Carrera. Los conocimientos obtenidos tanto de la estructura a seguir para este tipo de sistemas, como los conocimientos obtenidos con las herramientas utilizadas, son muy valiosos. Tras la experiencia tenida y observando detenidamente los diferentes sistemas de localizacin existentes, se puede valorar los grandes avances que se han hecho en este campo. Estos avances estaban accesibles para muy pocas personas hace unos aos, pero ahora casi cualquier persona puede realizar una sencilla aplicacin de localizacin utilizando las numerosas herramientas gratuitas disponibles en Internet.

4.2 Lneas futuras.


Los resultados obtenidos con esta primera versin de pruebas han sido bastante satisfactorios. A pesar de ello, para poder competir en el mercado ser necesario que se implementen nuevas funcionalidades y se mejores las ya implementadas. Durante el desarrollo de la aplicacin se han ido descubriendo fallos u otras formas mejores de implementar partes del cdigo. Por este motivo, si en un futuro se desea que esta aplicacin pueda competir en un mercado bastante reido, ser necesario mejorar la implementacin y la funcionalidad ofrecida. Como posibles futuras implementaciones, se puede sugerir aadir las siguientes funcionalidades al sistema: Representacin simultnea de todas las rutas y puntos en Google Earth. Distincin entre diferentes tipos de usuarios. Dependiendo del tipo de usuario que se sea, se podr acceder a unas funcionalidades u otras. Interfaces para poder usar otras bases de datos. Opciones de copia de seguridad. Mejor manejo de los errores ocurridos. Crear instalador para una rpida instalacin y configuracin del sistema. Permitir mandar a los vehculos la ruta que se desea que sigan.

76

Captulo 5 - Bibliografa

Captulo 5 Bibliografa
BIBLIOGRAFA DE MICROSOFT SQL SERVER EXPRESS [1] Documentacin MSDN de Microsoft. http://msdn2.microsoft.com/es-es/library/ms203721.aspx [2] Microsoft SQL Server 2005 Express Edition for Dummies. Robert Schneider; Wiley Publishing, Inc. BIBLIOGRAFA DE VISUAL STUDIO C# 2005 EXPRESS EDITION [4] Documentacin MSDN de Microsoft. http://msdn2.microsoft.com/es-es/library/kx37x362(VS.80).aspx [5] Pro C# 2005 and the .NET Platform, Third Edition. Andrew Troelsen; Apress. [6] Expert C# 2005 Business Objects, Second Edition. Rockford Lhotka; Apress. BIBLIOGRAFA DE GOOGLE EARTH [7] Documentacin KML de Google. http://code.google.com/apis/kml/documentation/index.html [8] Hacking Google Maps and Google Earth. Martin C. Brown; Wiley Publishing, Inc.

77

También podría gustarte