You are on page 1of 174

TARIFICADOR DE PARQUEADEROS SOFTPARKING

AUTOR: ANDRES FERNANDO PARRA 083251362005

UNIVERSIDAD DEL TOLIMA IDEAD INGENIERIA DE SISTEMAS IBAGUE TOLIMA 2012

TARIFICADOR DE PARQUEADEROS SOFTPARKING

AUTOR: ANDRES FERNANDO PARRA 083251362005

Trabajo presentado como requisito para aprobar la asignatura de Proyecto de Investigacin formativa

Tutor ngel Alberto Vargas Cano Ingeniero de Sistemas Especialista en Ingeniera de Software

UNIVERSIDAD DEL TOLIMA IDEAD INGENIERIA DE SISTEMAS IBAGUE TOLIMA 2012

El autor de este documento y proyecto de software ANDRES FERNANDO PARRA autoriza a la Universidad del Tolima la reproduccin total o parcial de este documento, con la debida cita de reconocimiento de la autora y sede a la misma universidad de los derechos patrimoniales con fines de investigacin, docencia e institucionales, consagrados en el artculo 72 de la Ley 23 de 1982 y las normas que lo constituyan o modifiquen.

ACUERDO 0066 DE 2003 DEL CONSEJO DE LA UNIVERSIDAD DEL TOLIMA

NOTA DE ACEPTACIN

__________________________________ __________________________________ __________________________________

__________________________________ Presidente del Jurado

__________________________________ Jurado

__________________________________ Jurado

Ibagu Tolima 27 de Abril de 2012.

DEDICATORIA

A mi hermoso bebe Matas Andrs Parra Rengifo, ya que gracias a su nacimiento he encontrado un sentido a mi existencia y un renovado impulso de superacin y de rectitud para cuando crezca sea un buen ejemplo para el y se sienta orgulloso de su padre. Doy gracias a mi esposa y mi madre por hacer llevadera mi existencia y sin el apoyo de ustedes este logro no seria posible.

AGRADECIMIENTOS Agradezco al profesor ngel Alberto Vargas por dictar esta materia que en un principio vi como un grave obstculo en la culminacin de mis estudios. Gracias a la exigencia y el poco tiempo que disponamos para cumplir esta meta porque me sirvi mucho para darme cuenta de mis potencialidades y aptitudes.

CONTENIDO PROBLEMA DE INVESTIGACIN PLANTEAMIENTO DEL PROBLEMA DESCRIPCIN DEL PROBLEMA FORMULACIN DEL PROBLEMA JUSTIFICACIN OBJETIVOS OBJETIVO GENERAL ALCANCE MARCO REFERENCIAL MARCO HISTRICO O ANTECEDENTES MARCO TERICO MARCO CONCEPTUAL MARCO LEGAL IDENTIFICACIN DE LA ENTIDAD DESCRIPCIN DE LA ENTIDAD Resea Histrica Funcin Misin Visin Organizacin PLANTEAMIENTO METODOLGICO TIPO DE INVESTIGACIN DISEO METODOLGICO 1 1.1 1.2 Modelo de Requisitos Descripcin del Problema casos de uso 13 13 13 15 16 17 17 18 20 20 24 25 26 29 29 29 29 29 30 30 31 31 31 32 32 34 35 37 39 42 7

1.2.1 Caso de uso: Registrar usuarios. 1.2.2 Caso de uso: Validar usuarios. 1.2.3 Caso de uso: Ingresar datos de vehculo. 1.2.4 Caso de uso: Procesar pagos.

1.2.5 Caso de uso: Consultar Informacin. 1.3 MODELO DE DOMINIO DEL PROBLEMA 1.3.1 Diagrama de clases 1.3.2 Diccionario de clases. 2 2.1 mODELO DE ANLISIS identificacion de las clases segn estereotipo

44 46 51 52 53 53 53 56 58 61 71 97 101 101 118 120 120 121 123 124 127 127 128 128 128 129 129 130 132 132 132 8

2.1.1 BORDE 2.1.2 IDENTIFICACION ENTIDADES 2.1.3 IDENTIFICACION CONTROL 2.2 2.3 2.4 3 3.1 3.2 4 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 4.10 4.11 5 6 6.1 clases segn casos de uso DIAGRAMA DE SECUENCIA DICCIONARIO DE CLASES (MODULARIZAR) MODELO DE DISEO tarjetas BASE DE DATOS MODELO DE IMPLEMENTACIN InterfazUsuario (pantalla principal) MANEJADOR PRINCIPAL Interfaz Registro Usuario Interfaz datos cliente Y PROCESAR PAGOS Manejador registro cliente Interfaz registro cliente, procesar pagos Manejador adicionar pago Interfaz procesar pagos Interface consultas MANEJADOR CONSULTAS INTEFAZ CONSULTAR DATOS MODELO DE PRUEBAS DESARROLLO DE LAS ACTIVIDADES PROGRAMADAS DESCRIPCIN DE LOS PROCESOS

6.1.1 Identificacin del problema a desarrollar software.

6.1.2 Recopilacin de datos y determinacin de requisitos segn el mercado. 132 6.1.3 Diseo metodolgico. 6.1.4 Modelo de dominio del problema. 6.1.5 Modelo de anlisis 6.1.6 Modelo de diseo 6.1.7 Modelo de Implementacin 6.1.8 Modelo de pruebas. 6.1.9 Presentacin del software 6.1.10 Retroalimentacin y modificaciones. 6.1.11 Modelo de documentacin. 6.1.12 Entrega de software al cliente. 6.2 SISTEMATIZACIN DE LA INFORMACIN 6.2.1 Word 6.2.2 Excel 6.2.3 PowerPoint 6.2.4 ArgoUml(PowerDesigner). 6.2.5 IDE Netbeans. 6.2.6 Grantt Project: 6.2.7 Internet 7 7.1 MANUALES MANUAL DEL PROGRAMADOR 133 133 133 134 134 134 135 135 135 135 136 136 136 136 136 137 137 137 138 138 141 141 153 164 164 166 168 168 168 169 9

OBJETIVOS OBJETIVO GENERAL 7.2 8 8.1 8.2 MANUAL DEL USUARIO COSTOS Y PRESUPUESTO CRONOGRAMA PRESUPUESTO

CONCLUSIONES Y RECOMENDACIONES CONCLUSIONES RECOMENDACIONES 9 REVISIONES REALIZADAS

RESUMEN EL SOFTWARE DE PARQUEADEROS es una aplicacin informtica que permite de forma sencilla y gil llevar el registro de los vehculos que ingresan a los parqueaderos Automviles y Motocicletas, interacta con componentes de hardware y software, tales como Bases de datos en Mysql, interfaz en Java, una maquina virtual java (JVM) para ejecutar la aplicacin y un computador. El sistema de parqueaderos debe permitir diferenciar entre carro o moto, ingresar vehculos, listar y eliminar los registros de los vehculos ingresados, calcular la tarifa por hora, establecer el valor de esta y el monto que cancela el cliente al retirar el vehculo. Debe ser un programa sencillo y con una interfaz grafica fcil de manejar que permita ingresar datos mediante teclado y mouse. Esta aplicacin constituir una herramienta til para la mayora de los negocios de parqueadero que aun llevan su contabilidad a mano, lo que conlleva muchas dificultades, el SOFTWARE DE PARQUEADEROS es una herramienta efectiva y asequible a la mayora de los presupuestos. Entre sus facilidades se encuentra el restringir accesos a personal no autorizado y conocer cunto factura el negocio permitiendo establecer si este se encuentra dentro del rgimen simplificado o comn. Este sistema se apoyara en una base comercial que le permita ser comercializado en la ciudad de Ibagu y sus alrededores.

10

ABSTRACT The PARQUEADEROS SOFTWARE is a computer application that allows of simple form and to take the registry of the vehicles which they enter the parking Automobiles and Motorcycles, interacts with components of hardware and software, such as Data bases in Mysql, interface in Java, a virtual machine java (JVM) to execute the application and a computer. The system of parking must allow to differentiate between car or motorcycle, to enter vehicles, to list and to eliminate the registries of the entered vehicles, to calculate the tariff per hour, to establish the value of this and the amount that the client when retiring cancels the vehicle. It must be a program simple and with a graphic interface easy to handle that it allows to enter data by means of keyboard and mouse. This application will constitute a useful tool for the majority of the parking businesses that even take their accounting by hand, which entails many difficulties, the PARQUEADEROS SOFTWARE is reasonable price an effective tool and to the majority of the budgets. Between its facilities is restricting accesses to non authorized personnel and to know how much it invoices the business allowing of establishing if this it is within the simplified or common regime. This system would lean in a commercial base that allows him to be commercialized in the city of Ibague and its environs.

11

INTRODUCCIN En la actualidad la informtica se ha apoderado de muchos de los procesos que a diario se viven, por lo tanto es difcil imaginarse que haya procesos en los que no intervenga la tecnologa y ms cuando se trata de cosas tan vitales como la custodia de vehculos, que conlleva informacin vital como el tiempo de estancia de un automotor, el valor pagado por el cliente y la contabilizacin de las ventas del establecimiento. Si bien en no todos los parqueaderos pasa esto, ya que en los ms grandes ubicados en edificios, zonas cntricas y centros comerciales cuentan con los capitales enormes para gran infraestructura telemtrica y aplicaciones con las que es muy difcil competir, y de muy difcil acceso para una familia que tiene su sustento en un parqueadero. Por el derecho a que los propietarios de los parqueaderos tengan acceso a una tecnologa que cumpla las funciones bsicas de registro y clculo se crea esta aplicacin. Se propone entonces una alternativa que satisfaga las necesidades bsicas de los clientes de estos establecimientos que son las de establecer: cuando ingresa un vehculo, que clase de vehculo es, determinar un valor a cobrarle por hora de forma transparente al tipo de automotor y el tiempo permanecido en el establecimiento. El tarificador de parqueaderos que se propone tiene todo lo que el usuario necesita para funcionar de una forma ms eficiente y segura, lo que se va a desarrollar es una aplicacin en java con un motor de base de datos en Mysql con ayuda del xamp y el servidor apache. La persona que adquiera la aplicacin no tendr que hacer suntuarias inversiones en hardware ya que este aplicativo es liviano y funciona en cualquier computador que permita la instalacin de la maquina virtual java, el directa x y el flash player. Con estas caractersticas la solucin planteada ser integral, ya que cumplir con todas las expectativas del cliente y ms importante que eso, no le implicara hacer grandes inversiones en infraestructura y hardware.

12

PROBLEMA DE INVESTIGACIN PLANTEAMIENTO DEL PROBLEMA En la actualidad en la ciudad de Ibagu muchos parqueaderos pequeos especialmente en el rea del centro que no cuentan con ninguna herramienta de registro de los vehculos que ingresan a sus instalaciones, ms all de una obsoleta tiquetera impresa en la que se registran manualmente los datos del vehculo, generando diversos problemas entre clientes, propietarios y empleados. Si bien existen en el mercado programas destinados a este fin, estos son costosos y otros implican inversiones millonarias que se justificaran si el volumen de usuarios del parqueadero fuese muy grande, pero la gran mayora de estos parqueaderos no tienen espacio para ms de 10 automviles y unas cuantas motos, sus clientes son todos itinerantes y no reciben mensualidades debido al poco espacio que tienen. Un pequeo local de estos puede tener un movimiento fuerte debido a que sus clientes estn por un par de horas o una fraccin de una, por esto a pesar de su tamao pueden llegar a mover una buena cantidad de dinero, por esto es importante que se organicen, para que sepan a ciencia cierta cuanto flujo de caja mueven en un determinado da. DESCRIPCIN DEL PROBLEMA En el mercado no es un tema nuevo el sistema de gestin de parqueaderos hay muchos ejemplos simplemente buscando en google sin salir de casa, se puede citar varios como: Didesol, diseado y en funcionamiento en Bogot, cobra por minutos, importante en lugares donde la hora puede valer ms de $5.000 pesos, Parcteck, que permite controlar hasta cmaras de vigilancia desde el software, y Parkzone, un complejo software que permite mediante cmaras, leer las placas de los vehculos y generacin automtica de tickets. Debido al elevado valor de un software tarificador de parqueaderos, los pequeos comerciantes de estos negocios prefieren llevar un registro manual de sus visitantes, ellos no necesitan telemetra que detecte mediante cmaras las placas, ni que tome fotos a los vehculos o clientes, ni impresoras especiales que generen tickets en vinilo con cdigos de barras. Ellos necesitan un software tarificador que les permita registrar cuanto tiempo permanece un cliente, cuanto se le cobra, y cuanto dinero ganan en un da, es por esto que se pens en esta herramienta de software. 13

Si bien son muchas las personas que tienen un pequeo negocio de este tipo, son muchos los grandes parqueaderos que ya existen y la gente los prefiere muchas veces as sean ms costosos porque el tener un control tele informtico le genera ms confianza a la gente que alguien que escribe con un lapicero en una tiquetera. Muchas son las razones para que una persona de un parqueadero pequeo no se sistematice, pude ser que sean renuentes a usar tecnologa, piensen que es un gasto innecesario e impensablemente costoso, porque se comparan a los grandes parqueaderos y no se hayan compitiendo en tecnologa con ellos o que simplemente lleven su negocio de una forma no muy organizada y debido a esto pueden generarse defraudaciones por parte de empleados y clientes o conflicto con clientes del parqueadero por desaparicin de vehculos ya que cualquiera con el tiquete puede retirarlos, pero especialmente el mayor descontento es por el valor facturado. Si el problema no se soluciona los parqueaderos seguirn expuestos a las problemticas mencionadas y generaran desconfianza de los clientes quienes preferirn simplemente llevar su automvil o moto a otro parqueadero donde sin importar que cobren un poco ms, ofrezcan mayor seguridad al cliente. Los que modernicen sobrevivirn y los que se mantengan renuentes a adoptar controles ms efectivos en sus parqueaderos quedaran condenados a desaparecer ya que los clientes irn a donde quien les inspire ms confianza y los continuos problemas con la ciudadana generaran acciones de las alcaldas. Se propone entonces la creacin de un software gil, efectivo y sobre todo al alcance de la mano del pequeo empresario, debe incluirse un costo de mantenimiento mensual para solucionar cualquier inconveniente que el usuario tenga con el aplicativo que sea adems fcil de usar, una interfaz sencilla y simple para que cualquier persona la pueda utilizar, debe almacenar consecutivamente cuantos clientes tiene el parqueadero, para poder determinar un total, debe permitir diferenciar entre motos y carros, establecer un valor de cuanto se cobra por cada vehculo, registrar quien consigna el automotor, para una mayor seguridad, liquidar el valor a pagar por el cliente teniendo en cuenta el valor de las horas y el total de la estancia, no bloquearse en caso de que sean causados errores y restringir el acceso al personal no autorizado mediante una contrasea, debe generarse automticamente la hora de ingreso y egreso del vehculo para que no sea alterado el valor a pagar, debe tenerse en cuenta que un usuario puede entrar con automviles distintos y que el mismo automotor puede ingresar en diversas ocasiones. Es por esto que se propone una aplicacin amigable al usuario en Java con interfaz grafica y una potente base de datos en MySql que 14

soporte el aplicativo que debe permitir, ingresar, modificar, eliminar y guardar registros. FORMULACIN DEL PROBLEMA Cmo sistematizar a los parqueaderos informales y pequeos?

15

JUSTIFICACIN En un medio donde la tecnologa avanza a pasos agigantados, y las personas usan ms medios teleinformticas en casi todas sus actividades cotidianas el uso de sistematizacin genera confianza en los clientes de las empresas, entonces es inconcebible que confiemos nuestros vehculos fruto de nuestro trabajo a establecimientos que ni siquiera llevan un registro confiable de los automotores que ingresan a sus establecimientos. Es importante realizar un programa de parqueadero que est al alcance del pequeo microempresario de parqueaderos inscrito al rgimen simplificado ya que los que hay en el mercado estn orientados a personas de rgimen comn, con un muy alto volumen de clientes y diversas herramientas de telemetra que los hacen de estas aplicaciones ms seguras pero ms inasequibles para el bolsillo de la persona de rgimen simplificado. Lo primordial para los clientes de estos establecimientos es que les inspiren confianza, sino recurrir a otros sitios ms grandes que sean confiables y los pequeos se quedaran cada vez con menos clientes y estarn condenados a desaparecer. Por tanto la mejor opcin para los parqueaderos pequeos e informales es poder competir mediante tecnologa que les haga ser cada vez mejores.

16

OBJETIVOS OBJETIVO GENERAL Llevar un control de todos los registros de vehculos que ingresan y salen de un parqueadero, como tambin los pagos que se efectan en el mismo.

OBJETIVOS ESPECFICOS Registrar los usuarios que ingresan al parqueadero. Diferenciar entre automviles y carros. Generar un costo total en base a tipo de vehculo y tiempo de servicio. Establecer un sistema de pagos. Conocer mediante datos estadsticos, lo facturado cada da.

17

ALCANCE Y DELIMITACIN ALCANCE El objetivo principal de la realizacin de este software es llevar un control de todos los registros de vehculos que ingresan y salen de un parqueadero, como tambin los pagos que se efectan en el mismo. Para lo cual se debe contar con una base de datos en una plataforma robusta como Mysql, debe ser fcil de utilizar por parte del usuario, por eso su interfaz visual ser en Java. Antes de realizar la programacin del software se realizara todo el proceso de anlisis mediante recoleccin, encuestas, modelado de datos, entre otras tcnicas que permitan generar un diseo bsico de la aplicacin, para que pueda ser compilada y puesta en marcha, lo cual destaca la finalidad de este proyecto que es el desarrollo de una aplicacin funcional. Tratndose de un software de parqueaderos debe tener las siguientes caractersticas: Registrar los usuarios que ingresan al parqueadero, para lo cual se creara una tabla y un pantallazo que permitan almacenar estos datos. Diferenciar entre automviles y carros, lo que se conseguir mediante un filtro que permita establecer dicha diferencia en la aplicacin. Generar un costo total en base a tipo de vehculo y tiempo de servicio, lo que se lograra a travs de procedimientos de multiplicacin en la base de datos y se almacenaran automticamente en la tabla cliente. Establecer un sistema de pagos, calculando cuanto paga cada cliente y cuanto tiene que devolvrsele para no generar malos entendidos, este dato se obtendr mediante operaciones matemticas en java y lo que ingresa realmente al parqueadero ser consignado en la base de datos. Conocer mediante datos estadsticos, lo facturado cada da, esta informacin es vital para el funcionamiento del parqueadero y esta informacin ser conocida a travs de consultas generadas en Java, dicha informacin ser solo de consulta y no ser almacenada en la base de datos. 18

DELIMITACIN El sistema no tomara: registro flmico a las placas ni al vehculo como tal, ni a la cedula de la persona o su rostro. Tampoco calculara el valor de impuestos ya que estos establecimientos no estn obligados a declararlo por ser de rgimen simplificado, no permitir que el usuario indique la hora manualmente o que se digite manualmente el valor a cobrar por hora, este solo ser modificado por un programador de software, el sistema no almacenara los valores facturados determinado da, solo permitir conocerlos a travs de la funcin de consulta incluida en el software.

19

