Informe Proyecto Programación de Sistemas ELO-330: Sistema de Denuncias

Autor de Proyecto

Resumen

La presente página dará a conocer un proyecto realizado en el ramo Elo-330 "Programación de Sistemas". En esta detallará en qué consiste el proyecto, cuales fueron las motivaciones para realizar así cómo cuál fue la implementación de este.

Introducción

Muchos de nosotros hemos experimentado una serie de irregularidades en el sistema público en general , que afectan de una u otra forma la manera en que vivimos. Irregularidades que afectan a el bolsillo, a el estado de ánimo de las personas, entre muchas otras. Ejemplos de aquellos hay muchos, desde el pobre trato que realiza el conductor de la micro hacia un estudiante, hasta los "raros" cobros realizados por las empresas, el problema no radica básicamente en aquellos echos, si no, en que nadie es capaz de poder detener estos "abusos", dado que tampoco las personas realizan las denuncias respectivas. Esta es la razón principal del sistema, dar una ayuda a todas las personas que se sientan a llevar con aquellos echos, es decir, a través de este podrán realizar todas las denuncias que estimen convenientes. Este sistema, dado que aún se encuentra en desarrollo, sólo esta disponible para denuncias ligadas al trasporte público, por lo tanto cualquier problema que exista ya sea con el conductor, con la frecuencia de buses, con la alta demora de algunos, podrá ser denunciada bajo este programa.

Sistema de Denuncias

Que ofrece

EL programa está pensado para ofrecer una total transparencia de todos los problemas y abusos que ocurren en el sistema público, para así lograr una real mejora de este. En resumen todas las personas pasarán a ser entes fiscalizadores, reportando todo echo que ellos estimen conveniente. Todas las denuncias serán almacenadas en una base de datos ordenadas según el tipo de denuncia, dado que por ahora está diseñado para el transporte público, esta tendrá toda la información relacionada con el conductor, la empresa, la patente, lugar y fecha, como también información del denunciante.

Para que el sistema tenga una real ayuda, es necesario que cierto usuario (un real fiscalizador) posea acceso a toda la información que vaya siendo almacenada en las bases de datos,y que a la vez esta pueda ser manipulada. Este nuevo usuario no se encuentra totalmente desarrollado, sólo es posible observar a través de él, todos los usuarios registrados, como también los detalles de cada denuncia, cada una de las posibles mejores se comentarán más adelante.

Es decir que el sistema cuenta con hasta ahora 2 tipos de usuarios clientes, uno pensado y diseñado para todo tipo de personas, y otro para un agente fiscalizador encargado de tomar toda la información enviada por los denunciantes, y lograr determinar las medidas de actuación, para evitar que los problemas sigan ocurriendo. Además de aquellos 2, esta pensado que exista un tercer cliente, que sería denominado "Empresa", cuya labor sería de mantener totalmente actualizada la información de la empresa, es de decir, en este caso, dar a conocer toda la información de los conductores, de las micros, etc. Actualizandola constantemente de ser necesario. Este usuario, aún no ha sido implementado.

Implementación de cada parte del programa.

Servidor

El servidor es el encargado de administrar toda la información proporcionada por los clientes, por lo tanto, debe de poder atender a cada uno de ellos de una manera eficiente. Esto se logró realizando una programaciíon de multihilos, es decir, por cada cliente que necesesite conectarse con el servidor, este lo atenderá a través de un hilo. Por ahora este no posee distinción alguna sobre a quién se encuentra atendiendo, no hace diferencia sobre usuario normal,fiscalizador o empresa, dado que el servidor es capaz de realizar todas las labores para todos los clientes. Este es un punto importante a mejorar dado que, sería una atención mucho más eficaz, si la respuestas se realizan de forma individualizada.

Para que los clientes posean toda la información que deseen o sencillamente para registros de datos, es necesario que el servidor cuente con un buen manejo de una Base de Datos, para ello se implemento una conexión entre este , y MySQL, que es proporcionado gracias a XAMPP. Esta conexión permite a Java manejar de gran manera las tablas de la DB, logrando realizar todas las tareas como son, la creación de nuevas tablas, registrar/borrar/editar todo tipo de información. Esto es algo muy importante en este sistema, ya que garantiza una gran confiabilidad y respaldo de toda la información.

Servidor - Posibles Mejoras

Un servidor pensado para tal sistema, es necesario que cubra un sin fin de características, para así poder tener un programa 100% confiable, por ahora sólo se encuentra alojado en un computador normal, lo que no da muchas garantías, más si se posee una IP dinámica. Es por eso que , a modo de mejora, estaría involucrado todo el sistema que garantice el total funcionamiento del servidor, bajo todos los posibles panoramas. Además de brindar al usuario la mejor seguridad de sus datos personales.

Clientes

Cómo anteriormente de señaló, existen, en un principio, 3 distintos tipos de clientes, cada uno con diferentes carácteristicas y facultades, los que se dan a conocer a continuación.

Menú Inicial

Imágen correspondiente al menú inicial de cliente, para un manejo más fácil.

Cliente Denunciante

