Está en la página 1de 78

INGENIERIA EN SISTEMAS COMPUTACIONALES.

TITULACIÓN INTEGRAL.

INFORME TECNICO DE RESIDENCIA PROFESIONAL.

NOMBRE DEL PROYECTO:

“SISTEMA DE CONTROL DE UNIDADES NUEVAS.”

PRESENTA:
ALAN CAMILO DEL ÁNGEL HERNÁNDEZ.

Nº CONTROL:
116P0352

PARA OBTENER EL TITULO DE :


ING. EN SISTEMAS COMPUTACIONALES.

ASESOR:
ING. SIMÓN GARCÍA ORTIZ.

POZA RICA DE HGO., VER. MAYO 2017


INDICE.

INTRODUCCIÓN. ............................................................................................................................. 7
CAPITULO I "PLANTEAMIENTO DEL PROBLEMA". .............................................................. 10
1.1 Antecedentes generales de la empresa. ................................................................................... 10
1.1.1 ¿Quiénes somos? .................................................................................................................. 10
1.1.2 Misión............................................................................................................................... 11
1.1.3 Visión. ............................................................................................................................... 11
1.2 Organigrama de la empresa..................................................................................................... 12
1.3 Planteamiento del problema. ................................................................................................... 13
1.4 Justificación. ........................................................................................................................... 13
1.5 Objetivos de Investigación. ..................................................................................................... 14
1.5.1 Objetivo general. .............................................................................................................. 14
1.5.2 Objetivo específico. .......................................................................................................... 14
1.6 Cronograma de Actividades. ................................................................................................... 15
CAPITULO II "MARCO TEORICO". ............................................................................................. 16
2.1 Metodología ASD. .................................................................................................................. 16
2.1.1 ¿Qué es ASD? ................................................................................................................... 16
2.1.2 Caracteristicas principales................................................................................................ 16
Facil adaptacion a cambios repentinos de requeremientos, ya sean estos implantados por el
usuario o el analisis del grupo de trabajo. ................................................................................. 16
2.1.3 Fases. ................................................................................................................................ 17
2.1.3.1 Especular. ...................................................................................................................... 17
2.1.3.2 Colaborar....................................................................................................................... 17
2.1.3.3 Aprender. ...................................................................................................................... 18
2.1.3.4 Calidad del resultado desde la perspectiva del cliente. ................................................ 18
2.1.3.5 Calidad del resultado de la desde la perspectiva técnica. ............................................ 18
2.1.3.6 Funcionamiento del equipo de desarrollo y las prácticas que este utiliza. .................. 18
2.1.3.7 Status del proyecto. ...................................................................................................... 18
2.1.4 Tecnología del Software. .................................................................................................. 19
2.1.5 Roles y responsabilidades. ............................................................................................... 20
2.2 Modelo ISO/IEC 9126-1. ....................................................................................................... 21
2.3 Tecnología a utilizar................................................................................................................ 22
2.3.1 WampServer..................................................................................................................... 22
2.3.2 Photoshop. ...................................................................................................................... 23
2.3.3 NetBeans. ......................................................................................................................... 25
2.3.3.1 ¿Qué es? ....................................................................................................................... 25
2.3.3.2 Historia. ......................................................................................................................... 25
2.3.3.3 ¿Por qué utilizar la plataforma NetBeans? ................................................................... 26
2.3.3.4 Gestión del Ciclo de Vida............................................................................................... 26
2.3.3.5 Conectividad, infraestructura de servicios, y el Sistema de Archivo. .......................... 27
2.3.3.6 Windows System, estandarizada UI Toolkit y componentes orientados a Advanced
Data. .......................................................................................................................................... 27
2.3.3.7 Características. .............................................................................................................. 28
2.3.3.8 Ventajas......................................................................................................................... 28
2.3.3.9 Desventajas. .................................................................................................................. 29
2.3.4 MySQL .............................................................................................................................. 30
2.3.4.1 Lenguajes de programación. ......................................................................................... 30
2.3.4.2 Características. .............................................................................................................. 31
2.3.5 Launch4J. .......................................................................................................................... 32
2.3.5.1 Características. .............................................................................................................. 32
CAPITULO III "APLICACION Y RESULTADOS". ...................................................................... 34
3.1 Solución del problema............................................................................................................. 34
3.1.1 Wampserver. .................................................................................................................... 34
3.1.2 MySQL. ............................................................................................................................. 36
3.1.3 Netbeans. ........................................................................................................................ 37
3.1.4 Photoshop. ..................................................................................................................... 38
3.1.5 Launch4j. .......................................................................................................................... 39
3.2 Instrumentos empleados. ......................................................................................................... 40
3.3 Resultados. .............................................................................................................................. 44
3.3.1 Proceso antes y después. ................................................................................................. 44
3.3.2 Tiempos para consultar o registrar antes y después. ...................................................... 44
3.3.3 Seguridad de los datos. .................................................................................................... 44
3.3.4 Interfaz antes y después. ................................................................................................. 44
3.3.5 Manual de usuario. .......................................................................................................... 45
3.4 Conclusiones. .......................................................................................................................... 56
3.5 Recomendaciones.............................................................................................................. 57
Bibliografía. ...................................................................................................................................... 58
Anexos. ......................................................................................................................................... 59
Anexo I: Corrida del programa. .................................................................................................... 59
Anexo II: Reportes semanales. ...................................................................................................... 64
INDICE DE FIGURAS.
Figura 1 . Organigrama de la empresa. Elaboración Propia. ........................................................... 12
Figura 2. Cronograma de actividades. Elaboración propia. .............................................................. 15
Figura 3.. Ciclo de vida ASD. Highsmit III, James A. Adaptive Software Development: A
Colloaborative Approach to Managing Complex Systems. ............................................................... 19
Figura 4. Arquitectura de la funcionalidad de ISO/IEC 9126-1. Elaboración propia. ........................ 21
Figura 5 Interfaz de WampServer. Elaboración propia. .................................................................... 35
Figura 6. Estructura de la Base de Datos. Elaboración propia. ......................................................... 36
Figura 7. Interfaz en NetBeans. Elaboración propia. ........................................................................ 37
Figura 8. Uso de Photoshop para la creación de la interfaz. Elaboración propia. ........................... 38
Figura 9. Uso de Launch4j. Elaboración propia. ................................................................................ 39
Figura 10. Bosquejo interfaz del usuario. Elaboración propia. ......................................................... 40
Figura 11. Diagrama de casos de uso. Elaboración propia. .............................................................. 41
Figura 12. Diagrama de flujo. Elaboración propia............................................................................. 42
Figura 13. Diagrama de clases. Elaboración propia. ......................................................................... 43
Figura 14. Ejecutable del programa. Elaboración propia. ................................................................. 45
Figura 15. Ventana de acceso al programa. Elaboración propia. ..................................................... 45
Figura 16. Icono de espacio disponible. Elaboración propia............................................................. 46
Figura 17. Interfaz de captura de datos. Elaboración propia. ........................................................... 46
Figura 18. Icono de guardado. Elaboración propia. .......................................................................... 46
Figura 19. Ventana emergente avisando que los dato han sido guardados correctamente.
Elaboración propia. ........................................................................................................................... 46
Figura 20. Icono de espacio ocupado. Elaboración propia. .............................................................. 46
Figura 21. Ventana con tabla de espacios disponibles. Elaboración propia. .................................... 47
Figura 22. Interfaz del filtro de búsqueda. Elaboración propia. ....................................................... 47
Figura 23. Ventana emergente del filtro de búsqueda. Elaboración propia..................................... 47
Figura 24. Ventana e espacios disponibles con el filtro de búsqueda. Elaboración propia. ............. 48
Figura 25. Botón de trasladados. Elaboración propia. ...................................................................... 49
Figura 26. Interfaz de traslados. Elaboración propia. ....................................................................... 49
Figura 27. Ventana emergente de traslados. Elaboración propia. ................................................... 49
Figura 28. Ventana de espacios con el filtro de traslados. Elaboración propia. ............................... 50
Figura 29. Interfaz de captura de datos. Elaboración propia. ........................................................... 50
Figura 30. Interfaz de traslados. Elaboración propia. ....................................................................... 50
Figura 31. Ventana emergente de traslado efectuado correctamente. Elaboración propia. ........... 51
Figura 32. Interfaz de estacionamiento. Elaboración propia. ........................................................... 51
Figura 33. Botón de facturar. Elaboración propia. ............................................................................ 52
Figura 34. Interfaz de facturación. Elaboración propia..................................................................... 52
Figura 35. Ventana emergente de facturación. Elaboración propia. ................................................ 52
Figura 36. Ventana de espacio con el filtro de facturación. Elaboración propia. ............................. 52
Figura 37Interfaz de captura de datos. Elaboración propia.............................................................. 53
Figura 38. Interfaz de facturación. Elaboración propia..................................................................... 53
Figura 39. Ventana emergente de facturación realizada correctamente. Elaboración propia. ....... 53
Figura 40. Barra de Herramientas del programa. Elaboración propia. ............................................. 54
Figura 41. Interfaz de Historial de movimientos. Elaboración propia. ............................................. 54
Figura 42. Botón de cerrar sesión. Elaboración propia. .................................................................... 55
Figura 43. Iconos de minimizar, maximizar y cerrar. Elaboración propia. ........................................ 55
Figura 44. Login versión beta. Elaboración propia. ........................................................................... 59
Figura 45.Ventana principal versión beta. Elaboración propia. ........................................................ 59
Figura 46. Punto de venta versión beta. Elaboración propia. ........................................................... 60
Figura 47. Historial versión beta. Elaboración propia. ...................................................................... 60
Figura 48. Ventana principal Versión 1.0. Elaboración propia. ......................................................... 61
Figura 49. Login Versión 2.0. Elaboración propia............................................................................. 61
Figura 50. Módulo de cambio de contraseña versión 2.0. Elaboración propia. ............................... 62
Figura 51. Ventana principal versión 2.0. Elaboración propia. ......................................................... 62
Figura 52. Ventana facturados versión 2.0. Elaboración propia. ...................................................... 63
Figura 53. Ventana punto de venta Versión 2.0. Elaboración propia. .............................................. 64
INTRODUCCIÓN.