MARCO REFERENCIAL MARCO HISTRICO O ANTECEDENTES Antecedentes Parqueaderos en Ibagu. El problema investigado es la falta de software tarificador que contabilice el tiempo permanecido por automotores en algunos parqueaderos en la ciudad de Ibagu, desde hace mucho tiempo llevan un registro manual de los clientes y no tienen un conocimiento a ciencia cierta de cuantos ingresos tienen en el da, mucha gente inconforme por diversos factores est dejando de usar estos establecimientos y algunos lo hacen ms que por necesidad, da a da la administracin local se coloca ms rgida con la administracin de estos establecimientos sin tomar medidas de fondo. Los parqueaderos se encontr que el no tener un control de los vehculos que entran a dichos establecimientos y quien los deja se encontr que dejan carros y motos que han participado en delitos en los parqueaderos y el cliente se va, no saben quin dejo el automotor y despus el del problema es el del parqueadero porque se encontr el vehculo ah. Muchos parqueaderos ya se ha modernizado enormemente y hasta cuentan con software sofisticado que hasta detecta las placas del vehculo y las imprimen en un tiquete, por ms grandes que fueran hace un par de aos todos, tomaban un registro manual en un tiquete del vehculo que ingresaba, Multicentro, El edificio de la Beneficencia, son claros ejemplos de lo que ha hecho una elevadsima inversin de capital, que esta fuera del alcance de los propietarios de parqueaderos, algunos otros pequeos se han modernizado a un sistema computarizado de registro e ingreso, pero es una minora, aun muchos no cuentan con un sistema digital de control de parqueaderos. En otras ciudades como por ejemplo Bogot, hay grandes edificios y establecimientos de parqueo subterrneo, donde parece que parquear un vehculo es un lujo, porque una hora puede llegar a costar $5.000 pesos, las necesidades de estos sitios son muy distintas a las de los parqueaderos de la ciudad de Ibagu, ya que en Bogot se cobra en un estricto tiempo de minutos de permanencia y ac se cobra por hora o fraccin lo mismo, ya que la tarifa ms costosa de parqueaderos es de $1600 pesos que corresponde a la beneficencia.

20

Historia del automvil Los primeros automviles no superaban los 14 km/h. El alemn Karl Benz patent el primer auto con motor a gas. El estadounidense Henry Ford masific su fabricacin.

Para que el automvil alcanzara las caractersticas de los autos que hoy vemos en las calles, fue necesario hacerles muchos cambios y variaciones. Aunque sus primeros kilmetros los recorri a mediados del Siglo XIX, ste es un invento propio del siglo XX, convirtindose hoy en da en un medio de transporte masivo. Los primeros autos estaban conformados por tres ruedas, una especie de triciclo veloz, con un aparatoso motor de vapor. Pese a que la novedad tuvo una gran acogida entre los compradores, el vehculo no alcanzaba una velocidad mayor a 14,5km/h, realidad que lo converta en un "auto" lento y aparatoso. Su motor era mono cilndrico, de 984 cc y 0,9 caballos de vapor a 400 rpm. Al hablar de los primeros automviles, la historia se remonta al antiguo carruaje impulsado por un motor a vapor que fue inventado por el tcnico militar francs Nicolas Joseph Cougnot, segn datan las memorias, el vehculo constaba de tres ruedas de madera con un motor de dos cilindros paralelos verticales. Su cilindrada era de nada menos que 62 litros! Aquel modelo, llamado "fardier", no cubri las expectativas dentro del mercado pues una de sus grandes desventajas era que poda transportar a cuatro personas, pero slo a una velocidad mxima de 9 kilmetros por hora, con extrema dificultad para los virajes y una autonoma de apenas 15 minutos. Nace el motor de explosin A pesar de que algunas dcadas atrs el motor de explosin comenzaba a ser desarrollado, an no se aplicaba a los incipientes automotores. Fue el ingeniero alemn Karl Benz quien patent el primer auto con motor a gas el 29 de enero de 1886, fecha en la cual nace el automvil moderno. Ya, en 1893 construy su primer auto de cuatro ruedas, al que llam Victoria, y aos despus el motor a combustin no tardara en llegar para crear su propia revolucin. Uno de los aos decisivos para la historia de la ingeniera fue 1867 cuando el alemn Nikolaus Otto dise el motor de cuatro tiempos, motor que acciona a los automviles contemporneos y que se conoce con el nombre de motor de "ciclo de Otto". Entre 1886 y 1910 el desarrollo de los nuevos automviles con motor de benzeno lleg al mundo con una fuerza inusitada y como un objeto de curiosidad entre los hombres, quienes aseguraban que definitivamente haba llegado el reemplazo 21

para coches de caballo y a vapor. Hoy en da, los hechos y la historia lo sealan, el auto fue uno de los resultados concretos de la revolucin industrial del siglo XIX, novedad que vino acompaado de otros inventos como la obtencin del petrleo o la vulcanizacin del caucho por Charles Goodyear. El surgimiento de una industria La perfeccin del motor origin el diseo de autos a gran escala, en pases como Francia y Alemania, industrias que hasta el momento dominaban todo el mercado automotor. Acosado por la competencia que le representaba la Oldsmobile, de Ransome Eli Olds, Henry Ford, un relojero estadounidense que cre su propio taller de fabricacin de automviles en 1896, decide abandonar la artesana y planea el montaje en serie, un proyecto que slo cristaliz completamente hasta el ao 1910. Con cilindros fundidos en un solo bloque, en una aleacin de acerovanadio y reduciendo el nmero de piezas del motor, este estadounidense baj el tiempo de fabricacin de un auto, de 12 horas y 28 minutos a 1 hora y 33 minutos. Aument el salario de sus trabajadores y disminuy el precio de los coches. Un Ford T, de los 10.000 que se producan en 1909 y costaban 950 dlares, pas a costar 490 dlares en 1914, y las unidades fabricadas pasaron a 264.792. El modelo T La industria automotriz se revolucion con la creacin del Modelo T. Este vehculo que a pesar de su precio de casi mil dlares en sus inicios, monto bastante elevado para la poca, caus un fuerte impacto social e hizo que muchas familias adquirieran el modelo y disfrutaran de las ventajas de un transporte ms rpido que los coches tirados por caballos. Los pedidos eran numerosos y la pequea fbrica Ford no daba abasto. Generalmente, un coche pedido tardaba dos meses en ser entregado. La fabricacin del Modelo T represent una poca importante en el desarrollo del transporte urbano. Basta con decir que hacia 1925, la mitad de los coches que circulaban por el mundo eran de este modelo. Entre 1908 y 1927, la Compaa Ford haba vendido quince millones de autos T. Hasta ahora, es el tercer auto ms vendido de la historia. Historia de La Motocicleta El estadounidense Sylvester Howard Roper (1823-1896) invent un motor de cilindros a vapor (accionado por carbn) en 1867. sta puede ser considerada la primera motocicleta, si se permite que la descripcin de una motocicleta incluya un motor a vapor. Wilhelm Maybach y Gottlieb Daimler construyeron una moto con cuadro y cuatro ruedas de madera y motor de combustin interna en 1885. Su velocidad era de 18 km/h y el motor desarrollaba 0,5 caballos. 22

Gottlieb Daimler us un nuevo motor inventado por el ingeniero Nikolaus August Otto. Otto invent el primer motor de combustin interna de cuatro tiempos en 1876. Lo llam Motor de Ciclo Otto y, tan pronto como lo complet, Daimler (antiguo empleado de Otto) lo convirti en una motocicleta que algunos historiadores consideran la primera de la historia. En 1894 Hildebrand y Wolfmller presentan en Munich la primera motocicleta fabricada en serie y con claros fines comerciales. La Hildebrand y Wolfmller se mantuvo en produccin hasta 1897. Los hermanos rusos afincados en Pars Eugne y Michel Werner montaron un motor en una bicicleta. El modelo inicial con el motor sobre la rueda delantera se comenz a fabricar en 1897. En 1902 se invent el Scooter (proviene del ingls scooter), tambin conocido como auto silln, por el francs Georges Gauthier. La escter es una moto provista de un salpicadero de proteccin. Fue fabricada en 1914. Tuvo una gran popularidad, sobre todo entre los jvenes. Incorpora dos ruedas de poco dimetro y un cuadro abierto que permite al conductor estar sentado en vez de a horcajadas. Tambin tiene una carrocera que protege todos los mecanismos, y ofrece algn pequeo espacio de almacenaje de objetos pequeos y de una rueda de recambio. Son vehculos urbanos, aunque tambin se pueden hacer viajes largos. Lo que destaca en este tipo de motos es la comodidad del manejo y facilidad de conduccin, y no el desarrollo de grandes velocidades. Despus de volver de la Segunda Guerra Mundial (1945), los soldados estadounidenses parecan descontentos con las motocicletas que eran construidas por Harley-Davidson e Indian. Las motos que haban montado en Europa eran ms ligeras y ms divertidas de conducir. Estos veteranos comenzaron a andar con otros ex soldados para volver a vivir algo de la camaradera que haban sentido en el servicio. Estos grupos se dieron cuenta que sus motocicletas necesitaban los cambios que Harley no les proporcionaba. As naci la Motocicleta Custom. La primera importadora y distribuidora de motocicletas en Colombia, se llama AUTECO, esta empresa inici operaciones en la ciudad de Medelln a finales de los aos treinta, gracias a la visin de su representante, viendo en las motos la posibilidad de transporte para recorridos cortos entre ciudades cercanas. En los ltimos 15 o 20 aos han aumentado la produccin y el uso de motocicletas, y en Colombia en ciudades pequeas como Pereira o Leticia este tipo de transporte predomina.1

http://es.wikipedia.org/wiki/Autom%C3%B3vil http://es.wikipedia.org/wiki/Motocicleta http://www.elcolombiano.com/proyectos/feriaflores/eventosimportantes/autoshistoria.htm

23

MARCO TERICO El tema que se va a tratar est relacionado con los parqueaderos pblicos que prestan el servicio de estacionamiento a clientes itinerantes y la implementacin de un software tarificador en algunos de estos establecimientos que actualmente no cuentan con ninguna herramienta informtica para dicho fin. En relacin con los vehculos, se conoce como estacionamiento al espacio fsico donde se deja el vehculo por un tiempo indeterminado cualquiera y, en algunos pases hispanohablantes, tambin al acto de dejar inmovilizado un vehculo. Para la definicin que del trmino hace en Espaa la Instruccin 08/V-74 apartado 3.1 Vas urbanas D.G.T. (del 28 de enero de 2008), no es relevante si los ocupantes se encuentran o no en el interior del vehculo, y basta con que la actividad que desarrollen en su interior no trascienda al exterior mediante el despliegue de elementos que desborden el permetro del vehculo tales como tenderetes, toldos, dispositivos de nivelacin, soportes de estabilizacin, etc. En Mxico se le llama pensin al lugar donde se pueden dejar, especialmente de noche, los vehculos a cambio de un pago por hora o semanal o mensual. En los pases donde el automvil es de uso habitual, instalaciones para el estacionamiento son construidas junto a edificios para facilitar el movimiento de los usuarios y ofrecer seguridad a sus vehculos; esto suele ser en garajes construidos en los stanos de los mismos. En muchos ncleos urbanos se implementan desde la dcada de 1990 esquemas de estacionamiento regulado con el objetivo de garantizar un espacio de aparcamiento mnimo para los residentes de una zona concreta y fomentar la rotacin de vehculos de no residentes aparcados. El gran inconveniente de ste sistema es que es de pago. Otra posible solucin a la escasez de espacio disponible en el centro de las ciudades son los aparcamientos robotizados. Este tipo de estacionamientos permiten multiplicar el nmero de plazas de aparcamiento disponibles en un espacio limitado. Experiencia Mexicana Sobre todo en las grandes ciudades (pero tambin en las pequeas), en horas pico y en las zonas de mayor actividad econmica, quin maneje un auto no ha

24

sentido la desesperacin de llegar a una cita muy importante y no encontrar a la2 mano un estacionamiento pblico?. Y cuando aparece el ansiado lugar, con las prisas, casi nadie se fija en el boleto que le extienden a uno (el contrato que ampara al usuario en esa transaccin comercial), que a veces es un simple cartn escrito a mano en el que se consigna la hora de ingreso y las placas del auto. Y si uno no se fija en el "boleto" mismo, mucho menos en las condiciones fsicas del lugar o en la tarifa. Sea como fuere, se dieron a la tarea de investigar cules son las garantas que deben ofrecer quienes prestan el servicio de estacionamiento. Lograr una generalizacin no es fcil, ya que hasta donde se pudo comprobar, son los municipios quienes establecen los lineamientos necesarios para que operen los estacionamientos pblicos. As que al parecer existen tantos reglamentos como ciudades hay. Por tal motivo, este texto se limita al Distrito Federal y Guadalajara (Jalisco), ya que son los dos primeros lugares en cuanto a parque vehicular y porque juntos representan el 70% de las quejas presentadas contra estacionamientos pblicos en todo el pas. Tarjeta Europea de estacionamientos Se ha adoptado una tarjeta de estacionamiento estndar europea para las personas con discapacidad. Actualmente esta tarjeta est vigente en varias Comunidades Autnomas. La tarjeta se puede solicitar en los Organismos locales o provinciales, segn corresponda. Quienes estn en posesin de la nueva tarjeta azul, tienen derecho en otros estados miembros de la UE, y en algunos otros pases europeos, a las mismas facilidades de estacionamiento que se conceden a las personas con discapacidad residentes en tales pases.

MARCO CONCEPTUAL Parqueadero Publico: Es un establecimiento de carcter privado donde las personas pueden estacionar su automotor, entindase motocicleta o automvil a cambio de un pago por cada hora de permanencia del vehculo en las instalaciones de dicho lugar. Motocicleta: comnmente conocida en castellano con la abreviatura moto, es un vehculo de dos ruedas, impulsado por un motor que acciona la rueda trasera. Automvil: Vehculo autopropulsado por un motor propio y destinado al transporte terrestre de personas o mercancas sin necesidad de carriles.
2

http://es.wikipedia.org/wiki/Estacionamiento

25

Tarificador: Aparato o software que sirve para establecer y aplicar un importe por el pago de un producto o servicio. Ticket: Es un comprobante de pago que se emite en operaciones que se realizan con consumidores o usuarios finales. Tarifa: Lista o catlogo de los precios, derechos o impuestos que se deben pagar por algo. Placa: Es la matricula que identifica al vehculo, esta es asignada por los entes de trnsito vehicular, permite establecer clase de vehculo, modelo y ciudad de origen, es un identificador nico nacional. MARCO LEGAL LEY No.099 DE 2008. "POR MEDIO DE LA CUAL SE REGLAMENTA EL FUNCIONAMIENTO DE LOS PARQUEADEROS EN EL TERRITORIO NACIONAL. El Congreso de Colombia en uso de las facultades constitucionales y legales que le Confiere la Constitucin Poltica y la Ley 5 de 1992 DECRETA: Artculo 1. Objeto. La presente ley tiene por objeto regular el funcionamiento de los parqueaderos, sus tarifas y su servicio adecuado, para que cumpla con las expectativas y Necesidades de los usuarios del pas. As mismo, se dictan otras disposiciones vinculadas con esta materia. Artculo 2. mbito de aplicacin: La presente Ley se refiere a los parqueaderos construidos en el suelo o en el subsuelo de los locales o predios destinados a la prestacin del servicio de Parqueadero de vehculos en el Territorio Nacional y se adoptan medidas para su funcionamiento y su control. Artculo 3. Definicin: Son parqueaderos pblicos los lugares o zonas legalmente constituidas y autorizadas para la prestacin del servicio de estacionamiento y cuidado de vehculos automotores, que cobren una tarifa establecida por la autoridad competente. 26

Artculo 4. El servicio de parqueaderos ser prestado por personas naturales o jurdicas, debidamente inscritas en la Cmara de Comercio del lugar en el que cumple su objeto comercial. Artculo 5. Los propietarios o Administradores de los parqueaderos pblicos debern informar a la Alcalda Distrital o Municipal que corresponda, el lugar de ubicacin del establecimiento de servicio de parqueadero, las caractersticas locativas y las garantas del servicio que se ofrezca a los usuarios, para obtener sus licencias respectivas. Artculo 6. Tarifa. Las autoridades Distritales o Municipales fijarn las tarifas por hora, teniendo en cuenta la ubicacin, la capacidad operativa y las disponibilidades tcnicas y de dotacin de los establecimientos que prestan el servicio de parqueaderos. Artculo 7. Los propietarios o administradores de los parqueaderos debern fijar en un lugar visible al pblico las tarifas vigentes para cada modalidad, as como una fotocopia autntica de la certificacin. Igualmente, debern fijar en sitio visible la licencia de funcionamiento expedido por la Alcalda Distrital o Municipal respectiva. Artculo 8. En los parqueaderos de parques de diversin, hospitales o centros asistenciales del pas, cementerios, supermercados, instituciones educativas (universidades pblicas y privadas) y centros comerciales, en donde las zonas de parqueo sean administradas por empresas privadas o por terceros, no se podr cobrar ms del 50 por ciento de la tarifa mxima por hora que hayan establecido las autoridades Distritales o Municipales. Artculo 9. La persona natural o jurdica que se dedique a la prestacin de servicio de Parqueadero, tomar una Pliza de Responsabilidad Civil Extracontractual con la Cobertura Adicional de Parqueaderos, expedida por una Compaa de Seguros legalmente autorizada. El valor de esta pliza debe tasarse de acuerdo con las caractersticas, la ubicacin y la categora del parqueadero y con vigencia de un (1) ao que amparar el respectivo establecimiento. Esta Pliza tendr por objeto responder adems de los daos causados a las personas por hechos propios o derivados de la prestacin del servicio, por daos o hurto parcial y total que pudieran sufrir los vehculos y sus accesorios cuando, a juicio de la autoridad competente, se compruebe que tales daos ocurrieron dentro del parqueadero y stos no fueren imputables a fuerza mayor o caso fortuito. Su valor ser tasado en el proceso respectivo. Pargrafo: Los propietarios o administradores de los parqueaderos debern fijar en un lugar visible al pblico el nombre de la empresa aseguradora con la cual se contrat dicha pliza. 27

Artculo 10. : Los parqueaderos deben cumplir con las siguientes disposiciones: 1.Expedir un tiquete o contrasea al poseedor del vehculo al momento de ingresar. 2.Las condiciones sanitarias descritas por la Ley 9 de 1.979 y dems normas vigentes sobre la materia. 3.Tener bao para el servicio de los usuarios. 4 No permitir la entrada de un nmero de vehculos superior a la capacidad del local. 5 No organizar el estacionamiento en las zonas de antejardn ni en andenes. 6 Dar cumplimiento a las disposiciones que en materia de prevencin y. control de incendios establezcan las Autoridades Distritales y Municipales. 7 No organizar el estacionamiento en calzadas paralelas y zonas de control ambiental. 8 No invadir el espacio pblico.

Artculo 11. SANCIONES. Los Alcaldes Distritales y Municipales, o los funcionarios que reciban la delegacin, siguiendo el procedimiento sealado en el libro primero del Cdigo Contencioso Administrativo, impondrn las respectivas sanciones a quien no cumpla con las disposiciones contenidas en la presente ley. La sancin puede ir desde una multa hasta el cierre provisional o definitivo del establecimiento. Artculo 12. Vigencia y Derogatorias: La presente ley rige a partir de la fecha de su expedicin y deroga las contrarias.3

http://www.alonsoacosta.com/pdf/proyecto_099.pdf

28