Está diseñado para que cualquier persona pueda usarlo, es decir, su interfaz esta desarrollada de tal manera, que permita una manipulación lo más autodidacta posible, logrando así, que cualquier persona, independiente de su edad, logre realizar la denuncia. Este cliente posee 3 funciones principales. La primera, es que, para realizar una denuncia, es necesario que la persona se encuentre registrada, esto es más que nada por un motivo de resguardo, ya que ayudaría a restringir ciertos datos que son enviados con otros fin, cómo lo son los engaños, enviar muchas denuncias para así perjudicar a alguien, entre muchas otras, en resumen actuaría como un pequeño filtro.

La segunda, es el sistema mismo de denuncia, se trató de realizar la interfaz más simple posible, donde el usuario sólo se limitaría a elegir el motivo de su denuncia, la patente de la micro, su nombre de usuario y contraseña, y si quiere, puede agregar un campo con algún comentario, para así agregar más detalles. Este campo es necesario estudiarlo más dado, que quizás, un ambiente tan simplificado, puede afectar al denunciante.

Y por último vendría la parte, donde cada persona pueda ver todas las denuncias realizadas con anterioridad, cómo también denuncias realizadas por otras personas, pero no observando los detalles de esta, si no que mostrando un resumen de toda la información. Esto se puede lograr (Dado que aún no es desarrollado) mostrando gráficos de información, como por ejemplo, gráficos mostrando las denuncias a cada una de las empresas del transporte, cuales son los mayores motivos, etc.

Menú Cliente Registro Cliente

Imágenes correspondientes a la interfaz de menú y sistema de registro del Usuario

Cliente Fiscalizador

Dado que será el encargado de actuar, de acuerdo a las denuncias que lleguen, este debe poseer acceso a toda la información que se encuentre almacenada. Por lo tanto debe poseer una interfaz amigable, que permita realizar todas las acciones de una manera fácil manteniendo todas los resguardos necesarios.

Por ahora sólo tiene implementado sólo dos grandes funciones, ver los usuarios registrados, y ver todas las denuncias. Ambas poseen la carácteristica que es posible buscar a través de ellas la información que se desee, filtrando el contenido bajo ciertos parámetros. Además, bajo la interfaz de denuncias es posible acceder a los detalles de ellas, obteniendo así todos los datos correspondientes a aquella denuncia. El encargado de juntar todos los datos es el servidor, dado que a partir de el nombre de usuario , puede obtener todos los datos del denunciante en la tabla de usuarios, cómo también así los datos del denunciado, a través de la patente se podrá obtener toda la información correspondiente. Una vez que el servidor tenga todos los datos, estos son enviados al fiscalizador para que puedan ser mostrados.

Dado, que está pensado a gran escala, una futura implementación sería dotar al fiscalizador de una pequeña base de datos, o algun tipo de memoria "ram" que permita guardar todos los datos que vayan siendo vistos, para lograr así una mejor experiencia, y no estar dependiendo tanto de la conexión de este con el servidor. Este cliente, es que puede tener la mayor cantidad de mejoras, se puede ofrecer una cantidad enorme de información, pero se debe encontrar el mejor método para mostrar de mejor manera al fiscalizador.

Menú Cliente Fiscalizador Detalles Denuncia

Imágenes correspondientes a la interfaz de menú y detalles de denuncia de un cliente fiscalizador

Cliente Empresa

Este "tipo" de cliente, aún no ha sido implementado, pero la idea básicamente, es que exista una persona encargada de actualizar todos los datos correspondiente a la empresa pública, dando a conocer la información de sus trabajadores cómo la de sus máquinas, cuales son sus nuevos conductores, las máquinas dadas de baja, etc. Manteniendo así constantemente actualizada las bases de datos. También, este podrá tener total acceso a toda la información referente a SU empresa, es decir, todas las denuncias que de alguna u otra forma, afecten a aquella linea de buses, para así también ellos, puedan implementar medidas que mejoren su sistema.

Conclusiones

Los objetivos propuestos en un principio, se lograron completar en un gran porcentaje, ya que se logra mostrar bien la idea central del proyecto. Aún queda muchísimo para que el sistema funcione como debe ser, pero a lo largo del desarrollo de este, se logró poner en práctica gran parte de los contenidos aprendidos en clases, si bien no era una idea fácil de implementar, dada la gran cantidad de "partes" que debian fucionarse de buena manera ... como lo fue el manejo de bases de datos, el cliente-servidor, el manejo de hilos para un buen funcionamiento del sistema y por último una interfaz que permita visualizar de buena manera toda la información. Por lo tanto, encuentro que a pesar de que el funcionamiento en si, no muestra tanto, por "detrás" existe una gran implementación, que ayudó mucho a mejorar el manejo de estos.

Código de Programa

En el siguiente enlace, se encuentra todo el código del programa, lamentablemente para que funcione, es necesario implementar una base de datos, de lo contrario no podrán ejecutarse los clientes, dado que estos realizan una conexión a la base de datos a través del servidor.

Proyecto Sistema de Denuncias.

Referencias