En la actualidad, la industria automotriz juega un rol importante en la economía de México,


ya que ha generado un impacto positivo tanto en la creación de empleos para los
ciudadanos como abrir un comercio externo a diferentes partes de América Latina y
Estados Unidos. Se tiene registro de que en el último año el 16% el PIB (Producto Interno
Bruto) Nacional proviene de las ensambladoras establecidas en diversos puntos de la
República, las cuales con el paso de los años se han fortalecido y desarrollado generando
más oportunidades.

Por otro lado, debido al crecimiento exponencial de empresas ensambladoras dentro del
país también han ido en crecimiento la distribución y comercialización de vehículos de
diversas marcas. Se han establecido diversas agencias automotrices que se dedican a la
comercialización de unidades. Para lo anterior se requiere que cada una de las agencias
cuente con procesos y metodologías para llevar un control en los inventarios en almacén de
las unidades con las que cuentan para su venta. Estos procedimientos van de acuerdo al
tamaño y la cantidad de ventas que generen cada una de las empresas distribuidoras
autorizadas.

Actualmente los procedimientos de trabajo están estandarizados para este tipo de empresas,
cada área dentro de la empresa debe contar con sus guías de trabajo y procesos para hacer
más efectivos los resultados de cada una de las actividades, generar un ambiente laboral
responsable y apegado a objetivos, manteniendo un ambiente de mejora continua dentro de
la organización. Lo anterior genera que la línea de comunicación entre cada empleado sea
fluida y dé como resultado ofrecer un servicio de calidad al cliente.

Como parte de lo anterior, se realizó un trabajo que consistió en encontrar un área de


oportunidad dentro del departamento de almacén de unidades, de la agencia automotriz
Chrysler en la Ciudad de Poza Rica, Ver., bajo el nombre de: Comercial Automotriz de
Poza Rica S.A. de C.V., esto basados en los procedimientos y actividades diarias realizadas
en esta área.

7
La agencia lleva varios años en el negocio de comercializacion de unidades en esta ciudad
y sus alrededores, durante las actividades que se realizaron se detectó que existe un área de
oportunidad en el conteo de unidades existentes en almacén, ya que la manera en la que se
esta desarrollando actualmente esta actividad involucra muchas operaciones y entre estas se
detectó que hay una cantidad de tiempo que se desperdicia por los desplazamientos que los
trabajadores deben hacer para mantener el control de las unidades.

Se pretende desarrollar un software, que pueda ser aplicado como una herramienta útil para
el control de unidades vehiculares nuevas en almacén. Es necesario tener en cuenta que, en
todo desarrollo de sistemas de software es de suma importancia definir una metodología.
Esta permite a los desarrolladores seguir alguna especificación en cada una de las etapas de
desarrollo del sistema, desde los requerimientos iniciales hasta las pruebas finales, que haga
que el software sea coherente y además formal.

Es importante destacar que para el desarrollo de un software que satisfaga las necesidades
de los clientes es útil identificar diversos datos de la situación a analizar, como lo es la
problemática y la justificación, a fin de implementar un software capaz de manejar
información benéfica hacia los clientes.

El sistema de control de unidades a realizar, consta de filtros que ayudan a entender el ciclo
de vida por el que pasa cada unidad nueva, con los cuales el usuario estará interactuando,
de una manera gráfica.

El ciclo de vida, se refiere al cambio de posición que pueda tener una unidad en la agencia,
ya sea mover el auto a un punto de venta interno o externo, el traslado de una unidad a otra
agencia, la ubicación del auto dentro de la empresa y por ultimo su facturación tras que el
auto sea vendido.

El software brindara una mejor solución, a las problemáticas actuales dentro de la gestión
del almacén de unidades nuevas de la empresa. Para la realización del sistema, es
indispensable elaborar y desarrollar el ciclo de vida de cada unidad nueva, incluir
tecnología innovadora, y sobre todo realizar un ambiente que sea fácil de ejecutar.

8
La metodología a utilizar para el desarrollo de esta aplicación es la metodología ASD
(Adaptive Software Development), en la cual el cliente es pieza fundamental en el
desarrollo de software, ya que se compromete con el proyecto dado que lo ve crecer
iteración a iteración. Así mismo le permite realinear el software con los objetivos de
negocio de su empresa, al tener la libertad de realizar cambios funcionales o de prioridad en
el inicio de cada nueva iteración, ya que la finalidad de esta metodología es la adaptación
continúa en circunstancias cambiantes.

9
CAPITULO I "PLANTEAMIENTO DEL PROBLEMA".

1.1 Antecedentes generales de la empresa.


Comercial Automotriz de Poza Rica S.A de C.V.

1.1.1 ¿Quiénes somos?


Es una empresa formada en 1994 e inició operaciones en Blvd. Lázaro Cárdenas #1220.

En Agosto de 1999 un grupo de inversionistas encabezado por el Lic. Abelardo Osuna


Cobos adquirió el total de las acciones de la agencia integrándola al Grupo TransPais,
donde empezó nuestra transformación.

El 5 de octubre de 2001 se inauguraron las nuevas y funcionales instalaciones ubicadas en


Av. Puebla S/N esq. Araucarias en la Col. Palma Sola, estas están conformadas por un
moderno edificio, que cuenta con una amplia Sala de Exhibición para nuestros autos
nuevos, con un Taller de Servicio limpio y ordenado con todos los adelantos tecnológicos
de la Industria Automotriz.

Nuestro personal altamente capacitado en todas sus áreas se encuentra dispuesto a darles a
nuestros clientes el servicio que solo una agencia Chrysler puede ofrecer; competente,
cortés y amable para satisfacer sus necesidades y ayudarlos a cumplir sus expectativas.

Nuestra finalidad es ofrecer a nuestros clientes un trato personalizado digno de su


confianza.

10
1.1.2 Misión.
Ser la empresa con el más alto nivel de eficiencia en el servicio al cliente, que nos garantice
ser los líderes en la venta de vehículos nuevos, refacciones y servicio de mantenimiento,
logrando con esto el nivel de rentabilidad que nos asegure el crecimiento y permanencia de
la organización.

1.1.3 Visión.
Ser la agencia de vehículos ejemplo nacional y líder en la zona, en eficiencia y
servicio; logrando la total satisfacción del cliente

11
1.2 Organigrama de la empresa.

Figura 1 . Organigrama de la empresa. Elaboración Propia.

El puesto de gerente general es ejercido por el C.P. Leonel Morales Salas y el encargado de
12
ejercer el puesto de coordinador de sistemas es el Ing. David Cuevas Hernández
1.3 Planteamiento del problema.
Actualmente existen diferentes problemáticas al no tener un software a la medida para el
control de las unidades, como el no tener la ubicación precisa de estas, además de no contar
con un módulo de historial que permita visualizar el ciclo de vida que ha sufrido una
unidad, tales como daños físicos, reparaciones mecánicas, cambio de ubicación,
responsable del manejo de las unidades y la venta del vehículo.

Con la realización del sistema de unidades nuevas se busca un beneficio directo para los
usuarios de la empresa automotriz, ya que al contar con una gestión de inventario en un
documento virtual donde se podía tener control de dichas unidades, para llevar a cabo un
inventario de dicho almacén vehicular era exhaustivo tener que desplazarse desde la
oficina a la locación de las unidades y por lo tanto esto generaba una gran pérdida de
tiempo para realizar un control de unidades.

Los beneficios de realizar el software se extienden dentro del área administrativa de la


empresa, pues con la información generada se tendrá una mayor claridad de las
congruencias, en la gestión del control de unidades nuevas en el almacén.

1.4 Justificación.
El desarrollo e implementación del software administrativo, brindara una mejor solución a
las problemáticas actuales dentro de la gestión del almacén vehicular de la empresa.

El software será de gran utilidad para la empresa, ya que ahorrara tiempo al usuario
administrativo en todos los aspectos del control de las unidades vehiculares, contando con
una interfaz amigable, la cual se podrá manejar con gran facilidad y permitirá la captura de
los registros de cada unidad que se encuentre en el almacén.

13
1.5 Objetivos de Investigación.

1.5.1 Objetivo general.


Gestionar los espacios y la ubicación de automóviles obteniendo sus respectivas
ubicaciones, mediante el uso de un sistema capaz de reducir tiempos con el uso de filtros
específicos.

1.5.2 Objetivo específico.


- Seguridad del acceso de entrada a los datos.

-Ahorro de tiempo en la ubicación de los automóviles.

-Historial de ciclo de vida por automóvil.

-Implementar una interfaz visual que permita la ubicación de los automóviles.