IDENTIFICACIN DE LA ENTIDAD DESCRIPCIN DE LA ENTIDAD AndreSoft es una empresa desarrolladora de software de la ciudad de Ibagu que se dedica a desarrollar software a la medida del cliente, entre su equipo de trabajo cuenta con un gerente de proyectos, un analista, un diseador y un programador, enfocados a darle entera satisfaccin al cliente. Contamos con un portafolio de servicios que tiene una compilacin de software estndar para diferentes necesidades del cliente en reas como: mdica, contable, servicio de estacionamiento, facturacin, pos, entre otros. RESEA HISTRICA En el ao 2009 y ante la poca existencia de software local en la ciudad de Ibagu para las diferentes reas de comercio e industria, el Ing. Andrs Fernando Parra recin graduado de la universidad del Tolima decide junto con un grupo de tres colaboradores iniciar una compaa que se dedique al desarrollo de software para diferentes soluciones, con la intencin de penetrar en el mercado local para que los clientes de la ciudad apoyen el talento local y no recurran a comprar soluciones de software en otras ciudades. FUNCIN Desarrollar programas computacionales, con la finalidad y capacidad de resolver situaciones reales a las empresas para su desarrollo, y evoluciona miento tecnolgico para atender sus necesidades y hacerlas mejores empresas en su campo laboral, financiero, administrativo y econmico, adems de actualizarlos en el campo computacional. MISIN Ser una empresa que haga de las necesidades sociales y empresariales, soluciones tecnolgicas que contribuyan con la evolucin de la humanidad a travs del desarrollo aplicado a las necesidades especificas de cada empresa o persona ofrecindoles soluciones integrales con la finalidad de crear o desarrollar 29

software de fcil uso, que tenga sobresalientes niveles de rentabilidad, calidad, presencia e influencia en el mercado laboral.

VISIN Ser una empresa de reconocido prestigio nacional e internacional, con autonoma administrativa, con excelencia en ventas de computadoras, consumibles, realizacin de software y soporte, donde se brinde un producto de excelente calidad y en donde el mejoramiento continuo en todas las reas sean de agrado a nuestros consumidores, de eficiente gestin, competitiva, con alianzas estratgicas en el mbito nacional e internacional, comprometida con el servicio al cliente, la formacin integral de su recurso humano y tecnolgico. Y ser un ejemplo para la sociedad a lo que se refiere en buen servicio. ORGANIZACIN La empresa AndreSoft solo cuenta con 4 empleados, su propietatio, un analista, un programador y un diseador.

PROPIETARIO

Programador

Analista

Diseador

30

PLANTEAMIENTO METODOLGICO TIPO DE INVESTIGACIN Esta es una investigacin de tipo cuantitativo, ya que se refiere a problemas que pueden ser expresados y solucionados de forma numrica, tiene que ver con ventas, clientes y contabilidad, para la investigacin se tuvo: Levantamiento de informacin a travs de entrevistas. Entrevista y filmacin a los usuarios que usan el servicio. Anlisis de entrevistas y generacin de informes para una sistematizacin de las necesidades encontradas con el fin de aumentar y mejorar los servicios ofrecidos.

DISEO METODOLGICO Se analizo el establecimiento de parqueaderos y se establecieron los actores principales que intervienen en lo que ser el software tarificador y las acciones bsicas que debe cumplir el software. Actores: Administrador, Usuario aplicativo. PROCESOS DE USUARIOS: Validar usuarios. Ingresar datos vehculo. Procesar Pagos. Limpiar campos. Buscar Vehculos Abandonar el sistema. Registrar usuarios.

31

1 1.1

MODELO DE REQUISITOS

DESCRIPCIN DEL PROBLEMA

Se desea un producto software tarificador de parqueaderos que permita conocer mediante plataforma de escritorio local, el conocer cuntos clientes tiene un parqueadero y cuanto cancela cada uno. Se desarrollara una base de datos en Mysql que permita almacenar los datos de los clientes del lugar y se realizara una interfaz en java para la interaccin con el usuario. El sistema mostrara una bienvenida que solicitara una autenticacin de ingreso al usuario para que no ingrese al aplicativo personal no autorizado, en caso de querer tener un nuevo usuario, un administrador tendr la facultar de crear una nueva cuenta de usuarios. Cuando el usuario ya esta autenticado e ingreso al sistema deber permitrsele realizar los siguientes procesos: PROCESOS DE USUARIOS: Validar usuarios.

Comprueba que quien desee ingresar este autorizado para hacerlo. Ingresar datos vehculo.

Para que el automotor ingrese al parqueadero debe registrarse la placa del vehculo, la cedula del cliente y su nombre, se debe generar un nmero de ticket automticamente. Procesar pagos:

En base a lo que se le cobra a un vehculo, automvil o motocicleta y el tiempo calculado de permanencia debe calcularse cuanto debe cancelar el cliente.

32

Buscar vehculos:

En base a la identificacin del cliente o el nmero del ticket puedo conocer si el vehculo se encuentra estacionado en las instalaciones. Limpiar campos.

Para ingresar un nuevo cliente o para abortar un ingreso de datos, debe permitirse limpiar los campos de los cuadros de texto que aparecen en pantalla. Abandonar el sistema.

Permitir salir de forma segura guardando la informacin de los clientes que se atendieron en la jornada. PROCESOS DE ADMINISTRADOR: Registrar usuarios.

Establecer quienes entraran al software, gestionando de esta forma la seguridad, evitando accesos de personal no deseado, garantizando que solo entren al sistema los usuarios que autoriza el administrador.

33

1.2

CASOS DE USO

34

1.2.1 Caso de uso: Registrar usuarios.

BD Usuari os

Regi strar Usuari os

Usuari o

Caso de Uso: Actores: Tipo: Propsito:

Registrar Usuarios. Usuario, Bd Usuarios. Bsico. Incluir a un nuevo usuario para que utilice la aplicacin.

35

Resumen:

Este caso es inicializado como un usuario quien identificndose como administrador puede crear usuarios registrados en el sistema de parqueadero.

Precondiciones: El usuario debe administrador. Flujo Principal:

identificarse

correctamente

como

Se le presenta al usuario la pantalla principal (P-1), con las opciones: Nuevo, Ingresar y Salir. Si el usuario se identifica como administrador y hace clic en Ingresar, se activa el botn nuevo y se inicializa el caso de uso, registrar usuario, sub flujo crear usuario (S-1). Se escribe entonces el nombre de usuario y contrasea que se le quiere dar al nuevo usuario en la pantalla (P-1) y haciendo clic en el botn nuevo, se informa que el usuario ha sido creado.

Sub flujo:

Ninguno.

Excepciones:

Se le indica al usuario que el nombre de usuario y contrasea incluidos, no son validos, al darle clic en aceptar, se borra lo que el usuario escribi para que lo intente de nuevo.

36

1.2.2 Caso de uso: Validar usuarios.

BD Usuarios

Registrar Usuarios <Include> Validar usuarios

Usuario

Caso de Uso: Actores: Tipo:

Validar Usuarios. Usuario, Bd Usuarios. Inclusin.

37

Propsito:

Resumen:

Verificar que el usuario este autorizado por el administrador del sistema para realizar los procedimientos que conlleva la aplicacin, verificando el usuario y contrasea con el que se desea acceder al sistema. Para poder realizar cualquier procedimiento con la aplicacin, primero la persona interesada en ingresar deber registrar su nombre y usuario en la pantalla (P1), donde el aplicativo verificara en la base de datos que la persona este autorizada a entrar.

Precondiciones: El usuario ya debi haber sido creado por el usuario administrador.

Flujo Principal:

Se le presenta al usuario la pantalla principal (P-1), solicitando nombre de usuario y contrasea junto con las opciones: Nuevo, ingresar y salir. Cuando el usuario ingresa su usuario y contrasea y hace clic en el botn ingresar se activa el caso de uso, validar usuario subflujo consultar (S-1). Si el usuario est autorizado (E-1), se contina con el caso de uso Ingresar datos Vehculos. Si la actividad seleccionada es salir, se saldr del sistema.

Sub flujo: Excepciones:

Ninguno. (E-1) Se le indica al usuario que el nombre de usuario y contrasea incluidos, no son validos, al darle clic en aceptar, se borra lo que el usuario escribi para que lo intente de nuevo.

38

1.2.3 Caso de uso: Ingresar datos de vehculo.

La pantalla P-2 es inicializada luego que se valida el usuario. Caso de Uso: Actores: Tipo: Ingresar datos vehculo. Usuario, Bd Cliente. Bsico. 39

Propsito:

Ingresar al sistema los datos del vehculo que se le solicitaron al cliente, adems de generar un numero de tiquete de ingreso, la hora en la que este entra, adems se diferencia si es una moto o un carro lo que trae el cliente. Para poder realizar esto el usuario previamente debi validar su identidad.

Resumen:

Cuando la persona pasa el filtro (P-1) se encuentra con esta pantalla (P-2) que es la pantalla principal en el funcionamiento de la aplicacin, en cada uno de los campos se le pide al usuario datos relacionados con el cliente y el vehculo.

Precondiciones: Se requiere haber validado el usuario.

Flujo Principal:

Se presenta la pantalla de servicios (P-2), en esta pantalla se le solicita o se le muestra al usuario informacin relacionada con la actividad de parqueadero, que contiene los datos: placa, marca, modelo, propietario, documento, ticket, hora de ingreso y salida, tiempo permanecido, tarifa segn automvil o moto, total cobrado, con que se cancela y cuanto se devolvi. Cuando el usuario ingresa los datos de un nuevo evento de parqueadero y hace clic en el botn ingresar se activa el caso de uso Ingresar datos vehculo (S-1). Si el usuario no ingreso ningn dato y oprime el botn ingresar se le muestra un mensaje de error y se continua el flujo (S-1)

40

Sub flujo:

Se presentan varias actividades: Al usuario hacer clic en el botn insertar se valida que se haya ingresado la placa del vehculo (E-1). Si el usuario selecciona la actividad eliminar, se borra el registro de ese evento de parqueo. Si el usuario selecciona la actividad limpiar, se borran los campos de la pantalla, sin eliminar el registro. Si la actividad seleccionada es calcular y pago, se activa el caso de uso procesar pagos. Si la actividad seleccionada es buscar se despliega una pantalla que ubica al cliente segn el ticket Si la actividad seleccionada es consultar, se activa el caso de uso consultar informacin. Salir, abandona la aplicacin.

Excepciones:

E-1: El usuario no ha digitado la placa del vehculo, el registro no se guarda y el usuario tiene que volver a intentar ingresar la informacin.

41

1.2.4 Caso de uso: Procesar pagos.

Caso de Uso: Actores: Tipo:

Procesar pagos. Usuario, Bd Cliente Extensin.

42

Propsito:

Cobrarle al cliente el importe permanencia en el establecimiento.

correspondiente

su

Resumen:

En la pantalla P2, se calcula cuanto se le va a cobrar al cliente, el sistema calcula la hora que ingresa el vehculo y la hora que sale, calculndole a la diferencia, lo que debe pagar el cliente, adems de esto se debe ingresar con cuanto paga el cliente para que se indique el valor del cambio, para finalmente registrar el pago y dejarle de cobrar al vehculo.

Precondiciones: Previamente el usuario debi haber ingresado el vehculo al cual se le quiere cobrar. Flujo Principal: Se le presenta al usuario la pantalla (P2), en la que el usuario ya verificado le indica al sistema calcular cunto se le cobra al cliente. Haciendo clic en buscar conociendo el numero del ticket, en la pantalla (E-1) se le muestra al usuario los datos del cliente: Placa, Marca, Modelo, Propietario y Documento, al igual que la hora en la que ingreso el vehculo, Sub flujo: S-1 Calcular: Toma la hora en la que ingreso el vehculo y la confronta con la hora en la que se hace la consulta, para conocer el tiempo de permanencia de vehculo y mostrar cuanto se debe cobrar segn la tarifa que implica cada tipo de vehculo. S-2 Pagar: Cuando en pantalla se muestra cuanto se va a cobrar, se indica con cuanto paga el cliente (E-2) y haciendo clic en el botn pagar, se muestra el valor del cambio que se le da al cliente y se guarda la operacin. Excepciones: E-1: El usuario no encontr el tiquete de ingreso del vehculo o el ticket corresponde a un vehculo que ya sali. E-2: El pago se realiza con un valor inferior al que se est cobrando.

43

1.2.5 Caso de uso: Consultar Informacin.

Caso de Uso: Actores: Tipo: Propsito:

Consultar Informacin Usuario, Bd Empleado, Bd vehculo. Extensin. Mostrar los ingresos que ha tenido un cliente en determinadas fechas y con qu vehculos y conocer cunto se ha ganado en total en el parqueadero o en determinado da. Luego de validar el usuario en la pantalla (P-1) y haber seleccionado la opcin consultar en la pantalla (P-2) se abre la pantalla P-3 que permite al usuario realizar consultas. 44

Resumen:

Precondiciones: El usuario tiene que haberse validado correctamente en el sistema. Flujo Principal: Se le presenta al usuario la pantalla (P3), en la que el usuario ya verificado puede realizar diferentes consultas a la base de datos del parqueadero. Se muestran tres opciones, consultar por documento, fecha y todos los usuarios, en la parte inferior una grilla que muestra los datos solicitados. Abajo se muestra un botn salir que nos devuelve a la pantalla (P-2) Sub flujo: S-1: Consultar por documento: Se digita el numero de la cedula del cliente para comprobar sus ingresos al establecimiento. S-2: Consultar por Fecha: Se digita la fecha en la que se desea conocer cuantas ventas hubo y se hace clic en consultar por fecha. S-3: Consultar Todos: Solicitar cuanto ha sido el total de ventas del parqueadero desde su apertura.

S-1: Devolver por documento: Los resultados se muestran en la grilla. S-2: Devolver por Fecha: Se muestra cuanto se vendi ese da determinado en una grilla. S-3: Devolver Todos: Muestra cuanto ha sido el total de ventas del parqueadero desde su apertura en una grilla. Si se hacen entradas errneas o inexistentes, simplemente no se muestra ningn dato.

Excepciones:

45

1.3

MODELO DE DOMINIO DEL PROBLEMA

El sistema tarificador de parqueaderos es una aplicacin tipo software en la cual un administrador puede crear usuarios para que despues el usuario autorizado, postetiormente quede registrado en el sistema y mediante su usuario y contrasea y una funcion buscar usuarios se acceda a una base de datos mediante una conexin, que valida sus datos dandole acceso a una pantalla donde se le solicita al usuario datos del cliente del parqueadero como: placa, marca, modelo, propietario y su documento, el sistema le dara a cada usuario que llegue a un un numero de ticket. El sistema debera identificar el tipo de vehiculo para poder establecer una tarifa. El sistema generara automaticamente la fecha y la hora en la que ingresa el automovil o la moto y la hora en la que sale para poder calcular el tiempo de estancia y segn la clase de vehiculo adicione el pago del cliente, al calcular el pago cuando este se retire, indicando el pago que realiza el cliente, el valor que se le cobra y cuanto se le tiene que devolver. Es importante tener funciones como el conocer cuanto se gana, buscar clientes han entrado al establecimiento y cuanto se ha facturado segn el cliente o el dia, buscar un cliente para verificar si el vehiculo permanece en el establecimiento y borrar el registro de un vehiculo en caso de que se haya equivoque. CLASES CANDIDATAS 1. Sistema tarificador de parqueaderos. Adicionar usuarios. Aplicacin Software Administrador. Acceda Base de datos Crear usuarios Usuarios Contraseas. Automovil Moto Hora ingreso 16. Usuario autorizado. 17. Parqueadero. 18. Calcular tiempo. 19. Calcular automaticament e 20. Facturado 21. Funciones 22. Conocer. 23. Conexin 24. Validar. 25. Datos 26. Acceso 27. Parqueadero datos 30. Sistema 31. Generar automaticam ente 32. Fecha 33. Registro vehiculos 34. Clientes 35. Dia 36. Hora 37. Identificar 38. Vehiculo. 39. Borrar registro de

2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.

46

14. 15.

Hora salida Tarifa

28. Buscar cliente 29. Listar cliente.

un vehiculo

Clases canditatas 1. Sistema tarificador de parqueaderos. 2. Adicionar cliente. 3. Aplicacin 4. Software 5. Administrador. 6. Acceda 7. Base de datos 8. Crear usuarios 9. Usuarios 10. Contraseas. 11. Automovil 12. Moto 13. Hora ingreso 14. Hora salida 15. Tarifa 16. Usuario autorizado. 17. Parqueadero datos. 18. Calcular tiempo. 19. Calcular automaticamente 20. Facturado 21. Funciones 22. Conocer. 23. Conexin 24. Validar. 25. Datos 26. Acceso 27. Parqueadero 28. Buscar cliente 29. Listar cliente. 30. Sistema 31. Generar automaticamente 32. Fecha 33. Registro vehiculos 34. Clientes

Modificacion. 1. Eliminada, nombre de la aplicacin. 2. Renombrada control adicionar cliente 3. Impresisa 4. Impresisa 5. Actor 6. Impresisa 7. Impresisa 8. Renombrada control crear usuarios 9. Aceptada 10. Atributo. 11. Atributo. 12. Atributo. 13. Atributo. 14. Atributo. 15. Renombrada Tarifas. 16. Repetida. 17. Datos Cliente . 18. Aceptada 19. Aceptada. 20. Repetida tarifa. 21. Impresisa 22. Renombrada Control Consultar Informacion. 23. Renombrada Conexin BD. 24. Impresisa. 25. Impresisa. 26. Impresisa. 27. Repetida. 28. Renombrada Control Buscar Ticket. 29. Impresisa. 30. Impresisa. 31. Impresisa. 32. Aceptada. 33. Modelo parqueadero la contiene. 47

35. Dia 36. Hora 37. Pago 38. Vehiculo. 39. Borrar registro de vehiculo 40. Buscar usuarios

un

34. Repetida. 35. Redundante fecha. 36. Redundante fecha. 37. Renombrada adicionar pago. 38. Impresisa. 39. Renombrada Control borrar cliente. 40. Renombrada Control Validar usuarios.

Clases Identificadas Control Validar usuarios Control borrar cliente Fecha Datos Cliente control adicionar cliente Tarifas Adicionar pago Control Consultar Informacion. Control Buscar Ticket Conexin BD. Calcular tiempo Usuarios Control adicionar usuarios Calcular pago

48

Clases con atributos y operaciones.

49

50

1.3.1 Diagrama de clases

ControlBorrarCliente - modelservicios : CalcularTiempo Usuarios - Login : String - Pass : String - Attribute_3 : int + + + + + + SetLogin(LoginString) () SetPass(PassString) () setid(int) () getLogin () GetPass () getid () ... 0..1 : void : void : void : string : string : int Minutos_ingreso Minutos:salida Total_minutos h mm : int : int : int : int : int + controlborrarcliente(modelservicios) () + ProcesarBorrarcliente(objmodeloParqueade : void ro) () ... 0..* 0..* 0..*

ProcesarPago - modelservicios : int + AdicionarPago(Model:Servicios) () : int + ProcesarAdicionarPago(ciu: : int modeloParqueadero) () ... CalcularPago - saldo : int - devolver : int 0..* + resultado(h:int,min:int,tarifa:int) () : int + Pago(recibi:int,pago:int) () : int ... ControlConsultarClientes 0..1 0..* - vistaGUIListarUsuarios : - Model:Servicios : int + ControlListaClientes(Serv:Servicios, VistaGUIListarUsuarios) () + ProcesarListarCliente() ArrayList<ModeloParqueadero> () ...

+ ProcesarTiempo(Tiempo:ModeloParqueadero) : int () 0..1 0..1 0..1

ControlValidarUsuario - ModelServicios : - BuscaUsuarios : - Vista:GuiUsuarios : + ControlBuscarUsuario(model:servicio, vista) () + ProcesarBuscarUsuario(Obj:Usuarios): Usuarios ()

0..*

DatosCliente + + + + + + + + + + + + + + + + Placa Marca Modelo Propietario Documento Tipo Total Tiempo : String : String : int : String : int : String : int : int

