Vous êtes sur la page 1sur 130

DESARROLLO DE UN SISTEMA DE CONTROL DE INVENTARIO FSICO Y DE

SOFTWARE BAJO UNA ARQUITECTURA WEB IMPLEMENTANDO


PROTOTIPADO Y PROGRAMACIN EXTREMA PARA CYZA OUTSOURCING
S.A.

Elaborado por:

JORGE EMILIO ARAQUE GONZALEZ

Cod 20022020007

UNIVERSIDAD DISTRITAL FRANCISCO JOSE DE CALDAS


FACULTAD DE INGENIERIA
INGENIERA DE SISTEMAS
BOGOT
2015
DESARROLLO DE UN SISTEMA DE CONTROL DE INVENTARIO FSICO Y DE
SOFTWARE BAJO UNA ARQUITECTURA WEB IMPLEMENTANDO
PROTOTIPADO Y PROGRAMACIN EXTREMA PARA CYZA OUTSOURCING
S.A.

Elaborado por:

JORGE EMILIO ARAQUE GONZALEZ

Cod 20022020007

Directora:

LILIAN ASTRID BEJARANO GARZN

Ingeniera de Sistemas

UNIVERSIDAD DISTRITAL FRANCISCO JOSE DE CALDAS


FACULTAD DE INGENIERIA
INGENIERA DE SISTEMAS
BOGOT
2015
Nota de Aceptacin:

_________________________________
_________________________________
_________________________________
_________________________________
_________________________________
_________________________________

Jurados

_____________________________________________

_____________________________________________

_____________________________________________

LILIAN BEJARANO (Directora Interna)

_____________________________________________
JHON JAIRO ROLDAN (Director Externo)
CONTENIDO

Pg.

LISTA DE FIGURAS ................................................................................................ 6


LISTA DE TABLAS .................................................................................................. 8
INTRODUCCIN ................................................................................................... 10
1. PLANTEAMIENTO DEL PROBLEMA ................................................................ 12
2. OBJETIVOS ....................................................................................................... 14
General: .............................................................................................................. 14
Especficos: ........................................................................................................ 14
3. JUSTIFICACIN ................................................................................................ 15
4. MARCO REFERENCIAL.................................................................................... 18
4.1 MARCO TERICO ....................................................................................... 18
4.1.1 Sistema de Inventario. ............................................................................ 18
4.1.2 Clasificacin de los Inventarios de acuerdo a la localizacin fsica. ....... 19
4.1.3 Fundamentos de la Codificacin de Barras. ........................................... 20
4.1.4 Fundamentos del Escaneado. ................................................................ 27
4.2 ESTADO DEL ARTE .................................................................................... 31
4.2.1 Software Mnica ..................................................................................... 32
4.2.2 TPV Comercios ...................................................................................... 33
4.2.3 EcountERP ............................................................................................. 34
4.3 MARCO CONCEPTUAL ............................................................................... 37
4.3.1 Arquitectura Multicapa ............................................................................ 37
4.3.2 Arquitectura Fsica.................................................................................. 44
4.3.3 Herramientas RAD ................................................................................. 45
4.3.4 Asp.NET ................................................................................................. 45
4.3.5 Visual Studio .......................................................................................... 46
4.3.6 Servidor de Aplicaciones ........................................................................ 46
4.3.7 Controles Propietarios ............................................................................ 46

3
4.3.7.1 Controles de Telerik para ASP Ajax .................................................... 46
5. METODOLOGA ................................................................................................ 48
5.1 PROGRAMACIN EXTREMA...................................................................... 48
5.1.1 Valores de la Programacin Extrema ..................................................... 48
5.1.2 Principios bsicos de la Programacin Extrema .................................... 49
5.1.3 Roles dentro de la programacin extrema.............................................. 53
5.2 PROTOTIPOS .............................................................................................. 54
5.2.1 Prototipo corregido ................................................................................. 55
5.2.2 El prototipo corregido dentro de la Programacin Extrema .................... 55
5.3 ESTRUCTURA DE DESGLOSE EDT .......................................................... 56
6. DISEO METODOLGICO............................................................................... 58
6.1 FASE DE LEVANTAMIENTO DE DATOS .................................................... 58
6.1.1 Identificacin de Interesados .................................................................. 58
6.1.2 Historias de Usuarios ............................................................................. 59
6.1.3 Levantamiento de Requerimientos ......................................................... 64
6.1.4 Casos de Uso ......................................................................................... 72
6.1.5 Diagramacin de Flujos de Sistema De Inventarios ............................... 77
6.2 FASE DE PLANEACIN .............................................................................. 78
6.2.1 Plan de Desarrollo .................................................................................. 78
6.2.1.1 Desglose de Trabajo ........................................................................... 81
6.2.1.2 Proceso de Desarrollo ......................................................................... 84
6.2.1.3 Diagrama de Proceso de desarrollo de un Ciclo ................................. 85
6.2.1.4 Diagrama de Proceso de desarrollo proyecto General ........................ 86
6.2.2 Plan de Pruebas ..................................................................................... 87
6.2.3 Plan de Control de Cambios................................................................... 87
6.2.4 Plan de Cierre de Proyecto .................................................................... 87
6.3 FASE DE DESARROLLO ............................................................................. 88
6.3.1 Creacin del proyecto............................................................................. 88
6.3.2 Desarrollo de Proyecto Base .................................................................. 88
6.3.3 Desarrollo de Mdulos............................................................................ 91

4
6.3.4 Construccin de Servicios Web .............................................................. 98
6.3.5 Instalador Cliente de Servicios Windows................................................ 98
6.4 FASE DE PRUEBAS Y CONTROL DE CAMBIOS ....................................... 99
6.4.1 Pruebas de Integracin .......................................................................... 99
6.4.2 Control de Cambios .............................................................................. 110
6.4.3 Pruebas de Aceptacin ........................................................................ 111
6.5 FASE CIERRE ............................................................................................ 115
7 ANLISIS COSTO/BENEFICIO ........................................................................ 116
7.1 COSTOS .................................................................................................... 116
7.2 BENEFICIOS .............................................................................................. 117
7.3 COMPARATIVO CON OTRAS PROPUESTAS DEL MERCADO .............. 119
8. CONCLUSIONES ............................................................................................ 121
9. REFERENCIAS ............................................................................................... 122
10. BIBLIOGRAFA .............................................................................................. 123
11. CITAS DE INTERNET ................................................................................... 124
LISTA DE ANEXOS ............................................................................................. 125

5
LISTA DE FIGURAS
Pg.

Figura 1. Partes del cdigo de barras2. .................................................................. 22


Figura 2. Code 1282 ............................................................................................... 23
Figura 3. Code 392 ................................................................................................. 23
Figura 4. Intercalado 2 de 52 .................................................................................. 23
Figura 5. Cdigo EAN2 ........................................................................................... 24
Figura 6. Cdigo UPC2........................................................................................... 24
Figura 7. Cdigo QR2 ............................................................................................. 25
Figura 8. Datamatrix2 ............................................................................................. 25
Figura 9. Cdigo PostNet2 ..................................................................................... 26
Figura 10. CdigoPDF4172 .................................................................................... 26
Figura 11. Escaneado del Cdigo. ......................................................................... 27
Figura 12. Lpiz ptico .......................................................................................... 28
Figura 13. Escner CCD ........................................................................................ 28
Figura 14.Escner de Pistola ................................................................................. 29
Figura 15. Laser Omnidireccional .......................................................................... 30
Figura 16. Escner de Ranura ............................................................................... 30
Figura 17. Pantalla de Inventarios de Software Mnica ......................................... 32
Figura 18. Mdulo de Inventarios. Software TPV Comercios ................................ 34
Figura 19. Vista de Ecount Software...................................................................... 36
Figura 20. Esquema de Componentes de la aplicacin ......................................... 38
Figura 21.Esquema lgico de la capa de presentacin ......................................... 39
Figura 22. Esquema lgico de la capa de negocio ................................................ 41
Figura 23. Esquema lgico de la capa de acceso a datos ..................................... 42
Figura 24. Diagrama fsico y de red de la aplicacin ............................................. 44
Figura 25. Taller de Diseo RAD (Rapid Application Management) ...................... 55
Figura 26. Diagrama tpico de un esquema de desglose de trabajo ...................... 57
Figura 27. Caso de Uso para REQ-FNC-01 .......................................................... 72
Figura 28. Diagrama Caso de Uso para REQ-FNC-02 .......................................... 72
Figura 29. Diagrama Caso de Uso para REQ-FNC-03 .......................................... 73
Figura 30. Diagrama Caso de Uso para REQ-FNC-04 .......................................... 73
Figura 31. Diagrama Caso de Uso para REQ-FNC-05 .......................................... 73
Figura 32. Diagrama Caso de Uso para REQ-FNC-06 .......................................... 74
Figura 33. Diagrama Caso de Uso para REQ-FNC-07 .......................................... 75
Figura 34. Diagrama Caso de Uso para REQ-FNC-08 .......................................... 75
Figura 35. Diagrama Caso de Uso para REQ-FNC-09 .......................................... 76
Figura 36. Diagrama Caso de Uso para REQ-FNC-10 .......................................... 76

6
Figura 37. Diagrama Caso de Uso para REQ-FNC-11 .......................................... 77
Figura 38. Diagrama de Secuencia por Funcionalidad Identificada Sistema de
Control de Inventarios Planteado ........................................................................... 78
Figura 39. Esquema General Funcional Sistema de Control de Inventarios
Planteado ............................................................................................................... 80
Figura 40. Diagrama de proceso de un ciclo de desarrollo Sistema de Inventarios
Cyza ....................................................................................................................... 85
Figura 41. Diagrama de Representacin del proceso de desarrollo General
Sistema de Control de Inventarios Planteado ........................................................ 86
Figura 42. Diagrama de Entidad Relacin Base de datos Proyecto Base ............. 89

7
LISTA DE TABLAS
Pg.

Tabla 1. Listado de Interesados Sistema de Inventarios Cyza .............................. 58


Tabla 2. Historia de Usuario HU1 .......................................................................... 59
Tabla 3. Historia de Usuario HU2 .......................................................................... 59
Tabla 4. Historia de Usuario HU3 .......................................................................... 60
Tabla 5. Historia de Usuario HU4 .......................................................................... 60
Tabla 6. Historia de Usuario HU5 .......................................................................... 60
Tabla 7. Historia de Usuario HU6 .......................................................................... 61
Tabla 8. Historia de Usuario HU7 .......................................................................... 61
Tabla 9. Historia de Usuario HU8 .......................................................................... 61
Tabla 10. Historia de Usuario HU9 ........................................................................ 62
Tabla 11. Historia de Usuario HU10 ...................................................................... 62
Tabla 12. Historia de Usuario HU11 ...................................................................... 62
Tabla 13. Historia de Usuario HU12 ...................................................................... 63
Tabla 14. Historia de Usuario HU13 ...................................................................... 63
Tabla 15. Historia de Usuario HU14 ...................................................................... 63
Tabla 16. Historia de Usuario HU15 ...................................................................... 64
Tabla 17. Historia de Usuario HU16 ...................................................................... 64
Tabla 18. Requerimiento Funcional REQ-FNC-01 ................................................. 65
Tabla 19. Requerimiento Funcional REQ-FNC-02 ................................................. 65
Tabla 20. Requerimiento Funcional REQ-FNC-03 ................................................. 66
Tabla 21. Requerimiento Funcional REQ-FNC-04 ................................................. 66
Tabla 22. Requerimiento Funcional REQ-FNC-05 ................................................. 67
Tabla 23. Requerimiento Funcional REQ-FNC-06 ................................................. 67
Tabla 24. Requerimiento Funcional REQ-FNC-07 ................................................. 68
Tabla 25. Requerimiento Funcional REQ-FNC-08 ................................................. 68
Tabla 26. Requerimiento Funcional REQ-FNC-09 ................................................. 69
Tabla 27. Requerimiento Funcional REQ-FNC-10 ................................................. 69
Tabla 28. Requerimiento Funcional REQ-FNC-11 ................................................. 70
Tabla 29. Requerimiento No Funcional REQ-NFN-01 ........................................... 71
Tabla 30. Requerimiento No Funcional REQ-NFN-02 ........................................... 71
Tabla 31. Requerimiento No Funcional REQ-NFN-03 ........................................... 71
Tabla 32. Requerimiento No Funcional REQ-NFN-04 ........................................... 71
Tabla 33. Tabla de Mdulos del Sistema de Inventario Cyza ................................ 79
Tabla 34. Tabla de Desglose de Trabajo Sistema de Inventario Cyza .................. 81
Tabla 35. Formato de Pruebas 1. Proyecto Base .................................................. 99
Tabla 36. Formato de Pruebas 2. Proyecto Base ................................................ 100

8
Tabla 37. Formato de Pruebas 3. Proyecto Base ................................................ 101
Tabla 38. Formato de Pruebas 4. Proyecto Base ................................................ 101
Tabla 39. Formato de Pruebas 5. Proyecto Base ................................................ 102
Tabla 40. Formato de Pruebas 1. Modulo Administracin del Sistema................ 102
Tabla 41. Formato de Pruebas 2. Modulo Administracin del Sistema................ 103
Tabla 42. Formato de Pruebas 1. Modulo Administracin de Usuarios ............... 104
Tabla 43. Formato de Pruebas 2. Modulo Administracin de Usuarios ............... 105
Tabla 44. Formato de Pruebas 1. Mdulo de Ingreso de Elementos ................... 106
Tabla 45.Formato de Pruebas 1. Mdulo de Consultas ....................................... 107
Tabla 46. Formato de Pruebas 1. Mdulo de Reportes ....................................... 108
Tabla 47. Formato de Pruebas 1. Mdulo de Histrico ........................................ 109
Tabla 48. Formato de Pruebas 1. Instalador Cliente............................................ 109
Tabla 49. Historial de Cambios ............................................................................ 110
Tabla 50. Prueba 1 para REQ-FNC-5 .................................................................. 111
Tabla 51. Prueba 2 para REQ-FNC-05 ................................................................ 112
Tabla 52. Prueba 3 para REQ-FNC-03 ................................................................ 113
Tabla 53. Prueba 4 para REQ-FNC-03 ................................................................ 113
Tabla 54. Prueba 5 para REQ-FNC-05 ................................................................ 114
Tabla 55. Formulario de Pruebas de Aceptacin ................................................. 111
Tabla 56. Lista de entregables del proyecto ........................................................ 115
Tabla 57. Tabla Comparativa de otras propuestas .............................................. 119

9
INTRODUCCIN

Toda organizacin requiere administrar sus recursos tecnolgicos y conocer


plenamente la existencia de equipos e infraestructura informtica a su disposicin.
Estos tipos de controles se pueden supervisar con herramientas que faciliten el
acceso a dicha informacin y adems permitan realizar tareas de mantencin y
rastreo constante.

El proyecto planteado implementa un aplicativo programado a medida de las


necesidades de la empresa para el control y gestin automtica de inventarios de
hardware y software de toda la plataforma informtica. Esta solucin consiste en
la elaboracin de un software que administra y presenta informacin referente a
las caractersticas fsicas y descriptivas de los equipos.

Se realiza un estudio de la tecnologa, informacin requerida, recursos y alcances


para verificar la viabilidad del proyecto y las ventajas obtenidas al desarrollar un
software propio y a la medida para Cyza Outsourcing S.A.

El software es implementado siguiendo las principales fases para la ejecucin de


proyectos que son planeacin, desarrollo, control, seguimiento y cierre.

El proceso de planeacin descubre la funcionalidad de la futura solucin y


establece el procedimiento de desarrollo del software, programacin de tiempo y la
gestin de recursos a disposicin. Todo esto es resultado de actividades de
levantamiento de datos, entrevistas, estudio de requerimientos funcionales, casos
de usos, historias de usuarios y diagramacin de roles.

El proceso de desarrollo aplica lo planteado en la planeacin y se ejecuta la


codificacin del software mediante la metodologa de programacin extrema y
prototipado, explotando los beneficios de esta prctica de desarrollo gil.

10
El proceso de seguimiento y control de cambios se realiza en ciclos cortos, donde
el resultado de una codificacin es inmediatamente sometida a prueba con
resultados que pueden ser satisfactorios o que deben entrar a recodificar para
somerterlo a un ciclo de cambio. Este proceso es elemental en la programacin
extrema donde la codificacin, pruebas y correccin se hacen en paralelo en el
proceso de implementacin.

El cdigo satisfactorio ser incluido en el prototipo base el cual va reuniendo todos


los requerimientos funcionales del software hasta llegar a convertirse en el
producto final con toda la plataforma completa y totalmente funcional, esta es la
fase de cierre.

Este proyecto muestra en detalle cada una de las fases indicadas con los soportes
de los procesos documentados, desglose de las tareas realizadas, el
procedimiento ingenieril y producto final con manuales de uso, manuales tcnicos
y actas de entregas satisfactorias.

11
1. PLANTEAMIENTO DEL PROBLEMA

Cyza Outsourcing S.A. es una empresa que ofrece servicios de seguridad


documental y cuenta con el apoyo de personal especializado que complementa los
procesos referentes a este sector. Es as como pertenecen al equipo de trabajo
personas con perfiles de investigador, graflogos, dactiloscopistas, abogados y
tcnicos que hacen parte del proceso que garantiza transacciones seguras
referentes a la identidad de un cliente.

Por ello cada funcionario es dotado de elementos asignados por Cyza para
adelantar sus procesos particulares y acceder a las herramientas necesarias para
cumplir con sus tareas especficas. Es importante para la compaa conocer en
todo momento la disponibilidad de sus activos y recursos, entre los que se
encuentran equipos de cmputo, equipos de ofimtica como impresoras,
escneres o copiadoras, escritorios, sillas y para algunos cargos especializados
dispositivos biomtricos. Asimismo saber a qu personas ha sido asignado cada
elemento entregado.

Actualmente Cyza Outsourcing S.A lleva un proceso netamente manual sobre la


Gestin de Inventarios nicamente apoyado por un archivo realizado en hoja de
clculo donde se listan en una tabla las caractersticas del equipo que procede a
hacer parte de los activos de la compaa. En dicha tabla se detallan datos propios
de cada elemento como su marca, su referencia, un nmero serial, su ubicacin,
sede y responsable del activo. Una vez que se requiere conocer la cantidad de
elementos de un determinado tipo, como una cmara, o una impresora, se utiliza
la herramienta de filtro de la hoja de clculo y se realiza el conteo correspondiente.
En todo momento se cuenta nicamente con el apoyo que puedan realizar las
herramientas asociadas a la hoja de clculo sin dejar de ser un procedimiento
manual. Adicional a ello se est implementando un sistema de etiquetado que es
colocado en cada uno de los elementos que harn parte del Inventario de la
Empresa. Actualmente se realiza la recoleccin de los datos caractersticos que
posteriormente sern incluidos en el archivo manual de Inventario. Cada etiqueta
contiene un nmero nico y un correspondiente cdigo de barras que actualmente
no est siendo explotado.

12
Por la naturaleza del sistema que se lleva actualmente para alimentar el
documento de Inventario, el proceso de actualizacin es realmente engorroso. En
muchos casos los equipos se trasladan de una sede a otra y no es posible
hacerles un seguimiento concreto porque tales movimientos no han sido
registrados ni actualizados en el soporte documental.

Nuevamente, y por las caractersticas tan bsicas en las que se adelanta este
proceso de levantamiento de inventario, se presume que la informacin no est
segura, inclusive con un alto grado de inconsistencia en los datos ya que se ha
presentado el caso en el que se manipula ms de un archivo, utilizando
documentos copia que generan dispersin de la informacin. De esta forma no se
puede determinar cul es el archivo original ni cul es el actualizado. Todos los
esfuerzos para llevar un Inventario actualizado podran irse abajo con el simple
hecho de que se perdiera el archivo de hoja de clculo con el que se trabaja en la
actualidad.

Otro proceso directamente afectado es el asociado con el seguimiento de la


asignacin de equipos. En la empresa es habitual que se haga la contratacin de
personal por periodos cortos firmando contratos a trmino fijo con duraciones
hasta de 3 meses. Por ello es indispensable un sistema que entregue informacin
precisa de los elementos que le han sido asignados a un funcionario en particular
para poder generar documentos de paz y salvo al final de cada periodo de
contratacin. Esto en la actualidad no se est llevando debido al nivel de
complejidad que representa entregar a tiempo un listado de los equipos asignados
a la persona que est prxima a entregar su cargo.

Formulacin del Problema:

Cmo desarrollar una herramienta de software que permita almacenar y


gestionar la informacin referente a los equipos fsicos con los que cuenta Cyza
Outsourcing S.A. y los recursos de software incluyendo las caractersticas de cada
mquina y la vigencia de sus licencias, utilizando dispositivos tales como lectores
de cdigo de barras para explotar el uso de las etiquetas utilizadas por la empresa
para distinguir cada elemento?

13
2. OBJETIVOS

General:
Desarrollar un aplicativo Web a la medida para realizar tareas de Gestin
de Inventarios y licenciamiento de claves de software en equipos fsicos y
componentes de software apoyado en un dispositivo lector de cdigo de
barras para Cyza Outsourcing S.A.

Especficos:
Ejecutar el levantamiento de la informacin correspondiente a recursos
fsicos como equipos de cmputo, biomtricos, de monitoreo y de control de
acceso capturando sus caractersticas diferenciadoras como su marca y
referencia para alimentar la informacin del repositorio de datos que
almacene sta informacin.
Desarrollar una rutina de autenticacin contra Directorio Activo para los
usuarios que pretendan ingresar al Sistema de Control de Inventarios
implementando la estructura de usuarios y unidades organizacionales que
propone el modelo de Active Directory para determinar accesos y funciones
de autorizacin de ingreso al software.
Desarrollar un componente que permita monitorear el estado de hardware
de los computadores que pertenezcan a Cyza para hacer seguimiento de
cambios en su configuracin y que permitan ser reportados al servidor
central de forma automtica.
Crear roles especficos para los usuarios que van a utilizar la aplicacin
mediante mdulos que encapsulen funciones especficas de tal manera que
las tareas de un operario difieran de las sugeridas para un administrador.
Registrar el artculo inventariado junto con su informacin asociada
mediante la captura y lectura del cdigo de barras utilizando una pistola
lectora.
Implementar la programacin extrema como base de la metodologa a
utilizar en el proceso de desarrollo del Sistema de Control de Inventarios e
incluir el prototipado como un componente complementario a la fase de
taller de diseo propio de una metodologa gil como lo es XP.
Publicar el Sistema de Control de Inventarios en un servidor de aplicaciones
de manera funcional para operar en Cyza Outsourcing S.A.

14
3. JUSTIFICACIN

Toda compaa se apoya en herramientas que le permitan facilitar la ejecucin de


sus procesos internos en todos los niveles, ya sean operativos, de calidad,
administrativos e inclusive de investigacin y desarrollo. Particularmente habiendo
estudiado las necesidades de una empresa emergente como lo es Cyza
Outsourcing S.A. existen muchos procesos que requieren ser potenciados con
ayuda de software adicional. Bajo un contexto ingenieril y queriendo brindar
soluciones que apoyen estos procedimientos, se ha optado por abordar el caso
puntual de la gestin de inventarios para recursos fsicos y de software con los
que la compaa cuenta y que son esenciales para garantizar el cumplimiento de
sus tareas operativas.

De la mano de herramientas que pretenden incrementar la consistencia y el buen


funcionamiento de un proceso como lo es un Sistema de Gestin de Calidad
(SGC) y cuya implementacin es complementaria a la etapa de desarrollo de
software, se presenta una oportunidad para integrar dichos estndares a esta
propuesta de implementacin de Gestin de Inventario para no solo aplicar el
desarrollo de un software que cubra una necesidad sino que adems permita
ejecutar el proceso de desarrollo anclado a metodologas de buenas prcticas en
todos los procesos de construccin del software, regidos por polticas de calidad.

Un Sistema de Gestin de Inventarios nunca ha sido abordado formalmente por


