Sunteți pe pagina 1din 117

UNIVERSIDAD PRIVADA ANTENOR ORREGO

FACULTAD DE INGENIERA
ESCUELA PROFESIONAL DE INGENIERA DE COMPUTACIN
Y SISTEMAS

TESIS PARA OBTENER TTULO DE INGENIERO DE COMPUTACIN Y


SISTEMAS

IMPLEMENTACIN DE UN SISTEMA INFORMTICO WEB

PARA LA GESTIN DE COMPRAS DE LA EMPRESA


CERTICOM S.A.C USANDO LA METODOLOGA ICONIX Y
FRAMEWORKS SPRING, HIBERNATE Y RICHFACES
AUTOR(ES):
Br. Wilson Carbajal, Dennis Martn

ASESOR:
Ing. Mendoza Puerta, Henry Antonio

TRUJILLO PER
2013

IMPLEMENTACIN DE UN SISTEMA INFORMTICO WEB


PARA LA GESTIN DE COMPRAS DE LA EMPRESA
CERTICOM S.A.C USANDO LA METODOLOGA ICONIX Y
FRAMEWORKS SPRING, HIBERNATE Y RICHFACES
HOJA PARA FIRMA DE JURADOS Y ASESOR

Elaborado por:
Br. Wilson Carbajal, Dennis Martn

Aprobada por:

Ing. Patricia Vigo Pereyra


Presidente CIP: 070724

Ing. Jos Caldern Sedano


Secretario CIP: 139198

Ing. Freddy Infantes Quiroz


Vocal CIP: 139578

Ing. Henry Mendoza Puerta


Asesor CIP: 139568

II

PRESENTACION

Seores Miembros del Jurado:


De conformidad y en cumplimiento de los requisitos estipulados en el
reglamento de grados y ttulos de la Universidad Privada Antenor Orrego,
ponemos a vuestra disposicin la presente tesis titulado: IMPLEMENTACION
DE UN SISTEMA INFORMTICO WEB PARA LA GESTIN DE COMPRAS
DE LA EMPRESA CERTICOM S.A.C USANDO LA METODOLOGA ICONIX
Y FRAMEWORKS SPRING, HIBERNATE Y RICHFACESpara obtener el
ttulo profesional de ingeniero de Computacin y Sistemas mediante la
presente Tesis de investigacin.
El contenido del presente trabajo ha sido desarrollado tomando como marco de
referencia los conocimientos adquiridos durante mi formacin profesional,
consulta de fuentes bibliogrficas e informacin obtenida en la Empresa
CERTICOM S.A.C.

El Autor.

III

DEDICATORIA

A Dios nuestro creador y hacedor de todas las


cosas, quinnos da aliento y fuerzas de seguir
adelante.
A mis padres que con su constante apoyo me han
permitido llegar lejos.
A mis hermanos, quienes siempre me dan aliento
para seguir adelante.

Wilson Carbajal, Dennis Martn

IV

AGRADECIMIENTOS

Agradezco amiasesor, por brindarme su paciencia, experiencia, compromiso y excelente


direccin en el presente trabajo. A nuestros docentes por impartirnos su conocimiento y
profesionalismo.
Asimismo, agradezco a todo el personal de la Empresa, quienes me compartieron su
conocimiento en el levantamiento de informacin, asimismo siempre se mostraron atentos ante
nuestras inquietudes.
A mi familia por apoyarnos, por estar siempre presentes y brindarnos sus consejos, experiencia
y ganas de superacin.
Gracias a todos.

El Autor.

RESUMEN
IMPLEMENTACION DE UN SISTEMA INFORMTICO WEB PARA LA

GESTIN DE COMPRAS DE LA EMPRESA CERTICOM S.A.C USANDO LA


METODOLOGA ICONIX Y FRAMEWORKS SPRING, HIBERNATE Y
RICHFACES
Por:

Br. Wilson Carbajal, Dennis Martn

La presente tesis que se desarrolla bajo el marcode la realidad problemtica de laempresa


CERTICOM S.A.C.; cuenta con un rea de logstica, desenvolvindosede forma ineficiente,
porque actualmente lo hacen de manera manual, generndose lentitud para aprobar rdenes
de compras, lentitud para explotar la informacin de las rdenes de compra, as como errores
en duplicidad de datos por llevar de manera manual la informacin, teniendo la necesidadde
adoptar un sistema de informacin automatizado que agilice su proceso de compras.

Ante esto se plantea una solucin tecnolgica como es la implementacin de un Sistema


Informtico Web la cual utiliza los siguientes frameworks Spring, Hibernate y Richfaces; como
tambin el uso de la metodologa gil como Iconix y como herramienta de diseo Enterprise
Architect.

Frente a esta problemtica se plante desarrollar un sistema informtico web que permitir
aumentar la eficiencia y eficacia en los procesos de compras, reduciendo tiempo en el registro
y procesamiento de la informacin, tambin tendrn un mejor control de la informacin que
ayudara a la toma de decisiones; y es as, como CERTICOM S.A.C., estar a la vanguardia con
la tecnologa para satisfacer las necesidades de sus clientes.

VI

ABSTRACT
IMPLEMENTATION OF A COMPUTING SYSTEM FOR MANAGING WEB
SHOPPING OFCERTICOMCOMPANY, USING THE METHODOLOGY ICONIX
SAC AND FRAMEWORKS SPRING, HIBERNATE AND RICHFACES"
By:

Br. Wilson Carbajal, Dennis Martin

This thesis is developed under the framework of the problematic reality CERTICOM SAC
company, has an area of logistics, unfolding inefficiently, because currently do manually,
generating slow to approve purchase orders, slow to exploit information on purchase orders and
data duplication errors to bring the information manually, having the need to adopt an
automated information system to streamline its procurement process.

Given this arises as a technological solution is the implementation of a Web Information System
which uses the following frameworks Spring, Hibernate and Richfaces, as well as the use of
agile methodology as Iconix and as a design tool Enterprise Architect.

Faced with this problematic arose web develop a computer system that will increase efficiency
and effectiveness in the procurement process, saving time in the recording and processing of
information, also have better control of information to assist decision making, and so, as
CERTICOM SAC, will be at the forefront with technology to meet the needs of its customers.

VII

NDICE DE CONTENIDOS

DEDICATORIA............................................................................................................................. IV
AGRADECIMIENTOS ................................................................................................................... V
RESUMEN.................................................................................................................................... VI
ABSTRACT ................................................................................................................................. VII
NDICE DE CONTENIDOS ........................................................................................................ VIII
NDICE DE FIGURAS ................................................................................................................... X
INTRODUCCIN........................................................................................................................ XIII
CAPITULO I. FUNDAMENTO TERICO .................................................................................. 15
1.1.

Sistema ........................................................................................................................ 15

1.1.1.

Caractersticas ..................................................................................................... 16

1.1.2.

Parmetros .......................................................................................................... 17

1.2.

Sistema Informtico ..................................................................................................... 17

1.2.1.

Estructura ............................................................................................................ 18

1.3.

Web ............................................................................................................................. 18

1.4.

Sistema Informtico Web ............................................................................................ 19

1.5.

UML (Lenguaje de Modelamiento Unificado) 2.0 ........................................................ 21

1.5.1.

Estructura de modelado ...................................................................................... 22

1.5.2.

Diagramas de Comportamiento .......................................................................... 22

1.5.3.

Diagramas de Interaccin ................................................................................... 22

1.6.

Metodologa Iconix ...................................................................................................... 22

1.6.1.

Metodologa gil .................................................................................................. 22

1.6.2.

Metodologa gil ICONIX .................................................................................... 23

1.6.3.

Procesos de la Metodologa Iconix ..................................................................... 25

1.7.

Java ............................................................................................................................. 27

1.8.

Plataforma J2EE.......................................................................................................... 27

1.9.

Framework ................................................................................................................... 28

1.10.

Patrn MVC (Modelo Vista Controlador) ..................................................................... 29

1.11.

Framework Spring ....................................................................................................... 31

1.12.

Richfaces ..................................................................................................................... 33

1.13.

Hibernate ..................................................................................................................... 33

1.14.

Oracle .......................................................................................................................... 35

1.14.1.

Caractersticas principales de Oracle. ................................................................. 35

1.14.2.

Definicin de base de datos e instancia de oracle. ............................................. 35

1.14.3.

Estructura lgica de Oracle. ................................................................................ 35

1.14.4.

Estructura fsica de Oracle. ................................................................................. 36

1.14.5.

Seguridad para Oracle. ....................................................................................... 37

1.14.6.

Estructuras usadas para la recuperacin en Oracle. .......................................... 38

VIII

1.15.

Servidor Web Apache ................................................................................................. 38

CAPITULO II. DESARROLLO DE LA TESIS ........................................................................... 41


2.1.

Plan de desarrollo del proyecto ................................................................................... 41

2.1.1.

Estudio Preliminar del Proyecto .......................................................................... 41

2.1.2.

Propsito del proyecto ......................................................................................... 42

2.1.3.

Hitos del proyecto ................................................................................................ 42

2.1.4.

Requerimientos Funcionales y No funcionales del proyecto .............................. 42

2.1.5.

Restricciones y Supuestos del proyecto ............................................................. 43

2.2.

Anlisis de Requisitos ................................................................................................. 44

2.2.1.

Prototipo del sistema completo. .......................................................................... 44

2.2.2.

Diagrama de casos de uso. ................................................................................. 55

2.2.3.

Modelo de Dominio.............................................................................................. 58

2.3.

Anlisis y Diseo Preliminar ........................................................................................ 59

2.3.1.

Diagrama de Clases. ........................................................................................... 59

Fig. 36 Diagrama de Clases................................................................................................. 59


2.3.2.

Diagrama de Robustez. ....................................................................................... 60

2.3.3.

Especificacin de los requerimientos .................................................................. 68

2.4.

Diseo Detallado ......................................................................................................... 74

2.4.1.

Diseo de Interfaces............................................................................................ 74

2.4.2.

Diagramas de Secuencia .................................................................................... 84

2.4.3.

Modelo Lgico ................................................................................................... 100

2.4.4.

Modelo Fsico .................................................................................................... 101

2.5.

Implementacin ......................................................................................................... 102

2.5.1.

Diagrama de despliegue.................................................................................... 102

2.5.2.

Diagrama de Componentes .............................................................................. 103

CAPTULO III: DISCUSIN ...................................................................................................... 104


2.3.

Contrastacin de la Hiptesis .................................................................................... 104

2.3.1.

Identificacin de Variables e Indicadores .......................................................... 104

2.3.2.

Mtodo de Anlisis para la Prueba de los Indicadores Cuantitativos ............... 104

2.3.2.1. Prueba de Hiptesis para el indicador Cuantitativo Tiempo de Generacion de


orden de compra. ............................................................................................................... 105
2.3.2.2. Prueba de Hiptesis para el indicador Cuantitativo Tiempo de obtencin de
reportes. 106
2.3.2.3. Prueba de Hiptesis para el indicador Cuantitativo Tiempo de aprobacin de
requerimiento. .................................................................................................................... 108
2.4.

Discusin de Resultados ........................................................................................... 110

CASOS DE PRUEBAS ............................................................................................................. 112


CONCLUSIONES...................................................................................................................... 113
RECOMENDACIONES ............................................................................................................. 114
REFERENCIAS ......................................................................................................................... 115

IX

NDICE DE FIGURAS

Fig. 1 Esquema grfico general de un sistema ................................................................................... 16


Fig. 2 Proceso de un Sistema Informtico Web. ................................................................................. 20
Fig. 3. Elementos de J2EE ..................................................................................................................... 28
Fig. 4. Patrn MVC .................................................................................................................................. 31
Fig. 5. Mdulos de Spring....................................................................................................................... 32
Fig. 6. Arquitectura de Hibernate .......................................................................................................... 34
Fig. 7. Organigrama de la Empresa ...................................................................................................... 41
Fig. 8. Prototipo Mantenimiento Categora de Producto .................................................................... 44
Fig. 9. Prototipo Mantenimiento Sub-Categora de Producto ........................................................... 44
Fig. 10. Prototipo Mantenimiento de Producto .................................................................................... 45
Fig. 11. Prototipo Mantenimiento Proyecto Padre .............................................................................. 45
Fig. 12 Prototipo Mantenimiento Departamento ................................................................................. 46
Fig. 13 Prototipo Mantenimiento Proyecto ........................................................................................... 46
Fig. 14 Prototipo Mantenimiento Rubro ................................................................................................ 47
Fig. 15 Prototipo Mantenimiento Proveedor ........................................................................................ 47
Fig. 16 Prototipo Registro Usuario ........................................................................................................ 48
Fig. 17 Prototipo Asignar Opciones a Usuario .................................................................................... 48
Fig. 18 Prototipo Registrar Rol .............................................................................................................. 49
Fig. 19 Prototipo Asignar Opciones a Rol ............................................................................................ 49
Fig. 20 Prototipo Registrar Requerimiento........................................................................................... 50
Fig. 21 Prototipo Consultar Requerimientos ........................................................................................ 50
Fig. 22 Prototipo Aprobar Requerimiento............................................................................................. 51
Fig. 23 Prototipo Consultar Requerimientos Aprobados ................................................................... 51
Fig. 24 Prototipo Cotizar Requerimiento .............................................................................................. 52
Fig. 25 Prototipo Consultar Requerimientos Cotizados ..................................................................... 52
Fig. 26 Prototipo Confirmar Requerimiento ......................................................................................... 53
Fig. 27 Prototipo Consultar Requerimientos Confirmados ................................................................ 53
Fig. 28 Prototipo Aprobar Cotizacin .................................................................................................... 54
Fig. 29 Prototipo Consultar Requerimientos Aprobados ................................................................... 54
Fig. 30 Prototipo Orden de Compra ...................................................................................................... 54
Fig. 31 Prototipo Reporte de rdenes de Compra por Proyecto y Fecha ...................................... 55
Fig. 32 Caso de Uso de Proceso del Negocio .................................................................................... 55
Fig. 33 Caso de Uso de Proceso de Gestin de Compras ............................................................... 56
Fig. 34 Caso de Uso de Gestin de Mantenimiento de Informacin ............................................... 57
Fig. 35 Modelo de Dominio .................................................................................................................... 58
Fig. 36 Diagrama de Clases ................................................................................................................... 59
Fig. 37 Diagrama de Robustez Mantenimiento Categora de Producto .......................................... 60
Fig. 38 Diagrama de Robustez Mantenimiento Sub-Categora de Producto ................................. 60
Fig. 39 Diagrama de Robustez Mantenimiento de Producto ............................................................ 61
Fig. 40 Diagrama de Robustez Mantenimiento de Rubro ................................................................. 61
Fig. 41 Diagrama de Robustez de Mantenimiento de Proveedor ................................................... 62
Fig. 42 Diagrama de Robustez de Mantenimiento de Proyecto Padre .......................................... 62
Fig. 43 Diagrama de Robustez de Mantenimiento de Departamento ............................................ 63
Fig. 44 Diagrama de Robustez de Mantenimiento de Proyecto ...................................................... 63
Fig. 45 Diagrama de Robustez de Mantenimiento de Usuario ........................................................ 64
Fig. 46 Diagrama de Robustez de Asignar Opcin a Usuario ......................................................... 64
Fig. 47 Diagrama de Robustez de Mantenimiento Rol ..................................................................... 65
Fig. 48 Diagrama de Robustez de Asignar Opcin a Rol ................................................................. 65
Fig. 49 Diagrama de Robustez de Registrar Requerimiento ........................................................... 66
Fig. 50 Diagrama de Robustez de Aprobar Requerimiento ............................................................. 66
Fig. 51 Diagrama de Robustez de Cotizar Requerimiento ............................................................... 67
Fig. 52 Diagrama de Robustez de Confirmar Requerimiento Cotizado ......................................... 67

Fig. 53 Diagrama de Robustez de Aprobar Requerimiento Confirmado y Generar Orden de


Compra...................................................................................................................................................... 68
Fig. 54 Diagrama de Robustez de Reportes de Orden de Compra por Proyecto y Fecha ......... 68
Fig. 55 Pgina Registro de Usuarios .................................................................................................... 74
Fig. 56 Pgina Asignar Opcin a Usuario ............................................................................................ 75
Fig. 57 Pgina Registro de Roles.......................................................................................................... 75
Fig. 58 Pgina Asignar Opcin a Rol .................................................................................................... 76
Fig. 59 Pgina de Mantenimiento de Categora de Productos ........................................................ 76
Fig. 60 Pgina Mantenimiento de Sub-Categora de Productos ...................................................... 76
Fig. 61 Pgina Mantenimiento de Productos ....................................................................................... 77
Fig. 62 Pgina Mantenimiento de Proyecto Padre ............................................................................. 77
Fig. 63 Pgina Mantenimiento de Departamentos ............................................................................. 78
Fig. 64 Pgina Mantenimiento de Proyectos ....................................................................................... 78
Fig. 65 Pgina Mantenimiento de Rubros ............................................................................................ 79
Fig. 66 Pgina Mantenimiento de Proveedores .................................................................................. 79
Fig. 67
Pgina Registrar Requerimiento ..................................................................................... 80
Fig. 68 Pgina Consultar y Aprobar Requerimiento ........................................................................... 80
Fig. 69 Pgina Aprobar Requerimiento ................................................................................................ 80
Fig. 70 Pgina Consultar Requerimientos Aprobados ....................................................................... 80
Fig. 71 Pgina Cotizar Requerimiento .................................................................................................. 81
Fig. 72 Pgina Consultar Requerimientos Cotizados ........................................................................ 81
Fig. 73 Pgina Confirmar Requerimiento ............................................................................................. 82
Fig. 74 Pgina Consultar Requerimientos Confirmados .................................................................... 82
Fig. 75 Pgina Aprobar Cotizacin y Generar Orden de Compra .................................................... 83
Fig. 76 Consultar rdenes de Compra ................................................................................................ 83
Fig. 77 Pgina Orden de Compra ......................................................................................................... 83
Fig. 78 Pgina Reporte de rdenes de Compra por Proyecto y Fecha .......................................... 84
Fig. 79 Diagrama de Secuencia de Mantenimiento Categora ......................................................... 84
Fig. 80 Diagrama de Secuencia de Mantenimiento Sub-Categora................................................. 85
Fig. 81 Diagrama de Secuencia de Mantenimiento Producto........................................................... 86
Fig. 82 Diagrama de Secuencia de Mantenimiento Rubro ................................................................ 87
Fig. 83 Diagrama de Secuencia de Mantenimiento Proveedor ........................................................ 88
Fig. 84 Diagrama de Secuencia de Mantenimiento Proyecto Padre ............................................... 89
Fig. 85 Diagrama de Secuencia de Mantenimiento Departamento ................................................. 90
Fig. 86 Diagrama de Secuencia de Mantenimiento Proyecto ........................................................... 91
Fig. 87 Diagrama de Secuencia de Mantenimiento Usuario ............................................................. 92
Fig. 88 Diagrama de Secuencia de Asignar Opcin a Usuario ........................................................ 93
Fig. 89 Diagrama de Secuencia de Mantenimiento Rol .................................................................... 94
Fig. 90 Diagrama de Secuencia de Asignar Opcin a Rol ................................................................ 95
Fig. 91 Diagrama de Secuencia de Registrar Requerimiento........................................................... 95
Fig. 92 Diagrama de Secuencia de Aprobar Requerimiento............................................................. 96
Fig. 93 Diagrama de Secuencia de Cotizar Requerimiento .............................................................. 97
Fig. 94 Diagrama de Secuencia de Confirmar Requerimiento Cotizado ........................................ 97
Fig. 95 Diagrama de Secuencia de Aprobar Requerimiento Confirmado y Generar Orden de
Compra...................................................................................................................................................... 98
Fig. 96 Diagrama de Secuencia de Reportes de Orden de Compra por Proyecto y Fecha ........ 99
Fig. 97 Diagrama Lgico de Base de Datos ...................................................................................... 100
Fig. 98 Diagrama Fsico de Base de Datos ....................................................................................... 101
Fig. 99 Diagrama de Despliegue ......................................................................................................... 102
Fig. 100 Diagrama de Componentes ................................................................................................. 103
Fig. 101 Regin de Aceptacin y Rechazo para la prueba de Hiptesis ..................................... 106
Fig. 102 Regin de Aceptacin y Rechazo para la prueba de Hiptesis ..................................... 108
Fig. 103 Regin de Aceptacin y Rechazo para la prueba de Hiptesis ..................................... 109

XI