0..* 0..1

0..1 Tarifas

0..* ControlAdicionarUsuario - modelservicios : - Vista:GuiUsuario : + ControlAdicionarusuarios(model, servicios,vistaGuiusuario) () + ProcesosAdicionarUsuarios(ciu:Usuarios) : void () ...

- Auto : string=1300 - Moto : String=700 + GetAuto () : string + GetMoto () : String 0..* 0..1

getplaca () getmarca () getmodelo () getpropietario () 0..1 getdocumento () getTipo () getTotal () getTiempo () setPlaca(placastring) () SetMarca(marcaString) () SetModelo(ModeloString) () SetPropietario(PropietarioString) () 0..1 SetDocumento(DocumentoString) () SetTipo(TipoString) () SetTotal(TotalString) () SetTiempo(String) ()

ControlBuscarTicket - modelservicios : - busca:modeloParqueadero : int 0..* + ControlBuscarCliente(Model:Servicios) () + ControlBuscarCliente () + ProcesarBuscarCliente(objmodelParqueader omodeloparqueadero) () ...

0..1 0..1 ConexionBd IPAdres User url con Stmt ods : String : String : String : String : String : String

0..1

0..* 0..* ControlAdicionarCliente - modelservicios : int + ControlAdicionarcliente(modelservicios) : void () + ProcesosAdicionarcliente(ciu: : void modeloParqueadero) () ... 0..*

Fecha + fecha () : String + hora () : String ...

+ ConexionBD(Ipadd: String, us;String, Pass: String) () + Conectar () + executeUpdateStatement () + ExecuteQueryStatement () + CloseConection ()

51

1.3.2 Diccionario de clases. Control Buscar usuarios: Sirve para buscar los usuarios del parqueadero. Control borrar cliente: Sirve para eliminar las transacciones de parqueo creadas en caso de errores. Fecha: Sirve para indicar el dia y la hora en la que ingreso el vehiculo. Modelo parqueadero: Es la clase principal y mas importante del sistema, ya que contiene toda la informacion del vehiculo, el cliente, el tiempo de permanencia y el importe cobrado. control adicionar cliente:Sirve para ingresar un nuevo cliente al parqueadero mediante su nombre y su cedula. Tarifas: Sirve para establecer un valor a cobrar distinto entre motos y carros. Adicionar pago: Ingresa un pago al sistema cuando el usuario se retira del parqueadero. Control lista clientes: Permite ubicar los clientes que han ingresado en diferentes dias y saber cuanto se ha ganado. Control Buscar cliente: Localizar si un cliente ingreso y si su vehiculo esta a dentro o cuando estuvo. Conexin BD: Permite conectar a la base de datos en Mysql Calcular tiempo: Determina cuanto tiempo permnanecio el usuario dentro del parqueadero calculando la diferencia de tiempo entre la hora de ingreso y la salida. Usuarios: Personas autorizadas a usar el sistema. Control adicionar usuarios: Permite ingresar nuevos usuarios. Calcular pago: En Base a la tabla de tarifas y el calculo del tiempo permanecido permite saber cuanto se le cobra al cliente.

52

MODELO DE ANLISIS

2.1

IDENTIFICACION DE LAS CLASES SEGN ESTEREOTIPO

2.1.1 BORDE CASO DE USO: REGISTRAR USUARIOS

Se interacta con los actores Usuario y Base de Datos usuarios a travs de las clases borde: InterfazUsuario, InterfazBaseDatosAdicionarUsuarios, InterfazBaseDatosUsuario respectivamente. Se utiliza nicamente la pantalla principal del sistema (P-1) para ingresar un nuevo usuario autorizado. Por lo tanto se incluye nicamente la clase borde PantallaPrincipal, no se consideraron como clases pantallazos como mensajes de error.

CASO DE USO: VALIDAR USUARIOS

Se interacta con los actores Usuario y Base de Datos usuarios a travs de las clases borde: InterfazUsuario, InterfazBaseDatosValidarUsuarios, Interfaz BaseDatosUsuario, respectivamente. Se utiliza nicamente la pantalla principal del sistema (P-1) para verificar que un usuario este autorizado a ingresar. Por lo tanto se incluye nicamente la clase borde PantallaPrincipal, no se consideraron como clases pantallazos como mensajes de error.

53

CASO DE USO: INGRESAR DATOS VEHICULO

Se interacta con los actores Usuario, Base de datos vehculos a travs de las pantallas: InterfazUsuario, InterfazAdicionarCliente, InterfazDatosCliente, a travs de la PantallaParqueadero (P-2). El propsito de este caso de uso es registrar los vehculos: carros y motos que quieren ingresar al establecimiento.

CASO DE USO: PROCESAR PAGOS

Se interacta con los actores Usuario y Base de datos vehculos a travs de las pantallas: InterfaceUsuario, InterfazProcesarPago, InterfazDatosCliente, a travs de la PantallaParqueadero (P-2). El propsito de este caso de uso es cobrar el servicio a los vehculos que ingresaron al establecimiento.

54

CASO DE USO: CONSULTAR INFORMACION

Se interacta con los actores Usuario y Base de datos vehculos a travs de las pantallas: InterfazUsuario, InterfazConsultarDatos, InterfazDatosCliente, los datos se consultan y muestran a travs de la PantallaConsultar (P-3). El propsito de este caso de uso es conocer cunto se ha facturado, discriminando por total, cliente o fecha.

CASO DE USO Registro Usuarios

ACTORES Usuario, Base de Datos usuarios

CLASE BORDE InterfazUsuario, InterfazBaseDatosAdicionarUsuarios, Pantalla principal. InterfazUsuario, InterfazBaseDatosValidarUsuarios, PantallaPrincipal InterfazUsuario, InterfazAdicionarCliente, 55

Validar Usuarios

Usuario, Base de Datos usuarios

Ingresar Datos Vehculo

Usuario, Base de datos vehculos

InterfazDatosCliente, PantallaParqueadero Procesar Pagos Usuario, Base de datos vehculos InterfaceUsuario, InterfazProcesarPago, InterfazDatosCliente, PantallaParqueadero InterfazUsuario, InterfazConsultarDatos, InterfazDatosCliente, PantallaConsultar

Consultar Informacin

Usuario, Base de datos vehculos

2.1.2 IDENTIFICACION ENTIDADES Registrar Usuarios: En este caso de uso se requiere ingresar informacin exclusivamente del usuario, lo que se hace en la clase entidad Registro Usuario.

<ENTIDAD> Registro Usuario

Validar Usuarios: Este caso de uso requiere validar informacin exclusivamente guardada en el Registro Usuario, lo que hace que la misma entidad sea utilizada por el caso de uso registrar usuario.

<ENTIDAD> Registro Usuario

56

Ingresar Datos Vehculo: Este caso de uso requiere ingresar informacin exclusivamente de los clientes del establecimiento, lo que se hace en la entidad Registro Cliente.

<ENTIDAD> Registro Cliente

Procesar Pagos: Este caso de uso requiere ingresar informacin exclusivamente de los clientes del establecimiento, lo que hace que la misma entidad sea usada por el caso de uso Ingresar Datos Vehculo.

<ENTIDAD> Registro Cliente

Consultar Informacin: Este caso de uso requiere consultar informacin exclusivamente de los clientes del establecimiento, lo que hace que la misma entidad sea usada por el caso de uso Ingresar Datos Vehculo y procesar pagos. La informacin tambin puede ser discriminada por documento del cliente y fecha.

<ENTIDAD> Documento

<ENTIDAD> Registro Cliente

<ENTIDAD> Fecha

57

CASOS DE USO Registrar Usuarios Validar Usuarios Ingresar Datos Vehculos Procesar Pagos Consultar Informacin

CLASES ENTIDAD Registro Usuario Registro Usuario Registro Cliente Registro Cliente Registro Cliente, Documento, Fecha.

2.1.3 IDENTIFICACION CONTROL Registrar Usuarios: Este caso de uso se requiere un controlador para manejar el registro de Usuarios.

<CONTROL> Manejador Registro Usuario

Validar Usuarios: Este caso de uso requiere un controlador para validar informacin exclusivamente guardada en el Registro Usuario, lo que hace que el mismo control sea usado por el caso de uso registrar usuario.

<CONTROL> Manejador Registro Usuario

58

Ingresar Datos Vehculo: Este caso de uso requiere un controlador para manejar la informacin de los clientes, lo que se hace en el control Registro Cliente.

<CONTROL> Manejador Registro Cliente

Procesar Pagos: Este caso de uso requiere un controlador para manejar informacin exclusivamente de los clientes del establecimiento y otro para adicionar pagos, lo que hace que se use el mismo manejador en el caso de uso Ingresar datos vehculo.

<CONTROL> Manejador Registro Cliente

<CONTROL> Manejador Adicionar Pago

Consultar Informacin: Este caso de uso requiere un controlador de informacin especialmente de los clientes, lo que hace que la misma entidad sea usada por el caso de uso Ingresar Datos Vehculo y procesar pagos. La informacin tambin puede ser discriminada por documento del cliente y fecha.

<CONTROL> Manejador Consultas

<CONTROL> Manejador Documento

<CONTROL> Manejador Fecha

59

Adicionalmente, por lo general es siempre bueno incluir un controlador principal para administrar los aspectos generales del sistema, incluyendo la pantalla principal. A esta clase la llamaremos ManejadorPrincipal.

<CONTROL> Manejador Principal

CASOS DE USO Registrar Usuarios Validar Usuarios Ingresar Datos Vehculos Procesar Pagos

CLASES CONTROL Manejador Registro Usuario. Manejador Registro Usuario. Manejador Registro Cliente. Manejador Registro Cliente, Manejador Adicionar Pago. Manejador Manejador Fecha. Registr Documento, Consultas, Manejador

Consultar Informacin

Manejador Principal.

60

2.2 -

CLASES SEGN CASOS DE USO Caso de Uso: Registrar Usuario.

El caso de uso registrar usuario involucra: Un manejador Registro Usuario que es el encargado de controlar la informacin de Registro Usuario y las clases borde InterfaceUsuario, InterfazBaseDatosUsuario en la PantallaPrincipal (P-1) del sistema que es la que recibe la informacin del usuario.

61

CASO DE USO VALIDAR USUARIO:

El caso de uso validar usuario involucra: Un manejador Registro Usuario que es el encargado de controlar la informacin de Registro Usuario y las clases borde InterfazUsuario, InterfazDatosValidarUsuarios, InterfazBaseDatosUsuario en la pantalla principal del sistema que es la que recibe la informacin del usuario. Se incluir el Manejador Principal, por ser la pantalla principal del sistema.

62

63

CASO DE USO INGRESAR DATOS VEHICULO:

El caso de uso validar usuario involucra: Un manejador Registro Cliente que es el encargado de controlar la informacin de Registro Cliente y las clases borde InterfaceUsuario, InterfazAdicionarCliente, InterfazDatosCliente en la pantalla parqueadero del sistema que es la que recibe la informacin del cliente.

64

65

CASO DE USO PROCESAR PAGOS:

El caso de uso validar usuario involucra: Un manejador Registro Cliente que es el encargado de controlar la informacin de Registro Cliente y las clases borde InterfazUsuario, InterfazDatosCliente, InterfazProcesarPago en la Pantalla Parqueadero del sistema que es la que recibe la informacin del cliente.

66

67

CASO DE USO: CONSULTAR INFORMACION

En este caso de uso se involucra un manejador para consultas en la entidad RegistroDatosCliente, las clases borde: InterfazUsuario, InterfazConsltarDatos, PantallaConsultar, Interfaz datos cliente.

68

69

CASO DE USO: CONSULTAR CLIENTE

Como el sub flujo consultar cliente involucra todas las figuras del flujo consultar informacin, no se vuelven a invocar, se incluyen solamente las clases correspondientes a este diagrama que son: Manejador Documento, y entidad documento, en la misma clase borde Pantalla Consultar se muestran los resultados.

CASO DE USO: CONSULTAR FECHA

Como el sub flujo consultar cliente involucra todas las figuras del flujo consultar informacin, no se vuelven a invocar, se incluyen solamente las clases correspondientes a este diagrama que son: Manejador Fecha, y entidad fecha, en la misma clase borde Pantalla Consultar se muestran los resultados.

70

2.3 -

DIAGRAMA DE SECUENCIA DIAGRAMA REGISTRAR USUARIO:

71

REGISTRAR USUARIO EXPLICACION:

Esta es la secuencia para el caso de uso RegistrarUsuario, esta instancia inicia con el flujo Identificarse como administrador, una vez se identifica como administrador, la pantalla de adicionar usuario se habilita, se continua con el flujo registrar y el subflujo registrar usuario. Desde el aplicativo no se puede borrar el usuario creado o modificarlo, por razones de seguridad esto solo se puede hacer desde el phpmyadmin que controla la base de datos, el nico que puede hacer esto es el personal de soporte del producto, por razones de seguridad. RegistrarUsuario: Se inicia cuando el manejador principal despliega en la interfaz usuario la PantallaPrincipal(P-1), luego el usuario se identifica como administrador, indicando que quiere registrar un nuevo usuario al ManejadorPrincipal, a su vez esta clase enva un flujo a la clase ManejadorRegistroUsuario que autoriza con otro flujo a la InterfazUsuario el tomar los datos del nuevo usuario. El administrador Registra los del nuevo usuario en la InterfazUsuario, luego el ManejadorRegistroUsuario, enva los datos a la InterfazBasedeDatosRegistroUsario a fin que sean almacenados en la BdUsuarios, est a su vez con un mensaje confirma la insercin a la interfaz, la que lo confirma al ManejadorRegistroUsuario y esta a su vez lo confirma al usuario del sistema en la InterfazUsuario.

DOCUMENTO DE CASOS DE USO

72

Caso de Uso: Actores: Tipo: Propsito:

Registrar Usuarios. Usuario, Bd Usuarios. Bsico. Incluir a un nuevo usuario para que utilice la aplicacin.

Resumen:

Este caso es inicializado como un usuario quien identificndose como administrador puede crear usuarios registrados en el sistema de parqueadero.

Precondiciones: El usuario debe administrador. Flujo Principal:

identificarse

correctamente

como

El ManejadorPrincipal solicita DesplegarPantallaPrincipal, a la InterfazUsuario, que despliega la PantallaPrincipal, Cuando la PantallaPrincipal se despliega el usuario encuentra dos TextField y tres botones, Nuevo, Ingresar y Salir, los TextField le solicitan un nombre de usuario y contrasea, cuando se identifica como Administrador(E-1) y hace clic en el botn Nuevo se activa el caso de uso: RegistrarUsuario en la misma PantallaPrincipal(P-1) mediante los TextField, los datos del nuevo usuario se captan, en la InterfazUsuario se envan los datos de RegistroUsuario al ManejadorRegistroUsuario que luego enva los datos a la InterfazBasedeDatosRegistroUsario a fin que sean almacenados en la BdUsuarios, est a su vez con un mensaje confirma la insercin a la interfaz, la que lo confirma al ManejadorRegistroUsuario y esta a su vez lo confirma al usuario del sistema en la InterfazUsuario. La opcin Salir, Ninguno. Se le indica al usuario que el nombre de usuario y contrasea incluidos, no son validos, al darle clic en aceptar, se borra lo que el usuario escribi para que lo intente de nuevo. 73

Sub flujo: Excepciones:

DIAGRAMA VALIDAR USUARIO

74

- VALIDAR USUARIO EXPLICACION

Esta es la secuencia para el caso de uso ValidarUsuario, es una inclusin del caso de uso RegistrarUsuario. ValidarUsuario: Se inicia cuando el manejador principal despliega en la interfaz usuario la PantallaPrincipal(P-1), luego el usuario se identifica como usuario, indicando nombre y contrasea al ManejadorPrincipal, a su vez esta clase enva un flujo a la clase ManejadorRegistroUsuario valida los datos del usuario en el ManejadorRegistroUsuario, este enva los datos a la InterfazBasedeDatosRegistroUsario a fin que sean validados en la BdUsuarios, est a su vez con un mensaje confirma que el usuario se encuentra registrado a la interfaz, la que lo confirma al ManejadorRegistroUsuario y esta a su vez lo confirma al usuario del sistema en la InterfazUsuario.

DOCUMENTO DE CASOS DE USO

Caso de Uso: Actores: Tipo:

Validar Usuarios. Usuario, Bd Usuarios. Inclusin. 75

Propsito:

Resumen:

Verificar que el usuario este autorizado por el administrador del sistema para realizar los procedimientos que conlleva la aplicacin, verificando el usuario y contrasea con el que se desea acceder al sistema. Para poder realizar cualquier procedimiento con la aplicacin, primero la persona interesada en ingresar deber registrar su nombre y usuario en la pantalla (P1), donde el aplicativo verificara en la base de datos que la persona este autorizada a entrar.

Precondiciones: El usuario ya debi haber sido creado por el usuario administrador.

Flujo Principal:

El ManejadorPrincipal solicita DesplegarPantallaPrincipal, a la InterfazUsuario, que despliega la PantallaPrincipal, Cuando la PantallaPrincipal se despliega el usuario encuentra dos JtextField y tres botones, Nuevo, Ingresar y Salir, los JtextField le solicitan un nombre de usuario y contrasea, cuando se identifica como UsuarioValidado(E-1) y hace clic en el botn Ingresar se activa el caso de uso: ValidarUsuario en la misma PantallaPrincipal(P-1) mediante los JtextField, los datos del usuario se captan, en la InterfazUsuario se envan los datos de RegistroUsuario al ManejadorRegistroUsuario que luego enva los datos a la InterfazBasedeDatosRegistroUsario a fin que sean validados en la BdUsuarios, est a su vez con un mensaje confirma la existencia de los datos a la interfaz, la que lo confirma al ManejadorRegistroUsuario y esta a su vez lo confirma al Ninguno. (E-1) Se le indica al usuario que el nombre de usuario y contrasea incluidos, no son validos, al darle clic en aceptar, se borra lo que el usuario escribi para que lo intente de nuevo.

Sub flujo: Excepciones:

76

REGISTRAR DATOS VEHICULO

77

EXPLICACION DIAGRAMA DE SECUENCIA REGISTRAR DATOS VEHICULO

Esta es la secuencia para el caso de uso RegistrarDatosVehiculo que requiere del caso de uso ValidarUsuario este a su vez es una inclusin del caso de uso RegistrarUsuario. Una vez validado el usuario quien ingresa est autorizado a Ingresar Los datos del cliente y a que se le desplegu la PantallaParqueadero (P2), donde podr registrar el cliente.

InsertarCliente: Este flujo inicia cuando se despliega la PantallaParqueadero (P-2), el usuario a travs de la InterfazUsuario adiciona la informacin del cliente, que es registrada en la clase InterfazDatosCliente para que esta informacin sea registrada en la BdUsuario, una vez registrada esta informacin la BDUsuario lo confirma a la clase InterfazDatosCliente, que a su vez lo informa al ManejadorRegistroCliente y este a su vez lo confirma a la InterfazUsuario.

Caso de Uso: Actores: Tipo:

Ingresar datos vehculo. Usuario, Bd Cliente. Bsico.

78

Propsito:

Ingresar al sistema los datos del vehculo que se le solicitaron al cliente, adems de generar un numero de tiquete de ingreso, la hora en la que este entra, adems se diferencia si es una moto o un carro lo que trae el cliente. Para poder realizar esto el usuario previamente debi validar su identidad.

Resumen:

Cuando la persona pasa el filtro (P-1) se encuentra con esta pantalla (P-2) que es la pantalla principal en el funcionamiento de la aplicacin, en cada uno de los campos se le pide al usuario datos relacionados con el cliente y el vehculo.