Cyza Outsourcing S.A. de tal manera que no ha existido en la compaa un
software que realice esta operacin y durante sus 5 aos de funcionamiento no se
ha creado ni implementado una herramienta que supla esta necesidad, sin
embargo el control de inventarios se ha convertido en una operacin que requiere
ser apoyada por una solucin de software de manera urgente debido a que
progresivamente aumenta el nmero de activos de la empresa a medida que
incrementa la contratacin de personal y se consolidan ms licitaciones de
proyectos que implica conocer de manera efectiva los recursos fsicos y de
software que la compaa tiene a su disposicin tanto para asignarlos al personal
como para destinarlos a la puesta en marcha de los nuevos proyectos. La solucin
debe ser un software a la medida por dos razones principales: primero para
atender los requisitos especficos que la empresa exige y que no pueden ser
suplidos por las propuestas existentes en el mercado comercial ya que el software

15
propuesto pretende cumplir con las condiciones de un administrador de inventarios
pero a la vez debe ser capaz de funcionar como un administrador de terminales de
computacin de forma remota y segundo para permitir la integracin de forma
flexible con otros componentes de software desarrollados en Cyza Outsourcing
S.A para potenciar sus funcionalidades y centralizar la informacin de varias reas
en una estructura distribuida de pequeos aplicativos.

La importancia de realizar esta implementacin radica en la oportunidad de


sistematizar una operacin que facilite la gestin de inventario sobre los recursos
tanto fsicos como recursos de software de Cyza Outsourcing S.A. llevando
procesos previos a la implementacin de cdigo como lo son, el anlisis de los
actores implicados en las necesidades que se pretenden cubrir, el levantamiento
de requerimientos funcionales y no funcionales as como los procesos propios de
la implementacin a nivel de programacin que implican el uso de metodologas
de desarrollo, todo esto bajo el marco de estndares destinados a mejorar el
resultado final y el cual la empresa ha comenzado a apropiar para todas sus
reas.

Naturalmente para el departamento de Desarrollo estas condiciones estn


orientadas a garantizar que las tcnicas empleadas permitan un proceso de
desarrollo gil, ptimo, de buenas prestaciones y limpio en su elaboracin y
ejecucin.

La solucin planteada permitir agilizar los procesos de recoleccin de datos


sobre los elementos que formen parte del inventario de la empresa, ser un
software a disposicin de la compaa para llevar seguimiento de todos sus
activos y cuyo nmero crece rpidamente considerando que la compaa se
encuentra en plena expansin haciendo de esta futura herramienta un elemento
de primordial complemento a solicitudes puntuales sobre el estado de cada activo.

Al ser un software hecho a la medida tendr la ventaja de proporcionar toda la


informacin necesaria para garantizar la disposicin de recursos fsicos y de
software a los tcnicos, graflogos, abogados, personal de monitoreo, personal
tecnolgico y administrativo, para todas las sedes con infraestructura tecnolgica

16
con las que cuenta Cyza Outsourcing S.A. Al ser contemplado como un aplicativo
bajo una arquitectura Web se garantiza una mayor disponibilidad de la
herramienta para la consulta, ingreso o asignacin de un nuevo elemento que est
a punto de formar parte del inventario debido a que la aplicacin a desarrollar
estar hospedada en un servidor dedicado centralizado.

17
4. MARCO REFERENCIAL

4.1 MARCO TERICO

4.1.1 Sistema de Inventario. Un concepto general define el sistema de inventario


como una relacin ordenada de bienes y existencias de una entidad o empresa
con la finalidad de conocer el estado y la cantidad de elementos disponibles.
Segn Muller: Un inventario puede ser algo tan elemental como una botella de
limpiador de vidrios empleada como parte del programa de mantenimiento de un
edificio, o algo ms complejo, como una combinacin de materias primas y
ensamblajes que forma parte de un proceso de manufactura (Muller, 2004)[1].
Dependiendo del contexto y la actividad comercial de cada organizacin se puede
establecer una definicin ms precisa sobre el Inventario. En muchas ocasiones
tal definicin va orientada a empresas que tienen una mayor actividad comercial y
que su ncleo de negocio es el de comprar materia prima para generar productos
terminados. Para estos casos se presenta una mayor importancia en determinar
costes de adquisicin, valores adicionales de procesamiento de productos y la
estimacin del valor final de su producto destinado a la venta. Segn Taha se
considera a los inventarios como un mal necesario: si son muy pocos, causan
costosas interrupciones; si son demasiados equivalen a tener un capital ocioso
(Muller, 2004)[1].

En un contexto ms especfico los inventarios tienen varios elementos


categorizados dependiendo fundamentalmente de su naturaleza en la
organizacin. De esta manera se clasifican en:

Materias primas
Productos terminados
Productos en proceso
Artculos de consumo
Artculos para servicio, reparacin y repuesto

En ocasiones para cada uno de estos elementos mencionados se suele llevar un


inventario teniendo de esta manera Inventario de Materias Primas o Inventario de
Productos Terminados etc.

18
4.1.2 Clasificacin de los Inventarios de acuerdo a la localizacin fsica.
Partiendo del hecho de que se debe conocer la ubicacin fsica de un artculo para
poder contarlo, saber quin lo tiene en custodia o en qu sede de la empresa se
encuentra se establece de manera terica las distintas clasificaciones que se le
puede otorgar a un inventario y las consideraciones que tiene el llevar una u otra
distribucin. Independientemente del espacio que las compaas dispongan para
el almacenamiento de sus productos, existen sistemas de localizacin que utilizan
mejor el espacio y me manera ms eficaz que otros (Muller, 2004)[3].

El propsito de un sistema de localizacin de materiales es la definicin de


procedimientos que permita seguir el movimiento de los productos dentro de las
instalaciones y para considerar qu sistema de localizacin funciona mejor se
debe tratar de maximizar y estimar lo siguiente:

Uso del espacio


Uso del equipo
Uso de la mano de obra
Accesibilidad a todos los artculos
Proteccin contra daos
Facilidad para localizar los artculos
Reduccin de costos administrativos

Intentar implementar un nico sistema puede ser difcil de realizar, en ocasiones


es preciso contemplar la posibilidad de implementar ms de una modalidad de
seguimiento para optimizar la administracin del inventario. La clasificacin es la
siguiente:

4.1.2.1 Sistemas de memoria. Caracterizados por ser exclusivamente


dependientes de la recordacin humana. Los fundamentos de este sistema de
localizacin son la simplicidad, la relativa ausencia de papeleo y digitacin de
datos, y la utilizacin mxima de todo el espacio disponible. Los sistemas de
memoria dependen directamente de las personas que lo manejan y las
condiciones bajo las cuales funcionan tales sistemas contemplan sitios de
almacenamiento de nmero y tamao limitado, con variedad de artculos a
almacenar limitados y un nmero limitado de operarios tambin. (Muller, 2004)[3].

19
4.1.2.2 Sistemas de localizacin fija. Cada artculo tiene su lugar. Si una unidad
de existencias se almacena en grandes cantidades, puede tener dos o ms sitios
de almacenamiento. Sin embargo, tomadas colectivamente, todas estas
posiciones son los nicos lugares donde el artculo puede permanecer en las
instalaciones, y ningn otro artculo puede quedar all. Los sistemas de
localizacin fija exigen grandes cantidades de espacio pensando en el momento
en que exista un grado mximo de elementos para almacenar. Tambin se debe
contar con la existencia de espacios disponibles pero que no se encuentran en
uso pero que sin embargo pueden ser plenamente usados en el momento en que
se requieran ya sea por la forma del producto, por las caractersticas singulares de
otros productos que al llegar sern asignados a sta particular ubicacin y que no
pueden ser ocupados. A esta situacin se le conoce como efecto panal. (Muller,
2004)[3].

4.1.2.3 Sistemas de localizacin aleatoria. Su principal caracterstica es que


nada tiene un lugar fijo, pero se sabe dnde est todo. Existe una maximizacin
del espacio por cuanto ningn artculo tiene una ubicacin fija y puede situarse
donde exista espacio. Los sistemas de memoria no dependen del sitio de
almacenamiento, ni de las caractersticas particulares de los elementos
inventariados, nicamente dependen de la mente del encargado de los
inventarios. Los sistemas aleatorios tienen la flexibilidad de los sistemas de
memoria, unida al control de los sistemas fijos. Como lo indica Muller (2004)[3]:

En esencia, un artculo puede situarse en cualquier lugar, siempre y


cuando su localizacin se anote con precisin en una base de datos de
computador o en un sistema manual de tarjetas. Cuando el artculo se
mueve, se elimina de la respectiva localizacin. Por consiguiente la
direccin de una unidad de existencias es la localizacin donde se
encuentra mientras permanezca all. (Muller p.65) [3]

4.1.3 Fundamentos de la Codificacin de Barras. El proceso en el que las


personas identifican un objeto tiende a provocar errores y gasto de tiempo en
manipular, registrar esa informacin en una base de datos y luego hacer las
modificaciones necesarias para seguir los cambios en la localizacin, el tamao de
los elementos o las cantidades. Muller afirma (2004)[3]:

20
Mientras menos se dependa de la intervencin humana para identifica
elementos, registrar informacin y hacer seguimiento de datos, ms
oportunos y exactos sern los registros. La codificacin de barras es una
valiosa herramienta para capturar datos importantes con rapidez y
precisin. La eficiencia en la captura de informacin y la precisin del
cdigo de barras suelen ser razones suficientes para justificar, en cuanto a
costo, la instalacin de la codificacin de barras dentro de una operacin de
levantamiento de datos (Muller, 2004)[3].

La codificacin de barras es un mtodo ptico para lograr la identificacin


automtica de cualquier elemento mediante un conjunto de lneas paralelas
verticales de distinto grosor y espaciado que en su conjunto contienen una
determinada informacin. Depende de una luz visible o invisible que se refleja en
un dibujo impreso. Las barras o reas oscuras en el interior del dibujo absorben la
luz, y los espacios o reas intermedias la reflejan. La absorcin y la reflexin
contrastante las capta un aparato que lee el dibujo reflejado y decodifica la
informacin.

La correspondencia o mapeo entre la informacin y el cdigo que la representa se


denomina simbologa1. Existen simbologas para diferentes aplicaciones, cada una
de ellas con diferentes caractersticas que pueden ser las siguientes.

Numricas o alfanumricas
De longitud fija o longitud variable
Discretas o continuas
Nmero de grosor de elementos
De auto verificacin

4.1.3.1 Elementos de los cdigos de barras. El lenguaje de un cdigo de barras


es un alfabeto fijo compuesto de diversos patrones de barras oscuras y espacios
de luz intermedios. Existen muchos tipos de cdigos de barras y no todos son
smbolos. Sus partes se describen en la siguiente figura.

1
Wikipedia. Simbologa: es la representacin perceptible de una idea, con rasgos asociados por
una convencin socialmente aceptada.

21
Figura 1. Partes del cdigo de barras2.

Zona de Silencio: (Quietzone). Corresponde a un rea en blanco prudencial


que le permite al lector de cdigo ubicar un punto inicial desde el cual pueda
realizar las mediciones. Se encuentra en los dos extremos debido a que la
lectura se puede realizar de izquierda a derecha o viceversa.
Carcter Inicio: Con la finalidad de que los cdigos se puedan leer en cualquier
direccin, los caracteres iniciales y finales indican al escner dnde comienza
el mensaje. Es habitual que el carcter que se encuentra a la izquierda o en la
parte superior del smbolo sea el inicial, y aquel que se encuentra a la derecha
o en la parte inferior corresponda al final.
Caracteres de datos: Estos constituyen el mensaje real dentro del cdigo y
pueden estar conformados por letras del alfabeto, nmeros, smbolos o una
combinacin de los tres.
CheckSum: Son caracteres adicionales adjuntos al cdigo de barras para
garantizar buenas lecturas. Estos son necesarios en algunos cdigos de barras
propensos a error como aquellos que traen un campo de caracteres de datos
muy denso. Cabe aclarar que no todos los cdigos de barras lo requieren, en
especial aquellos que tienen la propiedad de auto revisin.

22
4.1.3.2 Tipos de cdigos de barras

Figura 2. Code 1282

Esta simbologa es un cdigo de barras muy compacto para toda aplicacin alfa
numrica. El conjunto de caracteres ASCII completo (128 caracteres) puede ser
codificado en esta simbologa sin duplicar caracteres. Si el cdigo de barras tiene
4 o ms nmeros consecutivos los nmeros estn codificados en modo doble
densidad donde dos caracteres estn codificados en una sola posicin.

Figura 3. Code 392

El code 39 es el cdigo de barras de uso ms comn para aplicaciones regulares.


Es popular debido a que puede contener texto y nmeros (A-Z, 0-9 +,-) y puede
ser ledo por casi cualquier lector de cdigo de barras en su propia configuracin y
es uno de los primeros en ser implementados dentro de los ms modernos. Es un
cdigo de barras de ancho variable y puede tolerar cualquier nmero de
caracteres que el lector pueda barrer.

Figura 4. Intercalado 2 de 52

23
Es un cdigo de barras exclusivamente numrico cuya figura es ligeramente ms
larga que el cdigo de barras UPC-A cuando se codifica con 10 dgitos. Esta
simbologa tiene la flexibilidad para codificar cualquier nmero par de dgitos. Si el
nmero es impar se coloca un cero al principio. Este cdigo es un excelente
candidato para aplicaciones exclusivamente numricas y es la mejor simbologa
para lectores de montaje fijo.

Figura 5. Cdigo EAN2

Es un sistema de cdigos de barras adoptado por ms de 100 pases. El ms


usual es el EAN13 como el presentado en la Figura 5. El primer digito siempre se
sita afuera ms otros once dgitos. El tren de nmeros es completado con un
dgito de control que se calcula realizando la siguiente operacin para el cdigo
123456789722:

Se invierte el orden del nmero de entrada as: 227987654321


Se suman los nmeros en posicin impar: 2+7+8+6+4+2 = 29
Se multiplica por tres el resultado: 29*3 = 87
Suma de las posiciones pares: 2+9+7+5+3+1 = 27
Suma total 87+27 = 114
Decena inmediatamente superior: 120
Digito de control: 120-114 = 6

Figura 6. Cdigo UPC2

24
Es la simbologa ms usada en el comercio minorista de EEUU para codificacin
exclusiva de nmeros con una longitud de 12 dgitos. El primer nmero es llamado
numero de sistema que va del 1 al 7 indicando un tamao y peso determinado.
Los dgitos del segundo al sexto representan el nmero del fabricante que debe
ser nico y que es asignado por un organismo de control. Los dgitos del sptimo
al onceavo corresponden al cdigo que el fabricante asigna a cada producto
mientras que el doceavo dgito realiza la funcin de cdigo de control.

Figura 7. Cdigo QR2

El cdigo QR es un sistema para almacenar informacin en una matriz de puntos


vindose como un cdigo de barras bidimensional creado por la compaa Denso
Wave en 1994 y se caracteriza por tener tres cuadrados que permiten detectar la
posicin del cdigo al lector. En la actualidad este tipo de cdigo es muy difundido
para almacenar URLs para buscar productos por internet ya que muchos
dispositivos mviles ahora tienen la capacidad de leer este tipo de simbologa.

Figura 8. Datamatrix2

25
Es un sistema industrial de codificacin bidimensional que permite la generacin
de un gran volumen de informacin en un formato muy reducido, con una alta
fiabilidad de lectura gracias a sus sistemas de informacin redundante y
correccin de errores que permiten una lectura con hasta un 30% de dao.

Figura 9. Cdigo PostNet2

Este tipo de simbologa est reservado a la industria postal usando este tipo de
cdigo de barras en los sobres de mensajera. El uso de este cdigo acelera la
gestin de correos logrando ahorros de tiempo por clasificacin automtica.
PostNet es creado en 1980 implantndose en el Servicio Postal de los Estados
Unidos.

Figura 10. CdigoPDF4172

Es un cdigo multi filas, de longitud variable que tiene alta capacidad de


almacenamiento de datos. Se le considera un archivo porttil de datos (Portable
Data File o PDF) y tiene una capacidad de hasta 1800 caracteres numricos,
alfanumricos y especiales por lo que no requiere consultar un archivo externo.
Cuenta con mecanismos de deteccin de errores conformados por 9 niveles de
seguridad lo que le permite la lectura y decodificacin exitosa aun cuando el dao
del cdigo llegue hasta un 40%. Este tipo de simbologa tiene muchas
aplicaciones industriales pero es ampliamente usado como cdigo de
identificacin para la Cdula de Ciudadana.

26
4.1.4 Fundamentos del Escaneado. Para hacer uso de los cdigos de barras
existen dispositivos encargados de hacer la lectura de estas simbologas
s los
cuales son llamados escner de cdigo de barras que por medio de un lser l
realiza la lectura y emite la interpretacin del cdigo que representan la
consecucin de lneas y espacios de la imagen. Un escner se compone
bsicamente de un lser lser,, un decodificador que realiza la interpretacin de la
lectura del lser y la interfaz de comunicacin entre el dispositivo y un computador,
ya sea por intermedio de un cable, bluetooth o Wifi.

4.1.4.1 lectura. La lectura se produce en el instante en que un


.4.1 Procedimiento de lectura
dispositivo denominado escner proyecta una luz sobre un smbolo de cdigo de
barras y la obtencin de la informacin proveniente del cdigo de barras se realiza
al capturar la luz que es reflejada de las r
reas
eas oscuras y claras del smbolo de
barras. Internamente existe una conversin de una seal visual anloga a una
seal digital haciendo un proceso de decodificacin de la informacin
representada en el cdigo de barras. (Muller 2004) [3]

Figura 11. Escaneado del Cdigo.

El lser del escner comienza a leer el cdigo de barras en un espacio blanco que
es una zona fija antes de la primera barra y contina pasando hasta la ltima
lnea, para finalizar en el espacio blanco que sigue a sta. Debido a que el cdigo
no se puede leer si se pasa el escner fuera de la zona del smbolo, las alturas de
las barras se eligen de manera tal que la zona de lectura se mantenga dentro del
rea del cdigo de barras. Mientras ms larga sea la informacin a codificar, ms
barras necesario.2
largo ser el cdigo de barra

2
Wikipedia. Escner de Cdigo de Barras. Consultado en
http://es.wikipedia.org/wiki/Esc%C3%A1ner_de_c%C3%B3digo_de_barras

27
4.1.4.2 Tecnologas de lecturas. Actualmente se distinguen las siguientes
tecnologas de lectura de cdigo de barras:

Figura 12. Lpiz ptico

Se trata de un perifrico parecido a un lpiz normal que se utiliza sobre una


pantalla o una superficie plana. Est conectado a un cordn elctrico y requiere de
un software especial para su funcionamiento. El lpiz contiene sensores luminosos
y enva una seal al computador cada vez que registra una luz, por ejemplo
cuando los elementos negros que se encuentran debajo de la punta del lpiz son
detectados e interpretados como una seal elctrica. Su desventaja radica en que
debe ser deslizado a lo ancho del cdigo y el envo de una seal digital por cada
barra detectada se har a la misma frecuencia y velocidad con que se deslice el
lpiz por la superficie y depende de la calidad de la impresin del cdigo de
barras.

Figura 13. Escner CCD

Escner CCD (Changed Coupled Device)3

3
Lector de Cdigo de Barras CCD de largo alcance. Consultado en: http://www.identific-
ar.com.ar/argoxas8150.htm

28
Los escneres CCD tienen una cabeza lectora del mismo ancho que el cdigo de
barras aproximadamente de 2 a 4 pulgadas. El usuario coloca la cabeza del lector
en el cdigo de barras y una serie de Leds barre el cdigo de barras y lo lee.
Puede trabajar con casi todos los cdigos de barras de baja calidad y requiere una
superficie relativamente plana. Este escner debe estar a menos de 1 centmetro
de distancia para leer el cdigo. La superficie puede estar ligeramente curva en la
direccin de las barras.

Figura 14.Escner de Pistola

Escner de Pistola4

Este dispositivo realiza un barrido mediante una luz lser y genera una seal
similar a la del lpiz ptico pero a mayor frecuencia. Esta seal es conocida como
HHLC (Hand Held Laser Combatible), no requiere decodificador de teclado y
puede leer a distancia de 5 a 30 centmetros. Puede tener inconvenientes de
lectura cuando hay demasiada luz ambiental.

4
Focus MS 1960 Metrologic. Consultado en: http://www.comercialsacrida.com/escaner.html

29
Figura 15. Laser Omnidireccional

Escner Omnidireccional5

Este tipo de lectores funciona enviando un patrn de rayos laser que permite leer
un smbolo de cdigo de barras sin importar su orientacin. Tiene la ventaja de
ofrecer un ndice de FRR (False Rate Rejection) muy cercano al 100% gracias a
su precisin. Como su caracterstica principal es que se encuentran fijos en un
lugar los cdigos de barras son llevados hacia ellos. Son ampliamente usados en
las cajas registradoras de supermercado o ensamblados en las bandas
transportadoras donde leen las cajas o paquetes cuando estos se mueven en la
lnea. Tambin usados en las lneas areas para procesar equipaje.

Figura 16. Escner de Ranura

Escner de Ranura6

5
EscanerPosiflexLS-1000 consultado en: http://www.tpvcomponentes.com/scanner-posiflex-
ls1000/producto.html?p=15043

30
Los escneres de Ranura son implementados para control de tiempo y relojes
chequeadores de trabajo, seguridad y otros sistemas. Tienen una ranura por la
cual se pasan las tarjetas con cdigo de barra al igual de cmo lo hara un lector
de bandas magnticas que usan las tarjetas de crdito.

4.2 ESTADO DEL ARTE

Los sistemas de control de inventarios tienen un antecedente ntimamente


relacionado con el concepto de la administracin y surge como una necesidad
especfica de control. La teora de inventarios est orientada a construir la
metodologa adecuada para procurar una mejor organizacin de los elementos
que sern objeto de ordenamiento, ya sean materias primas, productos en
proceso, suministros que complementan la operacin de una empresa o sus
productos terminados.

En la actualidad se puede disponer de infinidad de soluciones de software


orientadas a los sistemas de inventarios que se diferencian unos de otros, ya sea
por el esquema de arquitectura que la solucin plantea o el conjunto de
funcionalidades que la herramienta propone. Luego de haber estudiado varias
opciones se puede enmarcar que existe una gama extensa de propuestas
enfocadas a brindar soluciones al tema de la organizacin de los productos dentro
de una empresa pero sobretodo orientado para las que tienen una razn social
comercial en su mayora. Este direccionamiento por supuesto que es totalmente
vlido ya que como parte de la optimizacin de recursos y el uso adecuado de los
productos de una empresa va enlazada su organizacin, conocimiento de lo que
se tiene y la concientizacin del diferencial costo/ beneficio que determina el nivel
de productividad que se est generando. Por eso fue comn encontrar el control
de inventario como un mdulo que complementa una agrupacin de servicios y
funciones que cubren integralmente las necesidades de un negocio o una
empresa a mayor escala junto con soluciones orientadas a compras, facturacin,
nmina y contabilidad en general. Las siguientes son algunas de las herramientas
vigentes y que se diferencian bsicamente en el esquema de software siendo
unas totalmente web mientras que otras manejan un entorno de instalacin local.
6
Escner de Ranura Marson MT-412. Consultado en: http://spanish.alibaba.com/product-
gs/marson-mt412-slot-card-scanner-for-tablet-pc-aidc-pos-terminal-rs232-ps2-usb-interface-
286693331.html

31
4.2.1 Software Mnica7. Es un paquete integral que presenta soluciones
orientadas a contabilidad que incluye mdulos de facturacin, cuentas por cobrar,
cuentas por pagar y trae un mdulo especfico para control de inventario. Incluye
adems muchas herramientas que facilitan los procedimientos contables como
conversin de moneda, generacin de facturas o clculo de comisin para
vendedores y clasificaciones especiales para rotular productos (fsicos, servicios,
ocasionales).

Caractersticas.
Diseado por Technotel, una empresa con una trayectoria de ms de 22
aos originaria de Miami (Florida).
Software completamente en espaol.
Aplicativo para funcionar localmente en un computador convencional.
Funciona sobre sistemas Windows.
La persistencia de datos esta soportada en Microsoft SQL Express 2008.
Sus funcionalidades estn orientadas a empresas cuyo ncleo de negocio
sea la comercializacin de productos.
Su costo redondea los $290.000 pesos colombianos.