NDICE DE TABLAS
Tabla 1 Cuadro del Proceso de Iconix ................................................................................................. 26
Tabla 2 Hitos del Proyecto ..................................................................................................................... 42
Tabla 3 Especificacin de Mantenimiento de Categora de Producto ............................................. 69
Tabla 4 Especificacin de Mantenimiento de Sub-Categora de Producto .................................... 69
Tabla 5 Especificacin de Mantenimiento de Producto ..................................................................... 69
Tabla 6 Especificacin de Mantenimiento del Rubro ......................................................................... 70
Tabla 7 Especificacin de Mantenimiento del Proveedor .................................................................. 70
Tabla 8 Especificacin de Mantenimiento del Proyecto Padre......................................................... 70
Tabla 9 Especificacin de Mantenimiento del Departamento ........................................................... 71
Tabla 10 Especificacin de Mantenimiento del Proyecto .................................................................. 71
Tabla 11 Especificacin de Mantenimiento del Usuario .................................................................... 71
Tabla 12 Especificacin de Asignacin de Opcin a Usuario........................................................... 72
Tabla 13 Especificacin de Mantenimiento del Rol ............................................................................ 72
Tabla 14 Especificacin de Asignacin de Opcin a Rol .................................................................. 72
Tabla 15 Especificacin de Registro de Requerimiento y Detalle de Requerimiento ................... 72
Tabla 16 Especificacin de Aprobacin de Requerimientos ............................................................. 73
Tabla 17 Especificacin de Cotizacin de Requerimientos .............................................................. 73
Tabla 18 Especificacin de Confirmacin Requerimiento Cotizado ................................................ 73
Tabla 19 Especificacin de Aprobacin Requerimiento Confirmado ............................................... 74
Tabla 20 Especificacin de Requerimiento Reporte de rdenes de Compra por proyecto y
fecha .......................................................................................................................................................... 74
Tabla 21: Indicadores ............................................................................................................................ 104
Tabla 22: Resultado para el indicador Minimizar el Tiempo de Generar rdenes de Compra . 110
Tabla 23: Resultado para el indicador Minimizar el Tiempo de Obtencin de Reportes ............ 110
Tabla 24: Resultado para el indicador Minimizar el Tiempo de Aprobar Requerimientos .......... 110

XII

INTRODUCCIN
En la modernidad, el uso de tecnologa en los sistemas informticos juegan un papel muy
importante en el desarrollo de las organizaciones y en el control de las operaciones
administrativas y financieras entre otras, la obtencin de una informacin inmediata y eficaz
dentro de la estructura organizativa determina el xito y el alcance de los objetivos con mayor
eficacia dentro de la empresa, hacindose indispensables para ser competitivas en este
mercado globalizado.
Estos sistemas informticos se han desarrollado en una gran cantidad de aplicaciones; como
aplicaciones de escritorio, web y mvil, pero solo los sistemas web han proporcionado
soluciones fciles y eficientes en su desarrollo y por lo cual las empresas hacen ms uso de
estos, por su disponibilidad y usabilidad.

En vista de esto los sistemas web se han visto obligados a evolucionar su forma de desarrollo e
implementacin, por tal motivo existen muchas metodologas agiles y tecnologas libres; como
tenemos en modelamiento a RUP, XP, SCRUM y ICONIX, siendo esta una de las que ms
cumple con estndares necesarios para el desarrollo de aplicaciones web.

En el uso de tecnologas web se han desarrollado diferentes formas de construccin, pero los
que ms destacan son los frameworks de java que facilitan el uso e implementacin de
aplicaciones web proporcionando una estructura definida la cual ayuda a crear aplicaciones
con mayor rapidez.

Por ello el rea temtica de la presente tesis est relacionada con sistemas de tecnologa de
informacin de tipo web usando metodologas giles y frameworks de java de implementacin.
La empresa CERTICOM S.A.C., presenta la siguiente realidad problemtica:las actividades
realizadas en la empresa son de forma manual en el proceso de gestin de compras, la cual
genera lentitud para aprobar rdenes de compras, lentitud para explotar la informacin de las
rdenes de compra, as como errores en duplicidad de datos. Es as que definimos el siguiente
problema: De qu manera se puede mejorar la Gestin de Compras de la empresa
Certicom S.A.C utilizando Tecnologas de Informacin?
La hiptesis planteada es la siguiente: Implementando un sistema informtico web y utilizando
la metodologa Iconix y Frameworks Spring, Hibernate y Richfaces podr automatizar la
Gestin de Compras de la Empresa Certicom S.A.C

XIII

Teniendo como objetivo general:Implementar un sistema informtico web para la Gestin


de compras de la Empresa Certicom S.A.C, utilizando la metodologa Iconix y
Frameworks Spring ,Hibernate y Richfaces.
Teniendo como objetivos especficos:

Realizar la investigacin bibliogrfica sobre la metodologa Iconix orientada al


desarrollo de aplicaciones web.

Recopilar informacin propia de la empresa por medio de entrevistas o reuniones, que


permita la posterior identificacin de procesos y requerimientos de usuarios.

Realizar el anlisis y diseo a partir de la informacin recopilada aplicando las fases de


la metodologa Iconix.

Implementar el software del sistema informtico web utilizando los frameworks: Spring,
Hibernate y Richfaces.

Realizar las pruebas al sistema informtico web por cada requerimiento implementado

Finalmente el presente trabajo comprende los siguientes captulos:

En el Captulo IFundamento terico como parte conceptual de algunas terminologas y temas


que involucren este trabajo. El Captulo IIDesarrollo de la Tesis, se detalla la metodologa
ICONIX, descrita en todas sus etapas, as como las conclusiones y recomendaciones a las que
se lleg tras la realizacin de la tesisy como resultado final tenemos las conclusiones y
recomendaciones, expuestas a los interesados en el tema.

XIV

Captulo II

CAPITULO I. FUNDAMENTO TERICO

1.1.

Sistema

Un sistema es un conjunto de partes o elementos organizados y relacionados que interactan


entre s para lograr un objetivo. Los sistemas reciben (entrada) datos, energa o materia del
ambiente y proveen (salida) informacin, energa o materia.

Un sistema puede ser fsico o concreto (una computadora, un televisor, un humano) o puede
ser abstracto o conceptual (un software).

Cada sistema existe dentro de otro ms grande, por lo tanto un sistema puede estar formado
por subsistemas y partes, y a la vez puede ser parte de un sper sistema.

Los sistemas tienen lmites o fronteras, que los diferencian del ambiente. Ese lmite puede ser
fsico (el gabinete de una computadora) o conceptual. Si hay algn intercambio entre el
sistema y el ambiente a travs de ese lmite, el sistema es abierto, de lo contrario, el sistema
es cerrado.

El ambiente es el medio externo que envuelve fsica o conceptualmente a un sistema. El


sistema tiene interaccin con el ambiente, del cual recibe entradas y al cual se le devuelven
salidas. El ambiente tambin puede ser una amenaza para el sistema.

Un grupo de elementos no constituye un sistema si no hay una relacin e interaccin, que de


la idea de un "todo" con un propsito, esto puede ser apreciado en la Figura N 1
En general, podemos sealar que, ante la palabra sistemas, todos los que la han definido
estn de acuerdo en que es un conjunto de partes coordinadas en interaccin para alcanzar
un conjunto de objetivos.

El ser humano, por ejemplo, es un sistema (podramos aadir un sistema maravillosamente


construido y diseado) con muchas partes diferentes que contribuyen de distinta forma a
mantener su vida, su reproduccin y su accin.

Otra definicin, que agrega algunas caractersticas adicionales, seala que un sistema es un
grupo de partes y objetos que interactan y que forman un todo o que se encuentran bajo la
influencia de fuerzas en alguna relacin definida.

15

Captulo II

Fig. 1Esquema grfico general de un sistema


(Richard Dios, 2009).

1.1.1.

Caractersticas
Todo sistema tiene algunos propsitos u objetivos. Los elementos (u objetos), como
tambin las relaciones, definen una distribucin que trata siempre de alcanzar un
objetivo.

Globalismo o totalidad es un cambio en una de las unidades del sistema, con


probabilidad producir cambios en las otras. El efecto total se presenta como un
ajuste a todo el sistema. Hay una relacin de causa/efecto. De estos cambios y
ajustes, se derivan dos fenmenos: entropa y homeostasia.

Entropaes la tendencia de los sistemas a desgastarse, a desintegrarse, para el


relajamiento de los estndares y un aumento de la aleatoriedad. La entropa
aumenta con el correr del tiempo. Si aumenta la informacin, disminuye la entropa,
pues la informacin es la base de la configuracin y del orden.

Homeostas es el equilibrio dinmico entre las partes del sistema. Los sistemas tienen
una tendencia a adaptarse con el fin de alcanzar un equilibrio interno frente a los
cambios externos del entorno.

16

Captulo II

1.1.2.

Parmetros
Los parmetros de los sistemas son:

Entrada o insumo o impulso (input): es la fuerza de arranque del sistema, que


provee el material o la energa para la operacin del sistema.

Salida o producto o resultado (output): es la finalidad para la cual se reunieron


elementos y relaciones del sistema. Los resultados de un proceso son las
salidas, las cuales deben ser coherentes con el objetivo del sistema. Los
resultados de los sistemas son finales, mientras que los resultados de los
subsistemas con intermedios.

Procesamiento o procesador o transformador (throughput): es el fenmeno


que produce cambios, es el mecanismo de conversin de las entradas en
salidas o resultados. Generalmente es representado como la caja negra, en la
que entra los insumos y salen cosas diferentes, que son los productos.

Retroaccin o retroalimentacin o retroinformacin (feedback): es la funcin de


retorno del sistema que tiende a comparar la salida con un criterio
preestablecido, mantenindola controlada dentro de aquel estndar o criterio.

Ambiente: es el medio que envuelve externamente el sistema. Est en


constante interaccin con el sistema, ya que ste recibe entradas, las procesa
y efecta salidas. La supervivencia de un sistema depende de su capacidad
de adaptarse, cambiar y responder a las exigencias y demandas del ambiente
externo. Aunque el ambiente puede ser un recurso para el sistema, tambin
puede ser una amenaza (Monografas, 2006).

1.2.

Sistema Informtico
Un sistema informtico como todo sistema, es el conjunto de partes interrelacionadas,
hardware, software y de recurso humano (humanware).

Un sistema informtico tpico emplea una computadora que usa dispositivos programables
para capturar, almacenar y procesar datos.

La computadora personal o PC, junto con la persona que lo maneja y los perifricos que los
envuelven, resultan de por s un ejemplo de un sistema informtico.

17

Captulo II

El hardware incluye una o varias CPU, memoria, sistemas de almacenamiento externo, etc. El
software incluye al sistema operativo, firmware y aplicaciones, siendo especialmente
importante los sistemas de gestin de bases de datos.

Por ltimo el soporte humano incluye al personal tcnico (analistas, programadores,


operarios, etc.) que crean y/o mantienen el sistema y a los usuarios que lo utilizan (Alfonso,
2010).
1.2.1.

Estructura
Los sistemas informticos suelen estructurarse en subsistemas.

Subsistema fsico: asociado al hardware. Incluye entre otros elementos la CPU,


memoria principal, la placa base, etc.

Subsistema lgico: asociado al software y la arquitectura. Incluye al sistema


operativo, el firmware, las aplicaciones y las bases de datos.

Recursos humanos: hace referencia al personal que est relacionado con el sistema.
Especialmente usuarios y tcnicos (analistas, diseadores, programadores, operarios,
mantenedores, etc) (Wikipedia, 2013).
1.3.

Web
1

La palabra web (del ingls: red, malla, telaraa ). La Web es una idea que se construyo
sobre la internet. Las conexiones fsicas son sobre la internet, pero introduce una serie de
ideas nuevas, heredando las ya existentes.

Empez a principios de 1990, en Suiza en el centro de investigacin CERN (centro de


Estudios para la Investigacin Nuclear) y la idea fue de Tim Berners-Lee, que se gest
observando una libreta que l usaba para aadir y mantener referencias de cmo
funcionaban los ordenadores en el CERN.

Antes de la Web, la manera de obtener los datos por la Internet era catica; haba un sinfn de
maneras posibles y con ello haba que conocer mltiples programas y sistemas operativos. La
Web introduce un concepto fundamental; la posibilidad de lectura universal, que consiste en
que una vez que la informacin est disponible, se pueda acceder a ella desde cualquier
ordenador, desde cualquier pas, por cualquier persona autorizada, usando un nico y simple

18

Captulo II

programa. Para que esto fuese posible, se utilizan una serie de conceptos, el ms conocido
es el hipertexto.

World Wide Web (tambin conocida como "la Web"), el sistema de documentos (o pginas
web) interconectados por enlaces de hipertexto, disponibles en Internet.

WorldWideWeb, el primer navegador web, ms tarde renombrado a Nexus.

Una pgina web: documento o fuente de informacin, generalmente en formato HTML y que
puede contener hiperenlaces a otras pginas web. Dicha pgina web, podr ser accesible
desde un dispositivo fsico, una intranet, o Internet.

Un sitio web, que es un conjunto de pginas web, tpicamente comunes a un dominio o


subdominio en la World Wide Web.

Un servidor web, un programa que implementa el protocolo HTTP para transferir lo que
llamamos hipertextos, pginas web o pginas HTML. Tambin se le da este nombre, al
ordenador que ejecuta este programa (Instituto tecnolgico Tijuana, 2009).

Web 2.0, trmino acuado por Tim en 2004 para referirse a una segunda generacin de Web
basada en comunidades de usuarios y una gama especial de servicios web, como las redes
sociales, los blogs, los wikis, que fomentan la colaboracin y el intercambio gil de
informacin entre los usuarios.

Web 3.0: El trmino Web 3.0 apareci por primera vez en 2006 en un artculo de Jeffrey
Zeldman, crtico de la Web 2.0 y asociado a tecnologas como AJAX. Actualmente existe un
debate considerable en torno a lo que significa Web 3.0, y cul es la definicin acertada
(Azhlee, 2009).

1.4.

Sistema Informtico Web


Los sistemas informticos web son relativamente nuevos en el mundo de la computacin, son
un nuevo reto para los ingenieros del software. Las aplicaciones web son cada vez ms
complejas, como el software, al principio no se modelaba, pronto surgen metodologas que
intentan solucionar el problema.

Los sistemas Web fomentan un entorno de requisitos muy cambiantes, gran nmero de
usuarios y/o requisitos (mundial); el equipo de desarrolladores suele ser pequeo.

19

Captulo II

Los modelos son abstracciones que simplifican nuestra comprensin de los sistemas, como
lenguaje de modelado ya existente deberamos considerar a UML.

JimConallen recomienda modelar webs extendiendo UML y aplicando un patrn de diseo


llamado MVC (modelo-vista-controlador), El servidor web ofrece pginas web y recursos (css,
js, imagenes, flash, etc.) identificndose de forma nica mediante URL o URI.

Fig. 2 Proceso de un Sistema Informtico Web.

Los sistemas informticos web conforman una comunicacin entre cliente y servidor utilizando
el protocolo HTTP. No mantiene conexin tras una peticin.Eso genera, que sea necesario
recurrir a cookies para conocer el estado del cliente. (Sesiones).

Una aplicacin web genera una pgina web para un cliente en funcin de N variables.

Una aplicacin web es un sistema informtico Web que nos ofrece la lgica de negocio.
(Interfaces, formularios).

Lenguajes en la parte del cliente

Lenguajes de script como javascript (estndar ECMA), y Visual Basic


Script(Microsoft). Pueden usarse para complementar la lgica de negocio.

La web es sncrona pero la tendencia es la Web asncrona gracias a un


conjunto de tecnologas denominadas como AJAX.

Para el renderizado Web se usa HTML, XHTML o XML. Complementados con


CSS (hojas de estilo en cascada).

Flash como lenguaje de presentacin, aporta multimedia a la web. Applet,


java.

20

Captulo II

Lenguajes en la parte del servidor

Los ms conocidos son PHP (software libre), JSP (Sun Microsystems) y


ASP/ASP.NET(Microsoft).

Las primeras versiones de PHP y ASP no separaban bien las capas.


Pudiendo llegar a tener mezcladas las tres capas: presentacin (XHTML),
lgica de negocio (PHP) y modelo de datos(SQL). Procedimentales.

La separacin de capas es difcil ya que tradicionalmente la lgica de negocio


se encarga de generar la presentacin dinmicamente.

En aplicaciones grandes, es preferible por usar lenguajes que implementan


MVC (Ricardo Marmolejo, 2008).

1.5.

UML (Lenguaje de Modelamiento Unificado) 2.0


Lenguaje

Unificado

de

Modelado

(LUM)

(UML,

por

sus

siglas

en

ingls,

UnifiedModelingLanguage) es el lenguaje de modelado de sistemas de software ms


conocido y utilizado en la actualidad; est respaldado por el OMG (Object Management
Group).Es un lenguaje grfico para visualizar, especificar, construir y documentar un sistema.
UML ofrece un estndar para describir un "plano" del sistema (modelo), incluyendo aspectos
conceptuales tales como procesos de negocio y funciones del sistema, y aspectos concretos
como expresiones de lenguajes de programacin, esquemas de bases de datos y
componentes reutilizables.

Es importante resaltar que UML es un "lenguaje de modelado" para especificar o para


describir mtodos o procesos. Se utiliza para definir un sistema, para detallar los artefactos en
el sistema y para documentar y construir. En otras palabras, es el lenguaje en el que est
descrito el modelo.

Se puede aplicar en el desarrollo de software entregando gran variedad de formas para dar
soporte a una metodologa de desarrollo de software (tal como el Proceso Unificado Racional
o RUP), pero no especifica en s mismo qu metodologa o proceso usar.

UML no puede compararse con la programacin estructurada, pues UML significa Lenguaje
Unificado de Modelado, no es programacin, solo se diagrama la realidad de una utilizacin
en un requerimiento. Mientras que, programacin estructurada, es una forma de programar
como lo es la orientacin a objetos, sin embargo, la programacin orientada a objetos viene
siendo un complemento perfecto de UML, pero no por eso se toma UML slo para lenguajes
orientados a objetos.

21

Captulo II

UML cuenta con varios tipos de diagramas, los cuales muestran diferentes aspectos de las
entidades representadas.
1.5.1.

1.5.2.

1.5.3.

Estructura de modelado

Diagrama de clases

Diagrama de componentes

Diagrama de objetos

Diagrama de estructura compuesta (UML 2.0)

Diagrama de despliegue

Diagrama de paquetes

Diagramas de Comportamiento

Diagrama de actividades

Diagrama de casos de uso

Diagrama de estados

Diagramas de Interaccin

Diagrama de secuencia

Diagrama de comunicacin, que es una versin simplificada del Diagrama de


colaboracin (UML 1.x)

Diagrama de tiempos (UML 2.0)

Diagrama global de interacciones o Diagrama de vista de interaccin (UML 2.0)


(Wikipedia, 2013)

1.6.

Metodologa Iconix
1.6.1.

Metodologa gil
Es un lenguaje de modelamientode

notacin grfica (incluye diferentes tipos

dediagramas), que define el proceso, quin debe hacer, qu, cundo y cmo alcanzar
un objetivo.

El objetivo principal de un mtodo gil es minimizar la documentacin de desarrollo


emplendola fundamentalmente como vehculo de comprensin de problemas dentro
del grupo de trabajo y de comunicacin con los usuarios.

Los desarrolladores: necesitamos obtener aplicaciones en menor tiempo, ms


vistosas y de menor costo.

Los usuarios: exigen calidad, sistemas fciles de mantener, extender y modificar.

22

Captulo II

1.6.2.

Metodologa gil ICONIX


Es un proceso simplificado en comparacin con otros procesos ms tradicionales,
que unifica un conjunto de mtodos de orientacin a objetos con el objetivo de
abarcar todo el ciclo de vida de un proyecto.

Presenta claramente las actividades de cada etapa y exhibe una secuencia de pasos
que deben ser seguidos.

Los desarrollos de aplicaciones van cambiando por innovaciones tecnolgicas,


estrategias de mercado y otros avatares de la industria de la informtica, esta lleva a
los desarrolladores de aplicaciones a evolucionar para obtener aplicaciones en medio
tiempo, ms vistosas y de menos costo.

Los usuarios exigen calidad frente a los requisitos y los desarrollos de aplicaciones
deben contar con tcnicas y herramientas logrando satisfacer las necesidades de los
usuarios y obteniendo sistemas fciles de mantener, extender y modificar.

Claro est, que es indispensable, el uso de una metodologa para el desarrollo de


sistemas, logrando un sistema sano, que cumpla con los requerimientos de los
usuarios.

Est entre la complejidad del RationalUnifiedProcesses y la simplicidad de Extreme


Programming.

a.

Caractersticas de ICONIX

Iterativo e incremental: varias iteraciones ocurren entre el desarrollo del


modelo deldominio y la identificacin de los casos de uso. El modelo esttico
es incrementalmente refinado por los modelos dinmicos.

Trazabilidad: cada paso est referenciado por algn requisito. Se define


trazabilidad como la capacidad de seguir una relacin entre los diferentes
artefactos de software producidos.

Dinmica del UML: La metodologa ofrece un uso dinmico del UML por
que utiliza algunos diagramas del UML, sin exigir la utilizacin de todos,
como en el caso de RUP.

23

Captulo II

b.