Precondiciones: Se requiere haber validado el usuario.

Flujo Principal:

Se despliega la PantallaParqueadero (P-2). En la que se le solicita al usuario datos del cliente mediante textfield: Placa (E-1), Marca, Modelo, Propietario y Documento, se autogenera la hora de ingreso del vehculo, en la interfaz el Botn Insertar activa el caso de uso RegistrarDatosVehiculo. El caso de uso RegistrarDatosVehiculo enva los datos captados en la InterfazUsuario al ManejadorRegistroCliente, a su vez esta informacin va a la InterfazDatosCliente donde es enviada a la BdCliente para ser almacenada, un mensaje OK se enva a la InterfazDatosCLiente, luego pasa al ManejadorRegistroCliente, donde este informa a la interfaz usuario habilitando la insercin de un nuevo usuario.

79

Sub flujo:

El botn Buscar(S-1) es un sub flujo del caso de uso RegistrarDatosVehiculo, cuando el botn es oprimido se activa la funcin de buscar cliente que despliega un texto solicitando el numero del ticket del cliente, esta informacin va al ManejadorRegistroCliente, lo que se est haciendo es validar la existencia de este cliente en la InterfazDatosCliente que a su vez los busca en la BDCliente, este a su vez informa de la existencia del cliente(E-2) en la base de datos a la clase InterfazDatosCliente, un mensaje OK va al ManejadorRegistroCliente que a su vez muestra los datos al usuario en la PantallaParqueadero(P-2) El botn Eliminar(S-1) es un sub flujo del caso de uso RegistrarDatosVehiculo, al hacer clic en el botn eliminar, se elimina el registro activo que se encuentre en pantalla, as que primero se debe buscar el registro a eliminar, una vez localizado el registro se hace clic en el botn eliminar, la orden va al ManejadorRegistroCliente y a su vez a la clase InterfazDatosCliente que consulta y elimina la informacin de la BDCliente, esta manda un mensaje OK a la InterfazDatosCliente, el mensaje OK es enviado al ManejadorRegistroCliente y se despliegan casillas vacas en la PantallaParqueadero(P-2) cuando el usuario es eliminado. Botn limpiar es simplemente una funcin de borrar lo escrito, el botn Consultar, activa el caso de uso ConsultarInformacion. Boton Calcular tiempo hace parte del ProcesarPago. caso de uso

Boton Procesar Pago, Inicia el Caso de Uso Procesar Pago. Boton Consultar activa caso de uso Consultar Informacin. Boton Salir, sale del sistema. Excepciones: E-1: El usuario no ha digitado la placa del vehculo, el registro no se guarda y el usuario tiene que volver a intentar ingresar la informacin. 80

BUSCAR CLIENTE

81

EXPLICACION DIAGRAMA DE SECUENCIA BUSCAR CLIENTE

Esta es la secuencia para el subflujo BuscarCliente, accin del caso de uso RegistrarDatosVehiculo que requiere del caso de uso ValidarUsuario este a su vez es una inclusin del caso de uso RegistrarUsuario. Una vez validado el usuario quien ingresa est autorizado a Ingresar Los datos del cliente y a que se le desplegu la PantallaParqueadero (P-2) BuscarCliente: El flujo inicia despus que ya hay clientes ingresados, se ingresan los datos a buscar en la interfaz usuario, est a su vez los ingresa mediante el ManejadorRegistroCliente, se buscan mediante la clase InterfazDatosCliente en la BDCliente, una vez encontrados los datos la BDCliente se enva la notificacin a la InterfazDatosCliente que a su vez informa al ManejadorRegistroCliente, y esta a su vez despliega la informacin en la PantallaParqueadero, en la InterfazUsuario.

82

ELIMINAR CLIENTE

83

EXPLICACION DIAGRAMA DE SECUENCIA ELIMINAR CLIENTE

Esta es la secuencia para el subflujo EliminarCliente, primero se debe localizar el cliente con el sub flujo BuscarCliente, accin del caso de uso RegistrarDatosVehiculo que requiere del caso de uso ValidarUsuario este a su vez es una inclusin del caso de uso RegistrarUsuario. Una vez validado el usuario quien ingresa est autorizado a Ingresar Los datos del cliente y a que se le desplegu la PantallaParqueadero (P-2), donde podr registrar el cliente. EliminarCliente: Una vez el cliente a eliminar es encontrado gracias al subflujo buscar cliente, se da al ManejadorRegistroUsuario la orden de eliminar ese cliente mediante la interfaz, este a su vez hace la peticin a la clase InterfazDatosCliente, la cual lo elimina de la BDCliente, esta devuelve a esa clase la notificacin de la accin ejecutada, la cual es trasmitida al ManejadorRegistroCliente quien notifica al usuario a travs de la interfaz.

84

PROCESAR PAGOS

85

EXPLICACION DIAGRAMA DE SECUENCIA PROCESAR PAGOS

Esta es la secuencia para el caso de uso ProcesarPagos, que es una extensin del caso de uso RegistrarDatosVehiculo, primero se debe localizar el cliente con el sub flujo BuscarCliente, otra accin del caso de uso RegistrarDatosVehiculo se requiere del caso de uso ValidarUsuario este a su vez es una inclusin del caso de uso RegistrarUsuario. Una vez validado el usuario quien ingresa est autorizado a Ingresar Los datos del cliente y a que se le desplegu la PantallaParqueadero (P2), donde podr procesar el pago. ProcesarPago: Una vez el cliente a procesar el pago es encontrado gracias al subflujo buscar cliente, se da al ManejadorRegistroUsuario le da la orden al ManejadorAdicionarPago que procese el pago del cliente que fue ingresado en la InterfazUsuario, el pago va a la interfaz DatosCliente y este a su vez se guarda en la BDCliente, la clase InterfazDatosCliente recibe la notificacin de la insercin del pago por parte de la BDCliente y esta a su vez lo informa al ManejadorAdicionarPago, con el fin que esta lo informe al ManejadorRegistroCliente con el fin que la notificacin sea dada al usuario en la InterfazUsuario.

Caso de Uso: Actores: Tipo:

Procesar pagos. Usuario, Bd Cliente Extensin.

86

Propsito:

Cobrarle al cliente el importe permanencia en el establecimiento.

correspondiente

su

Resumen:

En la pantalla P2, se calcula cuanto se le va a cobrar al cliente, el sistema calcula la hora que ingresa el vehculo y la hora que sale, calculndole a la diferencia, lo que debe pagar el cliente, adems de esto se debe ingresar con cuanto paga el cliente para que se indique el valor del cambio, para finalmente registrar el pago y dejarle de cobrar al vehculo.

Precondiciones: Previamente el usuario debi haber ingresado el vehculo al cual se le quiere cobrar. Flujo Principal: El caso de uso Procesar Pagos ingresa cuando el usuario hace clic en el botn calcular, el tiempo se toma del reloj del computador, luego se habilita el JTextField para que el usuario indique el valor con el que paga el cliente, y se le indica al mismo el cambio que debe darle al cliente, cuando se hace clic en el Botn Pago, la InterfazUsuario enva los datos del mismo al ManejadorAdicionarPago, que a su vez enva la informacin al ManejadorRegistroCliente, la informacin del pago es enviada a la clase InterfazDatosCliente, esta informacin va a la BDCliente, luego se enva un mensaje OK a la clase InterfazDatosCliente, se le informa al ManejadorAdicionarPago, luego este enva un ok al ManejadorRegistroCliente, este informa a la InterfazUsuario que el pago fue procesado.

87

Sub flujo:

El botn Buscar(S-1) Busca un cliente. El botn Eliminar(S-1) Elimina un cliente. Boton Insertar activa el caso de uso RegistrarDatosCliente Botn limpiar es simplemente una funcin de borrar lo escrito, el botn Consultar, activa el caso de uso ConsultarInformacion. Boton Consultar activa caso de uso Consultar Informacin. Boton Salir, sale del sistema.

Excepciones:

E-1: El usuario no encontr el tiquete de ingreso del vehculo o el ticket corresponde a un vehculo que ya sali. E-2: El pago se realiza con un valor inferior al que se est cobrando.

88

CONSULTAR INFORMACION

89

EXPLICACION DIAGRAMA DE SECUENCIA CONSULTAR INFORMACION

Esta es la secuencia para el caso de uso ConsultarInformacion, primero se debe realizar el caso de uso ValidarUsuario este a su vez es una inclusin del caso de uso RegistrarUsuario. Una vez validado el usuario quien ingresa est autorizado a Ingresar Los datos del cliente y a que se le desplegu la PantallaParqueadero (P2), donde podr Ingresar a la PantallaConsultas (P-3). El caso de uso ConsultarInformacion no depende de la existencia de informacin en la BdCliente, ya que en este caso se mostrara la pantalla de resultados vaca.

ConsultarInformacion: Este flujo inicia cuando se despliega la PantallaParqueadero(P-2), el usuario a travs de la InterfazUsuario, solicita que se despliegue la PantallaConsultas(P-3), se solicita la informacin con el ManejadorConsultas, que consulta la informacin en la InterfazDatosCliente, que est a su vez la consulta en la BDCliente, se enva luego una notificacin de la BDCliente a la InterfazDatosCliente que a su vez enva los resultados al ManejadorConsultas para que a su vez despliegue los resultados en la InterfazCliente en la PantallaConsultas(P-3).

90

Caso de Uso: Actores: Tipo: Propsito:

Consultar Informacin Usuario, Bd Empleado, Bd vehculo. Extensin. Mostrar los ingresos que ha tenido un cliente en determinadas fechas y con qu vehculos y conocer cunto se ha ganado en total en el parqueadero o en determinado da. Luego de validar el usuario en la pantalla (P-1) y haber seleccionado la opcin consultar en la pantalla (P-2) se abre la pantalla P-3 que permite al usuario realizar consultas.

Resumen:

Precondiciones: El usuario tiene que haberse validado correctamente en el sistema.

91

Flujo Principal:

El flujo principal de este caso de uso inicia en la PantallaParqueadero (P-2), cuando el usuario hace clic en el botn consultas y se despliega la pantalla ConsultarInformacion(P-3). En esta pantalla haciendo clic en el botn listar todo se le hace la solicitud al ManejadorConsultas que busque toda la informacin existente en la BdCliente mediante la InterfazDatosCLiente, la BDCliente enva un mensaje de OK a la InterfazDatosCliente, est a su vez enva la notificacin al ManejadorConsultas, la confirmacin es enviada al ManejadorPrincipal para que autorice a la interface usuario desplegar la informacin en la PantallaConsultas(P-3)

Sub flujo:

Cuando el usuario hace clic en el botn Consultar Documento se realiza el mismo proceso descrito en el flujo consultas, con la nica diferencia que existe un ManejadorDocumento que le pide a la Base de Datos que busque las entradas que correspondan al cliente digitado en el JtextField. Cuando el usuario hace clic en el botn Consultar Fecha se realiza el mismo proceso descrito en el flujo consultas, con la nica diferencia que existe un ManejadorFecha que le pide a la Base de Datos que busque las entradas que correspondan al cliente digitado en el JtextField.

Excepciones:

Si se hacen entradas errneas o inexistentes, simplemente no se muestra ningn dato.

92

CONSULTAR POR DOCUMENTO

93

EXPLICACION SECUENCIA CONSULTAR POR DOCUMENTO

Esta es la secuencia para el sub fuljo ConsultarDocumento del caso de uso ConsultarInformacion, primero se debe realizar el caso de uso ValidarUsuario este a su vez es una inclusin del caso de uso RegistrarUsuario. Una vez validado el usuario quien ingresa est autorizado a Ingresar Los datos del cliente y a que se le desplegu la PantallaParqueadero(P-2), donde podr Ingresar a la PantallaConsultas(P-3). El caso de uso ConsultarInformacion no depende de la existencia de informacin en la BdCliente, ya que en este caso se mostrara la pantalla de resultados vaca.

ConsultarDocumento: Este flujo inicia cuando se despliega la PantallaParqueadero(P-2), el usuario a travs de la InterfazUsuario, solicita que se despliegue la PantallaConsultas(P-3), se solicita la informacin con el ManejadorConsultas, la que es solicitada a discriminar por documento mediante el ManejadorDocumento que consulta la informacin en la InterfazDatosCliente, que est a su vez la consulta en la BDCliente, se enva luego una notificacin de la BDCliente a la InterfazDatosCliente que a su vez enva los resultados al ManejadorDocumento para que a su vez notifique los resultados en el ManejadorConsultas y este al usuario mediante la InterfazCliente en la PantallaConsultas(P-3).

94

CONSULTAR POR FECHA

95

EXPLICACION SECUENCIA CONSULTAR POR FECHA

Esta es la secuencia para el sub fuljo ConsultarFecha del caso de uso ConsultarInformacion, primero se debe realizar el caso de uso ValidarUsuario este a su vez es una inclusin del caso de uso RegistrarUsuario. Una vez validado el usuario quien ingresa est autorizado a Ingresar Los datos del cliente y a que se le desplegu la PantallaParqueadero(P-2), donde podr Ingresar a la PantallaConsultas(P-3). El caso de uso ConsultarInformacion no depende de la existencia de informacin en la BdCliente, ya que en este caso se mostrara la pantalla de resultados vaca.

ConsultarFecha: Este flujo inicia cuando se despliega la PantallaParqueadero(P-2), el usuario a travs de la InterfazUsuario, solicita que se despliegue la PantallaConsultas(P-3), se solicita la informacin con el ManejadorConsultas, la que es solicitada a discriminar por documento mediante el ManejadorDocumento que consulta la informacin en la InterfazDatosCliente, que est a su vez la consulta en la BDCliente, se enva luego una notificacin de la BDCliente a la InterfazDatosCliente que a su vez enva los resultados al ManejadorDocumento para que a su vez notifique los resultados en el ManejadorConsultas y este al usuario mediante la InterfazCliente en la PantallaConsultas(P-3).

96

2.4

DICCIONARIO DE CLASES (MODULARIZAR)

Interfaz usuario

Principal

RegistroUsuario

IntrerfazUsuario El modulo est compuesto por una sola clase. Interface Usuario: Clase Borde. Toda la interaccin con el usuario se hace por medio del borde usuario.

Principal El modulo est compuesto por dos clases: El mdulo Principal est compuesto por dos clases: - PantallaPrincipal - Clase Borde. Pantalla principal (P-1). - ManejadorPrincipal - Clase Control. El manejador principal es el encargado de desplegar la pantalla principal de interaccin con el usuario, y luego delegar las diferentes funciones a los manejadores especializados apropiados.

97

Registro Usuario El mdulo Registro est compuesto por dos clases: - ManejadorRegistroUsuario Clase Control. manejador registro usuario es el encargado de controlar los datos de los usuarios registrados autorizados a usar el sistema, Mediante un nombre de usuario y un Password. - InterfazBasedeDatosRegistroUsario: Es la encargada de almacenar y validar la informacin del usuario autorizado en la Bd Usuario.

Registro Cliente

Adicionar Pago

Consultar

Registro Cliente El mdulo Registro est compuesto por tres clases: - Pantalla Parqueadero: Clase Borde. Pantalla de solicitud datos cliente. (P2) - ManejadorRegistroCliente Clase Control. manejador registro usuario es el encargado de controlar los datos de los clientes que ingresan al parqueadero, se solicitan datos del vehculo y la persona. - InterfazBasededatosCliente: Es la encargada de almacenar permitir manipular los datos relacionados con el registro de clientes. Adicionar Pago El mdulo Proceso de pagos est compuesto por tres clases: - Pantalla Parqueadero: Clase Borde. Pantalla de procesamiento de pagos del cliente. (P-2) - ManejadorAdicionarPago Clase Control. manejador Adicionar Pago es el encargado de controlar los datos de los usuarios que ingresan al parqueadero, se establece y cobra una tarifa segn el tiempo permanecido y el tipo de vehculo. 98

InterfazProcesarPago: Es la encargada de almacenar permitir manipular los datos relacionados con el procesamiento del pago de los clientes.

Consultar El mdulo Consultar est compuesto por dos clases: - Pantalla Consultas: Clase Borde. Pantalla de consulta de pagos del cliente. (P-3) - ManejadorConsultas Clase Control. Manejador consultas es el encargado de manipular todo lo relacionado con consultas de datos de clientes. - InterfazDatosConsultas: Es la encargada de almacenar permitir mostrar los datos relacionados con pagos de clientes.

Consultar Documento

Consultar Fecha

Consultar Documento El mdulo Consultar est compuesto por dos clases: - Pantalla Consultas: Clase Borde. Pantalla de consulta de pagos del cliente. (P-3) - ManejadorDocumento Clase Control. Manejador consultas es el encargado de manipular todo lo relacionado con consultas de datos de clientes, discriminando por documento. - InterfazConsultarDocumento: Es la encargada de almacenar permitir mostrar los datos relacionados con pagos de clientes, discriminando por documento.

99

Consultar Fecha El mdulo Consultar est compuesto por dos clases: - Pantalla Consultas: Clase Borde. Pantalla de consulta de pagos del cliente. (P-3) - ManejadorFecha Clase Control. Manejador consultas es el encargado de manipular todo lo relacionado con consultas de datos de clientes, discriminando por fecha. - InterfazConsultarFecha: Es la encargada de almacenar permitir mostrar los datos relacionados con pagos de clientes, discriminado por fecha.

100

3 3.1 TARJETAS

MODELO DE DISEO