Figura 17. Pantalla de Inventarios de Software Mnica

Fuente: http://www.technotel.com/monica-requerimientos.html#4

7
Software Mnica. Consultado en http://www.technotel.com/index.html

32
4.2.2 TPV Comercios8. Una completa herramienta para administracin de
negocios con mdulos especializados en gestionar productos desde un enfoque
comercial y administrativo, manejando por separado la gestin back-office
(administracin) y front-office (ventas).

Caractersticas:

Desarrollado por Atrisoft con trayectoria de 10 aos en el mercado.


Aplicaciones soportadas con certificaciones Microsoft y Partner de Microsoft
para Sistemas Embebidos.
Permite clasificar los productos por categoras o familias.
Puede definir diferentes polticas de precios de acuerdo a los clientes,
temporadas u horarios de trabajo.
Permite la consulta e impresin de etiquetas definiendo formatos
personalizados.
Contiene un sistema gestin de tickets orientado al empleado que toma el
pedido permitiendo la poltica de comisiones por venta.
Realiza gestin de cajas llevando de forma automtica los movimientos de
dinero y pudiendo realizar histricos de cierres de caja.
Permite realizar gestin de relacin con proveedores.
Permite usar mltiples puntos de venta teniendo terminales independientes
con una base de consulta centralizada para evitar duplicidad.
Su costo oscila los $93.000 pesos colombianos.

8
Software TPV Comercios. Consultado en http://www.atrisoft.com/Product/Details/300271857

33
Figura 18. Mdulo de Inventarios. Software TPV Comercios

Fuente: http://www.atrisoft.com/Product/Details/300271857

4.2.3 EcountERP9. Un sistema basado en la web presentado como una


herramienta personalizable para pymes cuyo acceso se realiza a travs de internet
gracias a que cuenta con una arquitectura basada en la nube (cloud computing)
que permite la facilidad de acceder mediante dispositivos mviles. Presenta todo

9
EcountERP Software. Consultado en http://www.ecounterp.com/es/index.jsp

34
un paquete modular para contabilidad, inventario, produccin, ventas compras y
comercio. Aunque la empresa que lo desarrolla es oriental, se preocupa por
adaptar sus preferencias a los estndares latinoamericanos y normatividades
vigentes.

Caractersticas:

Acceso mediante la nube.


Registro ilimitado de usuarios.
Certificacin en ISO 27001.
Ofrece un sistema integrado de soluciones (incluyendo inventario)
Actualizaciones gratuitas.
Acceso desde dispositivos mviles
Rastreo de cdigo de barras.
Administracin de ubicaciones
Reportes especializados.
Portal de atencin al cliente.
Suscripcin de US$55 mensuales.

35
Figura 19. Vista de Ecount Software

Fuente: http://www.ecounterp.com/es/product/inventory/product-inventory-
management.jsp

36
4.3 MARCO CONCEPTUAL

Lo que se describe a continuacin corresponde a la explicacin procedimental que


se pretende realizar en la etapa de desarrollo del software para Cyza Outsourcing
S.A incluyendo la concepcin lgica de los componentes que harn parte de la
solucin planteada. Dicha explicacin incluye herramientas de software,
componentes que enriquecen la interfaz grfica del software y conceptos que
Cyza Outsourcing aplica para sus proyectos y que como principales interesados
en la solucin de software desean que permanezcan presentes en esta propuesta
para garantizar identidad corporativa.

El Sistema de Gestin de Inventarios para Cyza Outsourcing est orientado a


desarrollarse bajo el modelo arquitectnico que propone Microsoft.Net. Un
Framework que expande su funcionalidad a las facilidades que prestan las
aplicaciones basadas en la Web y que se soportan en estndares abiertos como
XML (Extensible Markup Language) estableciendo una intercomunicacin entre
sistemas indiferentemente de la plataforma en que fueron desarrollados,
enriqueciendo su funcionalidad y permitiendo una mayor facilidad de acceso
mediante cualquier dispositivo con conectividad a internet. (Ceballos p.5)[4]

4.3.1 Arquitectura Multicapa10 Para obtener una mayor concepcin lgica de la


aplicacin web se pretende implementar una tcnica orientada a aplicaciones
empresariales que permite una fcil administracin y construccin. La
programacin Multicapa propone dividir los componentes de la aplicacin en
capas definidas con funciones especficas como lo son:

Capa de presentacin
Capa de negocio
Capa de acceso a datos

La facilidad que ofrece implementar ste esquema es permitir la manipulacin


independiente de cada capa pero sin olvidar que cada una de ellas debe
interactuar con su similar. Si se requiere incluir una nueva funcionalidad o un
nuevo componente que involucre a una capa especfica, se puede realizar tal
cambio sin que esto afecte las dems capas conservando su independencia.

10
Vergara Zapata, David Esteban. Introduccin a la programacin Multicapas. En
http://www.elguille.info/colabora/puntoNET/jevergara_Multitier.htm

37
La manera en que cada capa se comunica con la otra ser a travs de APIs
(Interfaz de Programacin de Aplicaciones) que son generadas por la herramienta
RAD integrada en el entorno de trabajo de Visual Studio. Cada API encierra en
una librera el conjunto de funciones y procedimientos propios de su capa para ser
utilizados como una abstraccin de ella. Inclusive los componentes de terceros se
manifiestan en el aplicativo mediante funcionalidades encerradas en APIs que el
proveedor entrega para adaptar a las aplicaciones.

Figura 20. Esquema de Componentes de la aplicacin

Fuente: Diseo personal11

4.3.1.1 Capa de presentacin. Dentro de sta capa se encuentran todos los


componentes de interfaz grfica de cara al usuario y que sern la herramienta de
interaccin con el aplicativo. Es de vital importancia que se realice en vista de
diseo una presentacin clara de la informacin. Particularmente cada frontal debe

11
Diagrama de autora propia sobre la interaccin de los componentes que harn parte del
desarrollo del software. Realizado en Paint.NET

38
cumplir con un esquema acorde con la empresa generando identidad del aplicativo
dentro de la compaa.

La aplicacin contar con una pgina maestra que ser la que contenga el
esquema de diseo principal de la aplicacin. Este formulario web tiene la
particularidad de que se carga una sola vez al ejecutar la aplicacin lo que permite
instanciar all nicamente componentes o variables de aplicacin que sern
llamados una nica vez durante todo el ciclo de vida del aplicativo.

Figura 21.Esquema lgico de la capa de presentacin

Fuente: Diseo personal12

Adicionalmente existirn los formularios web llamados ContentPage que sern


encapsulados por la pgina maestra. Estas pginas de contenido sern las que
tengan toda la distribucin de controles aspx y ajax, las vistas de formatos, tablas,
listas desplegables, y la manipulacin general de los datos a travs de estos
controles que logren la interaccin con el usuario. (Johnson p.584)[5]
12
Diseo de autora propia que describe organizacin lgica de los componentes de presentacin
en el software. Realizado en Paint.NET