-El software tendrá la capacidad de almacenar un número extenso de registros.

14
1.6 Cronograma de Actividades.

ACTIVIDADES Marzo Abril Mayo Junio

Especificación de requisitos. P

Diseño. R

Desarrollo e Implementación. P

Pruebas. P

Conclusión de Proyecto. R

Figura 2. Cronograma de actividades. Elaboración propia.

15
CAPITULO II "MARCO TEORICO".

2.1 Metodología ASD.

2.1.1 ¿Qué es ASD?


El método ágil ASD (Adaptive Software Development) traducido en español significa
Desarrollo Adaptable de Software es un modelo de implementación de patrones ágiles para
desarrollo de software. Al igual que otras metodologías ágiles, su funcionamiento es cíclico
y reconoce que en cada iteración se producirán cambios e incluso errores.

El desarrollo de software adaptable (Adaptive Software Development - ASD) es una


metodología de desarrollo que hace énfasis en aplicar las ideas que se originaron en el
mundo de los sistemas complejos, adaptación continua del proceso al trabajo.

James Highsmith y Sam Bayer desarrollaron ASD hacia el año 2000 con la intención
primaria de ofrecer la idea, de que la optimización es la única solución para problemas de
complejidad creciente. Este método ágil pretende abrir una tercera vía entre el "desarrollo
monumental de software" y el "desarrollo accidental". Esto incorpora el principio de que la
adaptación continua del proceso para el trabajo a mano es el estado normal de las cosas.

2.1.2 Caracteristicas principales.


Debido a su funcionamiento ciclico, el ASD (Adaptive Software Development), incorpora
tres fases principales:
1. Especulación.
En esta fase se incia el proyecto y se establecen las bases de planificación del
software, lo anterior permite definir el alcance del proyecto y los ciclos que se
incluiran durante el desarrollo.

2. Orientado en los componentes de cambio.


Definiendo esto como un grupo de funcionalidades a ser desarrolladas durante un
ciclo de vida.

3. Tolerante a cambios.
Facil adaptacion a cambios repentinos de requeremientos, ya sean estos
implantados por el usuario o el analisis del grupo de trabajo.

16
2.1.3 Fases.
Las fases en las que se trabaja la metodología ASD son tres: Especular, Colaborar y
Aprender (Especulate, collaborate, learn). Estas fases o etapas corresponden al llamado
"Ciclo de vida" con el cual esta metodología se identifica.

Tomando en cuenta que esta metodología está diseñada para adaptarse a los cambios, nos
permite tomar pequeñas desviaciones en cada fase en que cada ciclo debe componerse de
una mezcla entre funcionalidades críticas, útiles y opcionales, en donde deben priorizarse
las criticas ya que son las que ponen en jaque el proyecto, luego las útiles, que facilitaran el
desarrollo del sistema y por último las opcionales las cuales no son imprescindibles en el
proyecto. Todo esto con el fin de prever futuros retrasos en el proyecto

2.1.3.1 Especular.
Esta fase consiste en realizar una planificación tentativa del proyecto tomando en cuenta las
futuras entregas que se le darán al usuario prototipos.

En esta fase se fija un rumbo determinado el cuál será seguido en la parte de desarrollo y
toma mayor énfasis en cada iteración, ya que ASD posee la características de usar cada
iteración para APRENDER por lo que en el momento de especular en las futuras
iteraciones esto será de gran importancia pues trabajaremos en función de esto para así
abordar de una manera más efectiva y planificada nuestra especulación.

2.1.3.2 Colaborar.
Esta Fase del llamado ciclo de vida, es en la que se toma el rumbo mencionado antes, en la
etapa de especulación, donde se construirá la funcionalidad del proyecto. Durante cada
Iteración el equipo se preocupa de colaborar fuertemente para que de esta manera se logre
liberar la funcionalidad planificada. En esta parte también es posible explorar nuevas
alternativas pudiendo alterar fuertemente el rumbo del proyecto, pero esta es una de las
razones por las que ASD está dentro de la categoría de metodologías ágiles.

ASD no propone técnicas ni tareas en la etapa de construcción, lo que hace es mencionar


que todas las prácticas e ideas que se llevan a cabo con el fin de reforzar la colaboración
entre los desarrolladores del proyecto (otro punto que hace referencia al concepto de
metodologías ágiles). La importancia de la colaboración se debe establecer en la relación
entre las personas, las cuales deben estar suficientemente fuertes y claras para se pueda
arreglar cualquier circunstancia compleja que se presente: emergencias.

17
2.1.3.3 Aprender.
Esta Fase es la última en cada ciclo y consiste en la revisión de calidad donde se analizan 4
categorías:

2.1.3.4 Calidad del resultado desde la perspectiva del cliente.


En esta parte se sugiere, para lograr evaluar la calidad desde el punto de vista del cliente,
utilizar grupos de enfoque hacia el cliente con tal de recoger nuevos requerimientos o
cambios que el cliente pueda requerir.

2.1.3.5 Calidad del resultado de la desde la perspectiva técnica.


Consiste en analizar la calidad del producto revisando el diseño, el código y las pruebas en
función de lograr aprender de los errores y desvíos empleados para poder resolverlos, y esto
implica no poner énfasis en encontrar culpables ya que esto afectaría las relaciones entre el
grupo de trabajo.

Seguido a esto viene la parte práctica de esta etapa en la cual se profundiza en las
exploraciones que se hayan realizado con lo cual podremos modificar ya sea el diseño del
sistema, o los posibles cambios de requerimientos que nos de él cliente.

2.1.3.6 Funcionamiento del equipo de desarrollo y las prácticas que este utiliza.
En esta etapa del aprendizaje se enfatiza la interacción entre las partes, la dinámica
del grupo y las técnicas que se acordaron emplear. Es importante que al final de cada ciclo
de vida (postmortem), se realicen pequeñas reuniones con el fin de analizar lo aprendido

Antes de realizar una iteración, se discuten los procesos que favorecen el desarrollo del
proyecto y asimismo descartar los de influencia negativa siendo estos últimos, los
procesos que puedan haber afectado el trabajo del grupo y los que no son compatibles con
los requerimientos.

2.1.3.7 Status del proyecto.


En esta última etapa, se revisa todo lo efectuado respecto al proyecto en función de lo que
inicialmente se había planificado, tanto en la parte técnica como en la humana. En este
momento es en donde se detectarán las posibles diferencias que podrían cambiar el rumbo
del proyecto.

Una vez que exploramos las 3 fases, se realiza el bucle de aprendizaje (learning loop), en el
cual se realizan revisiones de calidad con presencia del cliente como experto.

La presencia del cliente se suplementa con sesiones de talleres en el que programadores y


representantes del cliente se encuentran para discutir rasgos del producto en términos no
técnicos, sino que de negocios.

18
Figura 3.. Ciclo de vida ASD. Highsmit III, James A. Adaptive Software Development: A Colloaborative Approach
to Managing Complex Systems.

2.1.4 Tecnología del Software.

Para ASD la tecnología más usada y más efectiva a la hora de programar y realizar el
proyecto es la orientada a objetos ya que hoy en día ya no se aplica solamente a los
lenguajes de programación, además se viene aplicando en el análisis y diseño con mucho
éxito. Es que para hacer una buena programación orientada a objetos hay que desarrollar
todo el sistema aplicando esta tecnología, de ahí la importancia del análisis y el diseño
orientado a objetos.

En cuanto a la programación, la orientada a objetos (POO) es una de las formas más


populares de programar y viene teniendo gran acogida en el desarrollo de proyectos de
software desde los últimos años. Esto se debe a sus grandes capacidades y ventajas frente a
las antiguas formas de programar.

Luego de esta introducción surge la pregunta: ¿Cuáles son las ventajas de un lenguaje
orientado a objetos?

 Las ventajas más importantes son las siguientes:


 Fomenta la reutilización y extensión del código. Permite crear sistemas más
complejos. Relacionar el sistema al mundo real.
 Facilita la creación de programas visuales. Construcción de prototipos
 Agiliza el desarrollo de software
 Facilita el trabajo en equipo
 Facilita el mantenimiento del software

Lo interesante de la POO es que proporciona conceptos y herramientas con las cuales se


modela y representa el mundo real tan fielmente como sea posible y más importante aún, se
adapta perfectamente a la metodología de desarrollo ASD tomando en cuenta que el
agilizar el desarrollo de software y la construcción de prototipos, por nombrar algunas
características, es propio de las metodologías ágiles.

19
2.1.5 Roles y responsabilidades.
Tabla 1 Roles y Responsabilidades. Elaboración propia.

Roles. Responsabilidades.
Clientes Este rol juega un papel muy importante,
ya que este será parte activa del equipo
de trabajo, aportando funcionalidades al
sistema. Además es esencial para el éxito
del mismo, ya que un software que no
resuelve las problemáticas de cambio que
tiene la empresa, no tendrá la aprobación
para llevarse a cabo.
Líder del proyecto. Tiene a cargo la planificación del
proyecto a lo largo de todo el ciclo de
vida, asigna recursos y delega
responsabilidades en los mismos, el es el
nexo entre el cliente y el equipo que
desarrolla el software.
Programador Realiza la codificación de los
componentes a desarrollar en cada
iteración, además de realizar la lógica del
software la cual debe adaptarse a cada
cambio que haya entre iteración, ya que el
es el encargado de llevar a cabo la
implementación de los requerimientos
capturados para el desarrollo del
programa.
Diseñador Es el encargado de elaborar la interfaz del
sistema, la cual debe ser amigable con la
intensión de que este sea más fácil de usar
para el cliente.
Tester. Genera las pruebas del sistema a partir de
los requerimientos extraídos y analizados.
Con la finalidad de construir un software
de calidad que cumpla con los
requerimientos del usuario.