Tareas de ICONIX
Anlisis de Requisitos
Se realiza un levantamiento de todos los requisitos del sistema a desarrollar.
Modelo de Dominio:
Con los requisitos se construye el modelo esttico del sistema.
Prototipacin Rpida:
Se usa para simular el diseo del sistema.
Se espera que los usuarios lo evalen como si fuera el sistema final.
Los cambios al prototipo son planificados con los usuarios antes de
llevarlos a cabo.
El proceso se repite y finaliza cuando los usuarios y analistas estn de
acuerdo en que el sistema ha evolucionado lo suficiente como para incluir
todas las caractersticas necesarias o cuando es evidente que no se
obtendr mayor beneficio con una iteracin adicional.
Modelo de Casos de Uso:
El modelo de los casos de uso comprende los actores, el sistema y los
propios casos de uso.
Los casos de uso permiten a los usuarios estructurar y articular sus
deseos; les obligan a definir la manera como querran interactuar con el
sistema, a precisar qu informaciones quieren intercambiar y a describir lo
que debe hacerse para obtener el resultado esperado.
Anlisis y Diseo Preliminar
Descripcin de Casos de Uso:
Los Casos de Uso describen bajo la forma de acciones y reacciones el
comportamiento de un sistema desde el punto de vista de un usuario;
permiten definir los lmites del sistema y las relaciones entre el sistema y el
entorno.
Diagrama de Robustez:
Ilustra grficamente las interacciones entre los objetos participantes de un
caso de uso. Los que pueden ser:

24

Captulo II

Objetos de interfaz. (Pantallas)


Objetos entidad. (Almacenamientos)
Objetos de control. (Gestores)
Diseo
Diagrama de Secuencia:
Es el ncleo del modelo dinmico y muestra todos los cursos alternos que
pueden tomar los casos de uso.
Especifica el comportamiento. La representacin se concentra sobre la
expresin de las interacciones.
Se componen de 4 elementos que son: el curso de accin, los objetos, los
mensajes y los mtodos.
Implementacin
Escribir /Generar el Cdigo:
La importancia de la interactividad, accesibilidad y navegacin en el
software harn que el usuario se sienta seguro y cmodo al poder hacer
uso de la aplicacin sin inconvenientes.
Pero adems debemos tener en cuenta factores como:

La Reusabilidad: que es la posibilidad de hacer uso de los


componentes en diferentes aplicaciones.

La Extensibilidad: que consiste en modificar con facilidad el


software.

La

Confiabilidad:

realizacin

de

sistemas

descartando

las

posibilidades de error.
Realizar pruebas. Test de casos, datos y resultados. Test de integracin
con los usuarios para verificar la aceptacin de los resultados.

1.6.3.

Procesos de la Metodologa Iconix


El proceso de Iconix es un proceso abierto, libre de usar. El proceso se centra en los
casos de uso y el cdigo.

El proceso de Iconix se divide en los flujos de trabajo dinmicos y estticos, que son
altamente repetitivos es posible que vaya a travs de una repeticin de todo el
proceso para un lote pequeo de casos de uso (tal vez un par de paquetes de valor,

25

Captulo II

que no es una cantidad enorme, dado que cada caso de uso es slo un par de
prrafos), hasta llegar al cdigo fuente y pruebas unitarias.

Por esta razn, el Proceso de Iconix est bien adaptado a los proyectos giles, donde
se necesita una rpida retroalimentacin de factores tales como los requisitos, el
diseo, y las estimaciones.

Tabla 1 Cuadro del Proceso de Iconix


FASES
Anlisis de
Requisitos

ACTIVIDADES
Requisitos

funcionales

(Casos

RESULTADOS
de

Uso):

Revisin de los Requisitos

Definir lo que el sistema debe ser capaz de


hacer.
Modelado de Dominio: Definir el espacio del
problema en trminos inequvocos.
Requisitos de comportamiento (Prototipacin
Rpida): Definir cmo el usuario y el sistema
va a interactuar. Empezar con un prototipo de
interfaz grfica de usuario e identificar todos
los casos el uso que se van a desarrollar.

Anlisis y Diseo
Preliminar

Anlisis de robustez: Dibujar un diagrama de

Revisin de Diseo Preliminar.

robustez (un "cuadro objeto" de los pasos de


un caso de uso).
Describir las acciones y limitaciones de los
casos de uso detalladamente.
Actualizar el modelo de dominio: aqu se
puede descubrir las clases que faltan, las
ambigedades correcta y agregar atributos y
operaciones a los objetos de dominio.

Diseo Detallado

Diagrama de Secuencia: dibujar un diagrama

Revisin Crtica del Diseo.

de secuencia (un diagrama de secuencia por


cada caso de uso) para mostrar en detalle
cmo se va a poner en prctica el caso de
uso.
Actualizar el modelo de dominio: los objetos
de dominio son realmente las clases de
dominio, o entidades.
Implementacin

Diagrama de Despliegue: dibujar un diagrama


de despliegue para mostrar en detalle cmo
va distribuirse el funcionamiento del sistema.
Diagrama de Componentes: describir los
elementos

fsicos

del

26

sistema

sus

Ejecucin de la Aplicacin
yentrega del sistema.

Captulo II

relaciones.
Codificar y hacer pruebas unitarias: Escribir
el cdigo y las pruebas unitarias.
Realizar una revisin y actualizacin del
Cdigo (Carla de San Martn, 2009).

1.7. Java
El lenguaje de programacin Java fue originalmente desarrollado por James Gosling de
Sun Microsystems (la cual fue adquirida por la compaa Oracle) y publicado en el 1995
como un componente fundamental de la plataforma Java de Sun Microsystems. Su sintaxis
deriva mucho de C y C++, pero tiene menos facilidades de bajo nivel que cualquiera de
ellos. Las aplicaciones de Java son generalmente compiladas a bytecode (clase Java) que
puede ejecutarse en cualquier mquina virtual Java (JVM) sin importar la arquitectura de la
computadora subyacente. Java es un lenguaje de programacin de propsito general,
concurrente, orientado a objetos y basado en clases que fue diseado especficamente
para tener tan pocas dependencias de implementacin como fuera posible. Su intencin es
permitir que los desarrolladores de aplicaciones escriban el programa una vez y lo ejecuten
en cualquier dispositivo (conocido en ingls como WORA, o "write once, runanywhere"), lo
que quiere decir que el cdigo que es ejecutado en una plataforma no tiene que ser
recompilado para correr en otra. Java es, a partir del 2012, uno de los lenguajes de
programacin ms populares en uso, particularmente para aplicaciones de cliente-servidor
de web, con unos 10 millones de usuarios reportados.12
La compaa Sun desarroll la implementacin de referencia original para los compiladores
de Java, mquinas virtuales, y libreras de clases en 1991 y las public por primera vez en
el 1995. A partir de mayo del 2007, en cumplimiento con las especificaciones del Proceso
de la Comunidad Java, Sun volvi a licenciar la mayora de sus tecnologas de Java bajo la
Licencia Pblica General de GNU. Otros tambin han desarrollado implementaciones
alternas a estas tecnologas de Sun, tales como el Compilador de Java de GNU y el GNU
Classpath

(Wikipedia, 2013).

1.8. Plataforma J2EE

Java Platform, Enterprise Edition o Java EE (anteriormente conocido como Java 2 Platform,
Enterprise Edition o J2EE hasta la versin 1.4; traducido informalmente como Java
Empresarial), es una plataforma de programacinparte de la Plataforma Javapara
desarrollar y ejecutar software de aplicaciones en el lenguaje de programacin Java.
Permite utilizar arquitecturas de N capas distribuidas y se apoya ampliamente en

27

Captulo II

componentes de software modulares ejecutndose sobre un servidor de aplicaciones. La


plataforma Java EE est definida por una especificacin. Similar a otras especificaciones del
Java CommunityProcess, Java EE es tambin considerada informalmente como un
estndar debido a que los proveedores deben cumplir ciertos requisitos de conformidad
para declarar que sus productos son conformes a Java EE; estandarizado por The Java
CommunityProcess / JCP.
Java EE tiene varias especificaciones de API, tales como JDBC, RMI, e-mail, JMS,
Servicios Web, XML, etc y define cmo coordinarlos. Java EE tambin configura algunas
especificaciones nicas para Java EE para componentes. Estas incluyen Enterprise
JavaBeans,

servlets,

portlets

(siguiendo

la

especificacin

de

Portlets

Java),

JavaServerPages y varias tecnologas de servicios web. Ello permite al desarrollador crear


una aplicacin de empresa portable entre plataformas y escalable, a la vez que integrable
con tecnologas anteriores. Otros beneficios aadidos son, por ejemplo, que el servidor de
aplicaciones puede manejar transacciones, la seguridad, escalabilidad, concurrencia y
gestin de los componentes desplegados, significando que los desarrolladores pueden
concentrarse ms en la lgica de negocio de los componentes en lugar de en tareas de
mantenimiento de bajo nivel (Wikipedia, 2013).

Fig. 3. Elementos de J2EE