39
Cada formulario web cuenta con un componente que administra la vista de diseo
con su correspondiente generacin de cdigo html que hace posible la
renderizacin de todos los controles para hacerlos visibles en un browser.
Adicional a esto se enlaza un archivo con extensin .cs (C#) o .vb (VisualBasic)
que se denomina CodeBehind y que tiene como funcin encapsular all todo el
componente lgico detrs de su diseo como funciones y control de eventos sobre
los componentes visuales. (Johnson p.20)[5]

4.3.1.2 Capa de negocio. En sta capa residen los criterios de validacin que
estn sujetos a las reglas de negocio definidas en un principio para los datos que
son transportados desde y hacia la capa de presentacin, as como los datos que
estn prximos a ser almacenados en el motor de base de datos mediante la
comunicacin con la capa de datos.

La capa de negocio es conformada por varias bibliotecas de clases que


internamente estn compuestas de clases separadas y definidas de tal manera
que cada una de ellas represente una entidad de negocio. Muchas de estas
entidades de negocio tienen la funcin de representar objetos provenientes de la
base de datos. El ejemplo ms tpico es la representacin de una tabla de base
de datos como un objeto entidad de negocio que contendr toda la informacin
de la tabla. Como cada biblioteca requiere tener representacin en una biblioteca
de clases distinta, sta se har presente en forma de API conteniendo
internamente acceso a las funciones y propiedades que se hayan definido como
pblicas dentro de ella.

40
Figura 22. Esquema lgico de la capa de negocio

Diseo personal13

Aunque los controles contenidos en los formularios web de la capa de


presentacin incluyen componentes que ayudan a validar los datos mediante
comprobaciones como su longitud o su tipo, la gran mayora de funciones de
validacin sobre los datos provenientes de los frontales web deben recaer en la
capa de negocio. Es importante que se valide desde aqu la compatibilidad o
nulidad de un dato especfico si la capa de negocio comprueba que este tipo de
dato ser aceptado por la base de datos. En resumen la capa de negocio debe
garantizar que todo dato proveniente de la capa de presentacin cumple
integralmente con la definicin de datos que son esperados en los campos de
cada tabla de la base de datos.

Adicional a lo descrito anteriormente esta capa permite agrupar lgicamente


bibliotecas complementarias que eventualmente tendran la funcin de presentar
mtodos utilitarios que podrn ser usados transversalmente en el aplicativo
pudindose pensar en un API que se encargue del cifrado de datos, o
transformaciones especficas que no pudiera contener las bibliotecas que por
defecto ofrece Visual Studio. De esta manera podran ser llamados desde
cualquiera de las capas que conforman la aplicacin.

13
Esquema de autora propia que ilustra la comunicacin entre distintas bibliotecas de clases que
pertenecen a la misma distribucin lgica de la capa de negocio. Diseo realizado en Paint.NET.

41
4.3.1.3 Capa de acceso a datos Desde esta capa se agrupan todos los mtodos
que sern de ayuda para establecer la comunicacin con el motor de base de
datos. La capa de acceso a datos administrar todo el proceso de acceso al
repositorio de almacenamiento de datos como la apertura de conexiones, las
cadenas de conexin a SQL, las consultas a la base de datos las cuales se
realizarn por intermedio de procedimientos almacenados, esto con el fin de evitar
presentar consultas transact-sql visibles desde aplicacin y evitando as ataques
por inyeccin de cdigo.

Como existen procesos recurrentes sobre operaciones comunes de consulta y


escritura en la base de datos, la capa de acceso a datos incluye un componente
de terceros llamado Enterprise Library14 que permite encapsular implcitamente
rutinas que se encargan de aperturas, cierres y liberacin de conexiones cada vez
que se requiere tener acceso a la base de datos. Adicional a esto es importante
incluir un objeto de acceso denominado ADO.Net (Access Data Object) presente
en Visual Studio (para otros motores existen elementos como OracleClient para
Oracle) que ser el objeto representante que mediar entre la aplicacin y la
instancia de base de datos. (Johnson, 2007)[5].

Figura 23. Esquema lgico de la capa de acceso a datos

Fuente: Diseo personal15

14
MSDN-Microsoft. Enterprise Library. Disponible en: http://msdn.microsoft.com/en-
us/library/ff632023.aspx
15
Representacin de comunicacin entre el motor de base de datos con el software por intermedio
del componente ADO.NET

42
Visual Studio maneja elementos que permiten encapsular estructuras tradas
desde la base de datos. Estos objetos son denominados DataSets que son
componentes complejos de datos en los que internamente vienen subelementos
que representan las tablas y las relaciones de tablas. El elemento que almacena la
informacin de una tabla se denomina DataTable y los que contienen las
relaciones entre tablas son DataRelationship. As un DataSet tiene la facultad de
almacenar todo un conjunto de datos complejo permitiendo manipular dicha
informacin en la aplicacin. El uso ms comn es el de establecer un DataTable
como origen de datos para presentar informacin en un frontal por medio de una
Rejilla (Grid). Se puede complementar esta funcionalidad con el resto de
operaciones CRUD para una tabla (Create Read Update Delete)
manipulando los registros temporalmente sobre el DataTable y una vez que est
preparado, realizar la correspondiente escritura en el repositorio de base de datos
volcando los datos almacenados en el DataTable sobre la tabla destino.

43
4.3.2 Arquitectura Fsica La distribucin fsica requerida para poner en marcha el
aplicativo de gestin de inventarios sugiere la disposicin de los recursos
presentados en el siguiente esquema fsico y de red.

Figura 24. Diagrama fsico y de red de la aplicacin

Fuente: Diseo personal16

Al interior de Cyza Outsourcing existe una granja de servidores con roles


especficos. Los servidores dispuestos son:

Servidor Web (Dominio)


Servidor de Aplicaciones
Servidor de Directorio Activo
Servidor de Base de Datos

16
Diagrama de autora propia que dispone el esquema fsico de los equipos de hardware
proporcionados por Cyza Outsourcing S.A. Realizado en Microsoft Visio 2007.

44
Actualmente la empresa ya cuenta con esta estructura de red de servidores y
cumplen las funciones que posteriormente sern explicadas.

El servidor web tambin realiza funciones de servidor de dominio y es quien


resuelve la direccin www.cyza.com.co de la compaa. Este servidor est de cara
a internet tras un Firewall que restringe las peticiones no deseadas. Internamente
se comunica con el servidor de aplicaciones donde residir la aplicacin web.

El servidor de aplicaciones es un servidor virtualizado que ejecuta el Administrador


de Aplicaciones bajo IIS (Internet Information Services) que ser el contenedor del
pool de aplicaciones donde se encontrar el sistema de gestin de inventarios. El
acceso al aplicativo de gestin de inventarios tendr un componente de
autenticacin contra Directorio Activo consultando la existencia de los usuarios al
Servidor de Active Directory destinado para esta funcin. Esta funcionalidad es
muy importante de cara a futuras integraciones del aplicativo con otros proyectos
de la empresa ya que de esta manera se podr realizar una construccin integral
de aplicaciones centralizadas en un nico repositorio de usuarios.

La persistencia de los datos estar a cargo del servidor de bases de datos que se
encargar de controlar la instancia de SQL Server que almacenar el catlogo de
datos destinada a guardar los registros generados en la aplicacin. La ventaja de
mantener el repositorio independiente de la aplicacin implica que dicha
informacin podr ser administrada y salvaguardada mediante los procesos
habituales de aseguramiento de la informacin como el copiado, restauracin,
gestin de backups o tareas programadas que ayudarn a cuidar la integridad de
las bases de datos de todos los repositorios de la compaa incluyendo el nuevo.

4.3.3 Herramientas RAD Son recursos de software que tienen como propsito
adelantar desarrollos en tiempos muy cortos y que junto con metodologas que
comparten esta necesidad de inmediatez permiten cumplir con el objetivo
principal: reduccin de tiempos. RAD (Rapid Application Development) es un
enfoque orientado a objetos integrando mtodos de desarrollo y software, se
adapta muy bien al proceso de satisfacer ms de cerca los requerimientos
cambiantes de los negocios. Muy til adems cuando existe una competencia
cercana y es necesario ofrecer una solucin ms rpida que el resto de los rivales
donde prima la ley del que pegue primero. (Kendall, 1995)

4.3.4 Asp.NET Es una plataforma que incorpora una serie de caractersticas y


utilidades para disear aplicaciones Web como formularios Web o servicios Web.

45
Los formularios Web se utilizan para crear aplicaciones en las cuales la interfaz
primaria de usuario es un explorador. Entre ellas se incluyen las aplicaciones que
se ponen a disposicin del pblico a travs de la red. Una caracterstica
importante es que no hay costos de distribucin, puesto que los usuarios tienen ya
instalada la nica parte de la aplicacin que necesitan: el browser.

Las aplicaciones de formularios Web son por definicin independientes de la


plataforma; es decir, los usuarios pueden interactuar con la aplicacin
independientemente del tipo de explorador que tengan, e incluso, del tipo de
equipo que utilicen. (Ceballos, 1999)[4].

4.3.5 Visual Studio Visual Studio es un conjunto completo de herramientas de


desarrollo para construir aplicaciones Web, servicios Web, aplicaciones Windows
o de escritorio y aplicaciones para dispositivos mviles. El entorno de desarrollo
integrado que ofrece esta plataforma como todas sus herramientas y con la
biblioteca de clases .NET Framework, es compartido en su totalidad por Visual
Basic, Visual C++, y Visual C#, permitiendo as crear con facilidad soluciones en
las que intervengan varios lenguajes y en las que el diseo se realiza
separadamente respecto a la programacin.

4.3.6 Servidor de Aplicaciones. Es un software que proporciona aplicaciones a


los equipos o dispositivos cliente, por lo general a travs de internet y utilizando el
protocolo http. Los servidores de aplicaciones se distinguen de los servidores web
por el uso extensivo de contenido dinmico y por su frecuente integracin con
base de datos.

Un servidor de aplicaciones es un producto basado en un componente que se


encuentra en el plano intermedio de la arquitectura central de un servidor.
Proporciona servicios middleware es decir, trabaja con un intermediario para la
seguridad y el mantenimiento adems de proveer el servicio a datos.

4.3.7 Controles Propietarios Paquete realizado por otros proveedores de


software que distribuyen versiones personalizadas y mejoradas de los controles
ASP tradicionales existentes dentro de VisualStudio.NET.

4.3.7.1 Controles de Telerik para ASP Ajax Controles Web para pginas ASP
desarrollados por una empresa Blgara cuyo nombre es Telerik. La distribucin de
controles ASP es una versin mejorada de los controles tpicos que vienen dentro

46
de Visual Studio y permiten realizar las mismas tareas pero con controles
enriquecidos y visualmente mejor trabajados. Actualmente se ha distribuido la
versin 2015 Q1.

47
5. METODOLOGA

5.1 PROGRAMACIN EXTREMA

La Programacin Extrema (XP) forma parte del movimiento de desarrollo gil de


software que se basa en la adaptabilidad de cualquier cambio como medio para
aumentar las posibilidades de xito de un proyecto y que tiene como premisas los
siguientes aspectos (Beck, 1999)[8]:

Los individuos y sus interacciones son ms importantes que los procesos y


las herramientas.
El software que funciona es ms importante que la documentacin
exhaustiva.
La colaboracin con el cliente en lugar de la negociacin de contratos.
La buena disposicin ante el cambio en lugar de seguir un plan cerrado.

La Programacin Extrema es un enfoque que ha adoptado prcticas de desarrollo


de software ya existentes en otras metodologas de desarrollo y las ha llevado al
extremo. Un ejemplo de ello es la retroalimentacin que es importante para los
programadores, analistas, diseadores, usuarios y computadores. As que la
programacin extrema usa ciclos de retroalimentacin cada vez ms rpidos e
intensos, que proporcionan ms informacin. Este enfoque de programacin
intenta definir un plan global del sistema, desarrollar y liberar rpidamente el
software y posteriormente revisarlo de forma continua para incorporarle
caractersticas adicionales. (Kendall, 1999)[7].

La implementacin de cada uno de los principios y valores que esta metodologa


sugiere ser descrita a continuacin queriendo explicarse el cmo ser puesto en
prctica para obtener los mejores resultados durante todo el desarrollo del
proyecto en Cyza Outsourcing S.A.

5.1.1 Valores de la Programacin Extrema Debido a que frecuentemente existe


una tensin entre lo que los diseadores hacen a corto plazo y lo que es
comercialmente deseable a largo plazo es importante ser consciente de apoyar los
valores que formarn una base colaborativa en un proyecto de software. Tales
valores son:

48
Comunicacin: Los proyectos de los sistemas que requieren una
actualizacin constante y un diseo tcnico, son especialmente propensos
a errores por falta de comunicacin. Si se suman problemas tpicos como
fechas de entrega ajustadas, uso de jerga especializada y la muy comn
concepcin de que los programadores son poco comunicativos con las
personas, entonces hay serias posibilidades de fallar en ste mbito. Para
ello ya se aplica en el rea de desarrollo la prctica de reuniones cortas y
peridicas de alrededor de 15 minutos para resolver dudas e inquietudes
entre los miembros del equipo y el director de desarrollo y para enterarse
de los avances del proyecto.
Simpleza: Es un pensamiento que implica no abrumarse por la aparente
complejidad de la tarea. Consiste en comenzar por el elemento ms sencillo
y a partir de all construir el requerimiento con sus caractersticas
adicionales, pero para ello se debe tener claro el enfoque referente a las
metas del proyecto.
Retroalimentacin: Ocurre cuando existe un prototipo que es evaluado por
los clientes y principales interesados en ese desarrollo. Una
retroalimentacin crtica viene de los clientes que comparan la meta del
plan con el progreso que se ha tenido. De esta manera la retroalimentacin
ayuda a los programadores a hacer los ajustes necesarios para orientar el
software al resultado esperado.
Valenta: Este valor se rige por un nivel de confianza propio y a su vez
existente en el equipo de desarrollo. Es no tener miedo a empezar de
nuevo si es necesario, teniendo la perspicacia de reconocer ese momento
ayudndose del instinto. Para Kendall (1995)[7]La valenta es un valor de
alto riesgo y de alta recompensa que anima a la experimentacin que el
equipo puede tomar de una forma ms rpida e innovadora para lograr su
meta (Kendall, 1995)[7].

5.1.2 Principios bsicos de la Programacin Extrema Se trata de doce


principios agrupados en cuatro grandes categoras as (Kendall, 1995)[7]:

5.1.2.1 Retroalimentacin a escala fina.

El principio de pruebas: Se debe establecer un periodo de pruebas de


aceptacin del programa comnmente denominado periodo de caja negra
donde se definirn las entradas al sistema y los resultados esperados de

49
estas entradas. El rea de desarrollo cuenta con la participacin de una
ingeniera con el rol de Encargada de Pruebas (tester) y est en la
capacidad de realizar las pruebas unitarias que pretenden medir el
funcionamiento puntual de una parte de la aplicacin.
Proceso de planificacin: en esta fase el cliente tendr que escribir sus
necesidades, definiendo las actividades que realizar el sistema. Se crear
un documento llamado Historias del Usuario (UserStories) que
conformarn el Plan de Liberacin, el cual define los tiempos de entrega
de la aplicacin para recibir retroalimentacin por parte del usuario.
El cliente en el sitio: tendr la potestad de determinar los requerimientos,
definir las funcionalidades, sealar las prioridades y responder a las
preguntas de los programadores. Esta fuerte interaccin con el
programador disminuye el tiempo de comunicacin y la cantidad de
documentacin, junto con los altos costes que su creacin generan. Para
Cyza el principal cliente ser el representante del rea que har un fuerte
uso del sistema de control de inventarios que para este caso se trata del
rea de infraestructura quienes son los que actualmente llevan a cabo el
levantamiento de inventario sobre los equipos de la compaa.
Programacin en parejas: Este principio requiere que los programadores
que sigan esta metodologa escriban su cdigo en parejas, compartiendo
una sola mquina para promover el trabajo en equipo y el incremento de la
calidad en el cdigo.

Esta prctica ayuda a reducir el porcentaje de errores que se producen al


codificar ya que tal revisin es realizada por las dos personas que estn
trabajando sobre el mismo cdigo y promueve la difusin de la
funcionalidad completa del software a ms de un miembro del equipo
evitando dependencia a una sola persona y la privatizacin del cdigo.

Para cubrir este principio en Cyza Outsourcing teniendo en cuenta de que


se trata de una propuesta de pasanta individual, se propone someter la
codificacin a un procedimiento ya existente en la empresa y es el de
publicar a un servidor de control de versiones (SVN) el proyecto que se va a
realizar, permitiendo el acceso a este repositorio por otros miembros del
departamento. Puntualmente el jefe del rea de desarrollo tendr acceso
como lder del grupo y al realizar un rol de Coach (Entrenador del
proyecto) estar en la obligacin de conocer los aspectos relevantes del
aplicativo y su funcionamiento, esto con el fin de poder generar las
directrices apropiadas durante todo el ciclo de desarrollo. Otro rol que podr

50
actuar como colaborador en este aspecto ser el tester a quien podr
indicrsele el comportamiento de la funcionalidad que est a punto de
probar. Como el rea de desarrollo de Cyza es pequeo es comn que los
compaeros de codificacin conozcan funcionalidades, estndares de
codificacin en comn e inclusive se relaten experiencias de codificado que
otro miembro del grupo haya experimentado en sus proyectos para ser
retroalimentado al grupo.

5.1.2.2 Proceso continuo en lugar de por lotes

Integracin continua: permite al equipo hacer un rpido progreso


implementando las nuevas caractersticas del software. En lugar de crear
builds (versiones) estables de acuerdo a un cronograma establecido, los
equipos de programadores XP pueden reunir su cdigo y reconstruir el
sistema varias veces al da. El entorno de trabajo de VisualStudio.Net
facilita la realizacin de este ejercicio ya que su Framework incluye un
Servidor de Aplicaciones virtual que permite compilar y ejecutar el aplicativo
en tiempo real para lograr visualizar los avances obtenidos.
Refactorizacin: permite mejorar el diseo del sistema a travs de todo el
proceso de desarrollo. Los programadores evalan continuamente el diseo
y re codifican lo necesario. La finalidad es mantener un sistema enfocado a
proveer el valor de negocio mediante la minimizacin del cdigo duplicado e
ineficiente.
Entregas pequeas: sugiere colocar un sistema sencillo en produccin
rpidamente para actualizarse de forma rpida y constante permitiendo que
el verdadero valor de negocio del producto sea evaluado en un ambiente
real. Estas entregas no pueden pasar de las 2 o 3 semanas como mximo.
Para ello el rea de desarrollo dispone de un servidor virtualizado de
pruebas y con las caractersticas que pudiera compartir un ambiente real de
produccin en cuanto a configuracin y garanta de requerimientos para la
publicacin de la versin. Este servidor no cubrir aspectos puntuales de
accesibilidad como concurrencia o altos recursos ya que solo se pretende
evaluar la funcionalidad del desarrollo de software publicado.

51
5.1.2.3 Entendimiento Compartido

Diseo simple: se basa en la filosofa de que el mayor valor de los


negocios es entregado por el programa ms sencillo que cumpla los
requerimientos. Simple Design se enfoca en proporcionar un sistema que
cubra las necesidades inmediatas del cliente, ni ms ni menos.
Metfora: es desarrollada por los programadores al inicio del proyecto,
define una historia de cmo funciona el sistema completo. XP estimula
historias que son breves descripciones de un trabajo de un sistema.
Propiedad colectiva del cdigo: un cdigo con propiedad compartida.
Nadie es el propietario de nada, todos son el propietario de todo. Este
mtodo evita hacer lo que hacen los mtodos tradicionales en los que un
simple programador posee un conjunto de cdigo y solo l conoce su
funcionamiento.
Estndar de codificacin: define la propiedad del cdigo compartido as
como las reglas para escribir y documentar el cdigo y la comunicacin
entre diferentes piezas del mismo, desarrolladas por diferentes equipos.
Los programadores las han de seguir de tal manera que el cdigo en el
sistema se vea como si hubiera estado escrito por una sola persona.

5.1.2.4 Bienestar del programador

La semana de 40 horas: la programacin extrema sostiene que los


programadores cansados escriben cdigo de menor calidad. Minimizar las horas
extras y mantener los programadores frescos generar cdigo de mayor calidad.
Esta es una premisa que se cumple a cabalidad en Cyza Outsourcing. Si por
alguna razn no se complet una tarea para el mismo da entonces ser resuelto
al da siguiente y as evitar sobrecargar el estado anmico y fsico del
programador.

52
5.1.3 Roles dentro de la programacin extrema

5.1.3.1 El cliente Es el responsable de conducir el proyecto. Toma decisiones de


negocio y debe entender los cambios del mismo a lo largo del tiempo: identifica si
una historia tiene el mismo valor ahora que cuando se identific.

Derechos

Cambiar el alcance del proyecto para hacer frente a los cambios en la


planificacin.
Determinar qu funcionalidades sern las siguientes en implementarse.
Medir el progreso del proyecto en cualquier momento, lanzando las pruebas
de aceptacin.
Detener el proyecto en cualquier momento sin perder la inversin realizada,
manteniendo en produccin un producto estable y continuar planificando
otras funcionalidades ms importantes.

Responsabilidades

Confiar en las decisiones tcnicas de los desarrolladores.


Analizar los riesgos correctamente.
Seleccionar las historias que aportan ms valor para cada iteracin.
Definir las historias de usuario de forma precisa, permitiendo a los
desarrolladores realizar estimaciones precisas.
Participar en el equipo ofreciendo directrices y feedback tan pronto y
preciso como sea posible.

5.1.3.2 El Programador Una vez que se han comprendido las historias de


usuario, la metodologa XP adjudica a los programadores la responsabilidad de
tomar decisiones tcnicas. Los desarrolladores estiman el tiempo que les va a
tomar cada historia y transforman las historias de usuario en cdigo.

Derechos

Estimacin de su propio trabajo, teniendo autoridad para tomar decisiones


tcnicas.
Delimitar el trabajo responsabilizndose de aquellas tareas que van a ser
capaces de llevar a cabo.
Implementar la funcionalidad que cubre las necesidades del cliente.

53
No tomar decisiones de negocio.

Responsabilidades

Seguir las directrices del equipo.


Desarrollar las funcionalidades realmente necesarias.
Establecer una comunicacin fluida con el cliente.

5.1.3.3 El Tester Es el encargado de las pruebas y ayuda al cliente a definir y


escribir las pruebas de aceptacin de las historias de usuario. Este rol en un
equipo XP tambin es responsable de realizar test peridicamente e informar los
resultados al equipo.

5.1.3.4 El Coach Su papel es guiar y orientar al equipo y su objetivo es que el


equipo comprenda las directrices de XP. No se trata de que sean solo lecciones
tericas sino que debe conocer el aspecto prctico de la metodologa para ofrecer
ejemplos y proponer ideas que permitan mejorar.

5.1.3.5 El Tracker Hace el seguimiento de acuerdo a la planificacin. La mtrica


ms importante para XP es la velocidad del equipo que se define como el tiempo
ideal estimado para las tareas frente al tiempo real dedicado. sta mtrica ayuda a
determinar si el proyecto est dentro del tiempo de la iteracin. Este rol puede ser
tomado por el Coach.

5.1.3.6 Big Boss Es la persona que tiene la idea general del proyecto y est
familiarizado con su estado. El cliente puede asumir este papel.

5.2 PROTOTIPOS

Este tipo de programacin est concebido para conocer de primera mano el


inters y la reaccin de los usuarios y de los directivos hacia el prototipo, conocer
cmo reaccionan al interactuar con l y qu tan preparado est dicho prototipo
para satisfacer sus necesidades de acuerdo a las caractersticas del sistema que
se adopt para elaborarlo (Kendall, 1995)[9]. Para efectos de integrar esta prctica
como una metodologa complementaria a la programacin extrema solo se
explicar un tipo de prototipo que ser el ideal para integrarlo al modelo general de
trabajo con la programacin extrema y que operar bajo un carcter colaborativo e

54
inclusive puede definirse como un componente dependiente del enfoque general
de XP.

5.2.1 Prototipo corregido Tiene que ver con la construccin de un sistema que
funciona pero que se corrige simultneamente. Conocido tambin como
elaboracin de una tabla experimental. En los sistemas de informacin
corresponde a un modelo funcional que tiene todas las caractersticas necesarias
pero es ineficiente. Esto se presenta debido a que el programa se escribi
rpidamente con el objeto de ser funcional en lugar de ser eficiente.

5.2.2 El prototipo corregido dentro de la Programacin Extrema Para entender


la funcin de un prototipo dentro del esquema de la programacin extrema hay
que conocer la etapa de XP donde el prototipo entra a participar.

Figura 25. Taller de Diseo RAD (Rapid Application Management)

Fuente: Anlisis y Diseo de Sistemas. Kendall &Kennetp.162

El Taller de Diseo RAD se puede representar como un taller donde se disea y


se refina un prototipo existiendo una participacin intensa, no pasiva donde

55
interviene el cliente y el desarrollador. Durante el taller de diseo RAD, los
usuarios responden a los prototipos operativos reales y los analistas refinan los
mdulos diseados basados en las respuestas de los usuarios. El formato de taller
es muy estimulante y si estn presentes los usuarios y los analistas
experimentados no queda duda de que el esfuerzo creativo puede impulsar el
desarrollo.

Habiendo explicado esto, el prototipo es el resultado del anlisis de las historias de


usuario y su representacin funcional. Tambin puede ser pensado como el
producto que puede presentarse al usuario para ser sometido a su evaluacin y
aprobacin. Dentro de la etapa de trabajo con el usuario y la construccin del
sistema existen varias iteraciones que van reforzando la conformacin del
prototipo como un componente ms robusto y cercano a la solucin que el usuario
espera recibir. Para la ejecucin del sistema de gestin de inventarios aunque se
trate de un problema conocido, por el hecho de tratarse de un software hecho a la
medida obliga a presentar una propuesta que se asemeje a lo puntualmente
requerido por Cyza Outsourcing S.A. en condicin de agente solicitante. El
prototipo resultante debe ser sometido a criterio del usuario o cliente a manera de
preliminar. Cuando haya pasado por las iteraciones suficientes este prototipo no
se desecha sino que inmediatamente har parte de la solucin.

5.3 ESTRUCTURA DE DESGLOSE EDT

Metodologa que permite descomponer las actividades y tareas de forma


jerrquica un proceso de desarrollo o ejecucin de un proyecto. El propsito de la
EDT es organizar y subdividir el desarrollo en componentes ms pequeos y ms
fciles de manejar, permitiendo predecir diversos escenarios, optimizar decisiones,
medir recursos utilizados con exactitud y generar plan para la implementacin de
un proyecto. (PMBOK, 2014)[11]

56
Figura 26. Diagrama tpico de un esquema de desglose de trabajo

Fuente: http://www.pmoinformatica.com/2013/12/plantilla-estructura-desglose-
trabajo.html

57
6. DISEO METODOLGICO

La metodologa para el desarrollo del software utilizada es programacin extrema,


bajo un procedimiento de arquitectura multicapa y con sistema de seguimiento,
control y aprobacin por ciclos y prototipado.

El proyecto se desarrolla en 5 fases, fase Levantamiento de datos, fase de


planeacin, fase desarrollo, fase de pruebas y fase de cierre.

6.1 FASE DE LEVANTAMIENTO DE DATOS

Se identifican los actores principales para definir las necesidades y requerimientos


que desean que el software satisfaga, todas estas solicitudes son llevadas a papel
en un formato de historias de usuario.

De este proceso se genera documentacin de requerimientos, casos de uso y se


establece cronograma de actividades y desglose de trabajo (EDT)

6.1.1 Identificacin de Interesados Se enlistan las personas que estn en


potestad para determinar requerimientos, definir las funcionalidades, sealar las
prioridades y responder a las preguntas del programador.

Tabla 1. Listado de Interesados Sistema de Inventarios Cyza


Influencia en
Nombre Rol en
Organizacin Cargo Fase del
Apellidos Proyecto
Proceso
Jhon Roldan CYZA Director de Rol de Cliente ALTA
Tecnologa Coach
Traker Big
Boss
Jorge Araque CYZA Analista de Rol de MEDIA
Desarrollo Programador
William Ortiz CYZA Analista de Rol de Cliente BAJA
Infraestructura
Leandro Ovalle CYZA Director Rol de Cliente ALTA
Operativo
Jaime Rincn CYZA Gerente Rol de ALTA
Patrocinador
Johana Lesmes CYZA Analista de Rol de Tester MEDIA
Pruebas

58
6.1.2 Historias de Usuarios Se realiza entrevista a los interesados del proyecto y
se toma los datos de los requerimientos en el formato Historias de usuario.
(Anexo "Historias de Usuario"). La informacin anotada se muestra a
continuacin.

Tabla 2. Historia de Usuario HU1


HISTORIA DE USUARIO
ID: HU1 NOMBRE: Autenticacin de Usuarios.

PRIORIDAD EN NEGOCIO: alta


USUARIO: CARGO:
Jhon Jairo Roldan Director De Tecnologa
DESARROLLADOR ENCARGADO:
Jorge Araque (Analista De Desarrollo)
DESCRIPCION:
Los usuarios que ingresen a la aplicacin deben estar autenticados mediante
Directorio Activo garantizando que sean usuarios que pertenecen al esquema
organizacional de la empresa.
OBSERVACIONES:
La empresa ya cuenta con un esquema de Directorio Activo, el software debe
integrarse a dicho esquema. Sin embargo puede usar un mtodo de autenticacin
solo de software permitiendo validacin dual tanto de AD como del propio software.

Tabla 3. Historia de Usuario HU2


HISTORIA DE USUARIO
ID: HU2 NOMBRE: Propiedades de los
elementos a ingresar
PRIORIDAD EN NEGOCIO: alta
USUARIO: CARGO:
William Ortiz Analista de Infraestructura
DESARROLLADOR ENCARGADO:
Jorge Araque (Analista De Desarrollo)
DESCRIPCION:
Los elementos que se ingresen al Sistema de Inventarios deben tener en su descripcin unas
propiedades elementales las cuales son:
- Nmero de placa
- Serial
- Modelo
- Marca
- Responsable
- Estado
OBSERVACIONES:
A estas propiedades se le pueden agregar cuantas caractersticas sean requeridas
para complementar la descripcin de cada elemento.

59
Tabla 4. Historia de Usuario HU3
HISTORIA DE USUARIO
ID: HU3 NOMBRE: Mdulos en el software

PRIORIDAD EN NEGOCIO: alta


USUARIO: CARGO:
Jhon Jairo Roldan Director De Tecnologa
DESARROLLADOR ENCARGADO: Jorge Araque (Analista De Desarrollo)
DESCRIPCION:
La aplicacin debe estar dividida en mdulos. Cada modulo debe encargarse de
una sola funcionalidad y debe estar claramente diferenciado de otra.
OBSERVACIONES:

Tabla 5. Historia de Usuario HU4


HISTORIA DE USUARIO
ID: HU4 NOMBRE: Colores corporativos y logos

PRIORIDAD EN NEGOCIO: media


USUARIO: CARGO:
Leandro Ovalle Director de Operaciones
DESARROLLADOR ENCARGADO: Jorge Araque (Analista De Desarrollo)
DESCRIPCION:
La presentacin visual del software debe llevar los logos de la empresa y un
formato de colores acorde con la presentacin corporativa.
OBSERVACIONES:

Tabla 6. Historia de Usuario HU5


HISTORIA DE USUARIO
ID: HU5 NOMBRE: Creacin de roles
personalizados.
PRIORIDAD EN NEGOCIO: alta
USUARIO: CARGO:
Jhon Jairo Roldan Director de Tecnologa
DESARROLLADOR ENCARGADO: Jorge Araque (Analista De Desarrollo)
DESCRIPCION:
El Sistema de Inventarios debe tener la capacidad de asignar roles a un usuario.
Estos roles se deben personalizar de tal manera que pueda efectuar tareas
puntuales y a la vez diferentes a otro rol. Para ello cada rol puede involucrar el
acceso de algunos de los mdulos presentes en la aplicacin y denegar el acceso
a otro mdulo segn sea requerido en el momento.
OBSERVACIONES:

60
Tabla 7. Historia de Usuario HU6
HISTORIA DE USUARIO
ID: HU6 NOMBRE: Acceso al Sistema de
Inventarios.
PRIORIDAD EN NEGOCIO: alta
USUARIO: CARGO:
Jhon Jairo Roldan Director de Tecnologa
DESARROLLADOR ENCARGADO: Jorge Araque (Analista De Desarrollo)
DESCRIPCION:
La aplicacin debe poder ser accedida tanto en la red interna de la empresa como
a travs de internet por intermedio del servidor de aplicaciones de Cyza.
OBSERVACIONES:

Tabla 8. Historia de Usuario HU7


HISTORIA DE USUARIO
ID: HU7 NOMBRE: Pistola Lectora de Barras

PRIORIDAD EN NEGOCIO:
USUARIO: CARGO:
Jhon Jairo Roldan Director de Tecnologa.
DESARROLLADOR ENCARGADO: Jorge Araque (Analista De Desarrollo)
DESCRIPCION:
Es primordial el uso de pistolas lectoras de cdigo de barras en el proceso de
enrolamiento de elementos en el Sistema de Inventarios para facilitar la captura de
los datos. Deben poder usarse tanto en el formulario de ingreso y cuando se
realice una bsqueda.
OBSERVACIONES:

Tabla 9. Historia de Usuario HU8


HISTORIA DE USUARIO
ID: HU8 NOMBRE: Uso de herramientas ADO
para comunicacin con Bases de Datos
PRIORIDAD EN NEGOCIO: media
USUARIO: CARGO:
Jhon Jairo Roldan Director de Tecnologa.
DESARROLLADOR ENCARGADO: Jorge Araque (Analista De Desarrollo)
DESCRIPCION:
La aplicacin debe conectarse con un Motor de Bases de Datos SQL y usar
componentes que agilicen y gestiones las conexiones como Enterprise Library.
OBSERVACIONES:

61
Tabla 10. Historia de Usuario HU9
HISTORIA DE USUARIO
ID: HU9 NOMBRE: criterios de bsqueda

PRIORIDAD EN NEGOCIO: media


USUARIO: CARGO:
Jhon Jairo Roldan Director de Tecnologa.
DESARROLLADOR ENCARGADO: Jorge Araque (Analista De Desarrollo)
DESCRIPCION:
Para el mdulo de consultas es necesario utilizar un componente que permita
personalizar las bsquedas y obtenga los datos segn el criterio del usuario. No se
debe limitar a buscar por un solo criterio.
OBSERVACIONES:

Tabla 11. Historia de Usuario HU10


HISTORIA DE USUARIO
ID: HU10 NOMBRE: Consultores y
Administradores de Inventarios
PRIORIDAD EN NEGOCIO: media
USUARIO: CARGO:
William Ortiz Analista de Infraestructura
DESARROLLADOR ENCARGADO: Jorge Araque (Analista De Desarrollo)
DESCRIPCION:
Debe existir usuarios que solo puedan consultar informacin del inventario y otro
usuario que pueda realizar cambios y asignaciones de elementos de una sede a
otra para que se garantice que ese elemento haya sido autorizado a ser cambiado
por una sola persona o un grupo especfico de administradores.
OBSERVACIONES:

Tabla 12. Historia de Usuario HU11


HISTORIA DE USUARIO
ID: HU11 NOMBRE: Apariencia de textos

PRIORIDAD EN NEGOCIO: baja


USUARIO: CARGO:
Jhon Jairo Roldan Director de Tecnologa.
DESARROLLADOR ENCARGADO: Jorge Araque (Analista De Desarrollo)
DESCRIPCION:
El texto de los frontales debe ser grande y estilizado. Que maneje fuentes llamativas y
con una presentacin fresca y clara.
OBSERVACIONES:

62
Tabla 13. Historia de Usuario HU12
HISTORIA DE USUARIO
ID: HU12 NOMBRE: Seguimiento de los elementos
en el inventario
PRIORIDAD EN NEGOCIO: alta
USUARIO: CARGO:
Jhon Jairo Roldan Director de Tecnologa.
DESARROLLADOR ENCARGADO: Jorge Araque (Analista De Desarrollo)
DESCRIPCION:
El sistema debe permitirme hacer consulta sobre todos los movimientos realizados a
un elemento de tal manera que pueda identificar que traslados pudo tener, as como
las ubicaciones que haya podido tener hasta la actualidad. Tambin debe indicarme el
nombre del usuario que ha realizado tales modificaciones.
OBSERVACIONES:

Tabla 14. Historia de Usuario HU13


HISTORIA DE USUARIO
ID: HU13 NOMBRE: Exportar Consultas
Personalizadas.
PRIORIDAD EN NEGOCIO: media
USUARIO: CARGO:
Jhon Jairo Roldan Director de Tecnologa.
DESARROLLADOR ENCARGADO: Jorge Araque (Analista De Desarrollo)
DESCRIPCION:
La aplicacin debe permitirme exportar a un archivo en Excel una consulta especfica
que realice. De sta manera debo poder filtrar la informacin de los elementos por
varios criterios especficos y a su vez generar un archivo de salida del resultado de la
bsqueda
OBSERVACIONES:

Tabla 15. Historia de Usuario HU14


HISTORIA DE USUARIO
ID: HU14 NOMBRE: Instalar Servicio de Windows
en maquinas inventariadas.
PRIORIDAD EN NEGOCIO:
USUARIO: CARGO:
Jhon Jairo Roldan Director de Tecnologa.
DESARROLLADOR ENCARGADO: Jorge Araque (Analista De Desarrollo)
DESCRIPCION:
Especficamente para el inventario de computadores se debe crear un instalador que se
ejecute en el equipo que va a ser inventariado para que funcione como un Servicio de Windows
y pueda obtener toda la informacin relacionada al Software y Hardware instalado. Esta
informacin debe estar vigente todo el tiempo por lo que si se detecta un cambio, la aplicacin

63
pueda enviar la informacin al Sistema de Inventarios y mantenga vigente la configuracin del
equipo.
OBSERVACIONES:

Tabla 16. Historia de Usuario HU15


HISTORIA DE USUARIO
ID: HU15 NOMBRE: Panel de bienvenida.

PRIORIDAD EN NEGOCIO: bajo


USUARIO: CARGO:
Jhon Jairo Roldan Director de Tecnologa.
DESARROLLADOR ENCARGADO: Jorge Araque (Analista De Desarrollo)
DESCRIPCION:
Incluir un panel de mensaje de bienvenida al sistema y que permita poner all noticias
o informacin relevante que pueda ser visto por cualquier usuario que ingrese a la
aplicacin.
OBSERVACIONES:

Tabla 17. Historia de Usuario HU16


HISTORIA DE USUARIO
ID: HU16 NOMBRE: Clasificacin de los elementos

PRIORIDAD EN NEGOCIO: media


USUARIO: CARGO:
William Ortiz Analista de Infraestructura
DESARROLLADOR ENCARGADO: Jorge Araque (Analista De Desarrollo)
DESCRIPCION:
Cada elemento que se ingrese a la aplicacin debe poder ser clasificado por un tipo de
elemento, ser asociado a un rea y pertenecer a una sede de la empresa
OBSERVACIONES:

6.1.3 Levantamiento de Requerimientos Se procede a Analizar las historias de


usuario y de acuerdo a ello se establecen requerimientos funcionales y no
funcionales con sus respectivas entradas y salida del proceso, condiciones y
restricciones para su funcionamiento. De este proceso se diligencia el formato
Formato de Levantamiento de Requerimientos.

64
6.1.3.1 Requerimiento Funcionales

Tabla 18. Requerimiento Funcional REQ-FNC-01


REQ-FNC-01
Tipo de Nueva Funcionalidad
Requerimiento:
Descripcin: Cada usuario que ingrese a la aplicacin debe autenticarse. Para
ello existir un mtodo que har una consulta al Directorio Activo
para que sea l quien determine si el usuario existe y si las
credenciales de nombre y contrasea son correctas. ste mtodo
se define como autenticacin por Directorio Activo y el acceso a
la aplicacin depender de su estado en del DA.
Autor: Jorge Araque Solicitante Ing. Jhon Jairo Roldan
Fecha de Creacin: 1 de enero de 2014
Actor: Administrador de Aplicacin
Precondiciones: - El Administrador es el nico usuario que existir desde el
comienzo de la aplicacin.
- La aplicacin debe conectarse al servidor de Directorio Activo
- El usuario debe existir en el Directorio Activo
Pos condiciones: - Un usuario creado existir en la aplicacin como un usuario
ligado a sus credenciales de Directorio Activo.
Entradas: - Los datos de un usuario nuevo que ser creado.
Restricciones: - Solo existir un usuario reservado en la aplicacin (el primer
administrador)
Salidas: - Un usuario enlazado con procedimiento de autenticacin
contra Directorio Activo lo que implica usar las credenciales
de acceso del Directorio Activo.

Tabla 19. Requerimiento Funcional REQ-FNC-02


REQ-FNC-02
Tipo de Nueva Funcionalidad
Requerimiento:
Descripcin: Un usuario puede ser creado y asociado al mtodo de
autenticacin propietaria que permite validar dicho usuario
localmente para la aplicacin sin pertenecer a un Directorio
Activo. Para ste caso las credenciales de usuario y su
informacin complementaria estar presente en la base de datos
de la aplicacin.
Autor: Jorge Araque Solicitante Ing. Jhon Jairo Roldan
Fecha de Creacin: 8 de enero de 2014
Actor: Administrador del Sistema
Precondiciones: - Debe existir un Administrador del Sistema
- No debe existir el usuario que est en proceso de creacin.
Pos condiciones: - Se habr creado un nuevo usuario con el mtodo de
autenticacin propietaria lo que implica que no requiere existir

65
en el Directorio Activo.
Entradas: - Los datos relevantes al nuevo usuario que se va a crear.
Restricciones: - NA
Salidas: - Un nuevo usuario bajo autenticacin propietaria.

Tabla 20. Requerimiento Funcional REQ-FNC-03


REQ-FNC-03
Tipo de Nueva Funcionalidad
Requerimiento:
Descripcin: La aplicacin tendr un mdulo que se encargar del ingreso de
elementos al Sistema. ste mdulo tendr un formulario con
campos que representan las propiedades de cada elemento
ingresado.
Autor: Jorge Araque Solicitante Ing. Jhon Jairo Roldan
Fecha de Creacin: 8 de enero de 2014
Actor: Usuario con rol de enrolador de elementos
Precondiciones: Se establece que los elementos ingresados tendrn los
siguientes datos
- Id Elemento, Numero de Placa, Marca, Modelo, Serial, Sede,
rea, Responsable, Observaciones, Fecha Registro, Fecha
Ingreso, Categora
Pos condiciones: - Se ingresa el elemento a la Base de Datos.
Entradas: - Ingreso de elementos mediante el formulario de ingreso.
Restricciones: NA
Salidas: - Dialogo de confirmacin del ingreso de elementos.

Tabla 21. Requerimiento Funcional REQ-FNC-04


REQ-FNC-04
Tipo de Nueva Funcionalidad
Requerimiento:
Descripcin: Se implementar un mdulo con la capacidad de gestionar
Grupos que contengan asociaciones de mdulos. De sta
manera un Grupo puede contener uno o ms mdulos de la
aplicacin y tener un nombre especfico. Ejemplo: puede
existir un grupo llamado Enrolador que tenga habilitado el
mdulo de ingreso de elementos y el de consulta de
elementos
Autor: Jorge Araque Solicitante Ing. Jhon Jairo Roldan
Fecha de Creacin: 15 de enero de 2014
Actor: Administrador de Usuarios
Precondiciones: - Deben existir mdulos creados.

66
Pos condiciones: - Se crearn grupos que contengan mdulos.
Entradas: - Un nuevo Grupo vaco.
- Adicin de mdulos al nuevo grupo
Restricciones: - Un grupo solo puede contener mdulos y no ser
contenedor de otro grupo.
Salidas: - Un grupo con mdulos internamente.

Tabla 22. Requerimiento Funcional REQ-FNC-05


REQ-FNC-5
Tipo de Nueva Funcionalidad
Requerimiento:
Descripcin: Dentro del mdulo de administracin de usuarios se
requiere gestionar usuarios de tal manera que pueda
asignarse de forma personalizada la pertenencia a uno o
varios de los grupos creados en el mdulo de gestin de
Grupos.
Autor: Jorge Araque Solicitante Ing. Jhon Jairo Roldan
Fecha de Creacin: 15 de enero de 2014
Actor: Administrador de Usuarios
Precondiciones: - Deben existir Grupos creados
- Deben existir Usuarios creados
Pos condiciones: - Los usuarios tendrn asignado uno o varios grupos.
Entradas: - Un usuario creado sin asignacin de grupos.
Restricciones: - Un usuario de Directorio Activo no puede personalizar
sus grupos
Salidas: - Usuarios con asignacin de grupos que le dan acceso a
los mdulos incluidos dentro de cada grupo.

Tabla 23. Requerimiento Funcional REQ-FNC-06


REQ-FNC-6
Tipo de Nueva Funcionalidad
Requerimiento:
Descripcin: El Sistema de Gestin de Inventarios debe ser publicado en un
Servidor con rol de aplicaciones que tenga una IP pblica para
ser accedido desde internet. Para ello se dispondr del
Servidor de Aplicaciones de Cyza.
Autor: Jorge Araque Solicitante Ing. Jhon Jairo Roldan
Fecha de Creacin: 15 de enero de 2014
Actor: Analista de de Desarrollo
Precondiciones: - Disponer de un Servidor de Aplicaciones
- Conocer la Ip Publica del Servidor.
Pos condiciones: - El Sitio Web estar publicado en el servidor.

67
- Se podr acceder al Sitio Web desde cualquier equipo con
internet.
Entradas: - Binarios de la aplicacin listos para ser publicados.
Restricciones:
Salidas: - Acceso a la aplicacin por medio de la URL del sitio web.

Tabla 24. Requerimiento Funcional REQ-FNC-07


REQ-FNC-7
Tipo de Nueva Funcionalidad
Requerimiento:
Descripcin: Crear un mdulo de bsqueda que se encargar de presentar
las herramientas necesarias para que un usuario de la
aplicacin pueda realizar las bsquedas de elementos del
inventario de forma precisa. El usuario puede usar un control
que realizar el filtro por criterios directamente relacionados
con las propiedades del elemento.
Autor: Jorge Araque Solicitante Ing. Jhon Jairo Roldan
Fecha de Creacin: 15 de enero de 2014
Actor: Usuario consultor
Precondiciones: - El usuario debe pertenecer a un grupo con acceso al
mdulo de consultas
Pos condiciones: - El frontal le presentar el resultado de la bsqueda en una
rejilla con los datos de los elementos que cumplen con el
criterio de bsqueda.
Entradas: - Nmero de placa, serial, modelo, fecha de ingreso, rea,
sede, categora nombre del responsable.
Salidas: - Listado de elementos que cumplen con las condiciones de
bsqueda

Tabla 25. Requerimiento Funcional REQ-FNC-08


REQ-FNC-08
Tipo de Nueva Funcionalidad
Requerimiento:
Descripcin: Se requiere un mdulo que permita visualizar el histrico de
movimientos realizados a todos los elementos de la aplicacin.
Cada vez que un elemento del inventario es modificado por un
usuario con los permisos requeridos para dichas
modificaciones, la aplicacin debe registrar el historial de
cambios, describiendo all que elemento cambi, cul era su
estado anterior y cul es el estado actual. Adems el registro
debe incluir la fecha de cuando se realiz la modificacin y el
nombre del responsable de la accin.
Autor: Jorge Araque Solicitante Ing. Jhon Jairo Roldan
Fecha de Creacin: 17 de enero de 2014

68
Actor: Administrador del Sistema.
Precondiciones: Debe haberse realizado al menos una tarea de modificacin
para una de las propiedades del elemento del inventario.
Pos condiciones: Se visualizar un listado de registros que muestren las
modificaciones realizadas a los elementos del inventario.
Entradas: - Acceso al mdulo de histrico de movimientos
Restricciones: - Solo podr acceder el usuario con pertenencia al grupo
correcto.
Salidas: - Un listado de registros que evidencien modificacin en
alguna de las propiedades del elemento de inventario.

Tabla 26. Requerimiento Funcional REQ-FNC-09


REQ-FNC-09
Tipo de Nueva Funcionalidad
Requerimiento:
Descripcin: Es necesario contar con un mdulo que permita personalizar una
consulta y que a su vez permita exportar a un archivo de Excel el
resultado de la consulta
Autor: Jorge Araque Solicitante Ing. Jhon Jairo Roldan
Fecha de Creacin: 21 de enero de 2014
Actor: Usuario Generador de Reportes
Precondiciones: - Conocer el criterio de consulta y acceso al mdulo de
reportes.
Postcondiciones: - Archivo con formato xls con el resulta de la consulta.
Entradas: - Los criterios de consulta adecuados para generar la salida
correcta
Restricciones: - Se requiere un usuario con permiso para acceder al mdulo.
Salidas: - Se genera un documento de Excel con el resultado de la
consulta.

Tabla 27. Requerimiento Funcional REQ-FNC-10


REQ-FNC-10
Tipo de Nueva Funcionalidad
Requerimiento:
Descripcin: Se requiere la creacin de un Paquete de Instalacin que
permita la instalacin de un Servicio de Windows que se
ejecute en segundo plano y que tenga la facultad de obtener
toda la informacin referente a la configuracin de Hardware y
de Software del equipo donde se hospeda. La aplicacin
evaluar si existe un cambio de hardware o de software y en el
siguiente reinicio del equipo enviar la nueva informacin va
Servicios Web al Servidor del Sistema de Gestin de
Inventarios. Para que el programa identifique el software o

69
hardware debe interactuar con el servicio de WMI presente en
los sistemas Windows
Autor: Jorge Araque Solicitante Ing. Jhon Jairo Roldan
Fecha de Creacin: 21 de enero de 2014
Actor: Servicio de Windows
Precondiciones: Se debe instalar el Servicio de Windows en el Sistema
Operativo del equipo al que se pretende obtener la
informacin de hardware y software.
Pos condiciones: Llegar a la base de datos la informacin relacionada con la
configuracin de hardware y software que tiene dicho equipo.
Entradas: NA
Restricciones: Si en el prximo reinicio no se encuentra ningn tipo de
cambio la aplicacin no tendr la necesidad de enviar datos.
Salidas: El resultado de los cambios de hardware o software que haya
tenido la maquina ser escrito en la base de datos donde
posteriormente podr ser consultado.

Tabla 28. Requerimiento Funcional REQ-FNC-11


REQ-FNC-11
Tipo de Nueva Funcionalidad
Requerimiento:
Descripcin: La aplicacin debe tener un mdulo que permita gestionar los
elementos del inventario pero debe ser manipulado por un usuario o un
grupo de usuarios con perfil de administrador el cual est al tanto de los
cambios que eventualmente tengan los elementos, ya sea sobre su
estado, su ubicacin o la persona a la que ha sido asignada.
Autor: Jorge Araque Solicitante Ing. Jhon Jairo Roldan
Fecha de Creacin: 21 de enero de 2014
Actor: Usuario Administrador
Precondiciones: Habr ms de un elemento susceptible a cambio de ubicacin, estado o
cualquier otra caracterstica que describa al elemento.
Pos condiciones: Se generar modificacin sobre alguna de las propiedades del elemento
sujeto al cambio.
Entradas: - Bsqueda del elemento que ser sometido a modificacin.
Restricciones: - sta operacin debe ser realizada nicamente por un usuario con
perfil de administracin (que pertenezca a un grupo con modulo de
Gestin de Elementos)
Salidas: - El elemento con algunas de sus propiedades modificadas
- Un registro en el histrico de movimientos.

70
6.1.3.2 Requerimiento no Funcionales

Tabla 29. Requerimiento No Funcional REQ-NFN-01

REQ-NFN-01
Tipo: Usabilidad
Descripcin: Para apoyar el proceso de captura de informacin de los
elementos para ingresar al inventario se incluye el uso de
captura mediante la pistola lectora de barras.
Autor: Jorge Araque Solicitante Ing. Jhon Jairo Roldan
Fecha de Creacin: 08-enero-2014
Requerimiento Padre: REQ-FNC-03

Tabla 30. Requerimiento No Funcional REQ-NFN-02

REQ-NFN-02
Tipo: Usabilidad
Descripcin: Para mejorar la conectividad con base de datos se sugiere el uso de
herramientas ADO que administren mejor las conexiones hacia base
de datos. Uno de stos elementos es Enterprise Library que realiza la
apertura (Open) y cierre (Close) de conexin de manera automatizada
mientras que solo deba preocuparse por la construccin de los querys.
Autor: Jorge Araque Solicitante Ing. Jhon Jairo Roldan
Fecha de Creacin: 08-10-2014
Requerimiento Padre:

Tabla 31. Requerimiento No Funcional REQ-NFN-03

REQ-NFN-03
Tipo: Visualizacin
Descripcin: Fomentar el uso en los frontales de la aplicacin de textos grandes y
elegantes que permitan una presentacin ms clara y fresca.
Autor: Jorge Araque Solicitante Ing. Jhon Jairo Roldan
Fecha de Creacin: 08-10-2014
Requerimiento Padre: REQ-FNC-113 del paquete de requerimientos 40

Tabla 32. Requerimiento No Funcional REQ-NFN-04

REQ-NFN-04
Tipo: Visualizacin
Descripcin: Implementar en el panel principal de la aplicacin un Panel de
Bienvenida al cual se le pueda personalizar el texto y permita a los
usuarios ver all alguna tarea o noticia relevante. Har las veces de
Cartelera con anotaciones que se consideren importantes o no.
Autor: Jorge Araque Solicitante Ing. Jhon Jairo Roldan
Fecha de Creacin: 08-10-2014
Requerimiento Padre: REQ-FNC-113 del paquete de requerimientos 40

71
6.1.4 Casos de Uso Se establecen las iteraciones actor-software de cada uno de
los requerimientos establecidos y se diagraman a continuacin:

Figura 27. Caso de Uso para REQ-FNC-01

Figura 28. Diagrama Caso de Uso para REQ-FNC-02

72
Figura 29. Diagrama Caso de Uso para REQ-FNC-03

Figura 30. Diagrama Caso de Uso para REQ-FNC-04

Figura 31. Diagrama Caso de Uso para REQ-FNC-05

73
Figura 32. Diagrama Caso de Uso para REQ-FNC-06

74
Figura 33. Diagrama Caso de Uso para REQ-FNC-07

Figura 34. Diagrama Caso de Uso para REQ-FNC-08

75
Figura 35. Diagrama Caso de Uso para REQ-FNC-09

Figura 36. Diagrama Caso de Uso para REQ-FNC-10

76
Figura 37. Diagrama Caso de Uso para REQ-FNC
FNC-11

6.1.5 Diagramacin de Flujos de Sistema De Inventarios Se establece


diagrama de funcionalidades del software resultado del estudio y levantamiento de
datos. Los objetivos y lo que se quiere que el programa realice, se muestra en el
Diagrama a continuacin.

77
6.1.5.2 Diagrama de Funcionalidades y procesos Sistema de Control de
Inventarios Cyza

Figura 38. Diagrama de Secuencia por Funcionalidad Identificada Sistema de


Control de Inventarios Planteado

6.2 FASE DE PLANEACIN

6.2.1 Plan de Desarrollo

6.2.1.1 Mdulos de Software El Sistema de Control de Inventarios se va a dividir


en mdulos, encargados cada uno de un rol especfico entre las funcionalidades

78
del software. Cada Mdulo es programado e incluyendo en un Mdulo base
prototipo (Proyecto Base), el cual va integrando cada pequea entrega y
unificando las funcionalidades para el Software.

A continuacin, se indican los mdulos programados para desarrollar en el


software.

Tabla 33. Tabla de Mdulos del Sistema de Inventario Cyza


Modulo Funcionalidad Dependencia Dependiente Prioridad
Mdulo de Permite Mdulo de Depende de Alta
Ingreso de registrar en el Consulta mdulo de
Elementos Sistema de Mdulo de Administracin
Inventarios un Generacin de de grupos
elemento nuevo reportes
Mdulo de
Gestin de
elementos
Mdulo de Permite realizar Ninguno Depende del Media
Consultas consulta de mdulo de
elementos ya Ingreso de
registrados elementos y
mdulo de
Administracin
de grupos
Mdulo de Exporta Ninguno Depende del Baja
Generacin de consultas a un mdulo de
Reportes archivo en Ingreso de
Excel elementos y
mdulo de
Administracin
de grupos
Mdulo de Administra Ninguno Ninguno Alta
Administracin parmetros de
del Sistema la aplicacin y
la Gestin de
Grupos
Mdulo de Administra el Acceso a todos Ninguno Alta
Administracin mtodo de los mdulos de
de Usuarios autenticacin y la aplicacin
los grupos a los
que pertenecer
un usuario
Proyecto base Contiene toda la Todos los Ninguno Muy alta
estructura futuros
bsica y las mdulos de la

79
rutinas de aplicacin
comunicacin
con base de
datos
Construccin de Expone todas Genera Depende de la Alta
Servicios Web las funciones dependencia a inclusin
que permiten a la aplicacin propuesta por
una aplicacin cliente que se la aplicacin
cliente la comunicar base
comunicacin con ste
con el Sistema servicio web
de Inventarios
Instalador Paquete de Genera Depende de la Media
Cliente y instalacin que dependencia existencia de
Servicios se ejecuta como del mdulo de los Servicios
Windows un servicio de consultas Web
Windows que
enviar datos
de hardware y
software del
computador
host

6.1.6.1 Esquema General Sistema de Control de Inventarios Cyza

Figura 39. Esquema General Funcional Sistema de Control de Inventarios


Planteado

Fuente: Diseo personal. Realizado con la herramienta de diseo Paint.Net con Licencia LGPL

80
6.2.1.1 Desglose de Trabajo EDT Se realiza las subdivisiones del proceso de
desarrollo de cada mdulo, desglosando la actividad en tareas particulares para
establecer con facilidad tiempos, esfuerzo y orientacin en el proceso de
programacin.

Tabla 34. Tabla de Desglose de Trabajo Sistema de Inventario Cyza


Orden Actividad-Tareas
1 Sistema de Gestin de Inventarios
1.1 Preparacin Proyecto Base
1.1.1 Base de Datos
1.1.1.1 Construccin de Modelo Entidad Relacin Base
1.1.1.2 Implementacin en SQL Server de la Base de Datos
1.1.2 Capa de Datos
1.1.2.1 Construccin de Componentes ADO para comunicarse con Base
de Datos
1.1.2.2 Implementacin de Enterprise Library para operaciones CRUD
con BD
1.1.2.3 Creacin de Clases que almacenan las funciones principales para
consulta a BD
1.1.3 Capa de Negocio
1.1.3.1 Creacin de Clases Utilitarias para encapsular funciones de
Seguridad o Encriptacin
1.1.3.2 Clases que conforman el ACL (Listas de Control de Acceso)
1.1.4 Capa de Presentacin. Interfaz de usuario.
1.1.4.1 Creacin de Pagina Maestra
1.1.4.2 Creacin de Pagina de Login
1.1.4.3 Frontales elementales de Administracin del Sistema
1.2 Mdulo de Administracin del Sistema
1.2.1 Base de Datos
1.2.1.1 Creacin de Tablas que almacenen los mdulos de la aplicacin
1.2.1.2 Creacin de Tablas con los roles de la aplicacin
1.2.1.3 Creacin de tablas relacionales que integran mdulos con roles
1.2.2 Capa de Negocio
1.2.2.1 Creacin de clases que encapsulan funciones para administracin
de mdulos y roles
1.2.3 Capa de Presentacin. Interfaz de usuario.
1.2.3.1 Generacin de frontal para visualizar la configuracin de
parmetros de la aplicacin
1.2.3.2 Frontal para crear por interfaz un nuevo rol y asignar los mdulos
que tendr
1.2.4 Integracin a Proyecto Base
1.2.4.1 Configuracin en Aplicacin para incluir modulo creado.
1.3 Mdulo de Administracin de Usuarios
1.3.1 Base de Datos
1.3.1.1 Creacin de Tablas para almacenamiento de datos de usuarios
1.3.2 Capa de Negocio

81
1.3.2.1 Creacin de clases que contiene operaciones CRUD para
usuarios de la aplicacin
1.3.2.2 Clases que contienen funcionalidad para autenticar usuarios del
directorio activo
1.3.3 Capa de Presentacin. Interfaz de usuario.
1.3.3.1 Construccin de mdulos para gestionar creacin de usuarios
1.3.3.2 Frontales para administrar la asignacin de roles a cada usuario
1.3.4 Integracin a Proyecto Base
1.3.4.1 Configuracin en Aplicacin para incluir modulo creado.
1.4 Mdulo de Administracin de Grupos
1.4.1 Base de Datos
1.4.1.1 Creacin de Tablas para almacenamiento de Grupos
1.4.1.2 Creacin de Tablas intermedias para relacionar Usuarios y
Grupos
1.4.2 Capa de Negocio
1.4.2.1 Creacin de clases que contiene operaciones CRUD para grupos
1.4.3 Capa de Presentacin. Interfaz de usuario.
1.4.3.1 Construccin de mdulos para gestionar la creacin de grupos
1.4.4 Integracin a Proyecto Base
1.4.4.1 Configuracin en la aplicacin para incluir mdulo creado
1.5 Mdulo de Ingreso de Elementos
1.5.1 Base de Datos
1.5.1.1 Integracin a Modelo en BD de tabla Elementos con campos
respectivos
1.5.1.2 Creacin de Tablas complementarias como reas, Sedes,
Estado o Categora
1.5.2 Capa de Negocio
1.5.2.1 Creacin de Entidades de Negocio con las propiedades de cada
Elemento
1.5.2.2 Clases de operaciones CRUD sobre tabla Elementos para
Ingresar, Editar, Actualizar
1.5.3 Capa de Presentacin. Interfaz de usuario.
1.5.3.1 Creacin de frontal con formulario de ingreso de un Elemento y
sus propiedades
1.5.3.2 Diseo e inclusin de validadores por cada control del formulario.
1.5.4 Integracin a Proyecto Base
1.5.4.1 Configuracin en Aplicacin para incluir modulo creado.
1.6 Mdulo de Consultas
1.6.1 Capa de Negocio
1.6.1.1 Clases para operaciones CRUD sobre datos de consulta a BD
1.6.2 Capa de Presentacin. Interfaz de usuario.
1.6.2.1 Creacin de frontales para la visualizacin de las consultas
formuladas
1.6.3 Integracin a Proyecto Base
1.6.3.1 Configuracin en Aplicacin para incluir modulo creado.
1.7 Mdulo de Generacin de Reportes
1.7.1 Capa de Negocio

82
1.7.1.1 Creacin de clases que tienen la lgica de consulta y la
construccin del reporte
1.7.2 Capa de Presentacin. Interfaz de usuario.
1.7.2.1 Creacin de Frontales para la visualizacin de los reportes
generados
1.7.3 Integracin a Proyecto Base
1.7.3.1 Configuracin en Aplicacin para incluir modulo creado.
1.8 Mdulo de Historial de Movimientos
1.8.1 Capa de Negocio
1.8.1.1 Clases con operaciones CRUD para consultas en bases de datos
1.8.2 Capa de Presentacin. Interfaz de usuario.
1.8.2.1 Frontal para visualizacin de historial de movimientos
1.8.3 Integracin a Proyecto Base
1.8.3.1 Configuracin en la aplicacin para incluir mdulo creado
1.9 Construccin de Servicios Web
1.9.1 Generacin de WebMethods
1.9.1.1 Construccin de los mtodos del servicio web que sern visibles
desde instalador cliente
1.9.2 Fase de Exposicin de Servicios
1.9.2.1 Publicacin de Servicio Web para acceder a los WebMethods
1.10 Instalador Cliente de Servicio Windows
1.10.1 Base de Datos
1.10.1.1 Integracin al modelo ER las tablas que tendrn informacin de
HW y SW enviados desde el Servicio de Windows instalado en
cada computador que ingrese al inventario.
1.10.2 Componente Lgico
1.10.2.1 Conjunto de clases que guardan la lgica de integracin con WMI
(Windows Management Instrumentation) para obtener informacin
de hardware y software.
1.10.3 Instalador
1.10.3.1 Creacin de un paquete de instalacin (msi) para instalar en los
computadores nuevos que sean sometidos a inventario.

83
6.2.1.2 Proceso de Desarrollo Para el desarrollo se utiliza el mtodo de
programacin extrema utilizando prototipo corregido sobre el proyecto base con
inclusiones de mdulos y tareas simplificadas organizadas en la EDT. La
secuencia de desarrollo se presenta a continuacin:

1. Desarrollo Proyecto Base Prototipo

2. Estructura base de datos Entidad Relacin.

3. Estructura Multicapas, Capa de Datos, Negocio y Presentacin.

4. Desarrollo de mdulos Funcionales del Sistema: Modulo de Administracin de


Sistema, Modulo de Administracin de Usuarios, Modulo de Ingreso de
Elementos, Modulo de Consultas, Modulo de Generacin de Reportes y Modulo
de Movimientos Histricos.

5. Construccin de Servicios Web.

6. Generacin de paquetes de instalacin de Servicios Windows.

Cada proceso se realizara en ciclos de desarrollo, iteracin de ciclos e integracin


en proyecto base.

84
6.2.1.3 Diagrama de Proceso de desarrollo de un Ciclo

Figura 40. Diagrama de proceso de un ciclo de desarrollo Sistema de Inventarios


Cyza

Fuente: Diseo personal. Realizado con herramienta de diseo grfico Paint.NET


con licencia LGPL.

85
6.2.1.4 Diagrama de Proceso de desarrollo proyecto General

Figura 41. Diagrama de Representacin del proceso de desarrollo General


Sistema de Control de Inventarios Planteado

Fuente: Diseo personal. Realizado con herramienta de diseo grfico Paint.NET


con licencia LGPL.

86
6.2.2 Plan de Pruebas El proceso de pruebas se divide en pruebas unitarias,
pruebas de integracin y pruebas de aceptacin todas realizadas mediante el
mtodo de caja negra.

6.2.2.1 Pruebas Unitarias Se realizan pruebas al cdigo resultado de cada ciclo


de desarrollo y definiendo la aceptacin funcional y as proceder a indexar al
prototipo base del proyecto. Estas pruebas no requieren registro y el tcnico de
desarrollo es el encargado de realizarlas.

6.2.2.2 Pruebas de Integracin Se realizan pruebas de funcionalidad del


prototipo base del proyecto cada vez que se integra una funcionalidad o mdulo,
definindola aceptacin funcional integral en el prototipo base del proyecto. Se
diligencia formato de Formato de Pruebas de software (Anexo DD-FPS).

6.2.2.2 Pruebas de Aceptacin Se realizan pruebas del prototipo base de


proyecto integrado en su totalidad para verificar la funcionalidad del programa en
general y su aceptacin y posterior implementacin a productivo. El proyecto base
deja de ser prototipo y pasa a ser el software como tal, Sistema de Gestin de
Inventarios. Se diligencia formato de Formato de Pruebas de Aceptacin
(Anexo DD-FPA).

6.2.3 Plan de Control de Cambios Despus de realizar las pruebas, los cdigos
que no cumplen con los objetivos funcionales, se procede a realizar los cambios
requeridos.

Si la solicitud de cambio se origina de una prueba unitaria, se realiza


recodificacin inmediata y se vuelve hacer la prueba, se itera cuantas veces sea
necesario hasta alcanzar los requerimientos funcionales requeridos.

En el caso de generar requerimiento de cambio a partir de una prueba integral o


de aceptacin, se debe verificar la documentacin diligenciada en los formatos de
pruebas de software y proceder a realizar re codificacin y cambios en el prototipo.
Estos cambios son documentados en el documento Formato de control de
cambios de software (Anexo DD-FCC). Luego se vuelve a realizar pruebas.

6.2.4 Plan de Cierre de Proyecto Superada la fase de pruebas, se realiza la


entrega del Sistema de Gestin de Inventarios a Cyza por medio magntico, con
los respectivos manuales de administracin y de usuario. Todo queda oficializado
en documento debidamente firmado, formato Acta de Entrega de Satisfaccin
(DD-AES).

87
6.3 FASE DE DESARROLLO

Se sigue el proceso planteado en el plan de desarrollo, en secuencia y siguiendo


la metodologa de programacin extrema. Cada mdulo de programacin es
realizada en micro ciclos de desarrollo, verificacin pruebas, cambios e integracin
al proyecto base prototipo. (Figura 40 pgina 81).

Siguiendo esta secuencia se indica a continuacin el proceso general del


desarrollo ingenieril del sistema de Inventarios Cyza.

6.3.1 Creacin del proyecto Se crea el nuevo proyecto en Visual Studio con la
distribucin de las bibliotecas disponiendo la Solucin en:

- Proyecto de Biblioteca de Clases (para capa de datos)


- Proyecto de Biblioteca de Entidades (Entidades)
- Proyecto de Biblioteca de Clases (para capa de negocio)
- Proyecto de Aplicacin Web (para capa de presentacin)

6.3.2 Desarrollo de Proyecto Base El proyecto base es el desarrollo de todo lo


bsico para la funcionalidad de cualquier software en estructura multicapas con
uso de las aplicaciones Web. El proyecto base es a su vez el modelo prototipo
donde se ira anexando los mdulos en cada fase y se verifica su funcionalidad a
medida que se integra todas las unidades especficas del desarrollo.

6.3.2.1 Base de Datos Se construye la base de datos apoyado en el modelo de


entidad relacin base para implementar tablas requeridas en el desarrollo de cada
uno de los mdulos del Software.

6.3.2.1.1 Esquematizacin de la Base de Datos Se genera la base de datos


estructurada as:

- Tabla usuarios que almacenar los usuarios del sistema


- Tabla de Parmetros de Configuracin que almacena los valores claves
que permiten que la aplicacin funcione adecuadamente.
- Tabla LogErrores que almacena los registros de errores generados por la
aplicacin.
- Tabla TipoEventoLog que permite clasificar los tipos de log que puede
generar la aplicacin.
- Tabla LogEventos que almacena los registros de eventos generados por
alguna accin que se realice dentro del sistema.

88
- Tabla TipoIdentificacin que guarda los diferentes tipos de identificacin
que los usuarios establezcan.

6.3.2.1.2 Diagrama Entidad Relacin Base

Figura 42. Diagrama de Entidad Relacin Base de datos Proyecto Base

6.3.2.2 Capa de Datos Se Desarrolla la capa que encierra el manejo de toda la


funcionalidad referente a la comunicacin con un Motor de Base de Datos.

Se incluyen libreras de Enterprise Library que traen funcionalidades especficas


para abrir, liberar y cerrar conexiones, as como gestores de consultas bajo
procedimientos almacenados.

Se implementan las siguientes unidades especficas sobre el desarrollo:

- Implementacin de libreras de Enterprise Library para hacer llamado del


objeto DataBase que se encargar de la gestin de conexin a base de
datos.

89
- Creacin de la clase GestorBD que encapsula todas las posibles
funciones para interactuar con objetos de tipo procedimiento almacenado
- Uso de componentes ADO (ActiveXDataObject) en la clase GestorBD para
interactuar con objetos de bases de datos.

6.3.2.3 Capa de Negocios Se implementa la capa que encierra toda la lgica de


negocio y validacin de los datos que provienen de la capa de presentacin y van
a ser almacenados a base de datos. Se generan las siguientes clases:

- Agrupacin Seguridad que tiene la clase de RegistroLogin.


- Clase NegocioBase que encapsula funciones recurrentes como en
Registro de Excepciones. Todas las clases que se generen en sta capa
debern heredar de sta clase.
- Clase Parametros que guarda valores que hacen las veces de referencia
dentro de una variable de sesin. Ejemplo: si se quiere obtener la direccin
IP del servidor de dominio que se encuentra almacenado en una variable de
sesin se debe acceder as Session[Parametros.SRV_AD].
- Clase Constantes que almancena valores constantes que sern usados
dentro de la capa de negocio.

6.3.2.3.1 Entidades Se implementa la capa que contiene todas las clases que
sirven como representaciones de Entidades de Negocio y objetos provenientes de
base de datos. Son entidades fuertemente tipadas y encapsulan propiedades. Se
implementan las siguiente Entidades:

- EstadoSesion.cs
- Modulo.cs
- Usuario.cs

6.3.2.5 Capa de Presentacin Se implementa la capa de Aplicacin Web que


estructuralmente contiene carpetas que agrupan las vistas segn los mdulos
creados. Los recursos implementados son:

- References: son las referencias a libreras complementarias de la aplicacin


- AppCode: folder que contiene las siguientes clases:
o CategoriaMenu.cs: guarda la lgica y jerarqua de los elementos del
men de navegacin.
o DialogoBase.cs: Clase base de la que heredarn todas los frontales
que se presenten en una ventana de dialogo.

90
o GestorObjetos.cs: Clase que guarda la lgica que permite gestionar
la instanciacin y creacin de objetos fuertemente tipados. Todo
llamado e instancia lo realizar sta clase.
o PaginaBase.cs: en esta clase se encapsulan funciones generales y
de uso comn por todas las pginas de la aplicacin. Por tal motivo
cada pgina debe heredar de sta clase.
o VariablesAplicacion.cs: guarda todas las constantes que permitirn el
acceso a las variables de aplicacin.
o VarialbesSesion.cs: guarda todas las constantes que permitirn el
acceso a las variables de sesin.
- Dialogos: folder que contiene todas las paginas aspx que hacen la funcin
de pginas en forma de dialogo (ventanas pequeas)
o CambioClave.aspx
- Usrs: folder que contiene el frontal bsico de usuarios
o AdminUsuarios.aspx
- Login.aspx: Frontal presente en la raz que representa la vista de acceso a
la apliacin.
- Logout.aspx: frontal de salida de la aplicacin.
- Web.config: Archivo de configuracin de la aplicacin desde donde se
establece los parmetros de conexin a base de datos y otros parmetros
importantes.

6.3.3 Desarrollo de Mdulos

Los Mdulos son las caractersticas y funcionalidades nicas del sistema exigidas
para desarrollar el software con los objetivos planteados y los requerimientos
exigidos por el cliente. De acuerdo al plan de ejecucin, se realiza el
procedimiento de desarrollo e integracin.

6.3.3.1 Modulo de Administracin del Sistema Este mdulo es responsable de


la administracin de los procesos y funcionalidades propias del sistema en sus
flujos internos, gestin de mensaje de bienvenida y parmetros de la aplicacin.

6.3.3.1.1 Inclusiones Base de datos En base de datos se crean los procedimientos


almacenados para la tabla de parmetros.

Se crean y agrega las siguientes tablas requeridas para el funcionamiento de este


mdulo:

91
- Tabla ParametrosConfiguracin que almacena los valores reconocidos
como parmetros y que hacen posible el funcionamiento de la aplicacin.
- Tabla LogEventos que guarda todo evento que est contemplado deba ser
objeto de registro.
- Tablas LogErrores que guarda todo evento de error que se presente en la
aplicacin a nivel funcional.

6.3.3.1.2 Inclusiones Capa de Negocio Se crean las clases que encapsulan


funciones para administracin de mdulos y roles. Las Clases son:

- Clase Parametros.cs que guarda las funciones que permiten modificar los
valores que hacen las veces de parmetros en la aplicacin. Aqu mismo se
efecta la edicin del texto presente en el mensaje de bienvenida.

6.3.3.1.3 Inclusiones Capa de Presentacin Se implementa los frontales para


visualizar la configuracin de parmetros de la aplicacin. Los frontales son:

- AdminConfig.aspx. Frontal que dispone de dos pestaas, una llamada


Pagina de bienvenida que permite personalizar el tablero de noticias e
informacin para todos los usuarios y Configuraciones generales donde se
encuentran los parmetros del sistema.

6.3.3.1.4 Integracin con Proyecto Base El desarrollo de este mdulos es


integrado con el proyecto base, actualizando el sistema en base de datos, capas
de negocio y presentacin. Se realiza proceso de pruebas y control de cambio.
(Seccin 6.1)

6.3.3.2 Modulo de Administracin de Usuarios Este mdulo es la parte del


software que administra y gestiona la autenticacin y permisos de los usuarios que
acceden a la aplicacin.

6.3.3.2.1 Inclusiones Base de datos En base de datos se crean los procedimientos


almacenados para la tabla de parmetros, grupos y mdulos.

Se crean y agrega las siguientes tablas requeridas para el funcionamiento de este


mdulo:

- Tabla Usuario: es para almacenamiento de datos de usuarios


- Tabla TipoIdentificacion: define los tipos de documento posibles.
- Tabla GruposUsuario que relaciona un Grupo con un Usuario.

92
6.3.3.2.2 Inclusiones Capa de Negocio Se crean las clases que encapsulan
funciones para administracin de los usuarios:

- Agrupacin ACL (Listas de Control de Acceso) que contiene las siguientes


clases:
o TiposIdentificacion.cs: clase que gestiona la obtencin de los tipos
de identificacin registrados en la base de datos.
o Usuarios.cs: clase que encierra toda funcionalidad que permite crear,
editar, consultar o eliminar un usuario en la base de datos y
administrar el procedimiento de autenticacin por Active Directory.
- Agrupacin de lgica de Directorio Activo compuesta por las siguientes
clases:
o AdminAD.cs: clase que se encarga de la administracin y gestin de
objetos del directorio activo.
o ParametrosAD.cs: clase que almacena los nombres de los tipos de
objetos que pueden existir dentro del protocolo LDAP. Deben
tipificarse explcitamente porque su descripcin es nica y
fundamental a la hora de obtener un recurso de directorio activo.
o UsuariosAD.cs: representa un objeto Usuario propio del directorio
activo con las propiedades que maneja el protocolo LDAP para ste
tipo especfico de objeto.

6.3.3.2.3 Inclusiones Capa de Presentacin Se implementa los frontales de


visualizacin para usuarios del sistema. Los frontales son:

- Frontal AdminUsuarios.aspx es la vista para la administracin de usuarios

6.3.3.2.4 Integracin con Proyecto Base El desarrollo de este mdulos es


integrado con el proyecto base, actualizando el sistema en base de datos, capa de
negocio y presentacin. Se realiza proceso de pruebas y control de cambio.
(Seccin 6.1)

6.3.3.3 Mdulo de Administracin de Grupos Este mdulo es la parte del


software que administra y gestiona la creacin y configuracin de los grupos de la
aplicacin.

6.3.3.3.1 Inclusiones Base de datos En base de datos se crean los objetos Tabla
para almacenar los grupos de la aplicacin, as como la generacin de los

93
procedimientos almacenados que tendrn interaccin con dicha tabla. Los objetos
creados son los siguientes:

- Tabla Grupos: almancena los grupos propietaris que se creen en la


aplicacin.
- Tabla GruposMapeoLDAP: registra all los grupos que se identifiquen que
fueron creados en el DirectorioActivo y que sern usados en la aplicacin.
- Tabla Modulos: se usa para consignar la lista de mdulos presentes en la
aplicacin.
- Tabla ModulosGrupo: representa la relacin de pertenencia y asociacin
entre mdulos y grupos.

6.3.3.3.2 Inclusiones Capa de Negocio Se crean las clases que encapsulan


funciones para administracin de los grupos:

- Agrupacin ACL (Lista de Control de Acceso). Contiene a la clase


Grupos.cs que se encarga de gestionar los grupos de tipo propietario en su
creacin, modificacin, consulta o eliminacin.
- Agrupacin de lgica de Directorio Activo compuesta por las siguiente
clase:
o GruposAD.cs: clase que gestiona la creacin, consulta,
renombramiento y eliminacin de un grupo a nivel de Directorio
Activo.

6.3.3.3.3 Inclusiones Capa de Presentacin Se implementa los frontales de


visualizacin para usuarios del sistema. Los frontales son:

- Frontal AdminGrupos.aspx: Rejilla que contiene el listado de grupos


creados en la aplicacin. All se dispone la gestin de los mdulos
pertenecientes a cada grupo.

6.3.3.3.4 Integracin con Proyecto Base El desarrollo de este mdulos es


integrado con el proyecto base, actualizando el sistema en base de datos, capas
de negocio y presentacin. Se realiza proceso de pruebas y control de cambio.
(Seccin 6.1)

6.3.3.4 Modulo de Ingreso de Elementos Este mdulo es la parte del software


que administra los procesos de registros de datos de los elementos que van a ser
inventariados en el sistema.

6.3.3.4.1 Inclusiones Base de datos En base de datos se crean objetos tipo tabla y
los procedimientos almacenados para las tablas indicadas.

94
Se crean y agrega las siguientes tablas requeridas para el funcionamiento de este
mdulo:

- Tabla Elemento: almacena los registros de los elementos que se ingresan a


la aplicacin.
- Tabla complementaria reas: consigna las reas a las que puede
pertenecer un elemento.
- Tabla complementaria Sedes: almacena el listado de sedes donde un
elemento puede encontrarse.
- Tabla complementaria Estado: representa los mltiples estados que puede
tener un elemento del inventario.
- Tabla complementaria Categora: almacena el listado de categoras a las
que puede pertenecer un elemento.
- Tabla complementaria InformacinExtendida: registra atributos adicionales
para un elemento segn su categora.
- Tabla complementaria AtributoElemento: guarda los diferentes atributos que
puede tener un elemento.
- Tabla complementaria InformacionPC: Permite almacenar los atributos
referentes nicamente a un equipo de cmputo como lo son el software y el
hardware.

6.3.3.4.2 Inclusiones Capa de Negocio Se crean las clases que encapsulan


funciones para el ingreso de nuevos elementos a la base de datos.

Se adicionan nuevas Entidades en la capa de negocios que son representaciones


fuertemente tipadas en la tabla de base de datos. Las entidades son:

- Area.cs
- AtributoElemento.cs
- Categora.cs
- Elemento.cs
- Estado.cs
- Sede.cs

Las Entidades son agrupadas en la funcin DescripcionFisica que almacena


clases que se encargan de gestionar toda operacin de insercin sobre las
entidades de negocio. Las clases son:

o Areas.cs
o AtributoElemento.cs
o Categorias.cs

95
o Elementos.cs
o Estados.cs
o InformacionesExtendidas.cs
o Sedes.cs

6.3.3.4.3 Inclusiones Capa de Presentacin Se implementa los frontales para


visualizar, ingresar, editar y actualizar los elementos y datos al inventario. El
frontal es:

- IngresoElementos.aspx: Frontal con un formulario para el ingreso de


elementos.

6.3.3.4.4 Integracin con Proyecto Base El desarrollo de este mdulos es


integrado con el proyecto base, actualizando el sistema en base de datos, capa de
negocio y presentacin. Se realiza proceso de pruebas y control de cambio.
(Seccin 6.1)

6.3.3.5 Modulo de Consultas Este mdulo permite realizar consulta de elementos


ya registrados.

6.3.3.5.1 Inclusiones Capa de Negocio Se crean las clases que encapsulan


funciones para administracin de mdulos. Las Clases son:

- Agrupacin Descripcion Fisica que almacena clases que se encargan de


gestionar toda operacin de consulta sobre las entidades de negocio. Las
clases son las siguientes:

o Areas.cs
o AtributoElemento.cs
o Categorias.cs
o Elementos.cs
o Estados.cs
o InformacionesExtendidas.cs
o Sedes.cs

6.3.3.5.2 Inclusiones Capa de Presentacin Se implementa los frontales para


ingresar parmetros y visualizar las consultas realizadas al sistema. El frontal es:

96
- Consultas.aspx: Frontal que hace posible la consulta de los elementos
registrados en el inventario.

6.3.3.5.3 Integracin con Proyecto Base El desarrollo de este mdulos es


integrado con el proyecto base, actualizando el sistema en capas de negocio y
presentacin. Se realiza proceso de pruebas y control de cambio. (Seccin 6.1)

6.3.3.6 Modulo de Generacin de Reportes Este mdulo genera Reportes y


permite su exportacin en archivos .xls.

6.3.3.5.1 Inclusiones Capa de Presentacin Se implementa el frontal que realizar


una consulta especfica y adicionalmente presentar una opcin para exportar los
datos recientemente consultados. El frontal responsable es:

- Reportes.aspx

6.3.3.6.3 Integracin con Proyecto Base El desarrollo de este mdulos es


integrado con el proyecto base, actualizando el sistema en capas de negocio y
presentacin. Se realiza proceso de pruebas y control de cambio. (Seccin 6.1)

6.3.3.7 Modulo Historial de Movimientos Este mdulo es la parte del software


que realiza el registro de todos los movimientos realizados a los elementos
inventariados.

6.3.3.7.1 Inclusiones Base de datos En base de datos se crea y agrega la tabla


requeridas para el funcionamiento de este mdulo:

- Tabla Historial: Consigna all la accin de modificacin que realice un


usuario sobre un elemento especfico.

6.3.3.7.2 Inclusiones Capa de Negocio Se crean las clases que encapsulan


funciones para la insercin y consulta de un registro histrico. Las Clases son:

- Agrupacin Historial que contiene la siguiente clase:


o Historicos.cs: Clase que contiene las funciones necesarias para
registrar un evento de modificacin de atributos de una clase.
Tambin se encontraran all las funciones para traer de base de
datos el listado histrico de movimientos en la aplicacin.

97
6.3.3.7.3 Inclusiones Capa de Presentacin Se implementa los frontales para
consulta el histrico de movimiento de elementos en inventarios. El frontal es:

- Historicos.aspx: Frontal que mostrar el listado de movimientos realizados


por los usuarios de la aplicacin. Mostrando el estado anterior y actual del
movimiento por cada accin.

6.3.3.7.4 Integracin con Proyecto Base El desarrollo de este mdulos es


integrado con el proyecto base, actualizando el sistema en base de datos, capa de
negocio y presentacin. Se realiza proceso de pruebas y control de cambio.
(Seccin 6.1)

6.3.4 Construccin de Servicios Web Representa la exposicin de las funciones


principales que permitirn la interaccin entre el Sistema de Inventarios con
cualquier sistema cliente que requiera comunicarse con l.

Se implementa:

- WCFInventario.svc: Nombre del servicio web que contiene los web


methods expuestos y listos para ser consumidos por sistemas externos.
- Construccin de los mtodos del servicio web que sern visibles desde
instalador cliente.
- Publicacin de Servicio Web para acceder a los WebMethods

Luego se realiza proceso de integracin con el proyecto base. Se realiza proceso


de pruebas y control de cambio. (Seccin 6.1)

6.3.5 Instalador Cliente de Servicios Windows Se genera paquete de


instalacin que se ejecuta como un servicio de Windows que enviar datos de
hardware y software del computador inventariado hacia el Sistema de Inventarios.

6.3.5.1 Inclusiones Base de datos Integracin al modelo Entidad Relacin de las


tablas que tendrn informacin de Hardware y Software enviados desde el
Servicio de Windows instalado en cada computador que ingrese al inventario.

6.3.5.2 Instalador

98
Se genera una nueva solucin en Visual Studio como aplicacin de Windows y
se implementa siguiendo los siguientes pasos:

- Se configura el paquete para que sea un Servicio Windows.


- Se genera una capa de negocio internamente que contiene la interaccin
con componentes WMI (Windows Management Instrumentation) para
captura de los datos de Hardware y Software.
- Se agrega una clase especial que se denomina como un proxy del Servicio
Web que est a la escucha de peticiones en la aplicacin Web de
Inventarios. ste proxy contiene la informacin de los mtodos que se
requieren consumir para enviar los datos de hardware y software del
computador donde ha sido instalado.
- Se agrega un nuevo proyecto a la Solucin de Visual Studio para generar
un paquete de instalacin .msi (Microsoft Installer) y poder distribuir el
Servicio de Windows como un instalador.

6.4 FASE DE PRUEBAS Y CONTROL DE CAMBIOS

6.4.1 Pruebas de Integracin En programacin extrema se realizan pruebas


sobre el proceso de desarrollo y se realizan cuando se incluye un cambio sobre el
proyecto base prototipo, para este caso se realizan pruebas de integracin sobre
mdulo terminado e incluido en el proyecto base. Se realiza proceso y se
diligencia formato de pruebas DD-FPS generados en el proceso de desarrollo del
software. A continuacin se indica las pruebas realizadas.

6.4.1.1 Pruebas de Integracin Proyecto base Se procede a establecer las


pruebas, se realizan y verifican resultados funcionales.

Tabla 35. Formato de Pruebas 1. Proyecto Base


Prueba No. 1
Funcionalidad/Mtodo Proyecto Base
Fecha DD/MM/AA
Detalle Para iniciar la aplicacin debe existir por lo menos un usuario
Administrador que es el nico usuario con la condicin de
Reservado y no podr ser removido de la aplicacin. El
proceso ser el siguiente:

99
Acceder a la URLhttp://localhost/Inventarios
Iniciar sesin con el usuario Administrador Admin
Visualizar la pgina de Inicio de la aplicacin.
Visitar el frontal de administracin (nico frontal activo)
Salir de la aplicacin mediante el control de logout.
Comentarios Con ste ejercicio se comprueba el funcionamiento de la
validacin de usuarios propietarios y especficamente el
usuario reservado de la aplicacin.
Entradas Un Usuario Reservado (Administrador)
Salidas Acceso a la aplicacin y posterior cierre.
Resultado Satisfactorio
Si X No

Tabla 36. Formato de Pruebas 2. Proyecto Base


Prueba No. 2
Funcionalidad/Mtodo Proyecto Base
Fecha DD/MM/AA
Detalle El objetivo es probar la funcionalidad de Gestin de
Usuarios y Gestin de Grupos. El procedimiento completo
es el siguiente:
Acceder como usuario administrador
Ingresar al mdulo de Parametrizacin
Seleccionar la opcin de Administracin de Grupos
Crear un nuevo grupo y darle un nombre
Asignarle al grupo nuevo mdulos existentes
Volver a mdulo de parametrizacin
Seleccionar la opcin de Administracin de
Usuarios
Crear un usuario nuevo
Asignarle al usuario nuevo el grupo recientemente
creado
Cerrar la sesin con el administrador e iniciar sesin
con nuevo usuario
Comprobar que el usuario nuevo puede acceder a
los mdulos del grupo que se le fue asignado.
Comentarios Es necesario realizar toda la operacin anteriormente
descrita para poder comprobar la funcionalidad descrita en
el REQ-FNC-5 que habla de la gestin de grupos, mdulos y
usuarios.
Entradas Nuevo grupo, Nuevo usuario
Salidas Grupo con mdulos asociados y dicho grupo asignado a un
usuario
Resultado Satisfactorio
Si X No

100
Tabla 37. Formato de Pruebas 3. Proyecto Base
Prueba No. 3
Funcionalidad/Mtodo Proyecto Base
Fecha DD/MM/AA
Detalle Prueba de componentes de Access Data Object para
comunicacin con bases de datos. Procedimiento:
Ingresar a la aplicacin como usuario Administrador
Ir al frontal de Configuracin de la Aplicacin
Ir a la pestaa de Configuraciones Generales
Modificar el parmetro de Umbral de minutos para el
timeOut
Consultar en la base de datos la tabla
ParametrosConfiguracion
Comprobar que el campo correspondiente haya sido
modificado
Comentarios Con la operacin anterior se garantiza que el componente de
gestin de acceso a la base de datos est operando. Inclusive
desde el mismo momento en que se accede a la aplicacin se
est poniendo a prueba las funciones de Lectura o escritura en
base de datos.
Entradas Un parmetro por modificar
Salidas La actualizacin en base de datos del parmetro modificado

Tabla 38. Formato de Pruebas 4. Proyecto Base


Prueba No. 4
Funcionalidad/Mtodo Proyecto Base
Fecha DD/MM/AA
Detalle El motivo de la prueba es acceder a la aplicacin y en compaa
del solicitante validar el cumplimiento del REQ-NFN-03 sobre la
condicin de los textos usados en el aplicativo, para determinar
aprobacin sobre el tipo de fuentes que se usaron
Comentarios
Entradas Acceso a la aplicacin
Salidas Visualizacin de las fuentes usadas, tamaos y distribucin.
Resultado Satisfactorio
Si X No

101
Tabla 39. Formato de Pruebas 5. Proyecto Base
Prueba No. 5
Funcionalidad/Mtodo Proyecto Base
Fecha DD/MM/AA
Detalle Para visualizar el panel de bienvenida se debe realizar el
siguiente proceso:
Acceder a la aplicacin con usuario Administrador
Ir a la opcin de Configuracin
Seleccionar la pestaa de Pagina de Bienvenida
Utilizar el editor de texto agregando la informacin
que el usuario desee. Seleccionando diferentes tipos
de tamao, fuente o color de texto dentro del rea de
edicin.
Dar clic en el botn de Guardar
Ir a la vista de Pgina Principal
Comprobar que los cambios realizados se vean
reflejados en el cuadro de mensaje de bienvenida de
la pgina principal.
Comentarios
Entradas Un mensaje nuevo en el apartado de configuracin de
mensaje de bienvenida
Salidas La visualizacin de modificacin en la pgina principal.
Resultado Satisfactorio
Si X No

6.4.1.2 Pruebas de Integracin Modulo Administracin del Sistema Se


procede a establecer las pruebas, se realizan y verifican resultados funcionales.

Tabla 40. Formato de Pruebas 1. Modulo Administracin del Sistema


Prueba No. 1
Funcionalidad/Mtodo Funcionalidad de modificacin de mensaje de bienvenida
Fecha DD/MM/AA
Detalle Desde el mdulo de administracin del sistema es posible
realizar modificacin al mensaje de bienvenida. Para ellos
se realiza el siguiente procedimiento:
Ingresar al sistema utilizando un usuario con
credenciales de administrador
Desde el men de navegacin dirigirse a
configuracin del sistema
Ubicarse en la pestaa con el texto Pgina de
bienvenida.
Utilizar el control con la barra de controles de texto y
la pizarra para escritura de texto. Escribir un mensaje
personalizado.

102
Usar el botn preview para tener la vista preliminar
del texto.
Una vez terminada la edicin se guardar el mensaje
oprimiendo el botn Guardar Cambios.
Para comprobar los nuevos cambios basta con ir a la
pgina de inicio de la aplicacin y ver el mensaje
presente en la pgina inicial.
Comentarios
Entradas Acceso a la configuracin de Pagina de bienvenida
Salidas La modificacin del mensaje de bienvenida desde el control
de edicin de texto.
Resultado Satisfactorio
Si X No

Tabla 41. Formato de Pruebas 2. Modulo Administracin del Sistema


Prueba No. 2
Funcionalidad/Mtodo Modificacin de Configuraciones Generales
Fecha DD/MM/AA
Detalle El Sistema de Inventarios cuenta con un mdulo con acceso
a los parmetros de configuracin que influyen en el
comportamiento de la aplicacin o intervienen en el acceso
de otros recursos como comunicacin hacia otros servidores.
La prueba se realiza de la siguiente manera:
Ingresar a la aplicacin con un Administrador.
Desde el men de navegacin dirigirse a
Configuracin de la aplicacin.
Seleccionar la pestaa Configuraciones Generales.
Modificar los diferentes parmetros (ver deck de
pruebas para mas detalles)
Cada vez que se modifique un valor hay que usar el
botn Guardar para que los cambios tengan efecto.
Comentarios
Entradas Acceso con usuario administrador.
Salidas Parmetros generales modificados
Resultado Satisfactorio
Si X No

103
6.4.1.3 Pruebas de Integracin Modulo de Administracin de Usuarios Se
procede a establecer las pruebas, se realizan y verifican resultados funcionales.

Tabla 42. Formato de Pruebas 1. Modulo Administracin de Usuarios


Prueba No. 1
Funcionalidad/Mtodo Funcionalidad de autenticacin por Directorio Activo
Fecha DD/MM/AA
Detalle El sistema cuenta con un sistema de autenticacin
propietaria pero se requiere integrar un sistema adicional
de Autenticacin por Directorio Activo. Para comprobar su
funcionamiento se realiza el siguiente proceso:
Tener disponible un Servidor de Directorio Activo
Crear un usuario en el Active Directory
Ingresar a la aplicacin como usuario Administrador
Ir a la Configuracin de la aplicacin
En el campo de Direccin de Controlador de
Dominio ingresar la IP del Servidor de Directorio
Activo disponible.
En los campos de Usuario de dominio y Clave
Usuario de Dominio debe ingresar las credenciales
de un usuario validado en el Directorio Activo
Ingresar a Parametrizacin/Configuracin de
Usuarios
Crear un nuevo usuario y en otros datos
seleccionar Tipo de Autenticacin como Directorio
Activo
En Datos Personales para el campo Inicio de
Sesin ingresar el mismo nombre de usuario que
registra en el Directorio Activo
Finalmente ingresar a la aplicacin con el nuevo
usuario usando las credenciales de nombre y
contrasea del Directorio Activo
Comentarios Cuando se crea un usuario con autenticacin por
Directorio Activo la gestin de grupos queda
deshabilitada debido a que sus grupos asignados sern
determinados por los grupos existentes en el Directorio
Activo
Entradas Un usuario creado con autenticacin por Directorio
Activo
Salidas Acceso a la aplicacin con credenciales de Directorio
Activo.
Resultado Satisfactorio
Si X No

104
Tabla 43. Formato de Pruebas 2. Modulo Administracin de Usuarios
Prueba No. 2
Funcionalidad/Mtodo Funcionalidad de Autenticacin Propietaria
Fecha DD/MM/AA
Detalle La aplicacin tambin debe tener un segundo sistema de
autenticacin que ser Propietaria lo que implica que es la
misma aplicacin la que se encarga de autenticar un
usuario. Esta funcin es excluyente a la autenticacin por
Directorio Activo. Para probar su funcionamiento se realiza
lo siguiente:
Acceder con un usuario administrador
Ingresar a Parametrizacin/Configuracin de
usuarios
Dar clic en Nuevo Usuario
Ingresar la informacin de usuario incluyendo el
nombre de Inicio de sesin y en otros datos en la
opcin de Tipo de Autenticacin seleccionar
Propietaria.
Finalizar la creacin con el botn de Crear Nuevo.
En la rejilla de usuarios ubicar el seleccionado y
seleccionar clave para establecer una nueva clave.
Salir e ingresar de nuevo con el usuario recin
creado.
Digitar el nombre de usuario con el Nombre de
Usuario con que se cre y la contrasea que se le
asign.
Comentarios
Entradas Nuevo grupo, Nuevo usuario
Salidas Grupo con mdulos asociados y dicho grupo asignado a un
usuario
Resultado Satisfactorio
Si X No

105
6.4.1.4 Pruebas de Integracin Modulo de Ingreso de Elementos Se procede a
establecer las pruebas, se realizan y verifican resultados funcionales.

Tabla 44. Formato de Pruebas 1. Mdulo de Ingreso de Elementos


Prueba No. 1
Funcionalidad/Mtodo Ingreso de Elementos
Fecha DD/MM/AA
Detalle Esta funcin permitir ingresar los elementos que sern
incluidos en el inventario. Para ello se debe realizar el
siguiente proceso:
Acceder a la aplicacin con un usuario que tenga
acceso al mdulo de ingreso de elementos.
Dirigirse al men Inventarios/Ingreso de
Elementos.
Diligenciar el formulario que se abre a
continuacin donde se incluyen los siguientes
datos: nmero placa, estado, sede, rea,
responsable, observaciones, fecha de ingreso y
categora.
Comentarios En las precondiciones del formato de requerimiento
asociado a sta funcionalidad se mencionaba la
propiedad Id Elemento pero ste valor nico ser
asignado internamente en la base de datos. Para
identificar un objeto se tendr como referencia Nmero
de Placa
Entradas Un Usuario Reservado (Administrador)
Salidas Acceso a la aplicacin y posterior cierre.
Resultado Satisfactorio
Si No X
Detalles a Modificar
Entre las propiedades del elemento a ingresar se incluye la fecha de ingreso
que debiera ser la fecha en que el elemento ha sido adquirido por la empresa.
Pero no siempre se da que el elemento se ingrese el mismo da en que fue
adquirido y ste campo tomaba la fecha actual del sistema. Se requiere que
exista otro campo adicional que permita registra la fecha en que el elemento
ha sido enrolado en la aplicacin (fecha del sistema) y el campo que
actualmente se llama fecha de ingreso pueda ser editable por el usuario
permitiendo ingresar la fecha en que fuera adquirido inclusive si esta fecha es
antecesora del momento en que el sistema de inventarios haya estado en
funcionamiento.
En las pruebas se detecta otra situacin que se considera mejorable y
corresponde a la inclusin de un aspecto de estimacin econmica. Por
peticin del rea de contabilidad se espera tener dos campos adicionales,
uno que haga referencia al costo del elemento y otro que indique el costo
asegurado.

106
6.4.1.5 Pruebas de Integracin Modulo de Consultas Se procede a establecer
las pruebas, se realizan y verifican resultados funcionales.

Tabla 45.Formato de Pruebas 1. Mdulo de Consultas


Prueba No. 1
Funcionalidad/Mtodo Bsqueda de elementos en Inventarios
Fecha DD/MM/AA
Detalle Existe un mdulo para que un usuario consultor pueda
realizar una bsqueda personalizada sobre el inventario. El
procedimiento es el siguiente:
Acceder con un usuario que tenga acceso al mdulo
de Consulta de Elementos
Navegar al men Inventarios/Consultas y seleccionar
la opcin Consulta Inventarios.
All ver un control web que permitir construir la
consulta requerida. El aspecto del control es el
siguiente:

La barra se compone de 4 elementos


o AND: corresponde al tipo de operador lgico
que se utilizar. Puedeser AND, OR Not And
y Not Or
o +: el smbolo ms permite agregar una nueva
barra con una propiedad del elemento que
servir como criterio de bsqueda.

o +[=]: este smbolo permite agregar un bloque


de propiedades para agrupar ms de un sub
criterio de bsqueda

o X: elimina la barra o sub barra creada.


Usar el control para establecer un criterio especfico.
Ejemplo: Quiero buscar los elementos cuyo
nmero de placa sean mayores a 200 y el estado
sea Disponible.

107
Dar clic en Aplicar filtro para que aparezca el
resultado

Comentarios Este control puede ser complejo de utilizar y requiere


obligatoriamente una capacitacin para garantizar xito en
las consultas
Entradas Parmetros de bsqueda que son las propiedades de los
elementos existentes en el sistema de inventarios.
Salidas Rejilla con los resultados de la bsqueda.
Resultado Satisfactorio
Si X No

6.4.1.6 Pruebas de Integracin Modulo de Generacin de reportes Se procede


a establecer las pruebas, se realizan y verifican resultados funcionales.

Tabla 46. Formato de Pruebas 1. Mdulo de Reportes


Prueba No. 1
Funcionalidad/Mtodo Generacin de Reportes
Fecha DD/MM/AA
Detalle Este modulo debe permitir exportar a un archivo en disco el
resultado de una consulta a modo de reporte con el fin de
poder transportar sta informacin. El procedimiento de
prueba es el siguiente:
Utilizar un usuario con acceso al mdulo de
generacin de reportes
Realizar una consulta a la base de Inventarios con
ayuda del control de consultas personalizadas
De generar un resultado posteriormente usar la
opcin de Generar Reporte

Comentarios
Entradas Un criterio de bsqueda especfico
Salidas Un archivo en Excel que contiene el resultado de dicha
bsqueda.
Resultado Satisfactorio
Si X No

108
6.4.1.7 Pruebas de Integracin Modulo Histricos Movimientos Se procede a
establecer las pruebas, se realizan y verifican resultados funcionales.

Tabla 47. Formato de Pruebas 1. Mdulo de Histrico


Prueba No. 1
Funcionalidad/Mtodo Consulta de Histricos
Fecha DD/MM/AA
Detalle Se pretende consultar el historial de movimientos realizados a los
elementos registrados en el sistema de inventarios. El
procedimiento es el siguiente:
Utilizar un usuario con acceso al mdulo de Consulta de
Histricos
Ir al men de navegacin y hallar la ubicacin
Inventarios/Histricos
Acceder y revisar la tabla de histricos presentada.

Comentarios
Entradas Acceso al frontal de histricos
Salidas Todos los registros de histricos de movimientos realizados en la
aplicacin.
Resultado Satisfactorio
Si X No

6.4.1.8 Pruebas de Integracin Instalador Cliente Windows Se procede a


establecer las pruebas, se realizan y verifican resultados funcionales.

Tabla 48. Formato de Pruebas 1. Instalador Cliente


Prueba No. 1
Funcionalidad/Mtodo Bsqueda de elementos en Inventarios
Fecha DD/MM/AA
Detalle Probar la instalacin y el comportamiento del Cliente para
Windows llamado InfoHardware. El procedimiento es el
siguiente:
Descargar el paquete InforHardware.msi
Iniciar el asistente de instalacin en el computador
que ser registrado en la base de inventarios
Ir al destino donde se instalaron los archivos
resultantes posiblemente en Archivos de Programa.
Identificar el archivo InfoHardwareCyza.exe.config y
abrirlo con un editor de texto
Identificar la etiqueta dentro del XML siguiente
<appSettings>
<add key="NumeroPlaca" value="XXXXX"/>
</appSettings>
En value colocar el nmero de placa que tendr

109
asignado fsicamente el computador
Guardar y cerrar.
Reiniciar el computador
El programa que se instala es realmente un Servicio
de Windows que se ejecutar cada vez que se
reinicie el computador y har envo de la informacin
de software y hardware de la maquina host.
Comprobar en base de datos la existencia de nueva
informacin procedente del cliente de Servicio
Windows instalado

Comentarios
Entradas Un nmero de placa en el archivo de configuracin de
InfoHardware
Salidas La generacin de registros que contienen informacin de
hardware y software de la mquina a la que se le fue
instalado el Servicio de Windows.
Resultado Satisfactorio
Si X No

6.4.2 Control de Cambios Las pruebas que tuvieron resultado no satisfactorio, se


realiza registro en formato DD-FCC y se realiza el proceso de recodificacin para
hacer los cambios requeridos para el funcionamiento del sistema. Despus de
hacer los cambios se vuelve a realizar la prueba y se vuelve a generar
documentacin hasta que la prueba satisfaga la funcionalidad buscada.

6.4.2.1 Historial de Cambios Las A continuacin se relacionan los cambios


realizados y las pruebas generadas.

Tabla 49. Historial de Cambios


Historial de Cambios
Modulo Descripcin Responsab
le
Se corrige la carga de los Grupos Creados para
Administracin Jorge
ser visualizados en el panel de usuarios a la
de grupos Araque
hora de intentar asignar un grupo a un usuario.
Puede suceder que existan dos grupos
diferentes pero que incluyan a un mismo
Administracin mdulo. Se modifica la aplicacin para que un Jorge
de grupos usuario que tenga dos grupos que compartan Araque
un mdulo no visualice en su perfil dos veces el
mismo mdulo en el men de la aplicacin.

110
En el formulario de Ingreso de Elementos se incluye
Ingreso de un campo nuevo llamado Fecha de Registro que Jorge
Elementos obtiene la fecha del sistema y se edita el existente Araque
campo Fecha de Ingreso para que sea editable.
Por peticin de Contabilidad se debe incluir en el
Ingresos de
Jorge
formulario de Ingreso de Elementos los campos
elementos Costo y Costo Asegurado
Araque
Aunque el mdulo de consultas cuenta con un
control que permite personalizar las bsquedas de
Mdulo de Jorge
forma acertada se requiere un control adicional que
Consultas haga bsquedas elementales por Nmero de Placa o
Araque
por Serial (con pistola lectora)
Se requiere que se pueda alternar entre el control
Mdulo de
Jorge
elemental de bsqueda y el control personalizado de
Consultas bsqueda
Araque

6.4.2.2 Prueba Despus de Cambios Se procede a establecer las pruebas


despus de los cambios realizados, se ejecutan y verifican resultados funcionales.

Tabla 50. Prueba 1 para REQ-FNC-5


Prueba No. 1
Req. Asociado REQ-FNC-5
Funcionalidad/Mtodo Sobre Proyecto Base Panel de administracin de usuarios
y asignacin de grupos
Fecha DD/MM/AA
Detalle Aunque se estaban creando los grupos en su respectivo panel de
Administracin de usuarios, no era posible asignar un grupo a
determinado usuario por lo que se incluye en el panel de usuarios
un link para visualizar y seleccionar los grupos que sern
asignados a ese usuario.
Procedimiento:
Acceder como Administrador
Ingresar al mdulo de parametrizacin
Seleccionar la opcin de Administracin de Usuarios
Crear un usuario nuevo
Marcar el link de Grupos que abrir una ventana
emergente
Seleccionar uno o varios grupos (previa configuracin de
mdulos dentro de cada grupo)
Comentarios
Entradas Nuevo usuario y seleccin de uno o varios grupos para
dicho usuario
Salidas Usuario con grupos asociados y acceso de ese usuario a los
mdulos enlazados a los grupos a los que pertenece
Resultado Satisfactorio
Si X No

111
Tabla 51. Prueba 2 para REQ-FNC-05
Prueba No. 2
Req. Asociado REQ-FNC-5
Funcionalidad/Mtodo Sobre Proyecto Base Panel de administracin de usuarios y
asignacin de grupos
Fecha DD/MM/AA
Detalle Un usuario puede tener asignado ms de un grupo y cada
grupo puede contener ms de un mdulo en comn. El men
de navegacin de cada usuario se construye dependiendo de
la cantidad de mdulos que ese usuario tenga asignados por
intermedio de los grupos. Anteriormente suceda que si dos
grupos tenan un mismo mdulo enlazado entonces el men
de navegacin del usuario construa dos veces el mismo
Men tem. Esto se arregla para que el sistema detecte un
solo mdulo. Prueba:
Acceder como Administrador
Ingresar al mdulo de parametrizacin
Seleccionar la opcin de Administracin de Grupos
Editar un primer grupo en el link modulos y enlazar el
mdulo de Configuracin de la Aplicacin.
Editar un segundo grupo con el mismo mdulo del
punto anterior
Seleccionar la opcin de Administracin de Usuarios
Seleccionar un usuario creado
Marcar el link de Grupos que abrir una ventana
emergente
Seleccionar los dos grupos que tienen el mdulo de
Administracin de usuario.
Guardar cambios y salir del perfil de Administrador
Ingresar con el usuario al que fue enlazado los dos
grupos previos
Comprobar el men de navegacin y detectar si se ve
una sola vez la opcin de Configuracin de la
Aplicacin.
Comentarios
Entradas Usuario con grupos enlazados (previamente editados con el
mismo mdulo)
Salidas Men de Navegacin sin opciones duplicadas.
Resultado Satisfactorio
Si X No

112
Tabla 52. Prueba 3 para REQ-FNC-03
Prueba No. 3
Req. Asociado REQ-FNC-03
Funcionalidad/Mtodo Sobre Mdulo de Ingreso de Elementos, Registro de nuevo
Elemento, modificacin de campos en el formulario
Fecha DD/MM/AA
Detalle Originalmente exista un campo de Fecha de Ingreso pero no
era editable y tomaba la fecha del sistema. Se modifica el
campo para que sea editable. Procedimiento de prueba:
Acceder a la aplicacin con ayuda de un usuario con
acceso al mdulo de ingreso de elementos.
Navegar hasta Inventarios/ Ingreso de Elementos.
Comprobar que el formulario contenga el campo de
Fecha de Ingreso con opcin de ser editado
manualmente.
Diligenciar los datos completos del formulario.
Finalizar con el botn Ingresar Elemento
Comentarios Internamente al momento de Ingresar el elemento ya se
encuentra incluido el campo de Fecha de Registro pero ste
no requiere ser visualizado en el frontal y tomar la fecha del
sistema.
Entradas Nmero de Placa, Marca, Modelo, Serial, Sede, rea,
Responsable, Observaciones, Fecha de Registro, Fecha
Ingreso, Categora
Salidas Un nuevo elemento ingresado al Inventario.
Resultado Satisfactorio
Si X No

Tabla 53. Prueba 4 para REQ-FNC-03


Prueba No. 4
Req. Asociado REQ-FNC-03
Funcionalidad/Mtodo Sobre Mdulo de Ingreso de Elementos, Registro de nuevo
Elemento, modificacin de campos en el formulario
Fecha DD/MM/AA
Detalle Debido a una peticin hecha por el Departamento de
Contabilidad se agregan dos nuevos campos. El
procedimiento de pruebas es el siguiente:
Acceder a la aplicacin con ayuda de un usuario con
acceso al mdulo de ingreso de elementos.
Navegar hasta Inventarios/ Ingreso de Elementos.
Comprobar que el formulario contenga los campos de
Costo y Costo Asegurado
Intentar campos alfabticos para comprobar que se
valida el ingreso nicamente de datos numricos
Intentar guardar.

113
De no ser posible ingresar datos alfabticos en los
nuevos campos, corregir y finalmente guardar con
Ingresar Elemento.
Comentarios
Entradas Nmero de Placa, Marca, Modelo, Serial, Sede, rea,
Responsable, Observaciones, Fecha de Registro, Fecha
Ingreso, Categora, Costo, Costo Asegurado
Salidas Un nuevo elemento ingresado al Inventario.
Resultado Satisfactorio
Si X No

Tabla 54. Prueba 5 para REQ-FNC-05


Prueba No. 5
Req. Asociado REQ-FNC-07
Funcionalidad/Mtodo Sobre Mdulo de Consulta de Elementos
Fecha DD/MM/AA
Detalle Utilizar los controles de bsqueda presentes en el frontal de
Consultas. El procedimiento es el siguiente:
Acceder con un usuario que tenga acceso al mdulo de
Consulta de Elementos
Navegar al men Inventarios/Consultas y seleccionar la
opcin Consulta Inventarios.
Comprobar que ahora existen dos tipos de controles:
o Bsqueda de elemento por Placa o Serial
o Bsqueda Personalizada

En el primer control marcar el botn de Placa e ingresar un


valor. Comprobar el resultado con el botn buscar.
Luego seleccionar Serial y realizar el mismo ejercicio del
punto anterior.
Luego alternar con el control de filtro personalizado
poniendo la opcin Si. All aparecer el control de
bsqueda. Generar algunos criterios y comprobarlos con el
botn de Aplicar Filtro
Comentarios
Entradas Uso de algunos criterios de bsqueda de elementos
Salidas Rejilla con los registros que cumplen con los criterios
descritos.
Resultado Satisfactorio
Si X No

114
6.4.3 Pruebas de Aceptacin Se realizan pruebas del prototipo base de proyecto integrado en su totalidad para
verificar la funcionalidad del programa en general y su aceptacin y posterior implementacin a productivo. El
proyecto base deja de ser prototipo y pasa a ser el software como tal, Sistema de Gestin de Inventarios. Se
diligencia formato de Formato de Pruebas de software.

Tabla 55. Formulario de Pruebas de Aceptacin


PROCESO SUBPROCESO DESCRIPCION USUARIO ACCION DE RESULTADO DE SATISFACTOR
ENTRADA SALIDA IO?
Frontal de Login Ingreso de Usuario y Frontal principal de Administradores, Ingreso de Accede a la pgina Si
Contrasea acceso a la aplicacin consultores credenciales de principal
usuario existente
Ingreso de Texto Verifique nombre SI
credenciales de de usuario y/o clave
usuario inexistente asignada
Parametrizacin Administracin de Frontal para gestionar Administradores Creacin de nuevo Usuario Creado SI
usuarios la creacin, usuario
modificacin y Asignacin de grupos Usuario Modificado SI
eliminacin de a usuario creado
usuarios Inactivacin de usuario No se puede acceder a la SI
creado aplicacin
Cambio de clave de Clave modificada SI
usuario creado
Borrar primer usuario No es posible eliminar el SI
administrador administrador primario
Borrar usuario creado Usuario eliminado SI
posteriormente
Administracin de Frontal para gestionar Administradores Creacin de un grupo Grupo creado SI
Grupos la creacin, nuevo de tipo
modificacin y Propietario
eliminacin de grupos Asignacin de varios Mdulos asignados SI
mdulos del sistema al correctamente a grupo
grupo creado
Eliminacin del grupo Luego de mensaje de SI
recientemente creado confirmacin se elimina el
grupo
Creacin de grupo Se crea el grupo y se SI
como tipo Directorio habilita el mapeo LDAP
Activo
Eliminacin de grupo Se elimina el grupo SI

111
de tipo Directorio
Activo
Administracin de Pagina de Bienvenida Vista que permite Administradores Ingresar un mensaje Se modifica el mensaje. SI
Configuracin modificar el mensaje personalizado de
de bienvenida con bienvenida.
ayuda del control de Editar el mensaje Se modifica el mensaje SI
editor de texto existente y cambiar el
texto
Cambiar el color del Se modifica el color del SI
texto existente texto

Configuraciones Vista desde la cual se Administradores Ingresar una direccin Se guarda el parmetro. SI
Generales pueden modificar los de controlador de (pero no es posible
parmetros de dominio inexistente. validar el acceso con un
configuracin de la usuario de directorio
aplicacin. activo
Ingresar la direccin Se guarda el parmetro. SI
de controlador de Los usuarios de directorio
dominio correcta activo pueden ingresar.
Se establece un El usuario permanece SI
timeout de la inactivo durante 3
aplicacin en 3 minutos y una vez intenta
minutos realizar una accin es
redireccionado a la
pantalla de login.
Dejar el parmetro de Solo permite el acceso a SI
Activar validacin del la aplicacin desde
browser en SI navegadores permitidos
(IE, Chrome o FireFox)
Activar la validacin de Realiza mapeo de los SI
grupos LDAP grupos del Directorio
Activo
Inactivar la validacin Carga los mdulos de la SI
de grupos LDAP aplicacin almacenados
en la base de datos
Se ingresa un usuario Guarda el parmetro y SI
y contrasea de garantiza la carga de
directorio activo grupos LDAP
Inventarios Ingreso de Elementos Frontal que contiene el Usuario Radicador Intentar Ingresar El programa exige el SI
formulario que Elemento sin campo requerido con un
permitir la operacin completar las casillas texto de validacin por
de ingreso de del formulario cada campo sin
elementos completar
Abrir las listas Aparecen correctamente SI
desplegables para las lista de estado, sede,
comprobar que los area, categora

112
datos son trados de la
base de datos
Intentar ingresar un Se muestra el texto SI
articulo usando un Compruebe que el
nmero de placa ya nmero de placa
existente en la base de ingresado no haya sido
datos usado previamente.
Se ingresa un articulo Aparece el texto SI
con todos los datos de Elemento ingresado
forma coherente y satisfactoriamente
usando un nmero de
placa nuevo
Consultas Frontal que permite Usuario Consultor, Usar el control bsico Como la placa 400 existe SI
realizar bsquedas de usuario radicador (de consultas por placa se presenta la
los elementos que se o serial) y seleccionar informacin asociada a
encuentran registrados el valor 400 dicha placa desde la
en el inventario rejilla inferior de la
pgina.
Usar el control bsico En la rejilla inferior se SI
y seleccionar un presenta el texto no hay
nmero de placa no registros para visualizar
registrado en base de
datos
Usar el control bsico Se presenta el o los SI
para buscar un serial elementos (accin
existente en base de permitida) que tenga el
datos mismo nmero serial
En el frontal marcar SI Se activa un nuevo SI
en usar filtro control y se deshabilita la
personalizado? bsqueda bsica
Desde el control El criterio de cero SI
personalizado dar clic condiciones traer todos
en Aplicar Filtro sin los elementos existentes
criterios en la base de datos
Agregar un criterio La consulta trae todos los SI
donde el nmero de elementos que sean
placa sea mayor mayores a 200
estricto que 200
Gestin de Elementos Frontal donde se Usuario consultor, Usar el control El control filtra por el SI
puede realizar proceso usuario radicador, personalizado para criterio seleccionado y
de modificacin y usuario administrador generar el criterio de trae en la rejilla el
reasignacin de los bsqueda que traiga resultado de la bsqueda
elementos ya los elementos que se mientras el elemento
existentes en la base desean editar. cumpla con dicho criterio
de datos Del resultado de un Aparece una ventana SI
bsqueda seleccionar emergente con toda la

113
un registro y dar clic en informacin editable del
Editar elemento.
Modificar uno de los Se cierra la ventana SI
datos del elemento del emergente y se aplica el
inventario y guardar filtro de nuevo. Los datos
se han modificado
correctamente
Intentar eliminar un No es posible ya que no SI
elemento de la base existe una opcin que
de datos de inventarios admita este comando
Reportes Frontal que permite Usuario consultor, Realizar una consulta Al aplicar filtro se obtiene SI
una consulta y usuario radicador. con ayuda del control el resultado en la rejilla
posterior generacin personalizado. inferior de la pgina. De
de reporte que no coincidir la bsqueda
consignar en un aparecer el texto no
archivo con formato hay registros para
Excel la exportacin de visualizar
la consulta. Descargar reporte No es posible mientras SI
antes de consultar no se haga una consulta
Descargar reporte El link generar reporte SI
luego de una consulta es visible luego de que la
bsqueda arroje
resultados
Historico de Frontal que contiene Abrir el frontal para Se visualiza una rejilla SI
Movimientos todo el histrico de visualizar el listado con las propiedades: Tipo
movimientos histrico de de objeto, estado
realizados por movimientos anterior, estado actual,
cualquier usuario de la tipo movimiento, fecha
aplicacin con la movimiento y usuario
facultad de alterar las movimiento
propiedades de un
elemento existente en
la base de datos

114
6.5 FASE CIERRE

Con pruebas de Satisfaccin y Aceptacin del sistema, el software ya no es


prototipo, pasa a ser el Sistema de inventarios Cyza, 100% funcional.

Para la entrega, se cumple con los requisitos del checklist (tabla 56) y se firma
acta de entrega y recibido a satisfaccin.

Tabla 56. Lista de entregables del proyecto


Entrega Check Anexo
Medios con Instalador y software (DVD)  N/A
Manual de Usuario Administrador Inventarios 
Manual de Usuario Mdulos de Inventarios 
Manual Tcnico de Publicacin Inventarios 
Documentacin Pruebas satisfactorias 
Acta de recibido a Satisfaccin 

115
7 ANLISIS COSTO/BENEFICIO

Es el anlisis que pone en consideracin los costos y beneficios del nuevo sistema
versus el anterior.

Debido un grado de dificultad, el proyecto en vez de un beneficio monetario,


entrega ventajas operativas brindando soporte a procesos internos de la compaa
que no eran medibles en trminos de ganancias lucrativas. Sin embargo se
expone los beneficios intangibles que son ms importantes que los cuantificables
desde el punto de vista econmico. (Kendall p.331)[8]

7.1 COSTOS

Representaron los conceptos requeridos para implementar el sistema propuesto.


Todos son medibles y estimables en unidades econmicas.

Los costos involucrados en el sistema de gestin de inventarios son los siguientes:

Coste de desarrollo Tiempo: 611 horas de desarrollo. Coste al proyecto:


$3.818.750
Adquisicin de equipos Tiempo: 5 aos. Coste al proyecto: $0
Licencias de herramientas desarrollo Tiempo: 16 meses. Coste al
proyecto: $0
Adquisicin de infraestructura Tiempo: 5 aos. Coste al proyecto: $0
Gastos de material (papelera) Tiempo: 16 meses. Coste al proyecto:
$60.000
Gastos de mantenimiento Tiempo: despus de 16 meses. Coste al
proyecto: $120.000 anuales
Proveedores de internet Tiempo 16 meses. Coste al proyecto: $0
Gastos de formacin Tiempo: 1 mes. Coste al proyecto: $0

116
7.2 BENEFICIOS

Corresponde a todo tipo de ventajas y aspectos positivos del proyecto y ganancias


brindadas por el software. Son beneficios tangible y cuantificable en trminos
econmicos o intangibles y cualitativos y no ponderables de una forma objetiva.
Los beneficios identificados en el proyecto son los siguientes:

Tangibles:

Incremento de productividad: Mejor utilizacin de recursos humanos. Se


dispone de un solo operario que realice la jornada de inventario de una
sede especfica en vez de dos operarios que originalmente se asignaban. El
tiempo de jornada por un operario que utilice la herramienta propuesta ser
de al menos la mitad de lo que un operario lo haca de manera manual lo
que se traduce en un ahorro del 50% en gastos operativos por contratacin
de mano de obra.
Ahorro de gastos de mantenimiento: Orientado a los elementos
inventariados. El nuevo sistema permite saber de forma inmediata el estado
de cada artculo y comprobar si an estn dentro del periodo de garanta
del proveedor. Por desconocimiento de ste concepto y la falta de
informacin a tiempo hubo en promedio un coste anual de $1.000.000.
Justificacin: Cyza Outsourcing S.A. debi pagar a terceros arreglos
urgentes por fallos a nivel de hardware por no contar con un repositorio que
permitiera consultar si los componentes con fallas estaban dentro del
periodo de garanta del proveedor.
Ahorro de material: Con el uso del aplicativo se elimin la implementacin
de planillas manuales e impresas en formato fsico de cada empleado como
se llevaba anteriormente. Se estima una reduccin de coste de por lo
menos $200.000 anuales.
Justificacin: En los ltimos tres periodos ha sido necesario llevar un
formato de paz y salvo que describe los artculos asignados a cada
empleado. Son alrededor de 5 hojas ($1.000) por persona y se lleva registro
en promedio de 200 personas. Estas hojas deben ser reemplazadas al
finalizar cada ao al renovar la informacin consignada.
Ahorro de costes por Incumplimiento: El uso del nuevo sistema evita no
incurrir en fallos por incumplimientos correspondientes a los Acuerdos de
Nivel de Servicio pactados con los clientes externos a causa de no conocer

117
a tiempo el nmero de mquinas que se encontraban no operativas dentro
de uno de los proyectos convenidos. Una de las clusulas permita una
cantidad mnima de mquinas que podran no funcionar pero no se poda
sobrepasar ste mnimo. Por la violacin de sta clusula la empresa dej
de percibir $10.000.000 en un solo periodo anual. Naturalmente este tipo de
eventualidades son espordicas pero igualmente perjudiciales.

Intangibles:

Software hecho a la medida garantizando cumplir con necesidades


puntuales del cliente permitiendo adaptar sus funciones a los procesos
particulares en la compaa.
Sistematizacin de los procesos de control sobre los activos de Cyza
Outsourcing S.A. permite tener una mejor administracin de los recursos de
la compaa ofreciendo veracidad de la informacin y centralizacin de la
misma.
Mejoramiento ante la reaccin de la puesta en marcha de un nuevo
proyecto de servicio en la empresa, permitiendo disponer de los equipos
requeridos al conocer su estado y accesibilidad.
Lograr que el rea de infraestructura que funciona de manera transversal
sobre los proceso de Cyza tenga una mejor imagen dentro de la compaa
brindando un verdadero soporte a nivel de recursos e informacin valiosa.
El sistema de control de inventarios evita incurrir en fallos por
desconocimiento de existencia de equipos disponibles, fallos sobre
acuerdos de nivel de servicios o sub-utilizacin de recursos por elementos
que realmente se pueden explotar traducindose en ahorros significativos
para la empresa.

118
7.3 COMPARATIVO CON OTRAS PROPUESTAS DEL MERCADO

Tabla 57. Tabla Comparativa de otras propuestas

SISTEMA
SOFTWARE TPV ECOUNTE SYMANTE
CARACTERSTICA CONTROL
MNICA COMERCIOS RP C ALTIRIS
INV.
Acceso de administracin
SI NO NO SI SI
desde la Web
Uso de Pistola lectora SI SI SI SI NO
Generacin de Reportes SI SI SI SI SI
Vinculacin de usuarios contra
SI NO NO NO NO
Directorio Activo
Mdulo de Consultas SI SI SI SI NO

Base de datos controlado por


SI SI NO NO SI
Cyza

Implementacin de mdulos
SI NO SI SI NO
Independientes

Software hecho a la medida SI NO NO NO NO

Software integrable con otros


aplicativos de Cyza SI NO NO NO NO
Outsourcing
Permite expandir
funcionalidades futuras an SI NO NO NO NO
despus de publicado.
ESTADOS ESTADOS ESTADOS
Pas de Origen ESPAA
UNIDOS UNIDOS UNIDOS
U$176
$ 290.000 por 93 (eur) por $110,000
Costo producto $7,935,000 Para 10
terminal terminal mensual
usuarios
Soporte anual $0 N/d 68 (eur) $0 U$100
Terminal adicional $0 $290.000 88 (eur) $0 U$90

Fuente de precios TPV Comercios:


http://www.shareit.com/product.html?productid=300271859&sessionid=261342581
4&random=46f75a50509feb2ce736871d9ea574b9

Fuente de precios EcountERP:


http://www.ecounterp.com/es/manual/resources-pricing.jsp

Fuente de precios Symantec Altiris:


http://buy.norton.com/es-mx/norton-software

119
Se decide evaluar la oferta del mercado contra las caractersticas puntuales de la
propuesta de Sistema de Control de Inventario para Cyza Outsourcing debido a
que se trata de un software a la medida y se pretende evaluar si existe en el
mercado una propuesta que cumpla con todos los requisitos sugeridos al software
que se pretende desarrollar.

En este cuadro comparativo se incluye un producto llamado Symantec Altiris que


es un software de inventario de equipos y realiza operaciones de control sobre
terminales finales logrando monitorear internamente las configuraciones y
caractersticas de hardware que cada uno de los equipos utiliza, as como
aplicativos de software que tambin se encuentren instalados presentando
informacin completa sobre la manipulacin de cada terminal (EndPoint). No
dispone de ningn tipo de funcionalidad contable.

En general las dems propuestas cumplen con el propsito de manejar un proceso


de inventario pero todos ellos estn orientados a cumplir esta funcionalidad desde
el mbito de una empresa comercial y es por eso que inclusive tienen mdulos de
contabilidad, manejo de flujo de caja, rendimiento de vendedores, etc. Pero son
funcionalidades que Cyza Outsourcing no requiere implementar.

Se concluye que las propuestas existentes en el mercado no satisfacen


completamente las necesidades de Cyza Outsourcing en funcionalidad debido a
que prcticamente Cyza requiere de un desarrollo capaz de llevar la gestin de
inventarios de los equipos fsicos de la empresa pero adems requiere de un
componente que monitoree internamente las caractersticas de software, as como
los componentes de hardware configurados en cada mquina y finalmente que
este software debe poder integrarse con un sistema de autorizacin compatible
con Active Directory.

120
8. CONCLUSIONES

Se entrega un software capaz de inventariar elementos de software y


hardware recopilando toda informacin relevante y caracterstica de cada
elemento.

Se implementa una funcionalidad de acceso con integracin de


autenticacin contra el Directorio Activo de la empresa garantizando el uso
de un solo usuario para varios sistemas de la compaa.

Se incluye en la solucin desarrollada un instalador cliente para ser


montado en los equipos de cmputo de la empresa con la capacidad de
monitorear la configuracin de hardware y software.

La administracin de los usuarios en la aplicacin tiene la flexibilidad


suficiente para personalizar roles con accesos especficos dentro de la
aplicacin.

El proceso de enrolamiento de nuevos elementos al Sistema de Gestin de


Inventarios integra satisfactoriamente el uso de la pistola lectora.

Durante el proceso de desarrollo de la solucin se adopta la metodologa de


Programacin Extrema poniendo en prctica sus valores y principios y se
aplica el uso complementario de Prototipos como herramienta colaborativa
presente durante toda la etapa de desarrollo.

Se realiza la publicacin y entrega del Sistema de Gestin de Inventarios


debidamente instalado en los servidores de Cyza Outsourcing S.A para su
uso operativo en el ambiente de produccin de la compaa.

121
9. REFERENCIAS

[1] Muller, Max. Fundamentos de la Administracin de Inventarios. Bogot: Grupo


Editorial Norma 2004.
[2] Taha, Hamdy A. Investigacin de Operaciones. (7 Edicin). Mxico: Pearson
Educacin. 2004.
[3] Muller, Max. Fundamentos de la Administracin de Inventarios. Bogot: Grupo
Editorial Norma 2004.
[4] Ceballos, F. J. Enciclopedia de Microsoft Visual C#. Madrid: Alfaomega RA-
MA. 2006
[5] Johnson, G. y Northrup, T. Microsoft.NET Framework 2.0 Web-Base Client
Development. Washington: Microsoft Press 2007.
[6] Fritz Bauer Citado por Pressman, Roger S. Ingeniera de Software; un enfoque
prctico. McGraw Hill. Espaa. 2002.
[7] Kendall, Kenneth E. Anlisis y Diseo de Sistemas. Elaboracin de Prototipos,
RAD y Programacin Extrema. Mxico. 1995.
[8] Beck, Kent. Extreme Programming Explained: Embrace Chance. Addison-
Wesley Pub Co. 1999.
[9] Kendall, Kenneth E. Anlisis y Diseo de Sistemas. Elaboracin de Prototipos,
RAD y Programacin Extrema. Mxico. 1995.
[10] Kendall, Kenneth E. Anlisis y Diseo de Sistemas. Preparacin de la
Propuesta de Sistemas. Mxico. 1995.
[11] PMBOK@, Project Mannager Institute, Guia de Fundamentos para la Direccin
de Proyectos. 2014.

122
10. BIBLIOGRAFA

Beck, Kent. (1999) Extreme Programming Explained: Embrace Change. (1


Edicin). Addison-Wesley Pub Co.
Ceballos Sierra, Francisco Javier. (2006) Enciclopedia de Microsoft Visual
C#. Introduccin a Microsoft.Net. Mxico: Alfaomega Grupo Editor, S.A.
Chiavenato, Idalberto (2006) Introduccin a la Teora General de la
Administracin. (7 Edicin). Mexico: McGraw Hill.
Fowler, Martin. Scott, Kendall (2000) UMLGota a Gota. Mxico: Prentice
Hall.
INSTITUTO COLOMBIANO DE NORMALIZACION Y CERTIFICACION.
Presentacin de Tesis, Trabajos de Grado y Otros Trabajos de
Investigacin. NTC 1486. Sexta Edicin. Bogot D.C.
Johnson, Glenn (2007) Microsoft.NETFramenwork Web-Based. Training Kit.
Washington: Microsoft Press
Kendall, Kenneth E. (2005) Anlisis y Diseo de Sistemas. (6 Edicin).
Mxico: Pearson Education.
Muller, Max (2004) Fundamentos de la Administracin de Inventarios.
Bogot: Grupo Editorial Norma.
PerezLopez, Cesar (2011). Microsoft SQL Server 2008 R2 Mxico: Ra-Ma
Editorial.
Pressman, Roger S. (2002). Ingeniera de Software. Un Enfoque Prctico.
(5 Edicin). Espaa: McGraw Hill.
Taha, Hamdy A. (2004) Investigacin de Operaciones (7 Edicin). Mxico:
Pearson Educacin.

123
11. CITAS DE INTERNET

Aasco Baquero, Carlos Dorian. Administracin de una Bodega. Capitulo


12: Control de Inventarios. Publicado el 6 de agosto de 2010. En
http://www.emagister.com/curso-administracion-bodega/control-inventarios
Cdigo de Barras, (8 de octubre de 2008) ABC de cdigo de barras.
Consultado de http://www.idautomatica.com/informacion-tecnica/codigo-de-
barras.php
Escner de Lpiz ptico, (5 de febrero de 2007) Escner, Lpiz ptico y
escritorio. Blog consultado en http://trabajocarloshendrick.blogspot.com/
Generador de Cdigo de Barras Online. Consultado de http://barcode.tec-
it.com/barcode-generator.aspx?LANG=es
Una Aproximacin a los Modelos de Inventarios (s.f) Consultado el da 20
de agosto de 2012, de http://www.investigacion-
operaciones.com/Modelo%20Inventarios.htm
Software Mnica. Consultado el 22 de julio de 2013, de
http://www.technotel.com/
Gabriela Flores Talavera, Formando Investigadores. Estado del Arte.
Publicacin del 17 de enero de 2011. http://formandoinvestigadores-
gft.blogspot.com/2011/01/estado-del-arte.html
Introduccin a la programacin Multicapa. David Esteban Vergara Zapata.
Publicado el 29 de mayo de 2004. En
http://www.elguille.info/colabora/puntoNET/jevergara_Multitier.htm
Plantilla de estructura de desglose de trabajo (EDT). Ricardo Arturo
Rodrguez Morillo. Publicado el 23 de diciembre de 2013. En
http://www.pmoinformatica.com/2013/12/plantilla-estructura-desglose-
trabajo.html

124
LISTA DE ANEXOS

Anexo A. Acta de Seguimiento primera visita.

Anexo B. Acta de Seguimiento segunda visita

Anexo C. Formatos con concepto de Viable

Anexo D. Sbana de Notas.

Anexo E. Contrato Laboral.

Anexo F. Acta de Entrega a Satisfaccin.

125

Vous aimerez peut-être aussi