20
2.2 Modelo ISO/IEC 9126-1.

La organización internacional para la estandarización ISO fue creada en 1946 con el fin de
facilitar el comercio internacional, la coordinación internacional y la unificación de
estándares industriales promoviendo una serie de simples patrones de estándares que
deberán ser reconocidos y respetados ( grupo de investigación praxiom). ISO/IEC 9126-1
fue originalmente desarrollado en 1991 para proporcionar un esquema para la evaluación de
la calidad del software y así refinarlo en un periodo de 10 años (abran et al. 2003). Muchos
estudios criticaron la ISO/IEC 9126 por no recomendar requerimientos específicos de
calidad en vez de definir un esquema general para la evaluación de calidad del software
(valenti 2002). Es de hecho una de las fortalezas y así es más adaptable y puede ser usado a
través de varios sistemas incluso sistemas de aprendizaje virtual.

El producto original definió seis características del producto estas seis características son
divididas en un numero de sub -características.

Figura 4. Arquitectura de la funcionalidad de ISO/IEC 9126-1. Elaboración


propia.

21
2.3 Tecnología a utilizar.

2.3.1 WampServer.
WampServer es un entorno de desarrollo web de Windows. Se le permite crear aplicaciones
web con Apache 2, PHP y una base de datos MySQL. Al lado, PhpMyAdmin le permite
administrar fácilmente sus bases de datos.

Funcionalidades.
 Gestionar sus servicios de Apache y MySQL.
 Cambiar en línea / fuera de línea (dar acceso a todo el .mundo o solamente localhost).
 Instalar y cambiar Apache, MySQL y PHP comunicados.
 Administrar la configuración de servidores.
 Acceder a sus registros.
 Acceder a los archivos de configuración.
 Crear alias.
 Cambiar el idioma del menú de IP Works.
 Acceder a la página.

22
2.3.2 Photoshop.

Lanzado en 1990 exclusivamente para Macintosh de Apple, su historia se remonta hacia


1987, cuando un estudiante de doctorado de la Universidad de Michigan, Thomas Knoll
realizó un programa llamado Display para Macintosh Plus. Su objetivo era mostrar
imágenes en escala de grises en las pantallas que solo eran monocromáticas.

Photoshop es un editor de gráficos que se utiliza para crear, editar y retocar imágenes, tanto
gráficas como fotografías. Originalmente realizado para las computadoras de Apple y luego
extendido para las PC con sistema operativo de Windows, fue desarrollado y
comercializado por Adobe Systems Incorporated.

Se distribuye en diversas presentaciones que pueden ser individuales o en paquetes, tales como
Adobe Creative Suite Design Premium y Standard; Adobe Creative Suite Web Premium, Adobe
Creative Suite Master Collection y Adoble Creative Suite Production Studio Premium.

Usos.

Los usos más habituales de Photoshop son los siguientes:

 Photoshop facilita la edición de fotografías y permite ilustrar digitalmente con una


gran cantidad de herramientas bajo el mismo programa.
 Facilidad para realizar trabajo de edición avanzada.
 Es de uso sencillo aunque su alto nivel profesional es bastante complejo y necesita
de muchos conocimientos para ser aprovechado correctamente.

Formatos de Archivos.

Photoshop fue creado en el año 1990, soporta muchos tipos de archivos de imágenes, como
BMP, JPG, PNG, GIF, entre otros, además tiene formatos de imagen propios. Los formatos
soportados por Photoshop son:

• PSD, PDD: formato estándar de Photoshop con soporte de capas.

• PostScript: no es exactamente un formato, sino un lenguaje de descripción de


páginas. Se suele encontrar documentos en PostScript. Utiliza primitivas de dibujo para
poder editarlo.

• EPS: es una versión de PostScript, se utiliza para situar imágenes en un documento.


Es compatible con programas vectoriales y de autoedición.

• DCS: fue creado por Quark (empresa de software para autoedición) y permite
almacenar tipografía, tramas, etc. Se utiliza para filmación en autoedición.

23
• Prev. EPS TIFF: permite visualizar archivos EPS que no se abren en Photoshop, por
ejemplo los de QuarkXPress.

• BMP: formato estándar de Windows.

• GIF: muy utilizado para las web. Permite almacenar un canal alfa para dotarlo de
transparencia, y salvarlo como entrelazado para que al cargarlo en la web lo haga en varios
pasos. Admite hasta 256 colores.

• JPEG: también muy utilizado en la web, factor de compresión muy alto y buena
calidad de imagen.

• PNG: la misma utilización que los GIF, pero con mayor calidad. Soporta
transparencia y colores a 24 bits. Solo las versiones recientes de navegadores pueden
soportarlos.

• PDF: formato original de Acrobat. Permite almacenar imágenes vectoriales y mapa


de bits.

• ICO: es utilizado para representar archivos, carpetas, programas, unidades de


almacenamiento, etc.

• IFF: se utiliza para intercambio de datos.

• PCX: formato solo para PC. Permite colores a 1, 4, 8 y 24 bits.

• RAW: formato estándar para cualquier plataforma o programa gráfico.

• TGA: compatible con equipos con tarjeta gráfica de Truevision.

• Scitex CT: formato utilizado para documentos de calidad profesional.

• Filmstrip: se utiliza para hacer animaciones. También se puede importar o exportar


a Premiere.

• FlashPix: formato originario de Kodak para abrir de forma rápida imágenes de


calidad superior.

• JPEG2000: al igual que el JPEG, es nuevo formato de compresión que permite


aumentar la calidad de la imagen.

24
2.3.3 NetBeans.

2.3.3.1 ¿Qué es?


NetBeans es un entorno de desarrollo integrado libre, hecho principalmente para el lenguaje
de programación Java. Existe además un número importante de módulos para extenderlo.
NetBeans IDE es un producto libre y gratuito sin restricciones de uso.

NetBeans es un proyecto de código abierto de gran éxito con una gran base de usuarios, una
comunidad en constante crecimiento, y con cerca de 100 socios en todo el mundo. Sun
MicroSystems fundó el proyecto de código abierto NetBeans en junio de 2000 y continúa
siendo el patrocinador principal de los proyectos.

La plataforma NetBeans permite que las aplicaciones sean desarrolladas a partir de un


conjunto de componentes de software llamados módulos. Un módulo es un archivo Java
que contiene clases de java escritas para interactuar con las APIs de NetBeans y un archivo
especial (manifest file) que lo identifica como módulo. Las aplicaciones construidas a partir
de módulos pueden ser extendidas agregándole nuevos módulos. Debido a que los módulos
pueden ser desarrollados independientemente, las aplicaciones basadas en la plataforma
NetBeans pueden ser extendidas fácilmente por otros desarrolladores de software.

2.3.3.2 Historia.
El IDE NetBeans es un entorno de desarrollo integrado - una herramienta para
programadores pensada para escribir, compilar, depurar y ejecutar programas. Está escrito
en Java - pero puede servir para cualquier otro lenguaje de programación. Existe además un
número importante de módulos para extender el IDE NetBeans. El IDE NetBeans es un
producto libre y gratuito sin restricciones de uso.

El NetBeans IDE es un IDE de código abierto escrito completamente en Java usando la


plataforma NetBeans. El NetBeans IDE soporta el desarrollo de todos los tipos de
aplicación Java (J2SE, web, EJB y aplicaciones móviles). Entre sus características se
encuentra un sistema de proyectos basado en Ant, control de versiones y refactoring.

NetBeans IDE 6.5, la cual fue publicada el 19 de noviembre de 2008, extiende las
características existentes del Java EE (incluyendo Soporte a Persistencia, EJB 3 y JAX-
WS). Adicionalmente, el NetBeans Enterprise Pack soporta el desarrollo de Aplicaciones
empresariales con Java EE 5, incluyendo herramientas de desarrollo visuales de SOA,
herramientas de esquemas XML, orientación a web servicies (for BPEL), y modelado
UML. El NetBeans C/C++ Pack soporta proyectos de C/C++, mientras el PHP Pack,
soporta PHP 5.

25
Modularidad. Todas las funciones del IDE son provistas por módulos. Cada módulo provee
una función bien definida, tales como el soporte de Java, edición, o soporte para el sistema
de control de versiones. NetBeans contiene todos los módulos necesarios para el desarrollo
de aplicaciones Java en una sola descarga, permitiéndole al usuario comenzar a trabajar
inmediatamente.

Sun Studio, Sun Java Studio Enterprise, y Sun Java Studio Creator de Sun Microsystems
han sido todos basados en el IDE NetBeans.

Desde julio de 2006, NetBeans IDE es licenciado bajo la Common Development and
Distribution License (CDDL), una licencia basada en la Mozilla Public License (MPL). En
octubre de 2007, Sun anunció que NetBeans desde entonces se ofrecerá bajo licenciamiento
dual de Licencia CDDL y la GPL versión 2.

2.3.3.3 ¿Por qué utilizar la plataforma NetBeans?


Sistema de Módulos

La naturaleza modular de una aplicación de la plataforma NetBeans le da el poder para