(http://docs.oracle.com/javaee/1.3/tutorial/doc/Overview4.html)
1.9. Framework

La palabra inglesa "framework" (marco de trabajo) define, en trminos generales, un


conjunto estandarizado de conceptos, prcticas y criterios para enfocar un tipo de
problemtica particular que sirve como referencia, para enfrentar y resolver nuevos
problemas de ndole similar.

28

Captulo II

En el desarrollo de software, un framework o infraestructura digital, es una estructura


conceptual y tecnolgica de soporte definido, normalmente con artefactos o mdulos de
software concretos, que puede servir de base para la organizacin y desarrollo de
software. Tpicamente, puede incluir soporte de programas, bibliotecas, y un lenguaje
interpretado, entre otras herramientas, para as ayudar a desarrollar y unir los
diferentes componentes de un proyecto.
Representa una arquitectura de software que modela las relaciones generales de las
entidades del dominio, y provee una estructura y una especial metodologa de trabajo,
la cual extiende o utiliza las aplicaciones del dominio (Wikipedia, 2013).

1.10. Patrn MVC (Modelo Vista Controlador)


El patrn de desarrollo de software MVC (Model -View - Controller) define la
organizacin independiente de los Objetos de Negocio (Model), la interfaz con el
usuario u otro sistema (View) y el controlador del workflow de la aplicacin (Controller)
quien expresar: "si estoy aqu y me piden esto entonces hacer tal cosa, si sale bien
mostrar esto y si no lo aquello otro").

Modelo
El modelo es un conjunto de clases que representan la informacin del mundo real que
el sistema debe reflejar. Es la parte encargada de representar la lgica de negocio de
una aplicacin. As, por ejemplo, un sistema de administracin de datos geogrficos
tendr un modelo que representara la altura, coordenadas de posicin, distancia, etc.
sin tomar en cuenta ni la forma en la que esa informacin va a ser mostrada ni los
mecanismos que hacen que esos datos estn dentro del modelo, es decir, sin tener
relacin con ninguna otra entidad dentro de la aplicacin.

Vista
Las vistas son las encargadas de la representacin de los datos, contenidos en el
modelo, al usuario. La relacin entre las vistas y el modelo son de muchas a uno, es
decir cada vista se asocia a un modelo, pero pueden existir muchas vistas asociadas al
mismo modelo. De esta manera, por ejemplo, se puede tener una vista mostrando la
hora del sistema como un reloj analgico y otra vista mostrando la misma informacin
como un reloj digital.
La vista solo necesita la informacin requerida del modelo para realizar un despliegue.
Cada vez que se realiza una actuacin, que implica una modificacin del modelo de
dominio, la vista cambia a travs de notificaciones generadas por el modelo de la

29

Captulo II

aplicacin. Sencillamente, es la representacin visual del modelo que redibuja las


partes necesarias cuando se produce una modificacin del mismo.

Controlador
El controlador es el encargado de interpretar y dar sentido a las instrucciones que
realiza el usuario, realizando actuaciones sobre el modelo. Si se realiza algn cambio,
comienza a actuar, tanto si la modificacin se produce en una vista o en el modelo.
Interacta con el modelo a travs de una referencia al propio modelo.
Cmo funciona MVC en aplicaciones Web?

1. Captura de la peticin en el controlador: La aplicacin recibe peticiones que son


centralizadas en el Controlador. ste es el encargado de interpretar, a partir de la URL
de la solicitud, el tipo de operacin que hay que realizar. Normalmente, esto se hace
analizando el valor de algn parmetro que se enva anexando a la URL de la peticin
y que se utiliza con esta finalidad.

2. Procesamiento de la peticin: Una vez que el Controlador determine la operacin a


realizar, procede a ejecutar las acciones pertinentes, invocando para ello a los
diferentes mtodos expuestos por el Modelo.

Dependiendo de las acciones a realizar (por ejemplo, un alta de un usuario en el


sistema), el Modelo necesitar manejar los datos enviados por el cliente en la peticin,
datos que le sern proporcionados por el controlador. De la misma manera, los
resultados generados por el Modelo (por ejemplo la informacin resultante de una
bsqueda sern entregados directamente al controlador).
3. Generacin de respuestas: Los resultados devueltos por el Modelo al Controlador
son depositados por ste en una variable de peticin, sesin o aplicacin, segn el
alcance que deban tener. A continuacin, el Controlador invoca a la pgina JSP que
debe encargarse de generar la vista correspondiente, est pgina acceder a la
variable de mbito donde estn depositados los resultados y los utilizar para generar
dinmicamente

la

respuesta

XHTML

que

ser

enviada

(http://www.juntadeandalucia.es/servicios/madeja/contenido/recurso/122).

30

al

cliente

Captulo II

Fig. 4. Patrn MVC

(http://lbcnet.wordpress.com)
1.11. Framework Spring
Spring es un framework liviano y no intrusivo: generalmente los objetos que
programamos no tienen dependencias en clases especficas de Spring. Sus
caractersticas principales son inyeccin de dependencias y programacin orientada a
aspectos.

31

Captulo II

Mdulos de Spring

Fig. 5. Mdulos de Spring

El diagrama muestra los mdulos con los que cuenta Spring (hasta la versin 2.5). En
su ncleo (Core) se encuentra el BeanFactory el contenedor fundamental de Spring y
quien se encarga de la inyeccin de dependencias.
El contenedor ApplicationContext se basa en BeanFactory y extiende su funcionalidad
con soporte para i18n, eventos de ciclo de vida, validacin y mejor integracin con
AOP.

AOP provee la implementacin de AOP, permitindonos desarrollar


interceptores de mtodo y puntos de corte para desacoplar el cdigo de las
funcionalidades transversales.

DAO - Provee una capa de abstraccin sobre JDBC, abstrae el cdigo de


acceso a datos de una manera simple y limpia. Tiene una capa de expeciones
sobre los mensajes de error provistos por cada servidor especfico de base de
datos. Adems cuenta con manejo de transacciones a travs de AOP.

ORM Provee la integracin para las distintas APIs de mapeo objeto-relacional


incluyendo JPA, JDO, Hibernate e iBatis.

32

Captulo II

JEE Provee integracin con aplicaciones Java Enterprise Edition as como


servicios JMX, JMS, EJB, etc.

Web Mdulo que aporta clases especiales orientadas al desarrollo web e


integracin con tecnologas como Struts y JSF. Cuenta con el paquete Spring
MVC, una implementacin del conocido patrn de diseo aplicando los
principios de Spring (Fernando Briano, 2010).

1.12. Richfaces
RichFaces es una librera de componentes visuales para JSF, escrita en su origen
por Exadel y adquirida por Jboss. Adems, RichFaces posee un framework
avanzado para la integracin de funcionalidades Ajax en dichos componentes
visuales, mediante el soporte de la librera Ajax4JSF.
Son caractersticas de RichFaces las siguientes:

Se integra perfectamente en el ciclo de vida de JSF,

Incluye funcionalidades Ajax, de modo que nunca vemos el JavaScript y


tiene un contenedor Ajax propio,

Contiene un set de componentes visuales, los ms comunes para el


desarrollo de una aplicacin web rica (Rich Internet Application), con un
nmero bastante amplio que cubren casi todas nuestras necesidades,

Soporta facelets,

Soporta css themes o skins,

Es un proyecto open source, activo y con una comunidad tambin activa.

Usando Ajax4JSF tenemos que indicar qu parte de la pantalla tiene que


repintarse. No es tan simple como ICEfaces, pero implica tener ms control
sobre los eventos que se producen en la interfaz de usuario.

En las ltimas versiones siempre se les cuela alguna "peora", que merma la
funcionalidad de algn componente y donde, por ejemplo, funcionaba la
subida de ficheros mediante un componente JSF con barra de progreso en
Internet Explorer, ahora solo funciona en Firefox. Aunque tambin es cierto
que se detecta y soluciona en la siguiente versin (Jos Snchez, 2010).

1.13. Hibernate
Hibernate es una herramienta de Mapeo Objeto-Relacional (ORM) para la plataforma
Java y disponible tambin para .Net con el nombre de NHibernate que facilita el mapeo
de atributos entre una base de datos relacional tradicional y el modelo de objetos de una

33

Captulo II

aplicacin, mediante archivos declarativos (XML) o anotaciones en los beans de las


entidades que permiten establecer estas relaciones. Hibernate es software libre,
distribuido bajo los trminos de la licencia GNU LGPL.

Como todas las herramientas de su tipo, Hibernate busca solucionar el problema de la


diferencia entre los dos modelos de datos coexistentes en una aplicacin: el usado en la
memoria de la computadora (orientacin a objetos) y el usado en las bases de datos
(modelo relacional). Para lograr esto permite al desarrollador detallar cmo es su modelo
de datos, qu relaciones existen y qu forma tienen. Con esta informacin Hibernate le
permite a la aplicacin manipular los datos de la base operando sobre objetos, con todas
las caractersticas de la POO. Hibernate convertir los datos entre los tipos utilizados por
Java y los definidos por SQL. Hibernate genera las sentencias SQL y libera al
desarrollador del manejo manual de los datos que resultan de la ejecucin de dichas
sentencias, manteniendo la portabilidad entre todos los motores de bases de datos con
un ligero incremento en el tiempo de ejecucin.

Hibernate

ofrece

tambin

un

lenguaje

de

consulta

de

datos

llamado

HQL

(HibernateQueryLanguage), al mismo tiempo que una API para construir las consultas
programticamente. Hibernate fue una iniciativa de un grupo de desarrolladores
dispersos alrededor del mundo conducidos por Gavin King. Tiempo despus, JBoss Inc.
contrat a los principales desarrolladores de Hibernate y trabaj con ellos en brindar
soporte al proyecto (Wikipedia, 2013).

Fig. 6. Arquitectura de Hibernate


(http://joeljil.wordpress.com)

34

Captulo II

1.14. Oracle
1.14.1. Caractersticas principales de Oracle.
Oracle es un Sistema Gestor de Bases de Datos con caractersticas objetorelacionales, que pertenece al modelo evolutivo de SGBD. Sus caractersticas
principales son las siguientes:

Entorno cliente/servidor.

Gestin de grandes bases de datos.

Usuarios concurrentes.

Alto rendimiento en transacciones.

Sistemas de alta disponibilidad.

Disponibilidad controlada de los datos de las aplicaciones.

Adaptacin a estndares de la industria, como SQL-92.

Gestin de la seguridad.

Autogestin de la integridad de los datos.

Opcin distribuida.

Portabilidad.

Compatibilidad.

Conectabilidad.

Replicacin de entornos.

1.14.2. Definicin de base de datos e instancia de oracle.


Una base de datos Oracle es una coleccin de datos tratada como una unidad.
El propsito general es almacenar y recuperar informacin relacionada.
Una instancia Oracle consta de una estructura de memoria, llamada rea
Global del Sistema (SGA), y de unos procesos background utilizados por el
servidor Oracle para manejar una base de datos. Cada instancia Oracle puede
abrir y utilizar slo una base datos en cualquier punto y momento.
1.14.3. Estructura lgica de Oracle.
La estructura lgica de Oracle viene determinada por:

Uno o ms tablespaces (rea lgica de almacenamiento).

Los objetos de los distintos esquemas (colecciones de objetos).

35

Captulo II

Las estructuras de almacenamiento lgico, incluyendo tablespaces, segmentos


y extensiones, dictan la forma de utilizacin del espacio fsico. Los objetos del
esquema y las relaciones entre ellos forman el diseo relacional de la base de
datos.
Tablespaces
Una base de datos se divide en unidades de almacenamiento lgico
llamadas tablespaces. Un tablespace se usa para agrupar estructuras
lgicas relacionadas.

Esquemas y objetos del esquema


Un esquema es una coleccin de objetos de la base de datos. Los
objetos del esquema son estructuras lgicas que hacen referencia
directa a datos de la base de datos (tablas, vistas, secuencias,
procedimientos almacenados, sinnimos, ndices, clusters y enlaces
con otras bases de datos).

Bloques de datos, extensiones y segmentos


Los bloques de datos Oracle son las estructuras lgicas de ms bajo
nivel. Una base de datos se almacena en bloques de datos, que se
corresponden con un nmero especfico de bytes de espacio en disco.
Una extensin es un nmero especfico de bloques de datos contiguos,
que se emplea para almacenar un tipo de informacin especfico. Un
segmento es un conjunto de extensiones reservadas para una
determinada estructura lgica (por ejemplo, segmentos de datos o
segmentos de ndices).

1.14.4. Estructura fsica de Oracle.


La estructura fsica est formada por los ficheros del sistema operativo que
constituyen la base de datos. Todas las base de datos Oracle constan de tres
tipos de ficheros: uno o ms ficheros de datos, uno o ms ficheros de redo log
y uno o ms ficheros de control. Proveen el almacenamiento fsico de la
informacin de la base de datos.
Ficheros de datos
Los ficheros de datos contienen los datos de la base de datos. Tienen
las siguientes caractersticas:

Un fichero slo puede estar asociado con una base de datos.

36

Captulo II

Los ficheros de datos tienen atributos que permiten reservar


automticamente para ellos extensiones cuando se acaba el
espacio.

Uno o ms ficheros de datos forman una unidad lgica de


almacenamiento llamada tablespace.

Ficheros de redo log


El conjunto de ficheros de redo log se denomina Redo Log de la base
de datos. La funcin principal de Redo Log es guardar todos los
cambios hechos a los datos. Son crticos en la proteccin de la base de
datos ante fallos; se utilizan en caso de fallo para recuperar la base de
datos.

Ficheros de control
Un fichero de control contiene entradas que especifican la estructura
fsica de la base de datos. En particular contiene:

El nombre de la base de datos.

Los nombres y localizacin de los ficheros de la base de datos


y los ficheros de redo log.

Fecha de creacin de la base de datos.

Informacin de sincronizacin para el proceso de recuperacin


de la base de datos.

1.14.5. Seguridad para Oracle.


El servidor Oracle provee de control de accesos discrecional, es decir, acceso
restringido a la informacin basado en privilegios.
Oracle gestiona la seguridad de la base de datos usando:

Usuarios y esquemas de la base de datos.

Privilegios.

Roles.

Ajustes de rendimiento y cuotas.

Lmites sobre los recursos.

Auditora.

37

Captulo II

Cada usuario tiene un dominio de seguridad, que determina cosas como:

Acciones (privilegios y roles) disponibles para el usuario.

Cuotas sobre tablespaces.

Lmites en los recursos del sistema.

1.14.6. Estructuras usadas para la recuperacin en Oracle.


Oracle posee varias estructuras y mecanismos software para proveer:

Recuperacin de la base de datos ante distintos tipos de fallos.

Operaciones de recuperacin flexibles.

Disponibilidad de los datos durante las operaciones de backup y


recovery.

Oracle usa varias estructuras para proveer la recuperacin completa de la


instancia:

el Redo Log,

los segmentos de rollback,

un fichero de control,

las copias necesarias de la base de datos (Roberto Velasco, 2013).

1.15. Servidor Web Apache


El servidor http apache es un servidor web http de cdigo abierto para plataformas Unix
(BSD, GNU/Linux, etc.), Microsoft Windows, Macintosh y otras, que implementa el
2

protocolo http/1.1 y la nocin de sitio virtual.

Apache es usado principalmente para enviar pginas web estticas y dinmicas en la


World Wide Web. Muchas aplicaciones web estn diseadas asumiendo como ambiente
de implantacin a Apache, o que utilizarn caractersticas propias de este servidor web.
Apache es el componente de servidor web en la popular plataforma de aplicaciones
LAMP, junto a MySQL y los lenguajes de programacin PHP/Perl/Python (y ahora
tambin Ruby).

38

Captulo II

Este servidor web es redistribuido como parte de varios paquetes propietarios de


software, incluyendo la base de datos Oracle y el IBM WebSphereapplication server. Mac
OS X integra apache como parte de su propio servidor web y como soporte de su
servidor de aplicaciones WebObjects. Es soportado de alguna manera por Borland en las
herramientas de desarrollo Kylix y Delphi. Apache es incluido con Novell NetWare 6.5,
donde es el servidor web por defecto, y en muchas distribuciones Linux.

Apache es usado para muchas otras tareas donde el contenido necesita ser puesto a
disposicin en una forma segura y confiable. Un ejemplo es al momento de compartir
archivos desde una computadora personal hacia Internet. Un usuario que tiene Apache
instalado en su escritorio puede colocar arbitrariamente archivos en la raz de
documentos de Apache, desde donde pueden ser compartidos.

Los programadores de aplicaciones web a veces utilizan una versin local de Apache
con el fin de previsualizar y probar cdigo mientras ste es desarrollado.

Microsoft Internet InformationServices (IIS) es el principal competidor de Apache, as


como Sun Java System Web Server de Sun Microsystems y un anfitrin de otras
aplicaciones como Zeus Web Server. Algunos de los ms grandes sitios web del mundo
estn ejecutndose sobre Apache. La capa frontal (frontend) del motor de bsqueda
Google est basada en una versin modificada de Apache, denominada Google Web
Server (GWS). Muchos proyectos de Wikimedia tambin se ejecutan sobre servidores
web Apache.

a. Ventajas

Modular

Cdigo abierto

Multi-plataforma

Extensible

Popular (fcil conseguir ayuda/soporte)

b. Mdulos
La arquitectura del servidor Apache es muy modular. El servidor consta de una
seccin core y diversos mdulos que aportan mucha de la funcionalidad que podra
considerarse bsica para un servidor web.
Algunos de estos mdulos son:

mod_ssl - Comunicaciones Seguras va TLS.

mod_rewrite - reescritura de direcciones (generalmente utilizado para


transformar pginas dinmicas como php en pginas estticas html para as

39

Captulo II

engaar a los navegantes o a los motores de bsqueda en cuanto a cmo


fueron desarrolladas estas pginas).

mod_dav - Soporte del protocolo WebDAV (RFC 2518).

mod_deflate - Compresin transparente con el algoritmo deflate del contenido


enviado al cliente.

mod_auth_ldap - Permite autentificar usuarios contra un servidor LDAP.

mod_proxy_ajp - Conector para enlazar con el servidor JakartaTomcat de


pginas dinmicas en Java (servlets y JSP).

El servidor de base puede ser extendido con la inclusin de mdulos externos entre
los cuales se encuentran:

mod_cband - Control de trfico y limitador de ancho de banda.

mod_perl - Pginas dinmicas en Perl.

mod_php - Pginas dinmicas en PHP.

mod_python - Pginas dinmicas en Python.

mod_rexx - Pginas dinmicas en REXX y Object REXX.

mod_ruby - Pginas dinmicas en Ruby.

mod_aspdotnet - Pginas dinmicas en .NET de Microsoft (Mdulo retirado).

mod_mono - Pginas dinmicas en Mono

mod_security - Filtrado a nivel de aplicacin, para seguridad (Wikipedia, 2013).

40

Captulo II

CAPITULO II. DESARROLLO DE LA TESIS


2.1.

Plan de desarrollo del proyecto

2.1.1.

Estudio Preliminar del Proyecto

A. Descripcin de la Empresa

Certicom, una empresa ubicada en Av. Canaval y Moreyra N452, 5


piso, con ms de 15 aos de experiencia especializada en apoyar a
sus clientes a crecer, tiene como misin proveer servicios de
tercerizacin en la gestin y operacin de procesos creando valor a
travs del uso intensivo de las tecnologas, la ingeniera y la
innovacin, orientado

al mejoramiento de los tiempos y costos y

optimizando la eficiencia.

B. Estructura de la Empresa

Gerencia General

Departamento de
Sistemas

Departamento de
Operaciones

Comercializacin

Compra

Produccin

Venta

Fig. 7. Organigrama de la Empresa

41

Departamento de
Administracin y
Finanzas

RR.HH

Captulo II

2.1.2.

Propsito del proyecto


La solucin informtica a desarrollar va a permitir manejar adecuadamente la
Gestin de Compras de la empresa CERTICOM S.A.C. Este sistema informtico
web debe tambin permitir registrar todos los procesos de las operaciones por
parte de logstica y empleados de la empresa, realizar procesos de reportes y
consultas que exploten la informacin oficial que existen en la empresa que
ayuden a la toma decisiones para la empresa.

2.1.3.

Hitos del proyecto

Tabla 2 Hitos del Proyecto


Componentes
Fases

Hitos

Fase1 : Gestin de Proyectos

Plan de Trabajo a realizar.


Estudio Preliminar del trabajo a realizar.
Desarrollo del informe del trabajo a realizar.

Fase2: Anlisis de Requisitos

Prototipo del sistema completo a realizar.


Diagrama de casos de uso a realizar.
Modelo de Dominio a realizar.

Fase2: Anlisis y Diseo

Diagrama de Robustez a realizar.

Preliminar

Especificacin de los requerimientos a


realizar.
Actualizacin del diagrama de dominio a
realizar.

Fase2: Diseo Detallado

Diagrama de Secuencia a realizar.


Actualizacin del diagrama de dominio a
realizar.

Fase2: Implementacin

Diagrama de Despliegue a realizar.


Diagrama de Componentes a realizar.
Codificacin y realizacin de pruebas a
realizar.

2.1.4.

Requerimientos Funcionales y No funcionalesdel proyecto


Requerimientos Funcionales
o

Registrar

categora

actualizarlos

42

de

productos,

tambin

se

permitir

Captulo II

Registrar sub-categora de productos, tambin se permitir


actualizarlos

Registrar productos, tambin se permitir actualizarlos

Registrar rubro, tambin se permitir actualizarlos.

Registrar proveedor, tambin se permitir actualizarlos.

Registrar proyecto Padre, tambin se permitir actualizarlos.

Registrar proyecto, tambin se permitir actualizarlos.

Registrar departamento, tambin se permitir actualizarlos.

Registrar usuario, tambin se permitir actualizarlos.

Asignar opciones a usuario.

Registrar rol, tambin se permitir actualizarlos.

Asignar opciones a rol.

Registrar requerimiento y su detalle.

Aprobar requerimientos generados por los usuarios finales.

Cotizar los requerimientos aprobados.

Seleccionar

confirmar

la

cotizacin

ganadora

por

requerimiento.
o

Aprobar la cotizacin ganadora y generar la orden de compra.

Generar reporte de compra de productos por proyecto y fecha.

Requerimientos No Funcionales
Contar con un manual de usuario.
El tiempo de respuesta del sistema informtico no mayor a 2
segundos.
Contar con cuadros de dilogo para la mejor manipulacin de los
procesos.
Navegacin fcil va teclado y/o mouse.
Correr bajo el browser Mozilla Firefox.
Multiplataforma (Windows XP / vista)
La disponibilidad del sistema debe de ser las 24 horas del da durante
los 365 das del ao.
2.1.5.

Restricciones y Supuestos del proyecto

Restricciones

El software ser desarrollado utilizando la integracin de los


frameworks Spring, Richfacese Hibernate.

El gestor de la base de datos ser Oracle.

El desarrollo del sistema utilizar la metodologa Iconix.

43

Captulo II

Supuestos

Se dispone de los recursos econmicos necesarios para ejecutar el


proyecto.

Existe el compromiso del asesor y miembros del equipo de


trabajoen desarrollar el sistema informtico web.

2.2.

Anlisis de Requisitos
2.2.1.Prototipo del sistema completo.
Mantenimiento Categora

Nombre

Habilitado

Estado

Guardar

Limpiar

Nombre

Estado

Acciones

Equipos de computo

Editar Eliminar

Suministros

Editar Eliminar

Servicios

Editar Eliminar

Fig. 8. Prototipo Mantenimiento Categora de Producto


Mantenimiento Sub-Categora

Nombre
Categora
Estado

Suministros
Habilitado

Guardar

Limpiar

Nombre

Categora

Estado

Acciones

Papelera

Suministros

Editar Eliminar

Oficina

Suministros

Editar Eliminar

Productos de Limpieza

Suministros

Editar Eliminar

Fig. 9. Prototipo Mantenimiento Sub-Categora de Producto

44

Captulo II

Mantenimiento Producto

Nombre
Sub-Categora

Papelera

Tipo Producto

Consumible

Precio Coste
Estado
Guardar

Habilitado
Limpiar

Nombre

Sub-Categora

Tipo Producto

Precio Coste

Estado

Acciones

Papelote

Papelera

Consumible

20.0

Editar Eliminar

Papel Bond A4 75gr Chamex

Papelera

Consumible

18.0

Editar Eliminar

Papel a color

Papelera

Consumible

16.0

Editar Eliminar

Fig. 10. Prototipo Mantenimiento de Producto

Mantenimiento Proyecto Padre

Nombre

Habilitado

Estado

Guardar

Limpiar

Nombre

Estado

Acciones

Gastos de Administracin

Editar Eliminar

Scotiabank

Editar Eliminar

Kursa

Editar Eliminar

Fig. 11. Prototipo Mantenimiento Proyecto Padre

45

Captulo II

Mantenimiento Departamento

Nombre
Suministros

Departamento Superior

Habilitado

Estado

Guardar

Limpiar

Nombre

Dep. Superior

Estado

Acciones

Logistica

Gerencia General

Editar Eliminar

Sistemas

Gerencia General

Editar Eliminar

Tesoreria

Contabilidad

Editar Eliminar

Fig. 12 Prototipo Mantenimiento Departamento

Mantenimiento Proyecto

Nombre
Proyecto Padre

Gastos de Administracin

Departamento

Sistemas

Estado

Guardar

Habilitado

Limpiar

Nombre

Proyecto Padre

Departamento

Estado

Acciones

BBVA

Gastos de Administracin

Sistemas

Editar Eliminar

Sistemas

Gastos de Administracin

Sistemas

Editar Eliminar

Kursa

Gastos de Administracin

Sistemas

Editar Eliminar

Fig. 13 Prototipo Mantenimiento Proyecto

46

Captulo II

Mantenimiento Rubro

Nombre

Habilitado

Estado

Guardar

Limpiar

Nombre

Estado

Acciones

Banca

Editar Eliminar

Telefonia

Editar Eliminar

Suministros

Editar Eliminar

Fig. 14 Prototipo Mantenimiento Rubro

Mantenimiento Proveedor
Es una empresa?
Nombre
Tipo documento
Rubro

Num. Documento

RUC
Banca

Direccin
Correo
Telfono
Ciudad
Estado

Habilitado

Guardar

Limpiar

Nombre

Estado

Acciones

Acovalco

Editar Eliminar

Tailoy

Editar Eliminar

Telefonica

Editar Eliminar

Fig. 15 Prototipo Mantenimiento Proveedor

47

Captulo II

Registrar Usuario
Nombre
Apellido Paterno
Apellido Materno
Perfil
Tipo Documento

Administrador
DNI

Usuario

Correo
Departamento
Es Jefe?

Telfono
Sistemas
SI

Estado

Fecha Nacimiento

agosto de 2013

Fecha Ingreso
m

agosto de 2013
l

d
4

10

11

10

11

12

13

14

15

16

17

18

12

13

14

15

16

17

18

19

20

21

22

23

24

25

19

20

21

22

23

24

25

26

27

28

29

30

31

26

27

28

29

30

31

Habilitado

Guardar

Limpiar

Cdigo

Apellido Paterno

Apellido Materno Nombres

Estado

Acciones

Opciones de Men

12345678

Falcetta

Saladino

Giuseppe

Editar Eliminar

Asignar Opciones

46090495

Wilson

Carbajal

Dennis Martn

Editar Eliminar

Asignar Opciones

ADMINGC

Daz

Flores

Lzaro

Editar Eliminar

Asignar Opciones

Fig. 16 Prototipo Registro Usuario

Opciones por Usuario


Documento
Nombre

46090495
Wilson Carbajal, Dennis
Logstica

Perfil
Guardar

Cancelar
Seleccionadas

Disponibles

Fig. 17 Prototipo Asignar Opciones a Usuario

48

Captulo II

Mantenimiento Rol

Nombre
Descripcin
Habilitado

Estado
Guardar

Limpiar

Nombre

Estado

Acciones

Columna 1

Logstica

Editar Eliminar

Asignar Opciones

Jefe de Proyecto

Editar Eliminar

Asignar Opciones

Usuario Final

Editar Eliminar

Asignar Opciones

Fig. 18 Prototipo Registrar Rol

Opciones de Men por Perfil


Perfil

Usuario Final

Descripcin

Encargado de hacer requerimientos de compra

Guardar

Cancelar

Seleccionadas

Disponibles

Fig. 19 Prototipo Asignar Opciones a Rol

49

Captulo II

Registrar Requerimiento
Datos de Requerimiento
Nmero
Responsable

1
Dennis Wilson

Fecha
Jefe

Sistemas

Proyecto

15/07/13
Giuseppe Falcetta

Detalle de Producto

Producto

Precio

Cloro

10.0

Detergente

15.0

Limpia Vidrios

8.0

Seleccionar

Cantidad

Agregar

10

Detalle Requerimiento

Producto

Precio

Cantidad

Accin

Cloro

10.0

10

Eliminar

Detergente

15.0

10

Eliminar

Limpia Vidrios

8.0

14

Eliminar

Confirmar

Cancelar

Fig. 20 Prototipo Registrar Requerimiento

Consultar Requerimientos

Listado de Requerimientos

N Requerimiento

Responsable

Fecha

Jefe Proyecto

Estado

Ir Requerimiento

Dennis Wilson

2013-07-20

G. Falcetta

Nuevo

Ir Requerimiento

Fig. 21 Prototipo Consultar Requerimientos

50

Captulo II

Requerimiento por Aprobar


Aprobar
Datos de Requerimiento
Nmero

Responsable

Dennis Wilson

Fecha
Jefe

Sistemas

Proyecto

15/07/13
Giuseppe Falcetta

Detalle Requerimiento

Producto

Precio

Cantidad

Cloro

10.0

10

Detergente

15.0

10

Limpia Vidrios

8.0

14

Fig. 22 Prototipo Aprobar Requerimiento

Consultar Requerimientos Aprobados

Listado de Requerimientos

N Requerimiento

Responsable

Fecha

Jefe Proyecto

Proyecto

Estado

Ir Requerimiento

Dennis Wilson

2013-07-20

G. Falcetta

Sistemas

Aprobado

Ir Requerimiento

Fig. 23 Prototipo Consultar Requerimientos Aprobados

51

Captulo II

Requerimiento por Cotizar

Datos de Requerimiento
Nmero
Responsable
Proyecto

1
Dennis Wilson

Fecha

Nueva Cotizacin

15/07/13

Jefe

Sistemas

Giuseppe Falcetta

Cotizar

Detalle Requerimiento

Producto
Papel Bond A4 75Gr Chamex
Papelote

Precio

Cantidad

10.0

15

15.0

10

Nueva Cotizacin
Proveedor

Tailoy

Fecha

24/08/13

Listado de Detalle Requerimientos

Producto

Precio

Cantidad

IGV

Papel Bond A4 75Gr Chamex

16.0

15

18%

Papelote

20.0

10

18%

Subtotal

Subtotal:
IGV:
Total:
Guardar

Cancelar

Fig. 24 Prototipo Cotizar Requerimiento

Consultar Requerimientos Cotizados

Listado de Requerimientos

N Requerimiento

Responsable

Fecha

Jefe Proyecto

Proyecto

Estado

Ir Requerimiento

Dennis Wilson

2013-07-20

G. Falcetta

Sistemas

Cotizado

Ir Requerimiento

Fig. 25 Prototipo Consultar Requerimientos Cotizados

52

Captulo II

Requerimiento por Confirmar


Datos de Requerimiento
Nmero

Responsable

Dennis Wilson

Fecha

15/07/13

Jefe

Sistemas

Proyecto

Giuseppe Falcetta

Cotizacin

Proveedor

Total

Detalle

Seleccionar

Acovalco

50.0

Ir a detalle cot.

Tailoy

65.5

Ir a detalle cot.

Refricorp

48.2

Ir a detalle cot.

Confirmar Requerimiento

Detalle Cotizacin
Proveedor

Tailoy

Fecha

24/08/13

Listado de Detalle Requerimientos

Producto

Precio

Cantidad

IGV

Papel Bond A4 75Gr Chamex

16.0

15

18%

Papelote

20.0

10

18%

Subtotal

Subtotal:
IGV:
Total:
Atrs

Fig. 26 Prototipo Confirmar Requerimiento

Consultar Requerimientos Confirmados

Listado de Cotizaciones

N Requerimiento

Proveedor

Responsable

Fecha

Jefe Proyecto

Proyecto

Estado

Ir Requerimiento

Refricorp

Dennis Wilson

2013-07-20

G. Falcetta

Sistemas

Confirmado

Ir a Cotizacin

Acovalco

Dennis Wilson

2013-07-20

G. Falcetta

Sistemas

Cancelado

Ir a Cotizacin

Tailoy

Dennis Wilson

2013-07-20

G. Falcetta

Sistemas

Cancelado

Ir a Cotizacin

Fig. 27 Prototipo Consultar Requerimientos Confirmados

53

Captulo II

Cotizacin Ganadora
Refricorp

Proveedor

Fecha

20/07/13

Listado de Detalle Requerimientos

Producto

Precio

Cantidad

IGV

Papel Bond A4 75Gr Chamex

16.0

15

18%

Papelote

20.0

10

18%

Subtotal

Subtotal:
IGV:
Total:
Aprobar

Atrs

Fig. 28 Prototipo Aprobar Cotizacin

Consultar Requerimientos Aprobados

Listado de Cotizaciones

N Requerimiento

N Orden Compra Proveedor

Responsable

Fecha

Jefe Proyecto

Proyecto

Estado

Accin

OC0001

Refricorp

Dennis Wilson

2013-07-20

G. Falcetta

Sistemas

Aprobado

Ir a Orden Compra

OC0002

Acovalco

Dennis Wilson

2013-07-20

G. Falcetta

Sistemas

Cancelado

Ir a Orden Compra

OC0003

Tailoy

Dennis Wilson

2013-07-20

G. Falcetta

Sistemas

Cancelado

Ir a Orden Compra

Fig. 29 Prototipo Consultar Requerimientos Aprobados

rden de Compra
Orden de Compra: OC0001
Proveedor

Refricorp

Fecha

20/07/13
Listado de Detalle Requerimientos

Producto

Precio

Cantidad

IGV

Papel Bond A4 75Gr Chamex

16.0

15

18%

Papelote

20.0

10

18%

Subtotal

Subtotal:
IGV:
Total:
Imprimir

Atrs

Fig. 30 Prototipo Orden de Compra

54

Captulo II

Reporte de rdenes de Compra por Proyecto y Fecha


Proyecto

Sistemas

Fecha

24/08/13
Exportar PDF

rden Compra

Total

Proyecto

Fecha

Jefe Proyecto

Responsable

OC001

48.2

Sistemas

24/08/13

G. Falcetta

Dennis Wilson

Fig. 31 Prototipo Reporte de rdenes de Compra por Proyecto y Fecha

2.2.2.Diagrama de casos de uso.


uc Casos de Uso de Negocio

Gestion de
Mantenimiento

Administrador

Gestin de Compras

Usuario Final
Logstica

Gerente General

Jefe Proyecto

Fig. 32Caso de Uso de Proceso del Negocio

55

Captulo II

uc Casos de Uso Gestin Compras

Registrar
Requerimiento
Usuario Final
(from
Actors)

extend

Ver Requerimiento

Jefe Proyecto

extend

(from Casos de Uso)

Aprobar
Requerimiento

(from Casos de Uso)

(from
Actors)

Ver Cotizaciones por


Requerimiento

extend
extend

Confirmar
Requerimiento a
Cotizar

extend

Ver Requerimientos
Aprobados
Logstica

extend

Cotizar
Requerimiento

(from Casos de Uso)

(from Casos de Uso)

(from
Actors)

extend

Ver Requerimiento
Cotizado

extend

Gerente General
(from
Actors)
Generar Orden de
Compra

Fig. 33Caso de Uso de Proceso de Gestin de Compras

56

Aprobar
Requerimiento

Captulo II

uc Casos de Uso Mantenimiento

Mantenimiento
Usuario

extend

Mantenimiento
OpcionUsuario

extend

Mantenimiento
OpcionRol

(from Casos de Uso)

Mantenimiento Rol

Mantenimiento
ProyectoPadre

Mantenimeinto
Proyecto

Mantenimiento
Departamento
Administrador
(from
Actors)
Mantenimiento
Categora Producto

Mantenimiento
Sub-Catetgora
Producto

Mantenimiento
Producto

Mantenimiento Rubro

Mantenimiento
Prov eedor

Fig. 34Caso de Uso de Gestin de Mantenimiento de Informacin

57

Captulo II

2.2.3.Modelo de Dominio.
class Diagrama Dominio

Opcin
1

Rol
1

1..*
OpcionUsuario

OpcinRol

1..*

1..*

1..*

Proyecto Padre

1..*
Usuario
1

1..*

Departamento
Usuario

1..*

1..*

1..*

Proyecto

1
1..*
Departamento

Orden de Compra
1..*

1..*

1..*

Requerimiento

Categora
Producto

1
1..*

1..*
SubCategora
Producto

1..*

Producto

1..*

1
1
1..*

Rubro

Cotizacin

Prov eedor
1

1..*

1..*
1
1..*

1..*

Cotizacin Detalle

Fig. 35Modelo de Dominio

58

Requerimiento
Detalle

Captulo II

2.3.

Anlisis y Diseo Preliminar

2.3.1.Diagrama de Clases.

class Diagrama Dominio

Opcin

Usuario
-

Id :int
apellidoMaterno :String
1..*
apellidoPaterno :String
email :String
nombre :String
numeroDocumento :String
password :String
telefono :String
tipoDocumento :String
fechaIngreso :Date
1
fechaCese :Date
estado :String
ultimaFechaCambioPass :Date
fechaNac :Date
1
esJefe :char

+
+
+
+

RegistrarUsuario() :void
ModificarUsuario() :void
EliminarUsuario() :void
CargarUsuario() :void

1 -

OpcionUsuario
1..*

+
+

CargarOpcionRol() :void
AsignarOpcionUsuario() :void

1..*

Rol
1 -

Id :int
nombre :String
descripcion :String
opcSuperior :int
estado :String
codg :String
opcNavRul :String
opcController :String
opcInitMethod :String
opcDiscrmndr :String 1
opcTipoNodo :char
opcOrden :int

+
+
+
+

OpcinRol
CargarOpciones() :void
AsignarOpcionRol() :void

1..*

Proyecto Padre

Proyecto

Categora Producto
-

Id :int
nombre :String
estado :String

+
+
+
+

RegistrarCategora() :void
ActualizarCategora() :void
EliminarCategora() :void
CargarCategora() :void

Id :int
estado :String

Guardar() :void

1..*

Id :int
nombre :String
estado :String

+
+
+
+

RegistrarProyectoPadre() :void
ModificarProyectoPadre() :void
EliminarProyectoPadre() :void
CargarProyectoPadre() :void

1..*

Id :int
nombre :String
estado :String

+
+
+
+

RegistrarProyecto() :void
ActualizarProyecto() :void
EliminarProyecto() :void
CargarProyecto() :void

1
Orden de Compra
1..*

Departamento
-

1..*
SubCategora Producto

+
+
+
+

Id :int
nombre :String
estado :String

+
+
+
+

RegistrarSubCategora() :void
ActualizarSubCategora() :void
EliminarSubCategora() :void
CargarSubCategora() :void
1

Id :int
cantidad :int

Guardar() :void

1 -

1..*

+
+

1..*

RegistrarRequerimiento() :void
AprobarRequerimiento() :void
1

Producto

1
1..*

Id :int
nombre :String
tipo :char
precioCoste :float
estado :String

Cotizacin
-

RegistrarProducto() :void
ActualizarProducto() :void
EliminarProducto() :void
CargarProducto() :void

+
1..* +

Id :int
fecha :Date
estado :char
subtotal :float
igv :float
total :float
RegistrarCotizacin() :void
SeleccionarCotizacinGanadora() :void
1

Prov eedor

+
+
+
+

Id :int
numero :int
fecha :Date
estado :String

Id :int
esEmpresa :char
nombre :String
tipoDocumento :char
numDocumento :String
direccion :String
correo :String
telefono :String
ciudad :String
estado :String

1..*
1..*
1

RegistrarProveedor() :void
ModificarProveedor() :void
EliminarProveedor() :void
CargarProveedor() :void

Cotizacin Detalle
-

Id :int
precio :float
cantidad :int
igv :float
subtotal :float

Guardar() :void

Fig. 36 Diagrama de Clases

59

1..*
+

1..* -

Requerimiento

1..*

Requerimiento
Detalle

RegistrarDepartamento() :void
ActualizarDepartamento() :void
EliminarDepartamento() :void
CargarDepartamento() :void

+
+
+
+

Rubro

Id :int
nombre :String
estado :String
depSupId :int

1..* -

RegistrarRubro() :void
ActualizarRubro() :void
EliminarRubro() :void
1
CargarRubro() :void

+
+
+
+

1..*

1..*

Id :int
nombre :String
estado :String

1..*

Departamento
Usuario

RegistrarRol() :void
ActualizarRol() :void
EliminarRol() :void
CargarRol() :void

1..*

+
+

Id :int
nombre :String
descripcion :String
estado :String

Id :int
numero :int
fecha :Date
subtotal :float
igv :float
total :float
estado :char
Guardar() :void

Captulo II

2.3.2.Diagrama de Robustez.

sd Registrar Categoria

1.2: Guardar()

Registrar Categora

1.1: RegCategora(objCategora)

1.3: ::Msj "Registro Ok"

1.5: Leer()

1.4: CargarCategora(idCategora)
1: IUManCategora()
1.6: :objCategora Cargar Categora

Categora

1.8: Modificar()
Administrador

IURegistrar Categora
1.7: ActualizarCategora(objCategora)

(from
Actors)

1.9: :Msj. "Actualizacin Ok"

1.11: Eliminar()

Actualizar Categora
1.10: EliminarCategora(idCategora)
1.12: :Msj. "Eliminacin Ok"

Eliminar Categora

Fig. 37Diagrama de Robustez MantenimientoCategora de Producto


sd Registrar Sub-Categora

1.2: Leer()

1.1: RegistrarSub-Categora(objSubCategoria)
Registrar
Sub-Categora

Categora
1.3: Guardar()

1.4: :Msj. "Registro OK"

1: IUManSub-Categora()

1.6: Leer()

1.5: CargarSubCategora(idSubCategora)
1.7: :objSubCategora Cargar Sub-Categora
Administrador
(from
Actors)

IURegistrar
Sub-Categora

1.8: ActualizarSubCategora(objSubCategora)

1.9: Modificar()

Sub-Categora

1.10: :Msj. "Actualizacin OK"

1.11: EliminarSubCategora(idSubCategora)

Actualizar
Sub-Categora

1.12: Eliminar()

1.13: :Msj. "Eliminacin OK"


Eliminar
Sub-Categora

Fig. 38Diagrama de Robustez Mantenimiento Sub-Categora de Producto

60

Captulo II

sd Registrar Producto

1.2: Leer()

1.1: RegProducto(objProducto)

Sub-Categora

Registrar Producto

1.3: Guardar()
1.4: :Msj. "Registro OK"
1: IUMantProducto()

1.6: Leer()

1.5: CargarProducto(idProducto)

1.7: :ObjProducto

Cargar Producto
1.9: Modificar()

IURegistrar Producto

Producto

1.8: ActualizarProducto(objProducto)

Administrador
1.10: :Msj: "Actualizacin OK"

(from
Actors)

1.12: Eliminar()
1.11: EliminarProducto(idProducto)Actualizar Producto

1.13: :Msj: "Eliminacin OK"

Eliminar Producto

Fig. 39Diagrama de Robustez Mantenimiento de Producto

sd Registrar Rubro

Registrar Rubro
1.1: RegistrarRubro(objRubro)

1.3: :Msj. "Registro OK"

1: IUManRubro()

1.5: Leer()

1.4: CargarRubro(idRubro)

1.6: :objRubro

1.2: Guardar()

Cargar Rubro
1.8: Modificar()

Administrador
(from
Actors)

IURegistrar Rubro

1.7: ActualizarRubro(objRubro)
1.9: :Msj. "Actualizacin OK"
1.11: Eliminar()
Actualizar Rubro

1.10: EliminarRubro(idRubro)

1.12: :Msj. "Eliminacin OK"

Eliminar Rubro

Fig. 40Diagrama de Robustez Mantenimiento de Rubro

61

Rubro

Captulo II

sd Registrar Prov eedor

1.2: Leer()
Registrar Proveedor

Rubro

1.1: RegistrarProveedor(objProveedor)

1.4: :Msj: "Registro OK"

1.3: Guardar()

1.5: CargarProveedor(idProveedor)

1: IUProveedor()

1.6: Leer()
Cargar Proveedor

1.7: :objProveedor
Administrador

1.9: Modificar()

IURegistrar Proveedor
1.8: ActualizarProveedor(objProveedor)

(from
Actors)

Proveedor

1.10: :Msj: "Actualizacin OK"


1.12: Eliminar()
Modificar Proveedor
1.11: EliminarProveedor(idProveedor)

1.13: :Msj: "Eliminacin OK"

Eliminar Proveedor

Fig. 41 Diagrama de Robustez de Mantenimiento de Proveedor

sd Registrar ProyectoPadre

1.1: RegistrarProyectoPadre(objProyectoPadre)

1: IUProyectoPadre()

Registrar
ProyectoPadre

1.2: Guardar()

1.3: :Msj. "Registro OK"

1.4: CargarProyectoPadre(idProyectoPadre)

1.5: Leer()

1.6: :objProyectoPadre
Administrador
(from
Actors)

IURegistrar
ProyectoPadre

Cargar ProyectoPadre

1.8: Modificar()

1.7: ActualizarProyectoPadre(objProyectoPadre)
1.9: :Msj. "Actualizacin OK"

1.11: Eliminar()
1.10: EliminarProyectoPadre(idProyectoPadre)

Modificar
ProyectoPadre

1.12: :Msj. "Eliminacin OK"

Eliminar
ProyectoPadre

Fig. 42 Diagrama de Robustez de Mantenimiento de Proyecto Padre

62

ProyectoPadre

Captulo II

sd Registrar Departamento

1.2: Leer()
Registrar
Departamento

1.1: RegistrarDepartamento(objDepartamento)

Departamento

1.3: Guardar()

1.4: :Msj: "Registro OK"

1: IUDepartamento()

1.6: Leer()

1.5: CargarDepartamento(idDepartamento)
1.7: :objDepartamento Cargar Departamento

(from
Actors)

Departamento

1.9: Modificar()

IURegistrar
Departamento

Administrador

1.8: ActualizarDepartamento(objDepartamento)
1.10: :Msj: "Actualizacin OK"
Actualizar
Departamento

1.12: Eliminar()

1.11: EliminarDepartamento(idDepartamento)

1.13: :Msj: "Eliminacin OK"

Eliminar Departamento

Fig. 43Diagrama de Robustez de Mantenimiento de Departamento

sd Registrar Proyecto

1.2: Leer()

Proyecto Padre
1.3: Leer()

Registrar Proyecto

1.1: RegistrarProyecto(objProyecto)

1.4: Guardar()
1.5: :Msj: "Registro OK"

Departamento

1: IUProyecto()

1.7: Leer()
1.6: CargarProyecto(idProyecto)
Cargar Proyecto

1.8: :objProyecto

Administrador
(from
Actors)

1.10: Modificar()

IURegistrar Proyecto
1.9: ActualizarProyecto(objProyecto)

1.11: :Msj: "Actualizacin OK"


1.13: Eliminar()
1.12: EliminarProyecto(idProyecto)

Actualizar Proyecto

1.14: :Msj: "Eliminacin OK"

Eliminar Proyecto

Fig. 44Diagrama de Robustez de Mantenimiento de Proyecto

63

Proyecto

Captulo II

sd Registrar Usuario

1.1: RegistrarUsuario(objUsuario, objDepartamentoUsuario)

Registrar Usuario
1.2: Guardar()

1.4: :Msj. "Registro OK"


1.3: Guardar(idUsuario)

Usuario

1.5: CargarUsuario(idUsuario)

1: IUUsuario()

1.6: Leer()

1.10: Modificar()
1.7: Leer()

1.8: :objUsuario
Administrador

IURegistrar Usuario

(from
Actors)

Cargar Usuario

1.9: ActualizarUsuario(objUsuario)

1.12: :Msj. "Actualizacin OK"


1.11: Modificar()
1.13: EliminarUsuario(idUsuario)

1.15: Eliminar()

DepartamentoUsuario

Modificar Usuario
1.14: Eliminar()

1.16: :Msj. "Eliminacin OK"

Eliminar Usuario

Fig. 45Diagrama de Robustez de Mantenimiento de Usuario


sd Asignar Opcion a Usuario

1.2: Leer()
1.1: *BuscarUsuario(idUsuario)
Usuario

BuscarUsuario

1.3: :objUsuario
1: IUOpcionUsuario()

1.5: Leer()
1.4: CargarOpcionRol(idRol)

Administrador

IUAsignar
OpcinUsuario

1.6: :objsOpciones

OpcionRol

Cargar OpcionRol

(from
Actors)
1.7: AsignarOpcionUsuario(objUsuario, objsOpciones)
1.9: :Msj. "Asignacin OK"

1.8: Guardar()

Asignar OpcionUsuario

OpcionUsuario

1.10: ActualizarOpcionUsuario(objUsuario, objsOpciones)


1.11: Modificar()
1.12: :Msj. "Actualizacin OK"

Actualizar
OpcionUsuario

Fig. 46Diagrama de Robustez de Asignar Opcin a Usuario

64

Captulo II

sd Registrar Rol

1.1: RegistrarRol(objRol)

Registrar Rol

1.3: :Msj. "Registrar OK"

1.2: Guardar()

1: IURol()
1.4: CargarRol(idRol)

1.5: Leer()

1.6: :objRol

Cargar Rol

IURegistrar Rol

Administrador

1.8: Modificar()

Rol

1.7: ActualizarRol(objRol)

(from
Actors)

1.9: :Msj. "Actualizacin OK"


1.11: Eliminar()

Actualizar Rol
1.10: EliminarRol(idRol)

1.12: :Msj. "Eliminacin OK"

Eliminar Rol

Fig. 47Diagrama de Robustez de Mantenimiento Rol

1.2: Leer()
sd Asignar Opcion a Rol

1.5: Leer()
1.1: BuscarRol(idRol)

Rol

Buscar Rol
1.3: :objRol

1.4: CargarOpciones()

Opcion

Cargar Opciones

1.6: :objOpciones

1: IUOpcionRol()

1.8: Guardar()
1.7: AsignarOpcionRol(objRol, objOpciones)
1.9: :Msj. "Asignacin OK"

IUAsignar OpcionRol

Asignar OpcionRol

Administrador
(from
Actors)

1.10: ActualizarOpcionRol(objRol, objOpciones)

OpcionRol
1.11: Modificar()

1.12: :Msj. "Actualizacin OK"

Actualizar OpcionRol

Fig. 48Diagrama de Robustez de Asignar Opcin a Rol

65

Captulo II

sd Registrar Requerimiento

1.2: Leer(idUsuario)
DepartamentoUsuario

1.3: Leer()

1.1: RegistrarRequerimiento(objRequerimiento)
Registrar
Requerimiento

1: IURequerimiento()

Producto
1.6: :Msj. "Registro OK"
1.4: Guardar()

Usuario Final

IURegistrar
Requerimiento

(from
Actors)

1.5: Guardar(objRequerimiento, objProducto)


Requerimiento

DetalleRequerimiento

Fig. 49Diagrama de Robustez de Registrar Requerimiento


sd Aprobar Requerimiento
1.2: Leer()

1.1: ObtenerListadoRequerimientos()

ObtenerListadoRequerimientos
Requerimiento

1: IUAprobarRequerimiento()

1.4: Leer(idRequerimiento)

1.3: :ListObjRequerimiento

1.5: *SeleccionarRequerimiento(idRequerimiento)

Jefe Proyecto
(from
Actors)

1.6: Leer()

IUAprobar
Requerimiento
1.7: :objRequerimiento

1.9: Modificar()

SeleccionarRequerimiento

1.8: AprobarRequerimento(objRequerimiento)

1.10: :Msj: "Aprobacin OK"

AprobarRequerimiento

Fig. 50Diagrama de Robustez de Aprobar Requerimiento

66

DetalleRequerimiento

Captulo II

sd Cotizar Requerimiento

1.1: ObtenerListadoReqAprobados()

1: IUCotizar Requerimiento()

ObtenerListadoReqAprobados

1.2: Leer()

1.3: :ListObjReqAprobados

1.4: SeleccionarReqAprobado(idRequerimiento)

1.5: Leer()

IUCotizar
Requerimiento

Logstica
(from
Actors)

Requerimiento
1.6: :objReqAprobado
SeleccionarReqAprobado
1.7: RegistrarCotizacin(objRequerimiento, objProveedor)
1.8: Leer()
Proveedor
1.11: :Msj: "Registro OK"

Registrar Cotizacin

1.9: Guardar()

1.10: Guardar(objCotizacin, objProducto)

Cotizacin

Detalle Cotizacin

Fig. 51Diagrama de Robustez de Cotizar Requerimiento


sd Confirmar Cotizacin

1.1: ObtenerListadoReqCotizados()

1.2: Leer()

ObtenerListadoReqCotizados

1: IUConfirmar Cotizacin()
1.3: :ListObjRequerimiento
1.5: Leer()
Requerimiento

1.4: SeleccionarRequerimiento(idRequerimiento)
IUConfirmar Cotizacin

1.8: Modificar(estado)

Jefe Proyecto
(from
Actors)

1.6: :objRequerimiento
SeleccionarReqCotizado
1.7: SeleccionarCotizacinGanadora(objRequerimiento)

1.10: :Msj. "Confirmacin OK"


1.9: Modificar(estado)
SeleccionarCotizacinGanadora
Cotizacin

Fig. 52Diagrama de Robustez de Confirmar Requerimiento Cotizado

67

Captulo II

sd Aprobar Requerimiento Confirmado y Generar Orden de Compra

1.1: obtenerListadoReqConfirmado()
ObtenerListadoReqConfirmado
1.2: Leer()

1: IUAprobarCotizacin y Generar OC()


1.3: :listObjRequerimiento

1.4: SeleccionarReqConfirmado(idRequerimiento)
Gerente General

1.5: Leer()

IUAprobarReqConfirmado
y Generar OC
1.6: :objRequerimiento

(from
Actors)

Requerimiento
1.8: Modificar()

SeleccionarRequerimientoConfirmado
1.7: AprobarReqConfirmado(objRequerimiento)

1.10: :Msj, "Aprobacin Req. OK"

1.9: Guardar(objRequerimiento)

Orden de Compra

AprobarRequerimientoConfirmado

Fig. 53Diagrama de Robustez de Aprobar Requerimiento Confirmado y Generar Orden de


Compra

sd Reporte de Orden de Compra por Proyecto y Fecha


1.2: Leer()
1.1: BuscarOrdenCompra(idProyecto, fecha)
Buscar Orden de
Compra

Orden de Compra

1: IUReporte Orden de Compra()

1.3: :listObjOrdenCompra

Logstica

IUReporte Orden de
Compra

1.4: GenerarReporteOC(listObjOrdenCompra)

(from
Actors)

Generar Reporte

Fig. 54Diagrama de Robustez de Reportes de Orden de Compra por Proyecto y Fecha

2.3.3.Especificacin de los requerimientos

Caso de Uso:
Definicin u
Objetivos
Pre- Condicin:
Post-Condicin:
Flujo Bsico:

Mantenimiento de Categora de Productos


Tener una mayor clasificacin de los productos y tener un
mayor control de los productos
Ninguna
Tener registrado y actualizado las categoras de productos
1. Autentificacin delAdministrador
2. Ingresar datos obligatorios(nombre) de la categora de
producto y seleccionar estado
3. Registrar categora de productos
4. Para actualizar, seleccionar registro de la categora de
producto en el listado

68

Captulo II

5. Modificar datos de la categora de producto


6. Guardar categora de producto
Tabla 3Especificacin de Mantenimiento de Categora de Producto

Caso de Uso:
Definicin u
Objetivos
Pre- Condicin:
Post-Condicin:

Flujo Bsico:

Mantenimiento de Sub-Categora de Productos


Registrar y actualizar la sub-categora segn categora
Categora registrada
Tener a las sub-categora de productos registrados por
categoras
1. Autentificacin delAdministrador
2. Ingresar datos obligatorios de la sub-categora de
producto (nombre) y seleccionar categora de producto
3. Registrar sub-categora de productos
4. Para actualizar, seleccionar el registro de subcategora de producto en el listado
5. Modificar datos de la sub-categora de producto
6. Guardar sub-categora de producto

Tabla 4Especificacin de Mantenimiento de Sub-Categora de Producto

Caso de Uso:
Definicin u
Objetivos
Pre- Condicin:
Post-Condicin:
Flujo Bsico:

Mantenimiento de Productos
Registrar y actualizar el producto segn la sub-categora
Sub-Categora registrada
Tener a los productos registrados por sub-categoras
1. Autentificacin del Administrador
2. Ingresar datos obligatorios del producto (nombre,
precio de coste) y seleccionar (sub-categora, tipo de
producto, estado)
3. Registrar producto
4. Para actualizar, seleccionar el registro de producto en
el listado
5. Modificar datos del producto
6. Guardar producto

Tabla 5Especificacin de Mantenimiento de Producto

Caso de Uso:
Definicin u
Objetivos
Pre- Condicin:
Post-Condicin:
Flujo Bsico:

Mantenimiento de Rubros
Registrar y actualizar el rubro
Ninguna
Tener a los rubros registrados y actualizados
1. Autentificacin del Administrador
2. Ingresar datos obligatorios delrubro (nombre) y
seleccionar estado
3. Registrar rubro
4. Para actualizar, seleccionar el registro de rubro en el

69

Captulo II

listado
5. Modificar datos delrubro
6. Guardar rubro
Tabla 6 Especificacin de Mantenimiento delRubro

Caso de Uso:
Definicin u
Objetivos
Pre- Condicin:
Post-Condicin:

Flujo Bsico:

Mantenimiento de Proveedores
Registrar y actualizar el proveedor
Rubro registrado
Tener a los proveedores registrados y actualizados por
rubro
1. Autentificacin del Administrador
2. Ingresar datos obligatorios delproveedor (nombre,
nmero documento, direccin, correo, telfono, ciudad)
y seleccionar (tipo documento, es empresa, estado)
3. Registrar proveedor
4. Para actualizar, seleccionar el registro de proveedor en
el listado
5. Modificar datos delproveedor
6. Guardar proveedor

Tabla 7 Especificacin de Mantenimiento delProveedor

Caso de Uso:
Definicin u
Objetivos
Pre- Condicin:
Post-Condicin:
Flujo Bsico:

Mantenimiento de Proyecto Padre


Registrar y actualizar el proyecto padre
Ninguna
Tener a los proyecto padres registrados y actualizados
1. Autentificacin del Administrador
2. Ingresar datos obligatorios delproyecto padre (nombre)
y seleccionar (estado)
3. Registrar proyecto padre
4. Para actualizar, seleccionar el registro del proyecto
padre en el listado
5. Modificar datos delproyecto padre
6. Guardar proyecto padre

Tabla 8 Especificacin de Mantenimiento del Proyecto Padre

Caso de Uso:
Definicin u
Objetivos
Pre- Condicin:
Post-Condicin:
Flujo Bsico:

Mantenimiento de Departamentos
Registrar y actualizar los departamentos
Ninguna
Tener a los departamentos registrados y actualizados
1. Autentificacin del Administrador
2. Ingresar datos obligatorios deldepartamento (nombre)
y seleccionar (departamento superior, estado)

70

Captulo II

3. Registrar departamento
4. Para actualizar, seleccionar
departamento en el listado
5. Modificar datos deldepartamento
6. Guardar departamento

el

registro

del

Tabla 9Especificacin de Mantenimiento del Departamento

Caso de Uso:
Definicin u
Objetivos
Pre- Condicin:
Post-Condicin:
Flujo Bsico:

Mantenimiento de Proyectos
Registrar y actualizar los proyectos
Proyectos Padres y Departamentos registrados
Tener a los proyectos registrados y actualizados
1. Autentificacin del Administrador
2. Ingresar datos obligatorios delproyecto (nombre) y
seleccionar (proyecto padre, departamento, estado)
3. Registrar proyecto
4. Para actualizar, seleccionar el registro del
departamento en el listado
5. Modificar datos deldepartamento
6. Guardar departamento

Tabla 10Especificacin de Mantenimiento del Proyecto

Caso de Uso:
Definicin u
Objetivos
Pre- Condicin:
Post-Condicin:
Flujo Bsico:

Mantenimiento de Usuarios
Registrar y actualizar los usuarios
Ninguna
Tener a los usuarios registrados y actualizados
1. Autentificacin del Administrador
2. Ingresar datos obligatorios delproyecto (nombre,
apellido paterno, apellido materno, telfono, email,
fecha ingreso, fecha cese, nmero documento) y
seleccionar (rol, tipo documento, estado, esJefe,
departamento, proyecto)
3. Registrar usuario
4. Para actualizar, seleccionar el registro del usuario en
el listado
5. Modificar datos delusuario
6. Guardar usuario

Tabla 11 Especificacin de Mantenimiento del Usuario

Caso de Uso:
Definicin u
Objetivos
Pre- Condicin:
Post-Condicin:

Asignacin de Opcin a Usuario


Asignar opciones a usuario
Usuarios y Opciones registrados
Tener a los opciones por usuario
actualizados
1. Autentificacin del Administrador

71

registrados

Captulo II

Flujo Bsico:

2. Para actualizar, seleccionar el registro del usuario en


el listado y clic en el botn asignar opciones.
3. Modificaropciones delusuario
4. Guardar opciones del usuario.

Tabla 12 Especificacin de Asignacin de Opcin a Usuario

Caso de Uso:
Definicin u
Objetivos
Pre- Condicin:
Post-Condicin:
Flujo Bsico:

Mantenimiento de roles
Registrar y actualizar los roles
Ninguna
Tener a los roles registrados y actualizados
1. Autentificacin del Administrador
2. Ingresar datos obligatorios delproyecto (nombre,
descripcin) y seleccionar (estado)
3. Registrar rol
4. Para actualizar, seleccionar el registro del rol en el
listado
5. Modificar datos delrol
6. Guardar rol

Tabla 13 Especificacin de Mantenimiento del Rol

Caso de Uso:
Definicin u
Objetivos
Pre- Condicin:
Post-Condicin:
Flujo Bsico:

Asignacin de Opcin a Rol


Asignar opciones a rol
Roles y Opciones registrados
Tener a los opciones por roles registrados y actualizados
1. Autentificacin del Administrador
2. Para actualizar, seleccionar el registro del rol en el
listado y clic en el botn asignar opciones.
3. Modificaropciones delrol
4. Guardar opciones del rol

Tabla 14 Especificacin de Asignacin de Opcin a Rol

Caso de Uso:
Definicin u
Objetivos
Pre- Condicin:
Post-Condicin:
Flujo Bsico:

Registro de Requerimiento y Detalle de Requerimiento


Registrar requerimientos
Productos, usuarios, proyectos registrados.
Tener a los requerimientos con su detalle registrados
1. Autentificacin del Usuario Final
2. Seleccionar en el listado de productos, el producto e
ingresar su cantidad
3. Guardar requerimiento

Tabla 15Especificacin de Registro de Requerimiento y Detalle de Requerimiento

72

Captulo II

Caso de Uso:
Definicin u
Objetivos
Pre- Condicin:
Post-Condicin:
Flujo Bsico:

Aprobar Requerimiento
Aprobar requerimiento por parte del Jefe de Proyecto
Requerimientos registrados
Aprobar requerimiento por parte del jefe de proyecto
1. Autentificacin del Jefe de Proyecto
2. Visualizar los requerimientos en estado nuevo
3. Seleccionar el requerimiento a aprobar
4. Revisar y Aprobar el requerimiento seleccionado.

Tabla 16Especificacin de Aprobacin de Requerimientos

Caso de Uso:
Definicin u
Objetivos
Pre- Condicin:
Post-Condicin:
Flujo Bsico:

Cotizar Requerimiento
Cotizar requerimiento por parte del usuario de logstica
Requerimientos aprobados, proveedores y productos
registrados
Cotizar requerimiento por parte del usuario de logstica
1. Autentificacin del usuario de logstica
2. Visualizar los requerimientos en estado aprobado
3. Seleccionar el requerimiento a cotizar
4. Clic en nueva cotizacin y registrar cotizacin con su
detalle
5. Al tener todas las cotizaciones listas, clic en cotizado.

Tabla 17 Especificacin de Cotizacin de Requerimientos

Caso de Uso:
Definicin u
Objetivos
Pre- Condicin:
Post-Condicin:
Flujo Bsico:

Confirmar Requerimiento Cotizado


Confirmar el requerimiento cotizado ganador
Requerimientos cotizados
Confirmar el requerimiento cotizado ganador
1. Autentificacin del Jefe de Proyecto
2. Visualizar los requerimientos en estado cotizado
3. Seleccionar el requerimiento cotizado a confirmar
4. Seleccionar la cotizacin de requerimiento ganadora
5. Confirmar requerimiento con cotizacin ganadora.

Tabla 18 Especificacin de Confirmacin Requerimiento Cotizado

Caso de Uso:
Definicin u
Objetivos
Pre- Condicin:
Post-Condicin:
Flujo Bsico:

Aprobar Requerimiento Cotizado


Aprobar el requerimiento confirmado
Requerimientos confirmados
Aprobar el requerimiento confirmado
1. Autentificacin del Gerente General
1. Visualizar los requerimientos en estado confirmado
2. Seleccionar el requerimiento cotizado a aprobar
3. Revisar el requerimiento confirmado y aprobar

73

Captulo II

4. Se genera la orden de compra automticamente

Tabla 19 Especificacin de Aprobacin Requerimiento Confirmado

Caso de Uso:
Definicin u
Objetivos
Pre- Condicin:
Post-Condicin:

Flujo Bsico:

Reporte de rdenes de Compra por Proyecto y Fecha


Generar una lista de compras por proyecto y fecha para
hacer un seguimiento de ellas y asegurarse que van de
acuerdo a los objetivos del negocio
Estar registrado como usuario de la empresa
Modificar los datos antiguos y actualizarlos para un mejor
manejo de los mismos.
1. Autentificacin del usuario de Logstica
2. Buscar compras (proyecto, fecha)
3. Generar reportes de rdenes de compra por proyecto y
fecha

Tabla 20Especificacin de Requerimiento Reporte de rdenes de Compra por


proyecto y fecha

2.4.

Diseo Detallado

2.4.1.Diseo de Interfaces

Fig. 55Pgina Registro de Usuarios

74

Captulo II

Fig. 56 Pgina Asignar Opcin a Usuario

Fig. 57 Pgina Registro de Roles

75

Captulo II

Fig. 58 Pgina Asignar Opcin a Rol

Fig. 59 Pgina de Mantenimiento de Categora de Productos

Fig. 60Pgina Mantenimiento de Sub-Categora de Productos

76

Captulo II

Fig. 61Pgina Mantenimiento de Productos

Fig. 62Pgina Mantenimiento de Proyecto Padre

77

Captulo II

Fig. 63Pgina Mantenimiento de Departamentos

Fig. 64Pgina Mantenimiento de Proyectos

78

Captulo II

Fig. 65Pgina Mantenimiento de Rubros

Fig. 66Pgina Mantenimiento de Proveedores

79

Captulo II

Fig. 67

Pgina Registrar Requerimiento

Fig. 68Pgina Consultar y Aprobar Requerimiento

Fig. 69Pgina Aprobar Requerimiento

Fig. 70Pgina Consultar Requerimientos Aprobados

80

Captulo II

Fig. 71Pgina Cotizar Requerimiento

Fig. 72Pgina Consultar Requerimientos Cotizados

81

Captulo II

Fig. 73Pgina Confirmar Requerimiento

Fig. 74Pgina Consultar Requerimientos Confirmados

82

Captulo II

Fig. 75Pgina Aprobar Cotizacin y Generar Orden de Compra

Fig. 76 Consultar rdenes de Compra

Fig. 77Pgina Orden de Compra

83

Captulo II

Fig. 78Pgina Reporte de rdenes de Compra por Proyecto y Fecha

2.4.2.Diagramas de Secuencia

sd Registrar Categora

Administrador
IUFormulario
Principal
Autentificarse(dni, password)

IUMantenimiento
de Categora

Registrar
Categora

Cargar Categora

Actualizar
Categora

Categora

Eliminar
Categora

Verificar()

Ir al Formulario de la Categora()
Ingresar datos de la categora()

Click en Grabar()
Registrar Categora()
Grabar Categora()
Categora Creada()
Click en registro del listado Categora()

Cargar Categora(idCategora)
Leer Categora()
objCategora()

Click Editar()
Actualizar Categora(objCategora)
Guardar datos Categora()
Categora Actualizada()
:Mensaje "Categora Actualizada"

Click en registro del listado a eliminar()


Eliminar Categora(idCategora)
Eliminar()
Categora Eliminada()
:Mensaje "Categora Eliminada"

(from Actors)

Fig. 79Diagrama de Secuencia de Mantenimiento Categora

84

Captulo II

sd Registrar Sub-Categora

Administrador
IUFormulario
Principal

IUMantenimiento
Sub-Categora

Registrar
Sub-Categora

Cargar
Sub-Categora

Actualizar
Sub-Categora

Eliminar
Sub-Categora

Categora

Autentificarse(dni, password)

Verificar()
Ir al formulario de la sub-categora()

Leer()
Ingresar datos de la sub-categora()

Click en Grabar()
Registrar Sub-Categora()
Grabar sub-categora()
sub-categora creada()

Click en registro del listado sub-categora()


Cargar sub-categora(idSubCategora)
Leer sub-categora()
:objSub-Categora

Click Editar()
Actualizar Sub-Categora(objSub-Categora)
Guardar datos sub-categora()
Sub-Categora actualizada()
:Mensaje "Sub-Categora Actualizada"

Click registro del listado a eliminar()


Eliminar sub-categora(idSub-Categora)
Eliminar()
Sub-Categora eliminada()
:Mensaje "Sub-Categora Eliminada"

(from Actors)

Fig. 80Diagrama de Secuencia de Mantenimiento Sub-Categora

85

Sub-Categora

Captulo II

sd Registrar Producto

Administrador
IUFormulario
Principal

IUMantenimiento
Producto

Registrar
Producto

Cargar Producto

Actualizar
Producto

Eliminar Producto

Sub-Categora

Autentificarse(dni, password)

Verificar()

Ir al formulario del producto()


Leer()

Ingresar datos del producto()

Click en Grabar()
Registrar producto()
Grabar producto()
Producto creado()

Click en registro del listado producto()


Cargar producto(idProducto)
Leer producto()

:objProducto

Click Editar()
Actualizar Producto(objProducto)
Guardar datos producto()
Producto actualizado()
:Mensaje "Producto Actualizado"

Click en registro del listado a eliminar()

Eliminar Producto(idProducto)
Eliminar()
Producto eliminado()

:Mensaje "Producto Eliminado"

(from Actors)

Fig. 81Diagrama de Secuencia de Mantenimiento Producto

86

Producto

Captulo II

sd Registrar Rubro

Administrador
IUFormulario
Principal

IUMantenimiento
Rubro

Registrar Rubro

Cargar Rubro

Actualizar Rubro

Eliminar Rubro

Autentificarse(dni, password)

Verificar()

Ir al formulario del rubro()

Ingresar datos del rubro()

Click en Grabar()
Registrar rubro()
Grabar rubro()
Rubro creado()

Click en registro del listado rubro()


Cargar rubro(idRubro)
Leer rubro()
objRubro()

Click Editar()
Actualizar rubro(objRubro)
Guardar datos rubro()
Rubro actualizado()
:Mensaje "Rubro actualizado"

Click en registro del listado a eliminar()


Eliminar Rubro(idRubro)
Eliminar()
Rubro Eliminado()
:Mensaje "Rubro eliminado"

(from Actors)

Fig. 82Diagrama de Secuencia de Mantenimiento Rubro

87

Rubro

Captulo II

sd Registrar Prov eedor

Administrador
IUFormulario
Principal

IUMantenimiento
Prov eedor

Registrar Cargar Prov eedor


Prov eedor

Actualizar
Prov eedor

Eliminar
Prov eedor

Rubro

Autentificarse(dni, password)

Verificar()

Ir al formulario del proveedor()

Leer()

Ingresar datos del proveedor()

Click en Grabar()
Registrar proveedor()
Grabar proveedor()
Proveedor creado()

Click en registro del listado proveedor()


Cargar proveedor(idProveedor)

Leer proveedor()

objProveedor()

Click Editar()
Actualizar Proveedor(objProveedor)
Guardar datos proveedor()
Proveedor actualizado()
:Mensaje "Proveedor Actualizado"

Click en registro del listado a eliminar()


Eliminar proveedor(idProveedor)

Eliminar()

Proveedor eliminado()
:Mensaje "Proveedor Eliminado"

(from Actors)

Fig. 83Diagrama de Secuencia de Mantenimiento Proveedor

88

Prov eedor

Captulo II

sd Registrar ProyectoPadre

Administrador
IUFormulario
Principal

IUMantenimiento
ProyectoPadre

Registrar
ProyectoPadre

Cargar
ProyectoPadre

Actualizar
ProyectoPadre

Eliminar
ProyectoPadre

ProyectoPadre

Autentificarse(dni, password)

Verificar()

Ir al formulario del ProyectoPadre()

Ingresar datos del ProyectoPadre()

Click en Grabar()
Registrar ProyectoPadre()
Grabar ProyectoPadre()

ProyectoPadre creado()

Click en registro del listado ProyectoPadre()


Cargar ProyectoPadre(idProyectoPadre)
Leer ProyectoPadre()

objProyectoPadre()

Click Editar()
Actualizar ProyectoPadre(objProyectoPadre)
Guardar datos ProyectoPadre()
ProyectoPadre actualizado()
:Mensaje "ProyectoPadre Actualizado"

Click en registro del listado a eliminar()


Eliminar ProyectoPadre(idProyectoPadre)
Eliminar()
ProyectoPadre eliminado()
:Mensaje "ProyectoPadre Eliminado"

(from Actors)

Fig. 84Diagrama de Secuencia deMantenimiento Proyecto Padre

89

Captulo II

sd Registrar Departamento

Administrador
IUFormulario
Principal

IUMantenimiento
Departamento

Registrar
Departamento

Cargar
Departamento

Actualizar
Departamento

Eliminar
Departamento

Departamento

Autentificarse(dni, password)

Verificar()

Ir al formuulario del departamento()

Leer()

Ingresar datos del departamento()


Registrar departamento()
Grabar departamento()
Departamento creado()

Click en registro del listado departamento()


Cargar departamento(idDepartamento)
Leer departamento()
objDepartamento()

Click Editar()
Actualizar Departamento(objDepartamento)
Guardar datos departamento()
Departamento actualizado()
:Mensaje "Departamento Actualizado"

Click en registro del listado a eliminar()


Eliminar departamento(idDepartamento)

Departamento()

departamento eliminado()

:Mensaje "Departamento Eliminado"

(from Actors)

Fig. 85Diagrama de Secuencia de MantenimientoDepartamento

90

Captulo II

sd Registrar Proyecto

Administrador
IUFormulario
Principal

IUMantenimiento
de Proyecto

Registrar
Proyecto

Cargar Proyecto

Actualizar
Proyecto

Eliminar Proyecto

ProyectoPadre

Departamento

Autentificarse(dni, password)

Verificar()
Ir al formulario del proyecto()
Leer()

Leer()

Ingresar datos del proyecto()

Click en Grabar()
Registrar proyecto()
Grabar proyecto()
Proyecto creado()

Click en registro del listado proyecto()


Cargar proyecto(idProyecto)
Leer proyecto()
objProyecto()

Click Editar()
Actualizar Proyecto(objProyecto)

Guardar datos proyecto()

Proyecto actualizado()
:Mensaje "Proyecto Actualizado"

Click en registro del listado a eliminar()


Eliminar proyecto(idProyecto)
Eliminar()
Proyecto eliminado()
:Mensaje "Proyecto Eliminado"

(from Actors)

Fig. 86Diagrama de Secuencia de MantenimientoProyecto

91

Proyecto

Captulo II

sd Registrar Usuario

Administrador
IUFormulario
Principal

IUMantenimiento
Usuario

Registrar Usuario Cargar Usuario Actualizar Usuario Eliminar Usuario

Usuario

DepartamentoUsuario

Autentificarse(dni, password)

Verificar()
Ir al formulario del usuario()

Ingresar datos del usuario()

Click en Grabar()
Registrar usuario()
Grabar Usuario()
Grabar
DepartamentoUsuario(objUsuario)
Usuario creado()

Click en registro del listado usuario()

Leer
usuario()

Cargar usuario(idUsuario)

Leer
DepartamentoUsuario()
objUsuario()

Click Editar()

Actualizar
Usuario(objUsuario)
Guardar datos usuario()

Guardar datos DepartamentoUsuario()


Usuario actualizado()
:Mensaje "Usuario Actualizado"

Click en registro del listado a eliminar()


Eliminar usuario(idUsuario)

Eliminar()

Eliminar()
Usuario eliminado()
:Mensaje "Usuario Eliminado"

(from Actors)

Fig. 87Diagrama de Secuencia de MantenimientoUsuario

92

Captulo II

sd Asignar Opcion a Usuario

Administrador
IUFormulario
Principal

IUAsignar
OpcionUsuario

Buscar Usuario

Cargar OpcionRol

Asignar
OpcionUsuario

Actualizar
OpcionUsuario

Usuario

Autentificarse(dni, password)

Verificar()
Ir al formulario de OpcionUsuario()

Click en usuario a asignar opciones()


Buscar usuario(idUsuario)
Leer()

:objUsuario

Seleccionar combo rol()


Cargar OpcionRol(idRol)
Leer()

:objsOpciones

Click en Asignar Opciones a Usuario()


Asignar OpcionUsuario(idUsuario, objsOpciones)
Guardar()
Asignacin creada()
:Mensaje "Asignacin OK"

Seleccionar listado OpcionesSeleccionadas()

Actualizar OpcionUsuario(objUsuario, objsOpciones)


Modificar()
Asignacin modificada()

:Mensaje "Actualizacin OK"

(from Actors)

Fig. 88Diagrama de Secuencia de Asignar Opcin a Usuario

93

OpcionRol

OpcionUsuario

Captulo II

sd Registrar Rol

Administrador
IUFormulario
Principal

IUMantenimiento
Rol

Registrar Rol

Cargar Rol

Actualizar Rol

Eliminar Rol

Autentificarse(dni, password)

Verificar()
Ir al formulario del rol()

Ingresar datos del rol()

Click en Grabar()
Registrar rol()
Grabar rol()
Rol creado()

Click en registro del listado rol()


Cargar rol(idRol)
Leer rol()

objRol()

Click Editar()

Actualizar Rol(objRol)
Guardar datos rol()
Rol actualizado()

:Mensaje "Rol Actualizado"

Click en registro del listado a eliminar()


Eliminar rol(idRol)
Eliminar()
Eliminar Rol()
:Mensaje "Rol Eliminado"

(from Actors)

Fig. 89Diagrama de Secuencia de Mantenimiento Rol

94

Rol

Captulo II

sd Asignar Opcion a Rol

Administrador
IUFormulario
Principal

IUAsignar
OpcionRol

Buscar Rol

Cargar Opciones

Asignar
OpcionRol

Actualizar
OpcionRol

Rol

Opcion

OpcionRol

Autentificarse(dni, password)

Verificar()

Ir al formulario de OpcionRol()

Click en rol a asignar opciones()


Buscar Rol(idRol)
Leer()

:objRol

Cargar Opcion()
Leer()

:objOpciones

Click en asignar opcion a rol()


Asignar OpcionRol(idRol, objsOpciones)
Guardar()
Asignacion creada()
:Mensaje "Asignacin OK"

Seleccionar listado de OpcionesSeleccionadas()


Actualizar OpcionRol(objRol, objsOpciones)
Modificar()

Asignacion modificada()

:Mensaje "Actualizacion OK"

(from Actors)

Fig. 90Diagrama de Secuencia de Asignar Opcin a Rol


sd Registrar Requerimiento

Usuario Final
IUFormulario
Principal

IURegistrar
Requerimiento

Registrar
DepartamentoUsuario
Requerimiento

Producto

Requerimiento

Autentificarse(dni, password)

Verificar()
Ir al formulario del requerimiento()
Leer(idUsuario)
Leer()
Ingresar informacin del requerimiento()

Click en Grabar()
Registrar Requerimiento(objRequerimiento)
Guardar()

Guardar(objRequerimiento, objProducto)

Requerimiento creado()

:Mensaje "Registro OK"

(from Actors)

Fig. 91Diagrama de Secuencia de Registrar Requerimiento

95

DetalleRequerimiento

Captulo II

sd Aprobar Requerimiento

Jefe Proyecto
IUFormulario
Principal

IUAprobar
Requerimiento

Obtener Listado
Requerimiento

Seleccionar
Requerimiento

Aprobar
DetalleRequerimiento
Requerimiento

Autentificarse(dni, password)

Verificar()

Ir a la pantalla aprobar requerimiento()


Obtener Listado Requerimiento()
Leer(idRequerimiento)

Leer()

:listObjRequerimiento

Click registro del listado requerimiento()

Seleccionar requerimiento(idRequerimiento)
Leer()

:objRequerimiento

Click Aprobar()
Aprobar Requerimiento(objRequerimiento)
Modificar()

Requerimiento Aprobado()
:Mensaje "Aprobacin OK"

(from Actors)

Fig. 92Diagrama de Secuencia de Aprobar Requerimiento

96

Requerimiento

Captulo II

sd Cotizar Requerimiento

Logstica
IUFormulario
Principal

IUCotizar
Requerimiento

Obtener Listado
Req Aprobados

Seleccionar Req
Aprobado

Registrar
Cotizacin

Requerimiento

Prov eedor

Cotizacin

DetalleCotizacin

Autentificarse(dni, password)

Verificar()

Ir a cotizar requerimiento()
ObtenerListadoReqAprobados()

Leer()

:listObjReqAprobados

Click registro del listado requerimiento()


Seleccionar Req Aprobado(idRequerimiento)
Leer()

:objReqAprobado

Seleccionar Proveedor()
Leer()

Click cotizar()
Registrar Cotizacin(objProveedor, objRequerimiento)
Guardar()
Guardar(objCotizacin, objProducto)
Cotizacin creada()

(from Actors)

Fig. 93Diagrama de Secuencia de Cotizar Requerimiento


sd Confirmar Cotizacin

Jefe Proyecto
IUFormulario
Principal

IUConfirmar
Cotizacin

ObtenerListadoReqCotizados

Seleccionar
ReqCotizado

Seleccionar
Cotizacin
Ganadora

Requerimiento

Cotizacin

Autentificarse(dni, password)

Verificar()
Ir a confirmar cotizacin()
ObtenerListadReqCotizados()
Leer()

:listObjRequerimiento

Click registro del listado requerimiento()


Seleccionar Requerimiento(idRequerimiento)
Leer()

objRequerimiento()

Check en cotizacin ganadora()


Seleccionar Cotizacin Ganadora(objRequerimiento)
Modificar(estado)
Modificar(estado)
Cotizacin ganadora seleccionada()
:Mensaje "Confirmacin OK"

(from Actors)

Fig. 94Diagrama de Secuencia de Confirmar Requerimiento Cotizado

97

Captulo II

sd Aprobar Cotizacin y Generar Orden de Compra

Gerente General
Verificar

IUAprobar
ObtenerListadoReqConfirmadoSeleccionar
ReqConfirmado y
ReqConfirmado
Generar OC

Aprobar
ReqConfirmado

Requerimiento

Orden Compra

Autentificarse(dni, password)

Ir a aprobar ReqConfirmado y generar OC()


ObtenerListadoReqConfirmado()

Leer()

:listObjRequerimiento

Click registro del listado requerimiento()


Seleccionar ReqConfirmado(idRequerimiento)

:objRequerimiento

Aprobar ReqConfirmado()
AprobarReqConfirmado(objRequerimiento)

Modificar()

Guardar(objRequerimiento)

ReqAprobado y OC Generada()
Aprobacin Req. OK()

(from Actors)

Fig. 95Diagrama de Secuencia de Aprobar Requerimiento Confirmado y Generar Orden de

Compra

98

Captulo II

sd Reporte de Orden de Compra por Proyecto y Fecha

Logstica
IUFormulario
Principal

IUReporte Orden
de Compra

Buscar Orden de
Compra

Generar Reporte

Orden de Compra

Autentificarse(dni, password)

Verificar()

Ir al reporte de orden de compra()


Seleccionar Proyecto y Fecha()

Buscar Orden de Compra(idProyecto, fecha)

Leer()

:listObjOrdenCompra

Click Generar Reporte()


GenerarReporteOC(listObjOrdenCompra)

Reporte Generado()

:Reporte Generado

(from Actors)

Fig. 96Diagrama de Secuencia deReportes de Orden de Compra por Proyecto y Fecha

99

Captulo II

2.4.3.Modelo Lgico
SEG_M_OPCIONES
OPC_ID

SEG_M_USUARIO

ROL_ID (FK)
USR_TIPODOCUMENTO
USR_NUMERODOCUMENTO
USR_PASSWORD
USR_NOMBRE
USR_APELLIDOPATERNO
USR_APELLIDOMATERNO
USR_TELEFONO
USR_EMAIL
USR_FECHAINGRESO
USR_FECHACESE
STS_ID
USR_CRECN_ID
FECH_CRECN
USR_MODFCN_ID
FECH_MODFCN
USR_ULTFECHACAMBIOPASS
USR_FECHNAC
USR_ESJEFE

SEG_M_ROL

NOMBR
DESCRPCN
OPC_ID_SUPERIOR
ESTD
USR_CRECN_ID
FECH_CRECN
USR_MODFCN_ID
FECH_MODFCN
CODG
OPC_NAV_RUL
OPC_CONTRLLR
OPC_INT_METHD
OPC_DISCRMNDR
OPC_TIP_NOD
OPC_ORDEN

USR_ID

SEG_M_OPCION_USUARIO
OPC_ID (FK)
USR_ID (FK)

ROL_ID
ROL_NOMBRE
ROL_DESCRIPCION
STS_ID
USR_CRECN_ID
FECH_CRECN
USR_MODFCN_ID
FECH_MODFCN

COM_ORDEN_COMPRA
OC_ID
REQ_ID (FK)
USR_CRECN_ID
FECH_CRECN
USR_MODFCN_ID
FECH_MODFCN
OC_NUMERO
OC_FECHA
OC_SUBTOTAL
OC_IGV
OC_TOTAL

SEG_M_OPCION_ROL
OPC_ID (FK)
ROL_ID (FK)

COM_REQUERIMIENTO
REQ_ID

MAN_PROYECTO
MAN_DEPARTAMENTO_USUARIO

PRO_ID

DU_ID

PRO_PADRE_ID (FK)
DEP_ID (FK)
PRO_NOMBRE
EST_ID
USR_CRECN_ID
FECH_CRECN
USR_MODFCN_ID
FECH_MODFCN

USR_ID (FK)
DEP_ID (FK)
PRO_ID (FK)
USR_SUP_ID (FK)
EST_ID
USR_CRECN_ID
FECH_CRECN
USR_MODFCN_ID
FECH_MODFCN

MAN_PROYECTO_PADRE
PRO_PADRE_ID
PRO_PADRE_NOMBRE
EST_ID
USR_CRECN_ID
FECH_CRECN
USR_MODFCN_ID
FECH_MODFCN

PRO_ID (FK)
USR_ID_RESPONSABLE (FK)
USR_ID_JEFE (FK)
REQ_NUMERO
REQ_FECHA
REQ_ESTADO
REQ_USR_JEFE
REQ_PROYECTO
USR_CRECN_ID
FECH_CRECN
USR_MODFCN_ID
FECH_MODFCN

MAN_DEPARTAMENTO
DEP_ID
DEP_NOMBRE
EST_ID
USR_CRECN_ID
FECH_CRECN
USR_MODFCN_ID
FECH_MODFCN
DEP_SUP_ID
COM_REQ_DETALLE
REQDET_ID
MAN_CATEG_PRODUCTO

PROD_ID (FK)
REQ_ID (FK)
REQDET_CANTIDAD
USR_CRECN_ID
FECH_CRECN
USR_MODFCN_ID
FECH_MODFCN

CATPROD_ID
CATPROD_NOMBRE
EST_ID
USR_CRECN_ID
FECH_CRECN
USR_MODFCN_ID
FECH_MODFCN

COM_COTIZACION_DETALLE
MAN_PRODUCTO

COTDET_ID

PROD_ID
MAN_SUB_CATEG_PRODUCTO
SUBCATEGPROD_ID
CATPROD_ID (FK)
SUBCATEGPROD_NOMBRE
EST_ID
USR_CRECN_ID
FECH_CRECN
USR_MODFCN_ID
FECH_MODFCN

SUBCATEGPROD_ID (FK)
PROD_NOMBRE
PROD_TIPO
PROD_PRECIO_COSTE
EST_ID
USR_CRECN_ID
FECH_CRECN
USR_MODFCN_ID
FECH_MODFCN

PROD_ID (FK)
COT_ID (FK)
COTDET_PRECIO
COTDET_CANTIDAD
COTDET_IGV
COTDET_SUBTOTAL
USR_CRECN_ID
FECH_CRECN
USR_MODFCN_ID
FECH_MODFCN

MAN_RUBRO
RUB_ID
RUB_NOMBRE
EST_ID
USR_CRECN_ID
FECH_CRECN
USR_MODFCN_ID
FECH_MODFCN

MAN_PROVEEDOR
PRO_ID
RUB_ID (FK)
PRO_ES_EMPRESA
PRO_NOMBRE
PRO_TIPO_DOCUMENTO
PRO_NUM_DOCUMENTO
PRO_DIRECCION
PRO_CORREO
PRO_TELEFONO
PRO_CIUDAD
EST_ID
USR_CRECN_ID
FECH_CRECN
USR_MODFCN_ID
FECH_MODFCN

Fig. 97 Diagrama Lgico de Base de Datos

100

COM_COTIZACION
COT_ID
PRO_ID (FK)
REQ_ID (FK)
COT_FECHA
EST_ID
COT_IGV
COT_SUBTOTAL
COT_TOTAL
USR_CRECN_ID
FECH_CRECN
USR_MODFCN_ID
FECH_MODFCN

2.4.4.Modelo Fsico
SEG_M_OPCIONES
OPC_ID: INTEGER

SEG_M_USUARIO
USR_ID: INTEGER
USR_TIPODOCUMENTO: VARCHAR2(5)
USR_NUMERODOCUMENTO: VARCHAR2(20)
USR_PASSWORD: VARCHAR2(20)
USR_NOMBRE: VARCHAR2(100)
USR_APELLIDOPATERNO: VARCHAR2(100)
USR_APELLIDOMATERNO: VARCHAR2(100)
USR_TELEFONO: VARCHAR2(9)
USR_EMAIL: VARCHAR2(80)
USR_FECHAINGRESO: DATE
USR_FECHACESE: DATE
STS_ID: VARCHAR2(5)
USR_CRECN_ID: INTEGER
FECH_CRECN: DATE
USR_MODFCN_ID: INTEGER
FECH_MODFCN: DATE
USR_ULTFECHACAMBIOPASS: DATE
USR_FECHNAC: DATE
USR_ESJEFE: VARCHAR2(1)
ROL_ID: INTEGER (FK)

SEG_M_OPCION_USUARIO
OPC_ID: INTEGER (FK)
USR_ID: INTEGER (FK)

SEG_M_ROL

NOMBR: VARCHAR2(50)
DESCRPCN: VARCHAR2(120)
OPC_ID_SUPERIOR: INTEGER
ESTD: NUMBER(2)
USR_CRECN_ID: INTEGER
FECH_CRECN: DATE
USR_MODFCN_ID: INTEGER
FECH_MODFCN: DATE
CODG: VARCHAR2(31)
OPC_NAV_RUL: VARCHAR2(30)
OPC_CONTRLLR: VARCHAR2(35)
OPC_INT_METHD: VARCHAR2(30)
OPC_DISCRMNDR: VARCHAR2(30)
OPC_TIP_NOD: VARCHAR2(1)
OPC_ORDEN: NUMBER

ROL_ID: INTEGER
ROL_NOMBRE: VARCHAR2(50)
ROL_DESCRIPCION: VARCHAR2(200)
STS_ID: VARCHAR2(5)
USR_CRECN_ID: INTEGER
FECH_CRECN: DATE
USR_MODFCN_ID: INTEGER
FECH_MODFCN: DATE

COM_ORDEN_COMPRA
OC_ID: INTEGER
REQ_ID: INTEGER (FK)
OC_NUMERO: INTEGER
OC_FECHA: DATE
OC_SUBTOTAL: FLOAT
OC_IGV: FLOAT
OC_TOTAL: FLOAT
USR_CRECN_ID: INTEGER
FECH_CRECN: DATE
USR_MODFCN_ID: INTEGER
FECH_MODFCN: DATE

SEG_M_OPCION_ROL
OPC_ID: INTEGER (FK)
ROL_ID: INTEGER (FK)

COM_REQUERIMIENTO
REQ_ID: INTEGER

MAN_PROYECTO
PRO_ID: INTEGER

MAN_DEPARTAMENTO_USUARIO

PRO_PADRE_ID: INTEGER (FK)


DEP_ID: INTEGER (FK)
PRO_NOMBRE: VARCHAR2(50)
EST_ID: VARCHAR2(1)
USR_CRECN_ID: INTEGER
FECH_CRECN: DATE
USR_MODFCN_ID: INTEGER
FECH_MODFCN: DATE

DU_ID: INTEGER
USR_ID: INTEGER (FK)
DEP_ID: INTEGER (FK)
PRO_ID: INTEGER (FK)
EST_ID: VARCHAR2(1)
USR_CRECN_ID: INTEGER
FECH_CRECN: DATE
USR_MODFCN_ID: INTEGER
FECH_MODFCN: DATE

MAN_PROYECTO_PADRE
PRO_PADRE_ID: INTEGER
PRO_PADRE_NOMBRE: VARCHAR2(50)
EST_ID: VARCHAR2(1)
USR_CRECN_ID: INTEGER
FECH_CRECN: DATE
USR_MODFCN_ID: INTEGER
FECH_MODFCN: DATE

PRO_ID: INTEGER (FK)


USR_ID: INTEGER (FK)
REQ_NUMERO: NUMBER
REQ_FECHA: DATE
REQ_ESTADO: CHAR(1)
REQ_USR_JEFE: INTEGER
REQ_PROYECTO: INTEGER
USR_CRECN_ID: INTEGER
FECH_CRECN: DATE
USR_MODFCN_ID: INTEGER
FECH_MODFCN: DATE

MAN_DEPARTAMENTO
DEP_ID: INTEGER
DEP_NOMBRE: VARCHAR2(50)
EST_ID: VARCHAR2(1)
USR_CRECN_ID: INTEGER
FECH_CRECN: DATE
USR_MODFCN_ID: INTEGER
FECH_MODFCN: DATE
DEP_SUP_ID: INTEGER
COM_REQ_DETALLE
REQDET_ID: INTEGER
MAN_CATEG_PRODUCTO

PROD_ID: INTEGER (FK)


REQ_ID: INTEGER (FK)
REQDET_CANTIDAD: NUMBER
USR_CRECN_ID: INTEGER
FECH_CRECN: DATE
USR_MODFCN_ID: INTEGER
FECH_MODFCN: DATE

CATPROD_ID: INTEGER
CATPROD_NOMBRE: VARCHAR2(50)
EST_ID: CHAR(1)
USR_CRECN_ID: INTEGER
FECH_CRECN: DATE
USR_MODFCN_ID: INTEGER
FECH_MODFCN: DATE

COM_COTIZACION_DETALLE
MAN_PRODUCTO
PROD_ID: INTEGER
MAN_SUB_CATEG_PRODUCTO
SUBCATEGPROD_ID: INTEGER
CATPROD_ID: INTEGER (FK)
SUBCATEGPROD_NOMBRE: VARCHAR2(50)
EST_ID: CHAR(1)
USR_CRECN_ID: INTEGER
FECH_CRECN: DATE
USR_MODFCN_ID: INTEGER
FECH_MODFCN: DATE

SUBCATEGPROD_ID: INTEGER (FK)


PROD_NOMBRE: VARCHAR2(50)
PROD_TIPO: CHAR(1)
PROD_PRECIO_COSTE: FLOAT
EST_ID: CHAR(1)
USR_CRECN_ID: INTEGER
FECH_CRECN: DATE
USR_MODFCN_ID: INTEGER
FECH_MODFCN: DATE

COTDET_ID: INTEGER
PROD_ID: INTEGER (FK)
COT_ID: INTEGER (FK)
COTDET_PRECIO: FLOAT
COTDET_CANTIDAD: INTEGER
COTDET_IGV: FLOAT
COTDET_SUBTOTAL: FLOAT
USR_CRECN_ID: INTEGER
FECH_CRECN: DATE
USR_MODFCN_ID: INTEGER
FECH_MODFCN: DATE

MAN_RUBRO
RUB_ID: INTEGER
RUB_NOMBRE: VARCHAR2(50)
EST_ID: CHAR(1)
USR_CRECN_ID: INTEGER
FECH_CRECN: DATE
USR_MODFCN_ID: INTEGER
FECH_MODFCN: DATE

MAN_PROVEEDOR
PRO_ID: INTEGER
RUB_ID: INTEGER (FK)
PRO_ES_EMPRESA: CHAR(1)
PRO_NOMBRE: VARCHAR2(50)
PRO_TIPO_DOCUMENTO: CHAR(1)
PRO_NUM_DOCUMENTO: VARCHAR2(50)
PRO_DIRECCION: VARCHAR2(50)
PRO_CORREO: VARCHAR2(50)
PRO_TELEFONO: VARCHAR2(50)
PRO_CIUDAD: VARCHAR2(50)
EST_ID: CHAR(1)
USR_CRECN_ID: INTEGER
FECH_CRECN: DATE
USR_MODFCN_ID: INTEGER
FECH_MODFCN: DATE

Fig. 98 Diagrama Fsico de Base de Datos

101

COM_COTIZACION
COT_ID: INTEGER
PRO_ID: INTEGER (FK)
REQ_ID: INTEGER (FK)
COT_FECHA: DATE
COT_SUBTOTAL: FLOAT
COT_IGV: FLOAT
COT_TOTAL: FLOAT
EST_ID: CHAR(1)
USR_CRECN_ID: INTEGER
FECH_CRECN: DATE
USR_MODFCN_ID: INTEGER
FECH_MODFCN: DATE

2.5.

Implementacin

2.5.1.Diagrama de despliegue

Internet

Router Interno
Firewall Interno

Gateway
Firewall Externo

Servidor de Contingencia Oracle 10g


Router
PC Windows 7 / 2 GB RAM

Oracle 10g

PC Windows 7 / 2 GB RAM
Tomcat 7.0

Fig. 99 Diagrama de Despliegue

102

2.5.2.Diagrama de Componentes

Fig. 100 Diagrama de Componentes

103

CAPTULO III: DISCUSIN

2.3.

Contrastacin de la Hiptesis
2.3.1.

Identificacin de Variables e Indicadores

Es el Mtodo de Contrastacin ser: Pre-Test Post-Test, siendo las variables


las siguientes:
Variable Independiente (VI)

Implementacin

Gestin de Compras

del

Sistema

Informtico
Variable Dependiente (VD)

Los indicadores de la VD se muestran en la siguiente Tabla:


Tabla 21: Indicadores
N

INDICADOR

TIPO

Tiempo de Generar rdenes de Compra

Cuantitativo

Tiempo de Obtencin de Reportes

Cuantitativo

Tiempo de Aprobar Requerimientos


Fuente: Elaboracin Propia

Cuantitativo

2.3.2.

Mtodo de Anlisis para la Prueba de los Indicadores Cuantitativos

Todos los indicadores Cuantitativos se les aplicar la Prueba basadas en la


Distribucin t-student porque se va evaluar el Pre y Post en medir los indicadores y
se seguir el siguiente Mtodo:
a.

Se definirn las variables antes y despus de la implementacin.

b.

Se formular la hiptesis estadstica nula y alternativa.

c.

Se determinar el nivel de significancia.

d.

Se determinar el valor de la muestra a la que se aplicar la prueba,


utilizando la siguiente expresin:

e.

Se obtendrn datos antes y despus de la implementacin y sern tabulados


en la siguiente Tabla:

N
i

f.

Pre Test
X1i

Post

D
X1i X2i=D1i

X2i

Se realizar la prueba estadstica con los datos anteriores, calculndose:

104

La Media Muestral:
(

La Varianza Muestral:

g.

El Clculo Estadstico de la Prueba:

El Valor Critico de t (n-1).

Se escribir la Conclusin de la Prueba.

A continuacin se proceder con la Prueba de Hiptesis de cada Indicador.

2.3.2.1. Prueba de Hiptesis para el indicador Cuantitativo Tiempo de


Generacion de orden de compra.
a. Definicin de Variables
TA:Tiempo de Generar las rdenes de compra antes de la
Implementacin Sistema Informtico Web.
TD: Tiempo de Generar las rdenes de compra despus de la
Implementacin Sistema Informtico Web.
b. Hiptesis Estadstica
Hiptesis H0:No se redujo el tiempo de generacin de las rdenes
de compra despus de la implementacin del sistema informtico.
(D=TD- TA)
H0: D=0
Hiptesis Ha:Reducir el tiempo de generacin de las rdenes de
compra despues de la implementacin del sistema informtico.
Ha: D<0
c. Nivel de Significancia
Nivel de significancia () escogido para la prueba de la hiptesis es
del 5%. Por lo tanto el nivel de confianza (1- = 0.95) ser del 95%.
d. Tipo de Prueba a Aplicar
La muestra es 30 rdenes.
e. Resultados de la Hiptesis
Media Aritmtica Prueba Pareada.
Es el promedio de todas las diferencias de los valores obtenidos
antes y despus de la implementacin del sistema informtico.

105

Varianza Muestral de la Prueba Pareada:


Es la diferencia al cuadrado de las diferencias obtenidas.
2

SD = (

= 4.833

Calculo Estadstico de la Prueba


Reemplazando los valores obtenidos anteriormente calculados.

Tc=

=-42.768

Valor Crtico de t (n-1)

t (/29) = t (0.05/29) = - 1.699

0.05

-1.699
Fig. 101Regin de Aceptacin y Rechazo para la prueba de Hiptesis

f.

Conclusin
Puesto que tc = -42.768 calculando es mayor que t

(0.05/29

= -1.699 y

estando este valor dentro de la regin de rechazo, entonces se


rechaza H0 y por consiguiente se acepta Ha, se concluye entonces
que el tiempo de obtencin del tiempo en la generacin de las
rdenes de compra despus de la implementacin del sistema
informtico se logr minimizar, entonces la implementacin es una
alternativa de solucin.
2.3.2.2. Prueba de Hiptesis para el indicador Cuantitativo Tiempo de
obtencin de reportes.
a. Definicin de Variables
TA:Tiempo de generar los reportes antes de la implementacin sistema
Informtico Web.
TD: Tiempo de Generar los reportes despues de la Implementacin
Sistema Informtico Web.

106

b. Hiptesis Estadstica
Hiptesis H0:No se redujo el tiempo de generacin de los reportes
despus de la implementacin del sistema informtico. (D=T D- TA)
H0: D=0
Hiptesis Ha:Reducir el tiempo de generacin de los reportes
despus de la implementacin del sistema informtico.
Ha: D<0
c. Nivel de Significancia
Nivel de significancia () escogido para la prueba de la hiptesis es
del 5%. Por lo tanto el nivel de confianza (1- = 0.95) ser del 95%.
d. Tipo de Prueba a Aplicar
La muestra es 30 rdenes.
e. Resultados de la Hiptesis
Media Aritmtica Prueba Pareada.
Es el promedio de todas las diferencias de los valores obtenidos
antes y despus de la implementacin del sistema informtico.

Varianza Muestral de la Prueba Pareada:

Es la diferencia al cuadrado de las diferencias obtenidas.


2

SD =

=1470.75

Calculo Estadstico de la Prueba


Reemplazando los valores obtenidos anteriormente calculados.
Tc=

=-27.888

Valor Crtico de t (n-1)

t (/29) = t (0.05/29) = - 1.699

107

0.05

-1.699
Fig. 102Regin de Aceptacin y Rechazo para la prueba de Hiptesis

f.

Conclusin
Puesto que tc = -27.8888 calculando es mayor que t (0.05/29 = -1.699 y
estando este valor dentro de la regin de rechazo, entonces se
rechaza H0 y por consiguiente se acepta Ha, se concluye entonces
que el tiempo de obtencin de los reportes despus de la
implementacin del sistema informtico se logr minimizar, entonces
la implementacin es una alternativa de solucin para este problema
presentado.

2.3.2.3. Prueba de Hiptesis para el indicador Cuantitativo Tiempo de


aprobacin de requerimiento.
a. Definicin de Variables
TA:Tiempo

de

aprobacin

de

requerimientos

antes

de

la

Implementacin Sistema Informtico Web.


TD: Tiempo de aprobacin de requerimientos despus de la
Implementacin Sistema Informtico Web.
b. Hiptesis Estadstica
Hiptesis

H0:No

se

redujo

el

tiempo

aprobacin

de

los

requerimientos despus de la implementacin del sistema informtico.


(D=TD- TA)
H0: D=0
Hiptesis Ha:Reducir el tiempo de aprobacin de los requerimientos
despus de la implementacin del sistema informtico.
Ha: D<0
c. Nivel de Significancia
Nivel de significancia () escogido para la prueba de la hiptesis es
del 5%. Por lo tanto el nivel de confianza (1- = 0.95) ser del 95%.

108

d. Tipo de Prueba a Aplicar


La muestra es 30 rdenes.
e. Resultados de la Hiptesis
Media Aritmtica Prueba Pareada.
Es el promedio de todas las diferencias de los valores obtenidos
antes y despus de la implementacin del sistema informtico.

Varianza Muestral de la Prueba Pareada:


Es la diferencia al cuadrado de las diferencias obtenidas.
2

SD = (

=124.65

Calculo Estadstico de la Prueba


Reemplazando los valores obtenidos anteriormente calculados.

Tc=

=-30.02

Valor Crtico de t (n-1)

t (/29) = t (0.05/29) = - 1.699

0.05

-1.699
Fig. 103Regin de Aceptacin y Rechazo para la prueba de Hiptesis

f.

Conclusin
Puesto que tc = -30.03 calculando es mayor que t

(0.05/29

= -1.699 y

estando este valor dentro de la regin de rechazo, entonces se


rechaza H0 y por consiguiente se acepta Ha, se concluye entonces
que el tiempo de generacin de los requerimientos despus de la
implementacin del sistema informtico se logr minimizar, entonces
la implementacin es una alternativa de solucin.

109

2.4.

Discusin de Resultados
2.4.1. Minimizar el Tiempo de Generar rdenes de Compra:
Tabla 22: Resultado para el indicador Minimizar el Tiempo de Generar
rdenes de Compra
Antes

Despus

Tiempo
(hr)

Porcentaje
(%)

15.6

100

Tiempo
(hr)

Porcentaje
(%)

2.8
17.95
Fuente: Elaboracin Propia

Nivel de Impacto
Tiempo
(hr)

Porcentaje
(%)

12.8

82.1

Se puede observar que el indicador Tiempo de generacin de las rdenes de


compra antes de la implementacin del Sistema Informtico en promedio es 15.6
horas y el tiempo despus de la implementacin del Sistema propuesto es de 2.8
horas, lo que representa un decremento de 12.8 horas y en porcentaje de 82.1%
2.4.2.

Minimizar el Tiempo de Obtencin de Reportes


Tabla 23: Resultado para el indicador Minimizar el Tiempo de Obtencin de
Reportes
Antes

Despus

Tiempo
(hr)

Porcentaje
(%)

1.8

100

Tiempo
(hr)

Porcentaje
(%)

0.78
43.33
Fuente: Elaboracin Propia

Nivel de Impacto
Tiempo
(hr)

Porcentaje
(%)

1.0

56.7

Se puede observar que el indicador Tiempo de obtencin de reportes antes de la


implementacin del Sistema Informtico en promedio es 1.8 horas

y el tiempo

despus de la implementacin del Sistema propuesto es de 0.78 horas, lo que


representa una reduccin de 1.0 hora y en porcentaje de 56.7%
2.4.3.

Minimizar el Tiempo de Aprobar Requerimientos


Tabla 24: Resultado para el indicador Minimizar el Tiempo de Aprobar
Requerimientos
Antes

Despus

Tiempo
(hr)

Porcentaje
(%)

3.8

100

Tiempo
(hr)

Porcentaje
(%)

0.7
18.42
Fuente: Elaboracin Propia

Nivel de Impacto
Tiempo
(hr)

Porcentaje
(%)

3.1

81.6

Se puede observar que el indicador Tiempo en aprobar los requerimientos antes de


la implementacin del Sistema Informtico en promedio es 3.8 horas y el tiempo

110

despus

de la implementacin del Sistema propuesto es de 0.7 horas, lo que

representa una reduccin de 3.1hora y en porcentaje de 81.6%.


.

111

CASOS DE PRUEBAS

ID Caso

Requerimiento a

de

Probar

Descripcin

Pre-Requisitos

Resultado

Resultado

Esperado

Obtenido

Estado

OK

OK

Concluido

OK

OK

Concluido

OK

OK

Concluido

Prueba
CP001

Registrar

Verificar que

Requerimiento

el usuario final

El usuario del sistema que


realizar el registro del

registre el

requerimiento deber estar

requerimiento

logueado.

y se
autogenere el
nmero de
requerimiento.
CP002

Aprobar

Verificar que

Requerimiento

el jefe de

realizar el registro del

proyecto

requerimiento deber estar

apruebe el

El usuario del sistema que

logueado.

requerimiento
en estado

en estado nuevo.

nuevo.

CP003

Cotizar

Verificar que

Requerimiento

el usuario de

Deber existir requerimientos

El usuario del sistema que


realizar el registro del

logstica

requerimiento deber estar

realice la

logueado.

cotizacin
sobre los

Deber existir requerimientos


en estado aprobado.

requerimientos
en estado
aprobado

112

CONCLUSIONES

1. Se realiz una investigacin bibliogrfica sobre sistema de informacin web


yframeworkshaciendo uso de buscadores web y libros.
2. Se recopil informacin propia de la empresa, mediante la aplicacin de entrevistas y
observaciones, lo cual permiti identificar los procesos principales y los problemas que
presentaba la Empresa.
3. Se realiz la definicin de los requerimientos funcionales del sistema utilizando la
metodologaIconix, identificndose 19 requerimientos funcionales, 18 diagramas de
robustez, 18 diagramas de secuencia.
4. La implementacin del sistema ayud a centralizar y explotar la informacin para la
buena toma decisiones y optimizacin del proceso de compras.
5. Se realizaron con xito las pruebas con el usuario final por cada requerimiento
implementado.

113

RECOMENDACIONES

1. Mejorar proyectos pequeos con metodologas de modelamiento giles y libres como


es el caso de Iconix.
2. Continuar con el estudio, uso y desarrollo de los Frameworks Spring, Hibernate y
Richfaces, a fin de que se desarrolle, madure e implante como herramienta
metodolgica de diseo en creaciones de aplicaciones web.
3. Es necesario el uso de entrevistas y observaciones para realizar el estudio del contexto
y de las necesidades del Sistema.
4. Para realizar el anlisis de requerimientos y el diseo, se recomienda utilizar el
Lenguaje de Modelamiento Unificado (UML), por ser el estndar para modelar distintos
tipos de Sistemas.
5. Disear interfaces grficas interactivas, que permitan un fcil manejo del sistema con el
usuario.

114

REFERENCIAS

1. Richard

Dios,

(2009).

Sistemas

[En-lnea].

Disponible

enhttp://www.monografias.com/trabajos87/sistemas-general/sistemas-general.shtml.
[Accesado el 31 de Mayo 2013].

2. Monografas,

(2006).

Teora

de

Sistemas

[En-lnea].

Disponible

en

http://www.monografias.com/trabajos11/teosis/teosis.shtml. [Accesado el 31 de Mayo


2013].

3. Alfonso,

(2010).

Sistema

Computacional

[En-lnea].

Disponible

en

http://www.slideshare.net/SuperFonso/intro-sistema-informatico. [Accesado el 31 de
Mayo 2013].

4. Wikipedia,

(2013).

Sistema

Informtico

[En-lnea].

Disponible

en

http://es.wikipedia.org/wiki/Sistema_inform%C3%A1tico#Estructura. [Accesado el 31 de
Mayo 2013].

5. Instituto

Tecnolgico

Tijuana,

(2009).

Web

[En-lnea].

Disponible

en

https://sites.google.com/site/ingenieriaensistemassite/web. [Accesado el 31 de Mayo


2013].

6. Azhlee,

(2009).

Web

2.0

Web

3.0

[En-lnea].

Disponible

en

http://www.slideshare.net/Azhlee/web-20-y-web-30. [Accesado el 31 de Mayo 2013].

7. Ricardo Marmolejo, (2008). Aplicaciones Web con UML [En-lnea]. Disponible en


http://blogricardo.files.wordpress.com/2008/11/trabajo.pdf. [Accesado el 31 de Mayo
2013].

8. Wikipedia, (2013). Lenguaje Unificado de Modelado [En-lnea]. Disponible en


http://es.wikipedia.org/wiki/Lenguaje_Unificado_de_Modelado#Estructura. [Accesado el
31 de Mayo 2013].

9. Carla de San Martn, (2009). Metodologa Iconix

[En-lnea]. Disponible en

http://www.portalhuarpe.com.ar/Seminario09/archivos/MetodologiaICONIX.pdf.
[Accesado el 31 de Mayo 2013].

115

10. Wikipedia,

(2013).

Java

[En-lnea].

Disponible

en

http://es.wikipedia.org/wiki/Java_(lenguaje_de_programaci%C3%B3n). [Accesado el 31
de Mayo 2013]

11. Wikipedia,

(2013).

Java

EE

[En-lnea].

Disponible

en

http://es.wikipedia.org/wiki/Java_EE#APIs_generales. [Accesado el 31 de Mayo 2013]

12. DocsOracle,

(2013).

J2EE

Containers

[En-lnea].

Disponible

en

http://docs.oracle.com/javaee/1.3/tutorial/doc/Overview4.html. [Accesado el 31 de Mayo


2013]

13. Wikipedia,

(2013).

Framework

[En-lnea].

Disponible

en

http://es.wikipedia.org/wiki/Framework. [Accesado el 31 de Mayo 2013]

14. Junta de Andaluca, (2013). Patrn Modelo Vista Controlador [En-lnea]. Disponible en
http://www.juntadeandalucia.es/servicios/madeja/contenido/recurso/122. [Accesado el
31 de Mayo 2013]

15. Lbcnet, (2013). Esquema de funcionamiento del patrn de diseo MVC [En-lnea].
Disponible en http://lbcnet.wordpress.com/. [Accesado el 31 de Mayo 2013]

16. Fernando Briano, (2010). Introduccin a Spring Framework Java [En-lnea]. Disponible
http://picandocodigo.net/2010/introduccion-a-spring-framework-java/. [Accesado el 31
de Mayo 2013]

17. Jos

Snchez,

(2010).

Introduccin

Richfaces

[En-lnea].

Disponible

http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pagina=richFacesJsfIntro.
[Accesado el 31 de Mayo 2013]

18. Wikipedia,

(2013).

Hibernate

[En-lnea].

Disponible

en

http://es.wikipedia.org/wiki/Hibernate. [Accesado el 31 de Mayo 2013]


19. JoeJil, (2010).

Hibernate [En-lnea]. Disponible en http://joeljil.wordpress.com/.

[Accesado el 31 de Mayo 2013]

20. Roberto

Velasco,

(2013).

Oracle

[En-lnea].

Disponible

en

http://www2.rhernando.net/modules/tutorials/doc/bd/oracle.html. [Accesado el 31 de
Mayo 2013]

116

21. Wikipedia,

(2013).

Servidor

HTTP

Apache

[En-lnea].

Disponible

en

http://es.wikipedia.org/wiki/Servidor_HTTP_Apache#M.C3.B3dulos. [Accesado el 31 de
Mayo 2013]

117

S-ar putea să vă placă și