Clase: Interfaz Usuario Descripcin: Toda la interaccin con el usuario se hace a travs de esta clase. Mdulo: Interface Usuario Estereotipo: Borde Propiedades: Concreta Superclases: Subclases: Atributos: Manejador, Pantalla Contratos: 1. Desplegar Pantalla Pantalla (1) Principal, Registrar usuario, Desplegar (Pantalla) devuelve Validar usuario. void Este es el mtodo encargado de Pantalla (2) Parqueadero, Registrar desplegar cada pantalla del cliente, Procesar pagos. aplicativo, se delega el despliegue particular a cada Pantalla (3) Consultas, listar todo, pantalla. consultar documento, consultar fecha. 2. Enviar Evento Enviar Evento Devuelve Void. Manejador) Manejador (1): Subsistema principal (1), SubsistemaRegistroUsuario (1), SubsistemaParqueadero (2), SubSisitemaRegistroCliente (2), Mtodo encargado de recibir eventos SubsistemaProcesarPagos (2), del sistema de ventanas a travs de las SubSistemaConsultar (3), diversas pantallas. Se enva el evento SubsistemaConsultartodo (3), recibido a los distintos manejadores. SubsistemaConsultarDocumento (3), SubsistemaConsultarFecha (3). (Evento,

101

Clase: PantallaPrincipal Descripcin: Pantalla encargada de la insercin y validacin de usuario. Mdulo: Interface Usuario (Pantalla Principal) Estereotipo: Borde Propiedades: Abstracta Superclases: Subclases: Pantalla Principal, Pantalla Parqueadero, Pantalla Consultas. Atributos: ManejadorPrincipal, InterfazUsuario. Contratos: 1. Desplegar Pantalla Desplegar Pantalla (), devuelve void Mtodo encargado de desplegar la pantalla actual. Responsabilidades Privadas EnviarEvento() Devuelve Void Mtodo encargado de recibir eventos de la interfaz usuario. los InterfaceUsuario(1)

102

Clase: ManejadorPrincipal Descripcin: Controlador de la pantalla principal. Mdulo: Principal Estereotipo: Control Propiedades: Abstracta Superclases: Subclases: ManejadorRegistroUsuario, ManejadorRegistroUsuario, ManejadorRegistroCliente, ManejadorAdicionarPago, ManejadorConsultas, ManejadorDocumento, Manejador Fecha. Atributos: Nombre de usuario y Login. Contratos: 1. Manejar Evento Desplegar Pantalla (), devuelve void Mtodo sobrescrito de la clase Manejador, encargado de recibir eventos del sistema de ventanas a travs de la InterfaceUsuario. Responsabilidades Privadas crearRegistroUsuario() devuelve void SubsistemaRegistro (1)

Mtodo encargado de solicitar al SubsistemaRegistro que de servicio al contrato de Registrar Usuario. validarRegistroUsuario() devuelve void SubsistemaRegistro (2) Mtodo encargado de solicitar al SubsistemaServicio que de servicio al contrato de Ofrecer Servicio.

103

Clase: ManejadorRegistroUsuario Descripcin: El manejador de registro de usuario se encarga de todo lo relacionado con registro del usuario para poder utilizar el sistema. Mdulo: Registro Usuario Estereotipo: Control Propiedades: Concreta. Superclases: ManejadorPrincipal. Subclases: Atributos: Contratos: 1. Manejar Evento manejarEvento(Evento) devuelve void Mtodo sobrescrito de la clase Manejador, encargado de recibir eventos del sistema de ventanas a travs de la InterfaceUsuario. 2. Registrar Usuario. crearRegistroUsuario() void devuelve InterfaceBaseDatosRegistroUsuario (1)

Mtodo encargado de solicitar a la InterfaceBaseDatosRegistro la creacin de un nuevo RegistroUsuario a travs del contrato de Registrar Usuario validarRegistroUsuario(String,Stri ng) devuelve Boolean Mtodo encargado de solicitar a la InterfaceBaseDatosRegistro la validacin de un usuario a travs del contrato de Registrar Usuario Responsabilidades Privadas InterfaceBaseDatosRegistroUsuario (1)

104

actualizarRegistroUsuario() void

devuelve InterfaceBaseDatosRegistroUsuario (1)

Mtodo encargado de solicitar a la InterfaceBaseDatosRegistro la actualizacin de un RegistroUsuario a travs del contrato de Registrar Usuario

Clase: InterfazRegistroUsuario Descripcin: La informacin de cada usuario se almacena en la base de datos de registro la cual se accede mediante la interface de la base de datos de registro. Esto permite guardar y consultar informacin de los usuarios autorizados. Mdulo: RegistroUsuario.InterfaceDB Estereotipo: Borde Propiedades: Concreta Superclases: Subclases: Pantalla Principal, Pantalla Parqueadero, Pantalla Consultas. Atributos: Contratos: 1. Registrar Usuarios crearRegistroUsuario(RegistroUsuario) BaseDatosRegistroUsuario devuelve void Mtodo encargado de solicitar BaseDatosRegistro la creacin de un nuevo RegistroUsuario validarRegistroUsuario(String, devuelve Boolean Mtodo encargado de solicitar BaseDatosRegistro la validacin de un usuario Responsabilidades Privadas a la

String) BaseDatosRegistroUsuario

la

105

crearRegistroUsuario(RegistroUsuario) devuelve void Mtodo encargado de solicitar BaseDatosRegistro la creacin de un nuevo RegistroCliente a la

BaseDatosRegistroUsuario

Clase: Interface Datos Cliente (Pantalla P-2) Descripcin: Pantalla encargada de la insercin de datos del cliente. Mdulo: Interface Usuario (Pantalla Parqueadero) Estereotipo: Borde Propiedades: Abstracta Superclases: Subclases: Pantalla Principal, Pantalla Parqueadero, Pantalla Consultas. Atributos: Placa, Marca, Modelo, Propietario, Documento, Ticket, Hora de Ingreso, Hora de salida, Tiempo, Tarifa, Valor Hora, Total, Valor Recibido, Cambio. Contratos: 1. Desplegar Pantalla Desplegar Pantalla (), devuelve void Mtodo encargado de desplegar la pantalla actual. Responsabilidades Privadas ManejadorEventoInsertar() Void Devuelve InterfaceCliente(2)

Mtodo encargado de enviar manejador Registro Cliente. ManejadorEventoEliminar() Void Mtodo encargado de

Devuelve InterfaceCliente(2)

enviar

a 106

manejador Registro Cliente. ManejadorEventoBuscar() Void Devuelve InterfaceCliente(2)

Mtodo encargado de enviar manejador Registro Cliente. LimpiarCampos() devuelve void Mtodo encargado de limpiar campos de la interfaz del Cliente

los

Clase: ManejadorRegistroCliente Descripcin: El manejador de registro de usuario se encarga de todo lo relacionado con registro del usuario para poder utilizar el sistema. Mdulo: Registro Cliente Estereotipo: Control Propiedades: Concreta. Superclases: ManejadorPrincipal Subclases: ManejadorAdicionarPago, ManejadorConsultas. Atributos: Contratos: 1. Manejar Evento manejarEvento(Evento) devuelve void Manejador encargado de recibir eventos del sistema a travs de la interface usuario. 2. Registrar Cliente. crearRegistroCliente() devuelve InterfaceBaseDatosCliente (2)

107

void Mtodo encargado de solicitar a la InterfaceBaseDatosCliente creacin de un nuevo RegistroCliente a travs del contrato de Registrar Cliente Responsabilidades Privadas CrearRegistroCliente() devuelve void Mtodo encargado de solicitar a la InterfaceDatosCliente la creacin de un nuevo RegistroCliente a travs del contrato de Registrar Cliente InterfaceDatosCliente (2)

EliminarRegistroCliente() devuelve void Mtodo encargado de solicitar a la InterfaceDatosCliente la eliminacin de un RegistroCliente a travs del contrato de Eliminar Cliente

InterfaceDatosCliente (2)

BuscarRegistroCliente() devuelve void Mtodo encargado de solicitar a la InterfaceDatosCliente la Bsqueda de un RegistroCliente a travs del contrato de Eliminar Cliente

InterfaceDatosCliente (2)

108

Clase: InterfazRegistroCliente Descripcin: La informacin de cada usuario se almacena en la base de datos de registro la cual se accesa mediante la interface de la base de datos de registro. Esto permite guardar informacin sobre los clientes. Mdulo: RegistroCliente.InterfaceDB Estereotipo: Borde Propiedades: Concreta Superclases: Pantalla Principal Subclases: Pantalla Parqueadero, Pantalla Consultas. Atributos: Contratos: 1. Registrar Cliente crearRegistroCliente(RegistroCliente) InterfazDatosCliente(2) devuelve void Mtodo encargado de solicitar a la BaseDatosCliente la creacin de un nuevo Cliente EliminarRegistroCliente(RegistroCliente) InterfazDatosCliente(2) devuelve void Mtodo encargado de solicitar a la BaseDatosCliente la eliminacin de un Cliente BuscarRegistroCliente(RegistroCliente) devuelve void Mtodo encargado de solicitar a la BaseDatosCliente la bsqueda de un Cliente InterfazDatosCliente(2)

109

Clase: Interface Datos Cliente (Pantalla P-2) Procesar Pagos Descripcin: Pantalla encargada de la insercin de datos del cliente y el procesamiento de pagos. Mdulo: Interface Cliente (Pantalla Parqueadero) Estereotipo: Borde Propiedades: Abstracta Superclases: Subclases: Pantalla Parqueadero, Pantalla Consultas. Atributos: ManejadorAdicionarPago, InterfazUsuario. Contratos: 1. Desplegar Pantalla Desplegar Pantalla (), devuelve void Mtodo encargado de desplegar la pantalla actual. Responsabilidades Privadas ManejadorEventoCalcularTiempo() Devuelve Void Mtodo encargado de enviar a manejador Calcular el valor a cobrar al cliente y almacenarlo en memoria RAM. ManejadorEventoProcesarPagos() Devuelve Void Mtodo encargado de procesar el pago y adicionarlo a la informacin del cliente. LimpiarCampos() devuelve void Mtodo encargado de limpiar los campos de la interfaz ProcesarPagos. InterfaceCliente(2) InterfazProcesarPago

110

Clase: ManejadorAdicionarPago Descripcin: El manejador de proceso de pago, liquida el valor a pagar del cliente segn su estancia y lo adiciona a la informacin del mismo. Mdulo: AdicionarPago Estereotipo: Control Propiedades: Concreta. Superclases: ManejadorPrincipal. Subclases: Atributos: Contratos: 1. Manejar Evento manejarEvento(Evento) devuelve void Manejador encargado de recibir eventos del sistema a travs de la interface usuario. 2. Procesar Pagos. ProcesarPago() devuelve void InterfaceBaseDatosCliente (2)

Mtodo encargado de solicitar a la InterfazProcesarPago interfaz Procesar Pago que se adicione un pago del cliente en InterfaceBaseDatosCliente a travs del contrato de ProcesarPagos Responsabilidades Privadas ProcesarPagos() devuelve void InterfaceDatosCliente (2)

Mtodo encargado de solicitar a la interfaz Procesar Pago que se adicione un pago del cliente en InterfaceBaseDatosCliente a travs del InterfazProcesarPago contrato de ProcesarPagos

111

Clase: InterfazProcesarPago Descripcin: La informacin de cada usuario se almacena en la base de datos de registro la cual se accesa mediante la interface de la base de datos de registro Cliente. Esto permite validar a los distintos usuarios procesar informacin sobre los pagos del cliente. Mdulo: ProcesarPagos. Interface Estereotipo: Borde Propiedades: Concreta Superclases: Subclases: Atributos: Contratos: 1. Procesar Pagos AdicionarPago(ProcesarPago) devuelve InterfazDatosCliente, void InterfazProcesarPago (2) Mtodo encargado de solicitar a la BaseDatosCliente la creacin de un nuevo Cliente

Clase: Interface Consultas (Pantalla P-3) Descripcin: Pantalla encargada de la ejecucin de consultas Mdulo: Interface Consultas (Pantalla Consultas) Estereotipo: Borde Propiedades: Abstracta Superclases: Subclases: Pantalla Consultas. Atributos: ManejadorConsultas, InterfazUsuario. Contratos: 1. Desplegar Pantalla Desplegar Pantalla (), devuelve void Mtodo encargado de desplegar la pantalla actual. Responsabilidades Privadas

112

ManejadorEventoListarTodo() Devuelve InterfaceConsultas(3) Void Mtodo encargado de Realizar consultas generales de informacin, sin discriminar ningn concepto. ManejadorDocumento() Devuelve Void Mtodo encargado de Realizar consultas generales de informacin, sin filtrando por documento. ManejadorFecha() Devuelve Void Mtodo encargado de Realizar consultas generales de informacin, sin filtrando por fecha. InterfaceConsultas(3) InterfaceConsultas(3)

Clase: ManejadorConsultas Descripcin: El manejador de Consultas, muestra el importe total generado por los clientes en el establecimiento o los discrimina por fecha o documento del cliente. Mdulo: Consultar Informacin Estereotipo: Control Propiedades: Concreta. Superclases: ManejadorPrincipal. Subclases: ConsultarDocumento, ConsultarFecha Atributos: Contratos: 1. Manejar Evento ManejarEvento (Evento) devuelve void.

113

Manejador encargado de recibir eventos del sistema a travs de la interface usuario. 2. Consultar Informacin. ConsultarInformacion() void devuelve InterfaceConsultas(3)

Mtodo encargado de solicitar a la interfaz Procesar Pago que se adicione un pago del cliente en InterfaceBaseDatosCliente a travs del contrato de ProcesarPagos Responsabilidades Privadas ListarTodo() devuelve void Mtodo encargado de listar toda la informacin que registre en la InterfaceBaseDatosCliente a travs del contrato de ConsultarInformacion Consultardatos(3)

Clase: InterfazConsultarDatos Descripcin: Muestra el total del importe de las ventas del establecimiento Mdulo: ConsultarInformacion. InterfaceDB Estereotipo: Borde Propiedades: Concreta Superclases: Subclases: Pantalla Consultas. Atributos: Contratos: 1. Consultar Informacin ConsultarInformacion(ConsultarInformacion) ConsultarInformacion(3), devuelve void

114

Mtodo encargado de consultar Informacin a la BaseDatosCliente y mostrarla en la interfaz ConsultarInformacion. Clase: ManejadorConsultarDocumento Descripcin: El manejador de ConsultarDocumento, muestra el importe total generado por cada cliente. Mdulo: ConsultarDocumento Estereotipo: Control Propiedades: Concreta. Superclases: ManejadorConsultas. Subclases: Atributos: Contratos: 1. Manejar Evento manejarEvento(Evento) devuelve void Manejador encargado de recibir eventos del sistema a travs de la interface usuario. 2. Consultar Documento. ConsultarDocumento () devuelve InterfaceConsultas(3) void Mtodo encargado de solicitar a la interfaz Procesar Pago que se adicione un pago del cliente en InterfaceBaseDatosCliente a travs del contrato de ProcesarPagos Responsabilidades Privadas ConsultarDocumento() devuelve void Mtodo encargado de listar toda la 115 ConsultarDocumento(3)

informacin que registre en la InterfaceBaseDatosCliente, segn cada cliente a travs del contrato de ConsultarDocumento.

Clase: InterfazConsultarDocumento Descripcin: Muestra el total del importe de las ventas del establecimiento, segn el documento del cliente. Mdulo: ConsultarInformacion. InterfaceDB Estereotipo: Borde Propiedades: Concreta Superclases: Subclases: Pantalla Consultas. Atributos: Contratos: 1. Consultar Documento ConsultarDocumento(ConsultarDocumento) ConsultarDocumento(3), devuelve void Mtodo encargado de consultar Informacin a la BaseDatosCliente y mostrarla en la interfaz ConsultarDocumento. Clase: ManejadorConsultarFecha Descripcin: El manejador de ConsultarFecha, muestra el importe total generado en cada da. Mdulo: ConsultarFecha Estereotipo: Control Propiedades: Concreta. Superclases: ManejadorFecha. Subclases: Atributos: Contratos: 1. Manejar Evento

116

manejarEvento(Evento) devuelve void Manejador encargado de recibir eventos del sistema a travs de la interface usuario. 2. Consultar Fecha. ConsultarFecha() devuelve void Mtodo encargado de solicitar a la interfaz Procesar Pago que se adicione un pago del cliente en InterfaceBaseDatosCliente a travs del contrato de ProcesarPagos Responsabilidades Privadas ConsultarFecha() devuelve void Mtodo encargado de listar toda la informacin que registre en la InterfaceBaseDatosCliente, segn cada da a travs del contrato de ConsultarFecha. ConsultarFecha(3) InterfaceConsultas(3)

Clase: InterfazConsultarFecha Descripcin: Muestra el total del importe de las ventas del establecimiento, segn el documento del cliente. Mdulo: ConsultarInformacion. InterfaceDB Estereotipo: Borde Propiedades: Concreta Superclases: Subclases: Pantalla Consultas. Atributos: Contratos: 1. Consultar Fecha 117

ConsultarFecha(ConsultarFecha) devuelve void Mtodo encargado de consultar Informacin a la BaseDatosCliente y mostrarla en la interfaz ConsultarFecha. 3.2 BASE DE DATOS

ConsultarFecha(3),

create database parqueadero; use parqueadero; create table usuarios( id_usuarios INT NOT NULL AUTO_INCREMENT PRIMARY KEY, login varchar(15) not null, pass varchar(15) not null ); create table parqueadero ( id int not null auto_increment primary key, DOCUMENTO int NOT null, PLACA VARCHAR(15) NOT NULL, MARCA VARCHAR(15), MODELO VARCHAR(15), 118

PROPIETARIO VARCHAR(40) NOT NULL, TIPO_VEHICULO VARCHAR(15) NOT NULL, HORA_INGRESO int NOT NULL, MIN_INGRESO int NOT NULL, FECHA_INGRESO VARCHAR(15) NOT NULL, HORA_SALIDA int, MIN_SALIDA int, FECHA_SALIDA VARCHAR(15), PAGO int, TIEMPO VARCHAR(10));

119

MODELO DE IMPLEMENTACIN

Programa realizado en Java Netbeans. 4.1 INTERFAZUSUARIO (PANTALLA PRINCIPAL)

public class GuiUsuario extends javax.swing.JFrame { GuiParqueadero llamar = new GuiParqueadero(); String mensajeError; private ManejadorPrincipal model; private ControlAdicionarUsuario controlador; private ControlBuscarUsuario controlador2; public GuiUsuario() { controlador=new ControlAdicionarUsuario(model, this); } private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { if(user.getText().equals("admin")&&pass.getText().equals("admin")){ star.setEnabled(true); user.setText(""); pass.setText(""); } else{ Usuarios u; //defino una varible de referencia de tipo Usuarios String log; Usuarios busco = new Usuarios(); String pas; log = user.getText();//capturo el String de la caja usuario pas = pass.getText();//capturo el Login de la caja pass controlador2 = new ControlBuscarUsuario(model, this); busco = controlador2.procesarBuscarUsuario(u); if(busco.getLogin()!=null){ dispose(); llamar.run(); } else{ JOptionPane.showMessageDialog(null,"contrasea Validos","ERROR",JOptionPane.ERROR_MESSAGE); user.setText("");

Usuario

No

120

pass.setText(""); } } } private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) { JOptionPane.showMessageDialog(null,"GRACIAS","SALIR",JOptionPane.INFORM ATION_MESSAGE); dispose(); // TODO add your handling code here: }

4.2

MANEJADOR PRINCIPAL

public ManejadorPrincipal() { listaUsuario = new ArrayList<modeloParqueadero>(); listaVistas = new ArrayList<GUI>(); conexion = new ConexionBD(); //envia los parametros para establecer la conexion con la Base de datos } public void adicionarVista(GUI vista) { listaVistas.add(vista); } public ArrayList<modeloParqueadero> getListUsuario() { listaUsuario= new Array List<modeloParqueadero>(); conexion = new ConexionBD(); int id; String doc; String placa; String marca; String modelo; String propietario; int horaingreso; int miningreso; int horasalida; int minsalida; String fecha_salida; String fecha_ingreso; int pago; String tiempo; modeloParqueadero c1; String cad; 121

ResultSet res = null;

public Usuarios buscarUsuario(Usuarios obj){ conexion= new ConexionBD(); int id; String login; Usuarios cue; String cad; cue=new Usuarios(); ResultSet res; try{ m = MD5.getInstance(); } catch(Exception e){ }

public modeloParqueadero buscarCliente(modeloParqueadero obj){ conexion= new ConexionBD(); int id; String placa; String modelo; String marca; String propietario; String tipo_vehiculo; String documento; int horaingreso; int miningreso; String fecha_ingreso; modeloParqueadero cue; String cad; cue=new modeloParqueadero(); ResultSet res; cad= "select * from PARQUEADERO where id = "+obj.getTiket()+ ""; System.out.print(cad); try{ res=conexion.executeQueryStatement(cad); 122

while (res.next()){ id=Integer.parseInt(res.getString(1)); documento=res.getString(2); placa=res.getString(3); marca=res.getString(4); modelo=res.getString(5); propietario=res.getString(6); tipo_vehiculo=res.getString(7); horaingreso=Integer.parseInt(res.getString(8)); fecha_ingreso=res.getString(10); miningreso=Integer.parseInt(res.getString(9)); } }catch(Exception e){ JOptionPane.showMessageDialog(null, "Error..."); } Manejador Registro Usuario package Controlador; import estructural.Usuarios; import Modelo.ManejadorPrincipal; import vista.GuiUsuario; public class ControlAdicionarUsuario { private ManejadorPrincipal model; private GuiUsuario vista; public ControlAdicionarUsuario(ManejadorPrincipal model, GuiUsuario vista) { this.model = model; this.vista = vista; } public void procesarAdicionarUsuario(Usuarios ciu){//recibo el objeto de la clase Usuarios model.adicionarUsuario(ciu); //llamo al metodo adicionarUsuario de la clase ManejadorPrincipal y le envio el objeto ciu de la clase Usuarios } }

4.3

INTERFAZ REGISTRO USUARIO

Codigo para almacenamiento en la base de datos, contenido en la interfaz pantalla principal y controlador principal. 123

4.4

INTERFAZ DATOS CLIENTE Y PROCESAR PAGOS

Fecha myfecha = new Fecha(); Tarifas tarifas = new Tarifas(); String mensajeError; private ManejadorPrincipal model; private ControlAdicionarCliente controlador; private ControlBuscarCliente controlador2; private ControlBorrarCliente controlador3; private AdicionarPago controlador4; private int resultado=0; private int cam=0; private ConexionBD conexion; CalcularTiempo calcula = new CalcularTiempo(); modeloParqueadero time = new modeloParqueadero(); CalcularPago pago = new CalcularPago(); public GuiParqueadero() { model=new ManejadorPrincipal(); controlador2 = new ControlBuscarCliente(model); controlador3 = new ControlBorrarCliente(model); controlador4 = new AdicionarPago(model); controlador = new ControlAdicionarCliente(model);//se crea un objeto de la clase control adicionar cliente initComponents();//inicia los componentes graficos this.setResizable(false); this.setLocationRelativeTo(null);

if (tarifa.getSelectedIndex() == 0) { valor.setText(tarifas.getAuto()); } else if (tarifa.getSelectedIndex() == 1) { valor.setText(tarifas.getCam()); } else if (tarifa.getSelectedIndex() == 2) { valor.setText(tarifas.getBus()); } else if (tarifa.getSelectedIndex() == 3) { valor.setText(tarifas.getMula()); } else { valor.setText(tarifas.getMoto()); } resultado = pago.resultado(time.getHoraSalida(),time.getMinSalida(),Integer.parseInt(valor.get Text())); 124

total.setText(Integer.toString(resultado)); } else } private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) { txtTiket.setText(""); marca.setText(""); placa.setText(""); mod.setText(""); pro.setText(""); doc.setText(""); in.setText(""); out.setText(""); valor.setText(""); total.setText(""); cambio.setText(""); hora1.setText(""); min1.setText(""); hora2.setText(""); min2.setText(""); recibido.setText(""); tiempo.setText(""); placa.setEditable(true); marca.setEditable(true); mod.setEditable(true); pro.setEditable(true); doc.setEditable(true); } private void jButton8ActionPerformed(java.awt.event.ActionEvent evt) { JOptionPane.showMessageDialog(null, "GRACIAS", "FIN DE SESION", JOptionPane.INFORMATION_MESSAGE, icono); System.exit(0); // TODO add your handling code here: } txtTiket.setText( ticket); 125

placa.setEditable(false); marca.setEditable(false); mod.setEditable(false); pro.setEditable(false); doc.setEditable(false); } } private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) { String tiket=""; //varable de tipo string inicializando en nada if(busco.getplaca()!=null){ txtTiket.setText(Integer.toString(busco.getTiket())); placa.setText(busco.getplaca()); marca.setText(busco.getmarca()); mod.setText(busco.getmodelo()); pro.setText(busco.getPropietario()); doc.setText(busco.getDocumento()); in.setText(busco.getFechaIngreso()); hora1.setText(Integer.toString(busco.getHoraIngreso())); min1.setText(Integer.toString(busco.getMinIngreso())); controlador3.procesarBorrarCliente(obj); txtTiket.setText(""); placa.setText(""); marca.setText(""); mod.setText(""); pro.setText(""); doc.setText(""); in.setText(""); hora1.setText(""); min1.setText(""); hora2.setText(""); min2.setText(""); out.setText(""); recibido.setText(""); total.setText(""); cambio.setText(""); valor.setText(""); 126

tiempo.setText(""); placa.setEditable(true); marca.setEditable(true); mod.setEditable(true); pro.setEditable(true); doc.setEditable(true); } else JOptionPane.showMessageDialog(null,"Busque Tiket!!!","ERROR",JOptionPane.ERROR_MESSAGE); } 4.5 MANEJADOR REGISTRO CLIENTE

el

Numero

del

package Controlador; import estructural.modeloParqueadero; import Modelo.ManejadorPrincipal; public class ControlAdicionarCliente { private ManejadorPrincipal model; public ControlAdicionarCliente(ManejadorPrincipal model) { this.model = model; } public void procesarAdicionarCliente(modeloParqueadero ciu){//recibo el objeto de la clase Usuarios model.adicionarCliente(ciu); //llamo al metodo adicionarUsuario de la clase ManejadorPrincipal y le envio el objeto ciu de la clase Usuarios } }

4.6

INTERFAZ REGISTRO CLIENTE, PROCESAR PAGOS

Codigo para almacenamiento en la base de datos, contenido en la interfaz pantalla parqueadero y Manejador principal.

127

4.7

MANEJADOR ADICIONAR PAGO

package Controlador; import estructural.modeloParqueadero; import Modelo.ManejadorPrincipal; public class AdicionarPago { private ManejadorPrincipal model; public AdicionarPago(ManejadorPrincipal model) { this.model = model; } public void procesarAdicionarPago(modeloParqueadero ciu){//recibo el objeto de la clase Usuarios model.adicionarPago(ciu); //llamo al metodo adicionarUsuario de la clase ManejadorPrincipal y le envio el objeto ciu de la clase Usuarios } } 4.8 INTERFAZ PROCESAR PAGOS

Codigo para almacenamiento en la base de datos, contenido en la interfaz pantalla parqueadero y Manejador principal. 4.9 INTERFACE CONSULTAS

public class GUIListarUsuarios extends javax.swing.JFrame implements GUI{ public GUIListarUsuarios(ManejadorPrincipal serv) { private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { cambio(); //invoca al metodo de la misma clase // TODO add your handling code here: } private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) { dispose(); // TODO add your handling code here: } private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) { 128

cambio2(); // TODO add your handling code here: } private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: cambio3(); } public void cambio(){//metodo general public void cambio2(){//metodo documento public void cambio2(){//metodo fecha 4.10 MANEJADOR CONSULTAS public class ControlListaClientes { private GUIListarUsuarios vista; private ManejadorPrincipal model; public ControlListaClientes(ManejadorPrincipal serv, GUIListarUsuarios vista) { this.model=serv; this.vista=vista; } public ArrayList<modeloParqueadero> procesarListaClientes (){ return model.getListUsuario(); } } 4.11 INTEFAZ CONSULTAR DATOS Codigo para almacenamiento en la base de datos, contenido en la pantalla consultas y el ManejadorPrincipal.

129

MODELO DE PRUEBAS

El modelo de pruebas usado en este proyecto se basa en las especificaciones y reglas dictadas por la IEEE de 1983. El modelo de pruebas se desarroll en paralelo a la construccin y desarrollo del software que se plante en este proyecto. Adems las pruebas finales realizadas tuvieron como objetivo principal la certificacin de la calidad de este software. Las pruebas realizadas se enfocaron a la deteccin de bugs (failure, fault, error), realizndose las correcciones pertinentes que fueran necesarias. Los tipos de pruebas realizados buscan la verificacin y validacin del software ofertado. La verificacin midi si los resultados correspondan a las especificaciones del sistema, es decir si el software se est construyendo bien en cada etapa de su desarrollo; y la validacin midi que las especificaciones y los resultados son los correctos, es decir si el resultado del software es lo que el cliente solicit. Las tcnicas de pruebas usadas para la verificacin y validacin del software fueron: 1) Prueba de Unidad: se verifico y se prob cada unidad, modulo (clase) del sistema por separado y se valido su funcionamiento. Las sgtes P.Unidad: a) Prueba Estructural: se verific y valid el diseo interno de cada modulo. (Prueba Caja Blanca) b) Prueba Especificacin: se verific y valid el comportamiento de los procesos de entrada y salida de cada unidad del sistema. (Prueba Caja Negra) 2) Prueba Integracin: se ensamblaron todos los mdulos de cada clase y se integraron al sistema completo con xito. Las unidades trabajan juntas y entre s sin problemas. 3) Prueba del Sistema: una vez que se probarn todos los casos de uso de manera aislados, se prob el sistema completo como uno solo. Se ejecutaron varios casos de uso en paralelo y se someti todo el sistema a diferentes cargas en la realizacin de las sgtes pruebas: a) Prueba de Regresin: se verific que el software mantuviera siempre su funcionalidad requerida, despus de corregir alguna fault.

130

b) Prueba de Operacin: se verific el funcionamiento del software por largos periodos de tiempo bajo condiciones normales de operatividad; encontrndose una optima confiabilidad (reliability) en el software. c) Prueba de Escala Completa: No se realizo porque el software a pesar de estar montado en Mysql mediante la plataforma Java Netbeans, solo se pens para ser ejecutado en Un solo equipo por negocio. d) Prueba de Rendimiento: conocida tambin como prueba de capacidad, se instal el software en computadores de distintas capacidades de CPU, RAM, H.D.D; midindose la capacidad de procesamiento del software y encontrndose, que el software requiere pocos recursos de mquina para mantener un alto nivel de performance. e) Prueba Ergonmica: las interfaces, los mens lgicos, vistas, tienen concordancia y son los indicados desde el punto de vista del usuario. f) Prueba de Documentacin: los manuales de usuario y operador cumplen con las normas icontec requeridas, adems los manuales tiene relacin entre lo que dicen y lo que hace el sistema. g) Pruebas Basadas en Estado: se realizaron pruebas de programacin orientado a objetos hacia el encapsulado de cada objeto, y las interacciones de las operaciones de una clase segn cambios de los atributos de un objeto; el sistema valid esta prueba. h) Prueba de Aceptacin o Validacin: El programa se ofertara con una prueba gratuita a 30 dias, despus el usuario podr adquirirlo o no.