satisfacer las necesidades complejas mediante la combinación de varios módulos pequeños,
simples y fácilmente probados encapsular características de la aplicación a elaborar.

Apoyo de versiones de gran alcance le ayuda a dar confianza en que sus módulos trabajarán
juntos, mientras que un control estricto sobre las API( Application Programming Interface)
públicas los módulos que expone ayudará a crear una aplicación más flexible que es más
fácil de mantener.

Dado que la aplicación podrá ser utilizada en cualquier NetBeans estándar, módulos de la
Plataforma o paquetes OSGi, usted será capaz de integrar los módulos de terceros o
desarrollar el suyo propio.

2.3.3.4 Gestión del Ciclo de Vida.


Al igual que los servidores de aplicaciones, tales como GlassFish o WebLogic,
proporcionan servicios de ciclo de vida a las aplicaciones web, el contenedor NetBeans
runtime proporciona servicios de ciclo de vida a las aplicaciones de escritorio Java.

Los servidores de aplicaciones entiendan cómo componer módulos web, módulos EJB y
artefactos relacionados, en una única aplicación web. De una manera similar, el contenedor
NetBeans runtime entiende cómo componer módulos de NetBeans en una aplicación de
escritorio simple Java.

No hay necesidad de escribir un método principal para su aplicación, ya que la Plataforma


NetBeans ya contiene uno. Además, se prestó apoyo para conservar la configuración de
usuario en el reinicio de la aplicación, tales como, por defecto, el tamaño y la posición de
las ventanas de la aplicación.

26
2.3.3.5 Conectividad, infraestructura de servicios, y el Sistema de Archivo.
Los usuarios finales de la aplicación, tendrán beneficios de las aplicaciones conectables,
porque, éstas les permiten instalar los módulos en sus aplicaciones en ejecución.

Módulos de NetBeans se puede instalar, desinstalar, activan y desactivan en tiempo de


ejecución, gracias al contenedor en tiempo de ejecución.

La plataforma NetBeans proporciona una infraestructura para el registro y la recuperación


de las implementaciones de servicios, lo que permite minimizar las dependencias directas
entre los módulos individuales y permite una arquitectura de acoplamiento flexible (alta
cohesión y bajo acoplamiento).

La plataforma NetBeans proporciona un sistema de archivos virtual, que es un registro


jerárquico para guardar la configuración del usuario, comparable a la del Registro de
Windows en sistemas Microsoft Windows.

2.3.3.6 Windows System, estandarizada UI Toolkit y componentes orientados a


Advanced Data.
La mayoría de las aplicaciones necesitan más de una ventana. Codificación de una buena
interacción entre múltiples ventanas no es una tarea trivial. El sistema de ventanas
NetBeans le permite maximizar / minimizar, / desacoplar, y las ventanas de arrastrar y
soltar, y sin que proporcione ningún código en absoluto.

Swing y JavaFX son los kits de herramientas de interfaz de usuario estándar en el escritorio
de Java y se puede utilizar en toda la plataforma NetBeans. Beneficios relacionados
incluyen la capacidad de cambiar la apariencia fácilmente a través de "look and feel" de
apoyo en el swing y la integración CSS en JavaFX, así como la portabilidad de los
componentes GUI a través de todos los sistemas operativos y la fácil incorporación de
muchos gratuitos y comercial de tercera oscilación partido y componentes de JavaFX.

Con la Plataforma NetBeans usted no está limitado por uno de los puntos de dolor típicos
de swing: el modelo JTree es completamente diferente al modelo JList, a pesar de que
presentan los mismos datos. El cambio entre ellos significa que se tendra que reescribir el
modelo. La API de NetBeans nodos proporciona un modelo general para la presentación de
sus datos. El NetBeans y API (Application Programming Interface) proporciona varios
componentes Swing avanzadas para la visualización de los nodos.

Además de un sistema de ventanas, la Plataforma NetBeans proporciona muchos otros


componentes relacionados con la interfaz de usuario, tales como una hoja de propiedades,
una paleta, los componentes Swing complejos para la presentación de datos, un
administrador de complementos, y una ventana de salida.

27
2.3.3.7 Características.
El NetBeans IDE, que es el kit de desarrollo de software (SDK) de la plataforma NetBeans,
proporciona muchas plantillas y herramientas, tales como el galardonado Matisse GUI
Builder que le permite diseñar con mucha facilidad el diseño de la aplicación.

La Plataforma NetBeans expone un rico conjunto de API (Application Programming


Interface), que se elaboraron, fueron probados, y continuamente se están mejorando.

La comunidad es de gran ayuda y diversa, mientras que una amplia biblioteca de blogs,
libros, tutoriales y materiales de formación están siendo continuamente desarrollado y
actualizado en varios idiomas por muchas personas alrededor del mundo.

2.3.3.8 Ventajas.
El mejor soporte para la última versión de Java Technologies.

NetBeans IDE proporciona de primera clase de apoyo integral para las tecnologías Java
más recientes y las últimas mejoras de la especificación de Java antes de que otros IDEs. Es
el primer IDE libre que proporciona soporte para JDK 8 avances, JDK 7, Java EE 7
incluyendo sus mejoras de HTML5 relacionados y JavaFX 2. Con su constante mejora Java
Editor, muchas características avanzadas y una amplia gama de herramientas, plantillas y
muestras, NetBeans IDE establece el estándar para el desarrollo de tecnologías, ya que
provee mejoras en el rendimiento, especialmente en el inicio más rápido (hasta 40% más
rápido), menor consumo de memoria y mejores respuestas mientras se trabaja con
proyectos muy grandes.

Rápido y elegante Edición de código

Una IDE es mucho más que un editor de texto. Los guiones líneas NetBeans Editor,
combina palabras y soportes, y destaca código fuente sintáctica y semánticamente. También
proporciona plantillas de código, consejos y herramientas de refactorización de
codificación. El editor soporta muchos lenguajes desde Java, C / C + +, XML y HTML,
PHP, Groovy, Javadoc, JavaScript y JSP. Debido a que el editor es extensible, se puede
conectar en el apoyo a muchos otros idiomas.

Gestión de Proyectos Fácil y Eficiente

Mantener una visión clara de las aplicaciones grandes, con miles de carpetas y archivos, y
millones de líneas de código, es una tarea de enormes proporciones. NetBeans IDE
proporciona diferentes vistas de los datos, a partir de múltiples ventanas de proyectos a
herramientas útiles para la creación de aplicaciones y gestionar de manera eficiente, lo que
le permite profundizar en sus datos de forma rápida y sencilla, mientras que le da las
herramientas de control de versiones a través de Subversión, Mercurial, Git y la integración
en el área de trabajo. Cuando los nuevos desarrolladores se unan a su proyecto, pueden
comprender la estructura de su aplicación, ya que su código está bien organizado.
28
De desarrollo de interfaz de usuario rápida

Diseño GUI de Java SE, HTML5, Java EE, PHP, C / C + + y Java ME aplicaciones de
forma rápida y sin problemas mediante el uso de editores y herramientas de arrastrar y
soltar en el IDE. Para aplicaciones Java SE, el NetBeans GUI constructor se encarga
automáticamente de espacio correcto y la alineación, mientras que el apoyo en el lugar de
edición. El constructor de interfaz gráfica de usuario es tan fácil de usar e interactiva que se
ha utilizado para crear prototipos de interfaces gráficas de usuario en vivo en
presentaciones a clientes.

2.3.3.9 Desventajas.
• Poca existencia de plugins para esta plataforma.

• Hace falta documentación del Rich Cliente Plataform (RCP).

• No posee un editor de código HTML.

29
2.3.4 MySQL

MySQL es un sistema de gestión de bases de datos relacional desarrollado bajo licencia


dual GPL/Licencia comercial por Oracle Corporation, está considerada como la base
datos open source más popular del mundo , y una de las más populares en general junto
a Oracle y Microsoft SQL Server, sobre todo para entornos de desarrollo web.

MySQL fue inicialmente desarrollado por MySQL AB (empresa fundada por David
Axmark, Allan Larsson y Michael Widenius). MySQL A.B. fue adquirida por Sun
Microsystems en 2008, y ésta a su vez fue comprada por Oracle Corporation en 2010, la
cual ya era dueña desde 2005 de Innobase Oy, empresa finlandesa desarrolladora del
motor InnoDB para MySQL.

Al contrario de proyectos como Apache, donde el software es desarrollado por una


comunidad pública y los derechos de autor del código están en poder del autor individual,
MySQL es patrocinado por una empresa privada, que posee el copyright de la mayor parte
del código. Esto es lo que posibilita el esquema de doble licenciamiento anteriormente
mencionado. La base de datos se distribuye en varias versiones, una Community,
distribuida bajo la Licencia pública general de GNU, versión 2, y varias
versiones Enterprise, para aquellas empresas que quieran incorporarlo en productos
privativos. Las versiones Enterprise incluyen productos o servicios adicionales tales como
herramientas de monitorización y soporte oficial.

En 2009 se creó un fork denominado MariaDB por algunos desarrolladores (incluido


algunos desarrolladores originales de MySQL) descontentos con el modelo de desarrollo y
el hecho de que una misma empresa controle a la vez los productos MySQL y Oracle
Database.

Está desarrollado en su mayor parte en ANSI C y C++4 . Tradicionalmente se considera


uno de los cuatro componentes de la pila de desarrollo LAMP y WAMP.

2.3.4.1 Lenguajes de programación.


Existen varias interfaces de programación de aplicaciones que permiten, a aplicaciones
escritas en diversos lenguajes de programación, acceder a las bases de datos MySQL,
incluyendo C, C++, C#, Pascal, Delphi , Eiffel, Smalltalk, Java , Lisp, Perl, PHP, Python, R
uby, Gambas, RealBasic (Mac y Linux), Harbour (Eagle1), FreeBASIC, y Tcl; cada uno de
estos utiliza una interfaz de programación de aplicaciones específica. También existe una
interfaz ODBC, llamado MyODBC que permite a cualquier lenguaje de programación que
soporte ODBC comunicarse con las bases de datos MySQL. También se puede acceder
desde el sistema SAP, lenguaje ABAP.

30
2.3.4.2 Características.
MySQL es muy utilizado en aplicaciones web, como Joomla, Wordpress, Drupal o phpBB,
en plataformas (Linux/Windows-Apache-MySQL-PHP/Perl/Python), y por herramientas de
seguimiento de errores como Bugzilla. Su popularidad como aplicación web está muy
ligada a PHP, que a menudo aparece en combinación con MySQL.

MySQL es una base de datos muy rápida en la lectura cuando utiliza el motor no
transaccional MyISAM, pero puede provocar problemas de integridad en entornos de alta
concurrencia en la modificación. En aplicaciones web hay baja concurrencia en la
modificación de datos y en cambio el entorno es intensivo en lectura de datos, lo que hace a
MySQL ideal para este tipo de aplicaciones. Sea cual sea el entorno en el que va a utilizar
MySQL, es importante monitorizar de antemano el rendimiento para detectar y corregir
errores tanto de SQL como de programación.

MySQL es un sistema de administración de bases de datos. Una base de datos es una


colección estructurada de tablas que contienen datos. La cual puede ser desde una simple
lista de compras a una galería de pinturas o el vasto volumen de información en una red
corporativa. Para agregar, acceder a y procesar datos guardados en un computador, usted
necesita un administrador como MySQL Server. Dado que los computadores son muy
buenos manejando grandes cantidades de información, los administradores de bases de
datos juegan un papel central en computación, como aplicaciones independientes o como
parte de otras aplicaciones.

MySQL es un sistema de administración relacional de bases de datos. Una base de datos


relacional archiva datos en tablas separadas en vez de colocar todos los datos en un gran
archivo. Esto permite velocidad y flexibilidad. Las tablas están conectadas por relaciones
definidas que hacen posible combinar datos de diferentes tablas sobre pedido.

31
2.3.5 Launch4J.

Launch4j es una herramienta multiplataforma para envolver las aplicaciones Java


distribuidas como frascos en ejecutables nativos de Windows ligeros. El ejecutable se
puede configurar para buscar una determinada versión de JRE o utilizar un paquete, y es
posible configurar las opciones de tiempo de ejecución, al igual que el tamaño inicial /
max. La envoltura también proporciona una mejor experiencia de usuario a través de un
icono de la aplicación, una pantalla de bienvenida nativa pre-JRE, y una página de descarga
de Java en caso de que el JRE apropiado no se pueda encontrar.

2.3.5.1 Características.

 Launch4j empaqueta jars en ejecutables nativos de Windows y permite ejecutarlos


como un programa Windows normal.
 Icono de la aplicación personalizada con múltiples resoluciones y profundidades de
color.

 Pantalla de bienvenida nativa pre-JRE en formato BMP mostrada hasta que la


aplicación Java empieza.
 Funciona con un JRE especifica o busca el JRE /SDK en la gama versión dada y
tipo (64 bits o 32 bits).
 Abre la página de descarga de Java si una versión apropiada de Java no se puede
encontrar o un sitio Web de asistencia en caso de error.
 Soporta interfaz gráfica de usuario de la consola y aplicaciones.
 Los pases argumentos de la línea de comandos, también es compatible con
argumentos constantes.
 Permite establecer el tamaño inicial / max heap también dinámicamente en
porcentaje de memoria libre.
 Opciones de tiempo de ejecución de JVM a partir de un archivo de .l4j.ini.
 Tiempo de ejecución de línea de comandos cambia al cambiar las opciones
compiladas.
 El acceso a las variables de entorno, el registro y la ruta del archivo ejecutable a
través de las propiedades del sistema.
 Establecer las variables de entorno.
 Opción para cambiar el directorio actual a la ubicación del ejecutable.
 el directorio bin del JRE se añade a la variable de entorno Path.
 Capacidad de reiniciar la aplicación basada en el código de salida.
 Custom información de la versión mostrada por el Explorador de Windows.
 La firma digital del archivo ejecutable con sign4j.

32
 Es compatible con las características de seguridad de Windows del equipo de
certificación de Windows 8.
 Interfaz gráfica de usuario y la interfaz de línea de comandos.

 Integración en la construcción a través de una tarea Ant.


 Ligero: 35 KB!
 Es gratis y puede ser utilizada con fines comerciales.
 Incluye una aplicación de ejemplo y Ant script que automatiza el proceso de
generación de fuentes de Java a ejecutable nativo.
 El programa empaquetado funciona en todas las plataformas Windows, Launch4j
funciona en Windows, Linux y Mac OS X.

33
CAPITULO III "APLICACION Y RESULTADOS".

3.1 Solución del problema.

La falta de un software a la medida que permitiera la correcta gestión de todas las unidades
nuevas, dio como resultado el desarrollo de una aplicación específica que pudiera
almacenar una gran cantidad de información y gestionarla de manera rápida y eficaz. Para
lograrlo se requería de un gestor de base de datos que manejara bases de datos grandes y un
ide de desarrollo que permitiera crear una aplicación de escritorio compatible con los
sistemas operativos de Windows, por ello Wampserver y Netbeans fueron ideales para dar
solución al problema. A continuación se darán a conocer la manera en que las herramientas
fueron utilizadas para la elaboración del software.

3.1.1 Wampserver.
El software administrativo desarrollado no es un software libre, ya que no se dan
manifestaciones por parte de los desarrolladores para ser copiado, estudiado o alterado bajo
ninguna circunstancia, dicho esto se usaron herramientas que permiten crear un aplicación
con extensión “.exe” dejando encriptado el código fuente del programa, en el caso de
Wampserver , permite manejar gestores de base de datos como Php y MySQL, este último
con la posibilidad de tener una contraseña de acceso a nuestras bases de datos y sus
estructuras correspondientes, accediendo a esta información solo mediante consultas
programadas dentro del sistema para llevar acabo funciones determinadas, como consultar,
modificar, agregar, eliminar registros.

La herramienta wampserver fue instalada con el fin de aprovechar al máximo las funciones
que brinda, tales como manejar MySQL y phpmyadmin, además mediante el localhost
dándonos la posibilidad de administrar las bases de datos en MySQL en un entorno grafico
que facilita algunas tareas como la exportación e importación de tablas con sus respectivos
registros, además esta herramienta permite crear un servicio automático para iniciar junto
con Windows y de esta forma tener a la disposición las bases de datos cada vez que se
requiera ejecutar la aplicación.

34
Existen herramientas similares a Wampserver sin embargo, la versatilidad y el entorno
autodidacta que tiene fueron el determinante para elegirla en el desarrollo de este proyecto.

Figura 5 Interfaz de WampServer. Elaboración propia.

El entorno grafico que maneja la herramienta wampserver, facilita tareas como creación de
base de datos, tablas, registros, consultas, eliminaciones etc. Además ofrece funciones
como la exportación e importación de registros en varios formatos como csv, esta interfaz
gráfica permite ahorrar tiempo en programación y por tanto la convierte en una herramienta
muy versátil y la ideal para este proyecto.

35
3.1.2 MySQL.

El uso de MySQL es propiamente para dar toda la estructura a nivel base de datos de
nuestro sistema, permitiéndonos la creación de la base de datos con sus respectivas tablas y
relaciones, cabe destacar que fue el elegido por su buen manejo junto con la herramienta
WampServer, MySQL ofrece más de 6 millones de registros por lo cual lo hace un gestor
de base de datos de primer nivel.

Figura 6. Estructura de la Base de Datos. Elaboración propia.

En la imagen se puede observar la estructura que ha permitido crear MySQL como son una
base de datos que contiene 5 tablas, cada una de ellas con sus respectivos campos, en la
imagen podemos apreciar la estructura de una de sus tablas ‘’registros’’ compuesta de 11
campos de tipo varchar, uno de ellos siendo una clave primaria, el software no podría
funcionar sin la programación de estas bases de datos que deben contener tablas donde
almacenar la información.

36
3.1.3 Netbeans.

Netbeans es un IDE de desarrollo bastante conocido en la programación y que permite crear


aplicaciones de escritorio de gran calidad, además puede funcionar junto con MySql y SQL
Server entre otros gestores de bases de datos, cuenta con un numero grande de
herramientas que permiten lograr una interfaz gráfica como la que estábamos buscando,
sencilla, amigable, que pudiera identificarse gráficamente la ubicación exacta de las
unidades en almacén. Además permite crear ventanas y agregar componentes de las
paletas sin necesidad de programarlos, lo cual es excelente cuando se busca ahorrar tiempo
en desarrollo, permite importar imágenes al proyecto para poder ser usados en diferentes
componentes como Botones, Labels, Jframes por mencionar algunos. En Netbeans se
desarrolló la aplicación y toda la interfaz que corresponde ver al usuario final, además en
este mismo IDE de desarrollo se estableció la conexión a la base de datos y a sus
respectivas tablas según se requería.