131

6 6.1

DESARROLLO DE LAS ACTIVIDADES PROGRAMADAS

DESCRIPCIN DE LOS PROCESOS

6.1.1 Identificacin del problema a desarrollar software. En este primer evento luego de la observacin de muchos establecimientos dedicados al parqueo de vehculos en la ciudad de Ibagu se determino que hay bastantes que no tienen una sistematizacin de sus negocios debido al alto costo de un software de gestin de estos negocios que manejan volmenes de vehculos relativamente bajos en comparacin de centros comerciales y edificios. Tiempo: 1 dias Desde: 4/Marzo/2012 Hasta: 5/Marzo/2012

6.1.2 Recopilacin de datos y determinacin de requisitos segn el mercado. En esta etapa se visitaron varios establecimientos de servicios de parqueadero en la ciudad de Ibagu, especialmente los que encajan en el perfil buscado, ausencia de sistematizacin y tamao mediano y pequeo. Se realizo una encuesta y se determinaron los requisitos mnimos que deba cumplir el software a crear para que cumpla las necesidades del mercado y tenga aceptacin, bsicamente se trabajaron entrevistas y encuestas. Los requisitos mnimos del software se expresaron como objetivo general y especficos. Tiempo: 7 dias Desde: 5/Marzo/2012 Hasta: 12/Marzo/2012

132

6.1.3 Diseo metodolgico. Las necesidades del software se expresaron como casos de uso y se disearon pantallazos, bosquejos y actividades de lo que ser el software. Se identifican actores y casos de uso, los actores pueden ser primarios y secundarios, personas o bases de datos. Tiempo: 4 dias Desde: 12/Marzo/2012 Hasta: 16/Marzo/2012

6.1.4 Modelo de dominio del problema. Se realiza el modelo de dominio del problema que es expresar de forma hablada los requisitos del problema a solucionar, para as realizar un diagrama de clases que contenga las funciones que debe realizar cada una en el software a desarrollar, basndose y dando continuidad a los casos de uso. Tiempo: 3 dias Desde: 16/Marzo/2012 Hasta: 20/Marzo/2012

6.1.5 Modelo de anlisis En esta instancia se asignan las clases determinadas al cumplimiento de cada caso de uso, a cada clase se le asigna un estereotipo, se identifican cuales tendrn interactuacin con el usuario de forma de presentacin grafica, determinacin de procedimientos y mtodos que harn comunicacin entre el usuario y la base de datos que contendr la informacin que se trabaja en software, se trabaja un diagrama de secuencia que muestra todas las interacciones que se tendrn desde que el usuario hace clic en un botn hasta cuando se almacena un nuevo dato. El producto final de este tem es la popularizacin del software. .

133

Tiempo: 20 dias

Desde: 21/Marzo/2012

Hasta: 3/Abril/2012

6.1.6 Modelo de diseo En esta parte a cada clase ya identificada como estereotipo, especialmente interfaces (Bordes) y manejadores (controles), se les asigna colaboraciones y responsabilidades adems de manejo de eventos esta informacin se expresa mediante tarjetas y al final se disea la base de datos. Tiempo: 3 dias Desde: 3/Abril/2012 Hasta: 6/Abril/2012

6.1.7 Modelo de Implementacin En esta parte se realizo el software, este es un prototipo terminado ya en lenguaje de programacin Java mediante la IDE Netbeans, en la realizacin de este documento, se copio el cdigo que se desarrollo para la ejecucin de cada clase. Tiempo: 15 dias Desde: 6/Abril/2012 Hasta: 20/Abril/2012

6.1.8 Modelo de pruebas. En esta etapa se prob la funcionalidad del software mediante los procedimientos descritos en el tem 5 de este documento, se comprob que el software es funcional y fcil de utilizar. Tiempo: 1 da Desde: 20/Abril/2012 Hasta: 21/Abril/2012

134

6.1.9 Presentacin del software La presentacin de un prototipo terminado al cliente se realiza para que el compruebe la funcionalidad del software a lo cual se est atento a las recomendaciones de los potenciales clientes. Tiempo: 1 da Desde: 21/Abril/2012 Hasta: 22/Abril/2012

6.1.10 Retroalimentacin y modificaciones. Despus de presentarle el software al cliente se determino que deban modificarse algunos apartes de la interfaz visual, en otros aspectos no se encontr necesario hacer modificaciones. Tiempo: 1 da Desde: 22/Abril/2012 Hasta: 23/Abril/2012

6.1.11 Modelo de documentacin. Se realiza la explicacin para el software mediante un manual de usuario y un manual del programador. .Tiempo: 2 dias Desde: 22/Abril/2012 Hasta: 25/Abril/2012

6.1.12 Entrega de software al cliente. Una vez realizadas las modificaciones sugeridas por el cliente y el manual del usuario y programador se procede a entregar el software y la documentacin.

135

.Tiempo: 1 dias

Desde: 25/Abril/2012

Hasta: 26/Abril/2012

6.2

SISTEMATIZACIN DE LA INFORMACIN

En la realizacin de este proyecto se usaron diversas herramientas de Software para: la realizacin de este documento y en todas las etapas del anlisis, diseo, desarrollo, implementacin y pruebas de este software, a continuacin se indican estas herramientas y los procesos realizados en cada una de ellas: 6.2.1 Word

Usado en todo el proceso de documentacin del software, se uso para la generacin de un documento escrito adjuntando graficos y diagramas de otras herramientas de software.

6.2.2 Excel Se uso en la creacin de las encuestas y la tabulacin de datos.

6.2.3 PowerPoint Se uso en la creacin de la exposicin del producto a entregar. 6.2.4 ArgoUml(PowerDesigner). Usado en la parte de anlisis del software se uso para la creacin de: casos de uso, diagramas de secuencias y diagramas de clases.

136

6.2.5 IDE Netbeans. Se uso conjuntamente con la herramienta Java para el desarrollo del software una vez se tuvieron las tarjetas que determinan el comportamiento de cada clase.

6.2.6 Grantt Project: Es una herramienta que permite generar cronogramas de actividades de forma similar al Microsoft Project. Es una aplicacin freeware. 6.2.7 Internet Fue la herramienta fundamental en el desarrollo de este proyecto, permite consultar de forma gil y oportuna toda la informacin y ejemplos requeridos en la realizacin de este software.

137

7 7.1

MANUALES

MANUAL DEL PROGRAMADOR TARIFICADOR DE PARQUEADEROS SOFTPARKING MANUAL DEL PROGRAMADOR

AUTOR: ANDRES FERNANDO PARRA 083251362005

UNIVERSIDAD DEL TOLIMA IDEAD INGENIERIA DE SISTEMAS IBAGUE TOLIMA 2012 138

TARIFICADOR DE PARQUEADEROS SOFTPARKING MANUAL DEL PROGRAMADOR

AUTOR: ANDRES FERNANDO PARRA 083251362005

Manual presentado como anexo al trabajo presentado como requisito para aprobar la asignatura de Proyecto de Investigacin formativa

Tutor ngel Alberto Vargas Cano Ingeniero de Sistemas Especialista en Ingeniera de Software

UNIVERSIDAD DEL TOLIMA IDEAD INGENIERIA DE SISTEMAS IBAGUE TOLIMA 2012 139

MANUAL DEL PROGRAMADOR INTRODUCCION

El propsito del manual del programador es disear un documento que describa el programa realizado, describir la estructura de las pantallas utilizadas en el software, las variables y los procedimientos realizados en ellas. Esto con el fin de ofrecerle a personal capacitado una visin de la estructura del programa a fin de posibles modificaciones que surjan. En este manual por sugerencia del Profesor ngel Alberto Vargas no se mostrara todo el cdigo del software realizado, simplemente se mostrara el funcionamiento general de los procedimientos internos del aplicativo. Sin embargo en la documentacin del programa se dejara el cdigo fuente que permite modificar el aplicativo. La herramienta de software est basada en una base de datos en MySql encadenada a una Interfaz Java, realizada mediante la IDE Netbeans, se utilizaron procedimientos de: interaccin con el usuario, procesamiento de variables y conexin a base de datos mediante el Xamp Server, que permite manejar Mysql y apache. La finalidad de este manual es documentar lo realizado del lado del programador en la aplicacin de Software Tarificador de Parqueaderos.

140

OBJETIVOS OBJETIVO GENERAL Crear un manual que haga entendible el diseo y funcionamiento del software a otros programadores.

OBJETIVOS ESPECFICOS Diagramar los procesos realizados en el software. Documentar el proceso cliente y pagos. Indicar el funcionamiento estructural del aplicativo.

141

ORGANIGRAMA DE DESCRIPCION DEL SOFTWARE

142

TITULO: VENTAS Interfaz

La interfaz que hace interaccion con el usuario en este procedimiento se llama Pantalla Parqueadero, para poder realizar una venta, previamente debo registrar a un cliente, para poder asignar un cliente al cual aplicar un pago.

La pantalla consta de: Labels Lalbel.Placa TextBox Text.Placa Variables Placa Descripcion Capta el numero de la placa del vehiculo Es opcional se puede escribir o no la marca del vehiculo. El modelo del equipo es opcional

Label.Marca

Text.Marca Marca

Label.Modelo

Text.Model Modelo o Text.Propi Propietario

Label.Propiet

El

nombre

del

propietario

es

143

ario Label.Docum ento Label.Ticket

etario Text.Docu mento Text.Ticket Document o Ticket

opcional. Debe escribirse el numero de la cedula del propietario El numero del tiquete de ingreso se genera automaticamente. Es la llave principal. La hora de Ingreso se genera automaticamente. La hora de salida automaticamente. se genera

Label.Hora Ingreso Label.Hora salida Label.Tiempo

Text.Hora Ingreso Text.Hora salida