Figura 7. Interfaz en NetBeans. Elaboración propia.

37
3.1.4 Photoshop.

Decidimos utilizar esta herramienta de edición, la cual nos permite elabora un mejor diseño
de interfaz por las herramientas con las que cuenta este software, facilita la creación del
diseño y a su vez si llegase a ver un inconveniente con que el diseño no sea del agrado del
cliente, este software nos permite rehacer el diseño ya que cuenta con un sistema de capas
las cuales nos facilitan cambiar el diseño con la finalidad de que sea más amigable y de
fácil entendimiento para el usuario que manejara el sistema de unidades nuevas.

Como se mencionó anteriormente Photoshop permitió lograr uno de nuestros principales


objetivos: una interfaz amigable y sencilla, fácil de manejar, con edición de imágenes y
creación de las mismas desde cero, fue usada para crear la vista de almacén, los cajones o
espacios de las unidades, también permitió la edición de imágenes obtenidas de fuentes
externas como las unidades miniatura que hacen referencias a los vehículos existentes, a los
iconos de espacio disponible o espacio en mantenimiento entre otros.

La principal utilidad de esta herramienta fue la edición de todas las imágenes que se
utilizaron en el desarrollo del software y que serían de gran apoyo visual para el usuario
final.

Figura 8. Uso de Photoshop para la creación de la interfaz. Elaboración propia.

En esta imagen se puede apreciar cómo se le asignó un fondo transparente (png) al icono
del carro, de manera fácil y rápida, permitiendo que al ser utilizada la imagen, el carro
quede plasmado sin un fondo de color sólido, logrando un software con interfaz
profesional.

38
3.1.5 Launch4j.

Este software ajeno al IDE de desarrollo y al gestor de base de datos , fue usado para dar el
toque final al proyecto, mediante el uso de Launch4j se logró crear una aplicación de
escritorio con extensión EXE que permite un toque más profesional a comparación de un
ejecutable con extensión JAR, tiene varias características que pueden ser de gran utilidad
como es el de re direccionar a la descarga de JRE si no se tiene previamente instalado,
además para efectos de calidad y un toque más detallado permite implementar un splash de
la aplicación desarrollada, además se pueden anexar propiedades al ejecutable .EXE como
son la versión, el desarrollador, compañía, comentarios, Fecha de salida entre otras.

Figura 9. Uso de Launch4j. Elaboración propia.

Imagen de la interfaz de Launch4j para la creación de ejecutables, en la cual se requiere


capturar datos obligatorios marcados con un asterisco como la ruta donde se creara el
ejecutable, la ruta donde se encuentra el Jar, y la ruta donde se puede descargar Java,
opcionalmente se pueden capturar otros campos como un icono o una dirección de soporte
para java.

39
3.2 Instrumentos empleados.

 Bosquejo de Interfaz de usuario.

Figura 10. Bosquejo interfaz del usuario. Elaboración propia.

En esta imagen se puede observar cómo se divide la ventana principal del programa, en un
módulo para captura de datos, un módulo para consultar datos y visualizarlos en una tabla,
y una representación gráfica del almacén de las unidades nuevas, donde se pueden ubicar
las unidades de manera visual.

40
 Diagrama de casos de uso.

Figura 11. Diagrama de casos de uso. Elaboración propia.

El diagrama de casos de uso nos permite ver las funciones que puede realizar un usuario
como son entrar al sistema mediante la validación de credenciales, realizar consultas sobre
las unidades en almacén, en punto de venta o facturadas, el registro de datos pertenecientes
a una unidad como modelo, origen, numero de vin, responsable, detalles, etc. Registrar un
historial de las unidades que han sido facturadas, registrar los movimientos (cambios de
ubicación) que han tenido las unidades, y por último la función de salir del programa, la
imagen también permite ver que los datos son almacenados en una base de datos para ser
consultados o alterados a medida que se requiera.

41
 Diagrama de flujo.

Figura 12. Diagrama de flujo. Elaboración propia.

El diagrama de flujo nos muestra el proceso desde que el usuario entra al sistema, y el flujo
de procesos si selecciona una opción determinada, por citar un ejemplo si el usuario decide
registrar una unidad, entonces deberá elegir si se registra en facturados, punto de venta o en
almacén, si se decide por almacén, entonces se registra y si desea salir del programa,
entonces finaliza su sesión, de lo contrario podrá realizar un nuevo registro.

42
 Diagrama de Clases.

Figura 13. Diagrama de clases. Elaboración propia.

En el diagrama de clases podemos ver los atributos y procesos correspondientes a cada una
de las tablas usadas en el software, también la manera en cómo interactúan unas con otras,
como los usuarios capturan un registro y este puede ser enviado a punto de venta, historial
o facturados, según la programación del software.

43
3.3 Resultados.

3.3.1 Proceso antes y después.


El proceso ha evolucionado, antes se llevaba el control en una hoja de Excel , por lo cual
debían capturar por día la situación de las unidades, no se tenía un control sobre la
ubicación de las unidades y al requerir conocer el lugar exacto de una unidad se tenía que
buscar en almacén, punto de venta o en las unidades ya facturadas, con la implementación
del sistema a la medida se puede llevar un control completo de las unidades, conocer su
ubicación exacta en pocos segundos, conocer el responsable de un movimiento o cambio de
ubicación, las fechas en que son capturados se realizan de manera automática, tiene un
módulo de historial para saber todas las transacciones que ha sufrido una unidad, además
tiene acceso al sistema solo por contraseña, lo que lo hace un software seguro y no como se
hacía anteriormente en una hoja de Excel. Físicamente se han pintado espacios que
delimitan los espacios donde se pueden almacenar las unidades, cosa que antes no existía.

3.3.2 Tiempos para consultar o registrar antes y después.


Antes de la implementación del software, para consultar un dato se tardaban mucho
tiempo, ya que no se manejaba un filtro de búsqueda que permitiera obtener la información
rápida sobre una unidad, el software administrativo que se implementó maneja varios filtros
de búsqueda como el filtro por número de inventario, con el cual se puede obtener la
situación actual y pasadas de todas las transacciones que ha sufrido una unidad, haciendo
que la búsqueda de información sea mucho más rápida que antes y precisa.

3.3.3 Seguridad de los datos.


El software maneja una seguridad elevada, ya que no se puede acceder a él si no se posee
una cuenta y contraseña valida, en la forma de llevar el control de antes no se tenía una
seguridad en los datos, por tanto la información podía ser alterada por cualquier usuario con
acceso a la hoja de Excel.

3.3.4 Interfaz antes y después.


Anteriormente no existía una delimitación en los espacios de almacén, por lo cual no se
llevaba un control preciso sobre la ubicación de las unidades, solo se tenía el registro de
que estaba en almacén pero no sabían en que ubicación exactamente, con el sistema
desarrollado podemos conocer gráficamente y textualmente donde se encuentra cada una de
las unidades, incluso un historial que permite conocer quien la ha movido y que detalles ha
tenido en el lapso del movimiento.

Los resultados obtenidos fueron un software final con interfaz detallada y amigable, de fácil
manejo, que implementa un servicio gestor de base de datos prácticamente ilimitado y que
puede ser depurado cuando se requiera. En caso de requerir actualizaciones futuras al
software estas pueden lograrse sin riesgo de perder datos de la base de datos, es decir, se
actualiza a una nueva versión que seguirá trabajando con la misma base de datos.

44
3.3.5 Manual de usuario.

1. Ejecutar la aplicación: Para iniciar la aplicación se debe de abrir el ejecutable


SistemaChrysler.

Figura 14. Ejecutable del programa. Elaboración propia.

2. Iniciar Sesión: El usuario debe identificarse con el nombre de usuario y contraseña,


los cuales serán proporcionados por el administrador y así ingresar a la interfaz
principal del programa.

Figura 15. Ventana de acceso al programa. Elaboración propia.

45
3. Registrar Unidad: Si se desea registrar una nueva unidad, deberá dar click sobre un
espacio disponible identificado mediante el siguiente icono:

Figura 16. Icono de espacio disponible. Elaboración propia.

A continuación se habilitaran los espacios para poder capturar los datos de la unidad

Figura 17. Interfaz de captura de datos. Elaboración propia.

Una vez capturados los datos guardaremos el registro dando click en el botón
guardar representado mediante el siguiente icono:

Figura 18. Icono de guardado. Elaboración propia.

Si los datos se han guardado correctamente, nos indicara que el guardado se ha


llevado a cabo exitosamente con un mensaje:

Figura 19. Ventana emergente avisando que los dato han sido guardados correctamente. Elaboración propia.

Gráficamente el icono pasara de estar disponible ha ocupado, el icono que


representa un espacio ocupado es el siguiente:

Figura 20. Icono de espacio ocupado. Elaboración propia.

46
4. Consultar la ubicación de una unidad: Para conocer la ubicación de una unidad
podemos hacerlo desde la siguiente tabla donde nos indicara todos los datos de
nuestros registros:

Figura 21. Ventana con tabla de espacios disponibles. Elaboración propia.

Si deseamos conocer la ubicación de un solo registro podemos usar uno de los


filtros de búsqueda disponibles dando click en la lista de la función de búsqueda:

Figura 22. Interfaz del filtro de búsqueda. Elaboración propia.

Para activar cualquier filtro deberá dar click en el botón aceptar y a continuación se
mostrara un mensaje de confirmación de que se ha activado un filtro de búsqueda:

Figura 23. Ventana emergente del filtro de búsqueda. Elaboración propia.

47
En el espacio en blanco deberá escribir el valor de un registro, en este caso como ejemplo
el No. De inventario de una unidad, inmediatamente en la tabla mostrara únicamente la
unidad correspondiente al número de inventario especificado:

Figura 24. Ventana e espacios disponibles con el filtro de búsqueda. Elaboración propia.

48
5. Traslado.
Si una unidad cambio de ubicación se debe registrar en el sistema haciendo click en
el botón traslados

Figura 25. Botón de trasladados. Elaboración propia.

A continuación se habilitaran los tipos de traslados que puede realizar, seleccionar


uno de ellos al dar click:

Figura 26. Interfaz de traslados. Elaboración propia.

El sistema indicara que seleccione el registro que se va a trasladar:

Figura 27. Ventana emergente de traslados. Elaboración propia.

49
Deberá dar click izquierdo en el registro que desea trasladar, el registro quedara
sombreado:

Figura 28. Ventana de espacios con el filtro de traslados. Elaboración propia.

A continuación indicara la fecha, número de espacio, responsable y los detalles del


traslado:

Figura 29. Interfaz de captura de datos. Elaboración propia.

Para efectuar el traslado dará click en el tipo de traslado que selecciono con
anterioridad:

Figura 30. Interfaz de traslados. Elaboración propia.

50
Una ventana de confirmación de traslado completo aparecerá en pantalla:

Figura 31. Ventana emergente de traslado efectuado correctamente. Elaboración propia.

Si el tipo de traslado seleccionado fue de un espacio a otro, gráficamente se


mostrara el espacio anterior disponible y el espacio nuevo ocupado, en caso de ser
un traslado de espacio a punto de venta se mostrara el espacio anterior disponible y
se podrá consultar la unidad en el módulo de punto de venta.

Figura 32. Interfaz de estacionamiento. Elaboración propia.

51
6. Facturar unidad: Para dar como vendida una unidad, se debe hacer click en facturar:

Figura 33. Botón de facturar. Elaboración propia.

Se habilitaran los tipos de facturaciones que se pueden realizar, seleccionar uno:

Figura 34. Interfaz de facturación. Elaboración propia.

El sistema indicara que seleccione el registro que se va a facturar:

Figura 35. Ventana emergente de facturación. Elaboración propia.

Deberá dar clic izquierdo en el registro que desea facturar, el registro quedara
sombreado:

Figura 36. Ventana de espacio con el filtro de facturación. Elaboración propia.

52
A continuación indicara la fecha, el responsable y detalles de la unidad a facturar:

Figura 37Interfaz de captura de datos. Elaboración propia.

Para efectuar la facturación hará click en la opción anteriormente seleccionada:

Figura 38. Interfaz de facturación. Elaboración propia.

El sistema indicara mediante un mensaje que la facturación se efectuó con éxito:

Figura 39. Ventana emergente de facturación realizada correctamente. Elaboración propia.

Podrá corroborar las unidades facturadas en el módulo “facturado”.

53
7. Consultar en módulos: Para consultar unidades en un módulo específico deberá
hacer click en el botón opciones y seleccionar uno de los 3 módulos disponibles, en
este ejemplo seleccionaremos historial.

Figura 40. Barra de Herramientas del programa. Elaboración propia.

En la ventana del módulo seleccionado nos mostrara una tabla donde podemos ver
los registros en dicho modulo, además incluye filtros de búsqueda para encontrar
una unidad o registro determinado inmediatamente.

Figura 41. Interfaz de Historial de movimientos. Elaboración propia.

54
8. Cerrar sesión: Para cerrar sesión deberá hacer click en el siguiente botón:

Figura 42. Botón de cerrar sesión. Elaboración propia.

9. Salir.
Para salir de la aplicación deberá hacer click en la pestaña cerrar de la ventana
principal de la aplicación:

Figura 43. Iconos de minimizar, maximizar y cerrar. Elaboración propia.

55
3.4 Conclusiones.

Se alcanzaron los propósitos específicos mencionados, se le dio seguridad al sistema


mediante la implementación de una interfaz amigable y sencilla que permite restringir el
acceso al programa mediante autenticación de credenciales, además se agregó un módulo
para poder cambiar la contraseña de un usuario determinado en caso de que alguien robe la
identidad de uno o varios de los usuarios, para poder realizar el cambio de contraseña
deberá conocer la contraseña anterior y después el sistema indicara que ingresen una nueva.

Se logró un sistema capaz de almacenar una cantidad de 1 millón de registros,


prácticamente ilimitados ya que la base de datos que implementamos maneja un gestor de
base de datos capaz de almacenar la cantidad de registros necesarios, esta característica del
sistema en conjunto con un equipo de cómputo de gama media dará resultados óptimos
para el uso del software.

Con respecto a la interfaz sencilla y con un entorno amigable se manejaron efectos visuales
como el cambio de posición de los vehículos que ayudan a localizar rápidamente la
ubicación de las unidades, a pesar de que estas cambien de lugar. Además con el propósito
de que el software no sea cien por ciento un entornos gráficos, se implementó un
componente Jtable que permite visualizar los registros en modo texto de la ubicación y
características de las unidades.

Para el ahorro de tiempo, se logró obtener resultados precisos en el menor tiempo posible
mediante la implementación de filtros de búsqueda, los cuales permiten obtener el
resultado sobre una unidad específica en un periodo muy corto de tiempo, como son los
filtros por número de inventarios, por número de Vin(número de registro de fábrica de la
unidad nueva.), por espacio, etc.

El sistema es escalable, pueden existir actualizaciones si así se requieren sin afectar la


integridad de la base de datos, como extra, si el software es instalado en más de un equipo
de cómputo, los datos pueden ser exportados e importados desde un equipo de cómputo a
otro para mantener los mismos datos en los diferentes dispositivos.

El software es compatible con las versiones de Windows actuales como Windows 7,


Windows 8, Windows 10 en cualquiera de sus versiones 32 o 64 bits.

56
3.5 Recomendaciones.

En el futuro el sistema llegase a requerir una modificación se elaborara una actualización la


cual optimizara el software para que este satisfaga las necesidades de la empresa ya que,
podrían darse casos en los que se requiera almacenar en la base de datos alguna evidencia
fotográfica en caso de ocurrir algún daño a la unidad, en este caso se implementaría un
campo que use el recurso de la codificación binaria, que sea de tipo blob para lograr
almacenar imágenes y se tenga un historial más completo de las unidades..

En caso que se requiera una actualización que optimice el sistema, se puede anexar un
botón que permita exportar datos a una ruta específica, sin necesidad de entrar a las
herramientas que ya incluye WampServer pero que sin embargo no son del todo cómodas
para usuarios con conocimientos limitados en programación, lo mismo sucedería para crear
un botón que permita importar datos de una ruta especifica.

Para lograr un toque diferente se puede agregar un Pop Menú en el Jtable que usamos para
mostrar la información sobre las unidades, este Pop Menú a su vez tendrá Menú Items que
pudieran realizar acciones como modificar campos, copiar datos de un registro, eliminar un
registro, etc. Esto permitiría que los botones que ya existen con estas funciones se
optimicen incluso ahorrando espacio en el Jframe, dejando espacio para mayores
características.

También en un futuro se podría implementar un botón, que re direccione al localhost de


PhpMyAdmin para realizar tareas como la exportación e importación, dicho botón puede
tener un acceso limitado por el uso de ciclos condicionales, de esta forma evitaríamos que
cualquier usuario pueda realizar exportaciones e importaciones a las base de datos.

57
Bibliografía.

Highsmit III, James A. (2000). Adaptive Software Development: A Colloaborative


Approach to Managing Complex Systems.New York: Dorset House Publishing.

Boehm, Barry. (2001 ). "Agile Software Development: The People Factor". Computer
Science, University of Southern , Noviembre, 131-133.

Botella, P., Burgues, X., Carvallo, J.P., Franch, X., Grau, G., Marco, J. y Quer, C. (2004).
“ISO/IEC 9126 in Practice: What Do We Need To Know?”. En: Procs. 1st Software
Measurement European Forum (SMEF’04), Ed. Instituto di Recerca Internazionale.

58
Anexos.

Anexo I: Corrida del programa.

 Versión Beta.

Figura 44. Login versión beta. Elaboración propia.

Figura 45.Ventana principal versión beta. Elaboración propia.

59
Figura 46. Punto de venta versión beta. Elaboración propia.

Figura 47. Historial versión beta. Elaboración propia.

60
 Versión 1.0

Figura 48. Ventana principal Versión 1.0. Elaboración propia.

 Versión 2.0.

Figura 49. Login Versión 2.0. Elaboración propia.

61
Figura 50. Módulo de cambio de contraseña versión 2.0. Elaboración propia.

Figura 51. Ventana principal versión 2.0. Elaboración propia.

62
Figura 52. Ventana facturados versión 2.0. Elaboración propia.

63
Figura 53. Ventana punto de venta Versión 2.0. Elaboración propia.

Anexo II: Reportes semanales.

64
65
66
67
68
69
70
71
72
73
74
75
76
77
78

También podría gustarte