Hora Ingreso Hora salida

Text.Tiemp Tiempo o List.Box.Ta Tarifa rifa Text.Valor Hora Text.Total Valor Hora

Se calcula descontando de la hora de salida, la hora de ingreso. Permite establecer la tarifa segn el tipo de vehiculo. El valor hora lo establece el tipo del vehiculo. Segn el valor cobrado por hora, basado en el tipo del vehiculo, se multiplica la estancia por hora por el total de horas permanecidas para obtener el total a cobrar. Permite que se digite con cuanto paga el cliente, es simplemente una variable para calculo, no va a la base de datos este valor.

Label.Tarifa

Label.Valor Hora Label.Total

Total

Label.Valor recibido

Valor recibido

Valor recibido

144

Label.Cambio

Cambio

Cambio

Segn el pago del cliente y lo que se le esta cobrando indica cuanto se le tiene que devolver.

Boton

Accion

Manejador Descripcion Capta los valores de los textbox: Placa, Marca, Modelo, Propietario, Documento, Ticket, Hora Ingreso. Elimina de la base de datos todos los registros del cliente: Placa, Marca, Modelo, Propietario, Documento, Ticket, Hora Ingreso,HoraSalida, Tiempo y pago.

Insertar.Boton Insertar datos Manejador en base datos. Registro Cliente

Eliminar.Boto n

Eliminar datos Manejador en base datos. Registro Cliente

Buscar.Boton

Buscar datos.

Manejador Registro Cliente

Busca un cliente segn el numero del ticket.

Limpiar.Boton

Borrar textos

Borra lo que esta escrito en pantalla. Manejador Principal Despliega consultas. la pantalla de

Consultar.Bot on

Desplegar Pantalla consultas Obtener tiempo

Calculartiemp o.Boton

el Manejador AdicionarP

Segn el tiempo permanecido y la tarifa cobrara por tipo de vehiculo, se muestra cuanto se 145

permanecido. Procesarpago Adicionar el .Boton pago a la informacion del cliente.

ago

debe cobrar. Adiciona el valor cobrado por el servicio a la base de datos, y la informacion de los campos: Hora salida, tiempo y pago.

Salir.Boton

Sale sistema.

del

Clases

Las clases usadas en el proceso de AdicionarPago (ventas) son: 1. Manejador Principal. Procesa toda la informacion tanto del cliente como del pago para ser alamacenada en la base de datos.

2. Manejador Registro Cliente. Este manejador permite almacenar los datos soportandose en la clase Manejador Principal. del nuevo cliente

3. Interfaz Datos Cliente e Interfaz Datos Pago. Es la interfaz que recibe los datos del cliente y los envia a la base de datos. 4. Manejador Adicionar Pagos. Metodo que permite que a un cliente ya ingresado se le adicione un pago.

146

Modelos de la Interfaz (codigo): 1. Manejador Principal Codigo en el Manejador Principal que adiciona los datos del cliente y del pago a la base de datos. public void adicionarCliente(IntrerfazDatosCliente usuario) {//recibo un objeto del la clase Usuarios String cad = null; //defino un string como nulo cad = "INSERT INTO PARQUEADERO(DOCUMENTO, PLACA, MARCA, MODELO, PROPIETARIO, TIPO_VEHICULO, HORA_INGRESO, MIN_INGRESO, FECHA_INGRESO, HORA_SALIDA, MIN_SALIDA, FECHA_SALIDA,PAGO) values ( '"+ usuario.getDocumento() + "','"+ usuario.getplaca() + "','"+ usuario.getmarca() + "','"+ usuario.getmodelo() + "', '"+ usuario.getPropietario() + "','"+ usuario.getTipo() + "',"+usuario.getHoraIngreso()+","+ usuario.getMinIngreso() + ",'"+usuario.getFechaIngreso()+"',"+usuario.getHoraSalida()+","+ usuario.getMinSalida() + ",'"+usuario.getFechaSalida()+"'," + usuario.getTotal()+")";//inserto valores en la tabla de oracle USUARIOS try { boolean res = conexion.executeUpdateStatement(cad); JOptionPane.showMessageDialog(null, "Usuario Registrado"); } catch (Exception e) { JOptionPane.showMessageDialog(null, "Error..."); }

2. Interfaz Datos Cliente public class IntrerfazDatosCliente { int tiket; String placa; String marca; 147

String modelo; String propietario; String documento; String fecha; String fecha2; String tipo; String tiempo; int hora1; int min1; int hora2; int min2; int total; public int getTiket(){ return tiket; } public String getplaca(){ return placa; } public String getmarca(){ return marca; } public String getmodelo(){ return modelo; } public String getPropietario(){ return propietario; } public String getDocumento(){ return documento; } public String getTipo(){ return tipo; } public int getTotal(){ return total; } public int getHoraIngreso(){ return hora1; } public int getMinIngreso(){ return min1; } 148

public String getFechaIngreso(){ return fecha; } public int getHoraSalida(){ return hora2; } public int getMinSalida(){ return min2; } public String getFechaSalida(){ return fecha2; } public String getTiempo(){ return tiempo; } public void setTiket(int tiket){ this.tiket = tiket; } public void setPlaca(String placa){ this.placa = placa; } public void setMarca(String marca){ this.marca = marca; } public void setModelo(String modelo){ this.modelo = modelo; } public void setPropietario(String propietario){ this.propietario = propietario; } public void setDocumento(String documento){ this.documento = documento; } public void setTipo(String tipo){ this.tipo = tipo; } public void setTotal(int total){ 149

this.total = total; } public void setHoraIngreso(int hora){ this.hora1 = hora; } public void setMinIngreso(int min){ this.min1 = min; } public void setFechaIngreso(String fecha){ this.fecha = fecha; } public void setHoraSalida(int hora){ this.hora2 = hora; } public void setMinSalida(int min){ this.min2 = min; } public void setFechaSalida(String fecha){ this.fecha2 = fecha; } public void setTiempo(String tiempo){ this.tiempo = tiempo; } } 3. Manejador Adicionar cliente public class ControlAdicionarCliente { private Principal model;

public ControlAdicionarCliente(Principal model) { this.model = model; } public void procesarAdicionarCliente(modeloParqueadero ciu){//recibo el objeto de la clase Usuarios model.adicionarCliente(ciu); //llamo al metodo adicionarUsuario de la clase Servicios y le envio el objeto ciu de la clase Usuarios } } 150

4. Manejador Adicionar Pagos. public class ControlAdicionarPago { private ManejadorPrincipal model;

public ControlAdicionarPago(ManejadorPrincipal model) { this.model = model; } public void procesarAdicionarPago(IntrerfazDatosCliente ciu){//recibo el objeto de la clase Usuarios model.adicionarPago(ciu); //llamo al metodo adicionarUsuario de la clase Servicios y le envio el objeto ciu de la clase Usuarios } }

151

CONCLUSIONES Se logro la creacin de un manual que hizo entendible el diseo y funcionamiento del software a otros programadores.

Mediante una estructura de organigrama se diagramaron los procesos realizados en el software. Documentando los procesos ms vitales del software cliente y pagos. Mediante la explicacin de mtodos en los manejadores se logro indicar el funcionamiento estructural del aplicativo.

152

7.2

MANUAL DEL USUARIO MANUAL DE USUARIO TARIFICADOR DE PARQUEADEROS SOFTPARKING

Al iniciar el programa se muestra una pantalla de ingreso de usuarios, esto con el fin de controlar que solo usuarios registrados por el administrador del parqueadero puedan utilizar a SOFTPARKING. El usuario del sistema ingresa su Login nombre de ingreso y a continuacin su contrasea, luego presiona el botn ingresar. Si el usuario esta registrado por el administrador del Software para el parqueadero SOFTPARKING el usuario puede ingresar a otra ventana donde puede disponer de todo el funcionamiento del programa, si no est registrado se mostrara un cuadro donde se le indicara que el usuario y la contrasea no son validos. Si el usuario no desea disponer de SOFTPARKING puede presionar el botn salir y automticamente se cerrara la ventana de ingreso.

153

El botn nuevo aparece deshabilitado es decir no se puede presionar ya que la nica persona que puede habilitar y utilizar este botn es el administrador de SOFTPARKING.

154

INGRESO DE USUARIOS NUEVOS Como ya se haba mencionado antes solo el administrador puede habilitar el botn nuevo, bueno el botn nuevo sirve para crear nuevos usuarios de SOFTPARKING con el fin de que puedan ingresar a la ventada principal donde puedan utilizar todas la herramientas. El administrador entra con su nombre de ingreso y contrasea y automticamente se habilita el botn nuevo, se introduce los registros para nombre y contrasea en los respectivos campos y cuidado se presiona el botn nuevo para que se cree un nuevo usuario ya que el botn ingreso es para ingresar a la ventana principal del programa. Luego de presionar el botn nuevo SOFTPARKING arroja una ventana para indicar que hay un nuevo usuario que ya puede ingresar a utilizar las herramientas del software.

155

SOFTWARE PARA EL CONTROL DE INGRESO DE VEHICULOS A UN PARQUEADERO PANTALLA INICIAL DE CONTROL DE VEHICULOS

La interfaz de inicio de SOFTPARKING muestra una vista agradable al usuario donde puede disponer de cajas de texto para la insercin de los datos del 156

vehculo, una caja de texto desplegadle para escoger el tipo de vehculo y una serio de botones para realizar mltiples operaciones. Antes de presionar un botn de operacin tenga muy en cuenta el proceso que est realizando, ya que al no hacerlo el programa no realizara ninguna tarea. Aunque SOFTPARKING le indicara que dato le falta para realizarla la tarea que desea. REGISTRAR INGRESO DE VEHICULO El ingreso de vehculos es controlado por el botn insertar y los campos correspondientes a los datos del vehculo, antes de presionar el botn insertar tenga en cuenta que los campos PLACA, PROPIETARIO y DOCUMENTO contengan los datos correspondientes al cliente ya que al no hacerlo SOFTPARKING no permitir registrar el usuario y automticamente arrojara una pantalla del dato que le falta. Una vez ingresado todos los campos o solo los campos PLACA, PROPIETARIO y DOCUMENTO el usuario quedara registrado y automticamente se notificara con otra ventana.

Una vez registrado el usuario SOFPARKING mostrara la fecha y hora de ingreso para que esta sea transmitida al cliente.

157

ELIMINAR INGRESO DE VEHICULO El botn eliminar registro, eliminara todo los datos acordes con un vehculo que haya sido registrado. La eliminacin se har teniendo en cuenta el campo o caja de texto de la placa de la placa, entonces antes de eliminar un registro tenga muy en cuenta este campo ya que SOFTPARKING buscara los datos acordes con la placa y los eliminara, y limpiara todos los campos para una nueva operacin. OJO si no hay datos en la caja de texto para placa el programa pedir que busque o inserte el nmero de la placa para poder eliminarlo.

158

BUSQUEDA DE VEHICULO Para realizar una bsqueda de los datos de un vehculo basta con presionar le botn bsqueda, automticamente se una ventana donde le pedir que ingrese la placa del vehculo, si no ingresa la placa SOFPARKING arrojara otra ventana transmitiendo que ingrese el numero de la placa. Si ingresa la placa SOFPARKING buscara los datos correspondientes a la placa si existe traer todos los datos de este, si no existe arrojara otra ventana donde le avisara que no existe el registro.

LISTAR TODOS LOS DATOS DE LOS VEHCULOS REGISTRADOS El botn listar arrojara una ventana que posee una tabla en blanco, especificando todos los datos de los vehculos registrados, al momento de querer ver todos los vehculos registrados junto con sus datos basta con presionar el botn listar y luego mostrara todos los datos en la tabla de los vehculos que han sido registrado en el parqueadero.

159

Si desea retornar a la ventana principal de operaciones basta con oprimir el botn salir o cerrar.

160

CALCULAR EL TIEMPO DE ESTADA EN EL PARQUEADERO DE UN VEHICULO El botn calcular permite calcular el tiempo de estada de un vehculo en el parqueadero as como tambin, la fecha y hora de salida, tarifa por hora y total a pagar. Para calcular se necesita que hayan datos para calcular, para traer los datos el vehculo tiene que estar registrados y se traen todos los datos con el botn buscar. Una vez estn todos los datos correspondientes al vehculo se puede proceder al clculo del vehculo.

161

REGISTRAR PAGO Una vez calculado el registro se procede a registrar el pago, se digita el valor recibido en la caja de texto valor recibido, si el valor es menor al de pagar se lanza una ventana transmitiendo que el valor es menor al de pagar y posteriormente se tendr que volver a digitar el valor recibido, si no se escribe ningn valor se lanzara una ventana transmitiendo que uno se ha ingresado ningn valor. Pero si el valor recibido es igual o superior a pagar se registrara el pago y se calculara el cambio a devolver al cliente.

162

LIMPIAR Y SALIR Los procesos limpiar casillas y salir de SOFTPARKING son controlados por dos botones limpiar y salir, donde limpiar vaca el contenido de todas las cajas de texto y salir termina la ejecucin del programa. Tenga Cuidado al presionar el botn salir ya que al hacerlo no poseer marcha atrs y tendr que volver a ingresar a SOFTPARKING con usuario y contrasea.

163

8 8.1 CRONOGRAMA

COSTOS Y PRESUPUESTO

164

165

8.2

PRESUPUESTO

Nombre de Investigadores

Funcin en el proyecto

Semanas Duracin Valor por en mes meses 8 2

Valor Total

ANDRRES FERNANDO PARRA

CO INVESTIGADOR Gerente Analista Programador Gestor de Calidad

2.600.000 5.200.000

Valor Costos Total de Personal

5.200.000

166

TECNOLOGIA REQUERIDA COMPUTADORES LICENCIAS NETBEANS ARGO UML POWER DESIGNER Valor Total Costos Tecnolgicos

CANTIDAD

VALOR UNIT. $ 650.000 0

VALOR TOTAL $ 650.000 0

1 1

$650.000

COSTO DE INVERSION COSTOS PERSONAL

VALOR TOTAL $ 5.200.000

COSTOS RECURSOS TECNOLOGICOS COSTOS TOTAL DE INVERSION

$650.000

$5.850.000

167

CONCLUSIONES Y RECOMENDACIONES CONCLUSIONES

Mediante un minucioso proceso de Investigacin, anlisis, diseo, implementacin y pruebas se logro desarrollar una herramienta de software que lleva un control sistematizado efectivo y econmico de los vehculos que ingresan a un Parqueadero.

Se cre un modulo e interfaces de Registro que asigna accesos y valida que los usuarios que accedan al aplicativo sean usuarios autorizados. El software tiene una opcin que permite diferenciar entre automviles y carros para as tener una tarifa de cobro especifica por tipo de vehculo. En base a un tipo de tarifa y un tiempo de servicio se consigui generar un costo total en base a tipo de vehculo y tiempo de servicio. Se consigui establecer un sistema de pagos que permite adicionar el pago a cada cliente del establecimiento cuando procede a retirar el vehculo. Se logro disear un formulario de consultas que permite conocer mediante datos estadsticos, lo facturado cada da.

RECOMENDACIONES En cuanto al modulo de generar reportes e impresiones no se pudo realizar por factor tiempo y conocimiento, se recomienda articular todas las materias de la lnea de la Ingeniera de Sistemas, Programacin, Anlisis, Diseo, Ingeniera de Software, Gerencia de Proyectos, entre otras, con el fin de generar un producto software ms complejo, teniendo ms tiempo para la realizacin de todo el ciclo del software a profundidad.

168

9 Modulo

REVISIONES REALIZADAS Fecha Calificacin Observaciones

Documentacin del Problema previo al desarrollo de diagramas de casos de uso. Diseo Metodolgico. Modelo del Problema. Dominio del

Modelo de Anlisis Modelo de diseo Modelo de Implementacin Modelo de pruebas. Presentacin del software Revisin al Documento Final

169

BIBLIOGRAFIA INGENIERIA DE SOFTWARE ORIENTADA A OBJETOS Teora y Prctica Con UML y Java Dr. Alfredo Weitzenfeld

CIBERGRAFIA Angel Alberto Vargas http://aalbertovargasc.wordpress.com/ Wikipedia Licencia Creative Commons http://es.wikipedia.org/wiki/Motocicleta. Atribucin Compartir Igual 3.0

El colombiano http://www.elcolombiano.com/proyectos/feriaflores/2004/historias/historiauto.htm Wikipedia Licencia Creative Commons Atribucin Compartir Igual 3.0 http://es.wikipedia.org/wiki/Autom%C3%B3vil

El colombiano http://www.elcolombiano.com/proyectos/feriaflores/eventosimportantes/autoshistori a.htm

Wikipedia Licencia Creative Commons http://es.wikipedia.org/wiki/Estacionamiento

Atribucin

Compartir

Igual

3.0

Alexandra Moreno Piraquive Senadora http://www.alonsoacosta.com/pdf/proyecto_099.pdf www.google.com www.youtube.com

de

la

Republica.

170

ANEXOS ENCUESTA
PARQUEADEROS PUBLICOS IMPLEMENTACION SISTEMATIZACION DE CONTROL DE INGRESO VEHICULOS ENCUESTA MEDICION DEMANDA DEL CLIENTE EXTERNO

Versin: 01

Pgina 1 de 1

Fecha: _______________ Nit:___________________ Telfono: ________________


Estimado comerciante:

Nombre: _________________________ Establecimiento:__________________________ e-mail:__________________________________

El presente cuestionario pretende conocer su grado de relevancia respecto a la utilizacin de sistemas de informacin para el control de flujo vehicular en parqueaderos pblicos en la ciudad de Ibagu que no cuentan con sistematizacin. Responda las siguientes preguntas: Marque una X en su seleccin:
Considera importante para su establecimiento sistematizar su informacin? Su nivel de manejo de equipos de cmputo es? Bajo SI NO

Medio

Alto

Cree que la sistematizacin incrementa sus ganancias y da valor agregado a sus clientes?

SI

NO

Cunto est dispuesto a invertir en un software de Parqueaderos?

Ningn Valor

Menos $400.000

de

Mas de $1.000.000

Nos autoriza a enviarle notificaciones acerca de este producto: SI____ NO____

171

Tabulacin de la encuesta encuesta: La encuesta se realizo a un total de 40 personas propietarias de establecimientos de parqueaderos en la ciudad de Ibagu, el margen de error es del 1%. , Considera importante SI NO para su establecimiento sistematizar su informacin? ? 28 12 PORCENTAJE 70 30

NO

SI

20

40

60

80

Su nivel de manejo de Bajo Medio Alto equipos de cmputo 15 15 10 es? PORCENTAJE 37 37 25


Alto Medio Bajo 0 10 20 30 40

172

Cree que la sistematizacin incrementa sus ganancias y da valor agregado a sus clientes? PORCENTAJE

SI 20 20

NO

50

50

60 50 40 30 20 10 0 SI NO

Menos de Ms de Cunto est dispuesto Ningn a invertir en un software Valor $400.000 $1.000.000 de Parqueaderos? 5 30 5 PORCENTAJE 12,5 75 12,5

80 60 40 20 0 Ningun Valor Menos de $400.000 Mas de $1.000.000

173

Anlisis: La mayora de la poblacin encuestada considera que es necesario sistematizar sus negocios. Un alto porcentaje de los encuestados tiene un conocimiento bajo e intermedio de sistemas. La mitad de los encuestados cree que la sistematizacin aumentara sus ganancias y dar valor agregado a sus clientes. La mayora de las personas estn dispuestas a invertir menos de $400.000 pesos en el software, y este valor encaja en el del producto.

Se concluye entonces que el producto software es Viable.

174