Está en la página 1de 184

UNIVERSIDAD PONTIFICIA COMILLAS

ESCUELA TCNICA SUPERIOR DE INGENIERA (ICAI)


INGENIERO TCNICO EN INFORMTICA DE GESTIN

PROYECTO FIN DE CARRERA

Aplicacin WEB para la gestin del inventario informtico de una empresa.

CARLOS KLETT BUTRAGUEO

Resumen del proyecto


Este proyecto fin de carrera consiste en el desarrollo e implementacin de una aplicacin a travs de la cual se pueda gestionar adecuadamente el inventario de equipos informticos de una empresa de tamao medio. Se desarrollar como una herramienta destinada a los empleados de un departamento de gestin de informtica de una empresa en concreto (ACF, SV, SA), por lo que seguir una serie de especificaciones y requerimientos propios de dicho departamento.

El proyecto se desarrollar a travs de una metodologa de desarrollo bsicamente estructurada, si bien se definirn diferentes fases en ste desarrollo, por lo que el resultado final tender a resultar evolutivo. Se pretende disear y programar una aplicacin siguiendo una arquitectura web a travs de la cual se pueda gestionar el inventario de equipos de una empresa de aproximadamente 200 usuarios, facilitando un acceso rpido a toda la informacin. Para cumplir el objetivo se desarrolla la aplicacin centrndose en la tecnologa JSP y disendose una base de datos (gestionada con MySQL) que recoja la informacin de los equipos y todos los cambios que estos puedan sufrir y todo ello empleando una infraestructura preexistente que facilitar la reduccin al mximo de los costes para la propia empresa.

La aplicacin ha de servir para, a travs de un nico interfaz y con un uso lo ms simplificado posible, permitir realizar toda la gestin de altas, modificaciones y bajas de equipos y usuarios, as como facilitar funciones de consulta de material que actualmente se realizan a travs de varias aplicaciones diferentes. Una vez creada la herramienta para ordenar el inventario, el objetivo primordial de la aplicacin ser el de agilizar determinadas bsquedas y rutinas propias de los empleados del grupo de informtica a la hora de atender las necesidades e incidencias del resto de usuarios de la empresa, as como servir de herramienta para obtener informes detallados, generados en funcin de diferentes parmetros y variables, a los que, antes de desarrollar la aplicacin, no se tiene acceso mediante ninguna de las herramientas en uso. Por otro lado, estos informes deben ser generados de tal forma que permitan su

posterior edicin en caso de necesitar ser personalizados, por lo que se incluye una forma fcil de exportarlos a herramientas de software tpicas de paquetes de oficina.

A travs de la siguiente memoria se explicarn los pasos seguidos desde el planteamiento inicial de la aplicacin hasta su implementacin definitiva, incidiendo en su anlisis y diseo, y acompaando los datos y archivos necesarios para su ejecucin final en el CD adjunto.

II

ndice General
1. Introduccin 1.1. Objetivo del proyecto 1.2. Aportaciones 1.3. Estructura de la memoria 2. Desarrollo 2.1. Identificacin de necesidades 2.1.1. Documento de Conceptos del Sistema 2.2. Anlisis de requisitos 2.2.1. Modelo Fsico Actual 2.2.2. Lista de requisitos 2.2.3. Modelo Lgico Nuevo 2.2.4. Modelo Conceptual de Datos 2.3. Estudio de Arquitectura 2.4. Diseo 2.4.1. Modelo Fsico del Nuevo Sistema 2.4.2. Diseo de Formularios e Informes 2.4.3. Especificacin de procesos 2.4.4. Modelo Logico de Datos 2.4.5. Modelo Fsico de Datos 2.5. Implementacin 2.5.1. Tcnicas y Herramientas 2.5.2. Estructura del cdigo 2.5.3. Ejemplos de cdigo 2.5.4. Detalles de implementacin 2.5.5. Implantacin final y conclusiones Apndices: A.1. Diccionario de datos del Modelo Fsico Actual A.2. Diccionario de datos del Modelo Lgico Nuevo A.3. Diccionario de datos del Modelo Entidad Relacin A.4. Diccionario de datos del Modelo Fsico Nuevo A.5. Manual de usuario A.6. Manual de instalacin Bibliografa

Pg. 1 2 2 3 4 5 5 8 8 14 29 42 45 47 48 64 87 95 98 116 116 117 122 125 127 129 130 133 151 153 170 177 178

III

1. Introduccin

Este proyecto es el producto de cubrir una necesidad en el departamento de informtica (Organizacin y Sistemas) de la empresa para la que trabajo desde hace ya casi un par de aos. El ya mencionado departamento se encarga de todo tipo de actividades relacionadas con el uso y explotacin de la informtica dentro de la empresa, algunas de las cuales son: - Gestin global de casi todos los sistemas de informacin de la empresa, excluyendo el control y mantenimiento de la red local y sus equipos especficos. - Instalacin, mantenimiento y explotacin de todo tipo de software, ya sea especifico del negocio (en este caso, una financiera) o general, incluyendo desde sistemas operativos a cualquier aplicacin tpica de uso en oficinas. - Instalacin y mantenimiento de hardware, tanto a nivel de PC de usuario como a nivel servidor. - Desarrollo de rutinas y pequeas aplicaciones destinadas a los diferentes grupos de trabajo de la empresa, as como de algunas herramientas de interconexin de diferentes sistemas. - Desarrollo de aplicaciones para uso interno del departamento. - Atencin de incidencias de usuarios. Entroncando con varias de estas funciones, surge la necesidad de obtener una herramienta que facilite llevar un inventario actualizable del material instalado, y que a la vez habilita un acceso mas eficiente a la informacin de los diferentes usuarios a la hora de resolver incidencias, pues siendo la tarea menos satisfactoria del departamento, es sin duda de las que mas tiempo toma.

1.1 Objetivo del proyecto


El objetivo bsico del proyecto es desarrollar una herramienta fcilmente accesible por cualquiera de los miembros del departamento y que facilite el acceso a la informacin de los equipos y los usuarios de una forma simple. Se pretende implementar una aplicacin capaz de dar de alta y baja los equipos a medida que se van instalando o eliminando, que permita actualizar sus datos si sufren alguna modificacin en su configuracin, y que sea capaz de ofrecer diferentes informes sobre los equipos en funcin de distintos parmetros definibles por el usuario. Bsicamente, una herramienta para gestionar el inventario de equipos en la empresa.

1.2 Aportaciones
Las aportaciones del proyecto solo pueden ser determinadas en base a su funcin en la empresa. No consta de tecnologas punteras ni tiene un desarrollo basado en investigaciones propias, su aportacin se centra en cubrir una necesidad en la empresa para la que se destina la aplicacin. Pero se trata de una necesidad real y que, debido al crecimiento de la empresa tanto en numero de trabajadores como de equipos y aplicaciones instaladas, pretende reducir el tiempo que se emplea en recoger la informacin que se necesita a la hora de resolver incidencias. Igualmente, facilitara la gestin de la informtica dentro de la empresa al facilitar un acceso sencillo a la informacin , y permitir realizar estudios sobre las necesidades de equipamiento de los diferentes departamentos.

1.3 Estructura de la memoria


La memoria se estructurar en funcin de una metodologa de desarrollo de software bsicamente estructurada. Aun as, dado que se ha tendido a obtener prototipos para poder evolucionar desde ellos hacia la aplicacin definitiva, se observarn diferentes fases dentro de las etapas de desarrollo, de forma que cada fase incluya nuevos avances. Una vez se haya iniciado el desarrollo del proceso, se pasaran por las siguientes etapas: - Identificacin de necesidades - Anlisis de requisitos - Estudio de arquitectura - Diseo - Implementacin Por ultimo, y como complemento al desarrollo, se obtienen una serie de documentos (diccionarios de datos, manuales) que se incorporaran a la finalizacin de la memoria en la seccin de apndices.

2. Desarrollo

2.1 Identificacin de Necesidades


En esta fase inicial del proyecto se procede a la identificacin del problema, as como al establecimiento del alcance y los limites del proyecto, definiendo su objetivo bsico. En este caso en concreto, la empresa para la que se desarrolla el sistema, y para la cual trabajo, esta buscando mejorar la forma en la que se realiza el inventario de sus equipos, que resulta incluso inexistente en el caso de los monitores. Con un sistema de gestionar el inventario se pretende reducir el tiempo que los empleados del departamento de Organizacin y Sistemas (entre los que me incluyo) emplean en realizar determinadas bsquedas y, de alguna forma, aumentar el control de los activos informticos de la empresa, para mejorar los procesos de renovacin de los mismos, y facilitar al mximo muchas de sus tareas habituales. Una vez decidido el comienzo del proceso, se me encarg el desarrollo del mismo, y proced a recabar informacin sobre las necesidades del sistema y las posibles soluciones a implementar. Para ello realice una serie de entrevistas personales y reuniones de grupo con mis compaeros de departamento, as como con mi director de proyecto (y jefe del mismo departamento), intentando dar un limite a lo que el proyecto precisaba. Como resultado de estas entrevistas y reuniones (no documentadas especficamente) surge el siguiente Documento de Conceptos del Sistema. 2.1.1 Documento de Conceptos del Sistema PROYECTO DOCUMENTO DE CONCEPTOS INVENTARIO DEL SISTEMA 1. OBJETIVOS DEL SISTEMA Se pretende desarrollar una aplicacin web para la gestin del inventario de los equipos y usuarios sobre los que tiene control el departamento de Organizacin y Sistemas de la empresa. Esta aplicacin se conectar a una base de datos que se cargara con la informacin considerada bsica tanto de los equipos como de los usuarios y permitir acceder mas eficazmente a ellos en caso de darse una incidencia, as como gestionar mejor las sustituciones que se deban realizar y el control sobre los diferentes equipos inventariados. Son objetivos de la aplicacin: Facilitar el acceso de los usuarios a la informacin relacionada con la gestin de equipos Proporcionar un sistema de filtrado de la informacin en funcin de diferentes parmetros, generando informes predefinidos o personalizados Facilitar la toma de decisiones a la hora de decidir reestructuraciones de equipos y sustituciones de material. Permitir un acceso sencillo de la informacin a todos los posibles usuarios. EMPRESA: CKB OCTUBRE 2005 PAG: 1 DE: 3

DOCUMENTO DE CONCEPTOS DEL SISTEMA 2. ALCANCE DEL SISTEMA

EMPRESA: CKB OCTUBRE 2005

PAG: 2 DE: 3

La creacin de la aplicacin implicara llevar a cabo las siguientes funciones: Extraccin, limpieza, validacin y carga de datos Se har un proceso de carga de los datos en la base de datos que consultara la aplicacin. Este proceso se realizar inicialmente de forma manual, y despus ser gestionado por la propia aplicacin. Acceso a la informacin Se dotara al usuario de las herramientas necesarias para permitir Anlisis de los datos mediante funcionalidades especificas para ello, pudiendo adems seguir la evolucin de un equipo en el tiempo, a travs de las modificaciones y cambios que haya sufrido en su vida laboral en la empresa. Realizacin de informes, predefinidos o personalizados por el usuario en funcin de diferentes parmetros, y en diferentes formatos. Acceso a la informacin a travs de navegador Web Establecimiento de nuevos protocolos Se establecern nuevos protocolos de manejo de la informacin para realizar una mejor gestin de los equipos desde su recepcin tras la compra hasta su baja. 3. TIPOLOGA DE USUARIOS Los usuarios del sistema sern todos los empleados del departamento de Organizacin y Sistemas. Opcionalmente, podr habilitarse acceso a la aplicacin al departamento de Auditoria Interna. 4. RESTRICCIONES La aplicacin partir para su desarrollo de otros sistemas empleados en la empresa anteriormente que no realizan ningn tipo de control histrico de los equipos. No existe forma de recuperar la informacin de seguimiento del material, por lo que se partir de 0 en el histrico al comienzo de la carga del material, y se dejara que la informacin se autoajuste en el tiempo a medida que se emplee la aplicacin. Por otro lado, existen una serie de restricciones tecnolgicas, impuestas por la actual infraestructura de la empresa, que limitarn el tipo de aplicacin que se puede desarrollar, as como la arquitectura de la misma. No se imponen restricciones de coste, aunque se pretende emplear en todo momento herramientas preexistentes. Por tanto, en principio el coste no puede ser alto, limitndose a la compra de manuales si fuera preciso.

DOCUMENTO DE CONCEPTOS DEL SISTEMA

EMPRESA: CKB OCTUBRE 2005

PAG: 3 DE: 3

5. ORGANIZACIN Y FUNCIONES EMPRESARIALES Dentro del departamento de Organizacin y Sistemas hay un jefe de departamento y por debajo suyo una serie de empleados que sern realmente los usuarios de la aplicacin, pero que no estn explcitamente jerarquizados ni tienen sus funciones totalmente definidas y separadas. Las funciones del departamento van desde la instalacin de equipos a la gestin de todo tipo de software y hardware, mantenimiento bsico de los equipos, gestin de incidencias de usuarios... La aplicacin a desarrollar permitir a sus usuarios un acceso ms rpido a la informacin sobre los equipos y los usuarios de la empresa, susceptible de agilizar su rendimiento. 6. ANTECEDENTES Existen una serie de antecedentes a tener en cuenta en la realizacin del proyecto: En el sistema actual se emplean una serie de aplicaciones cada una de las cuales realiza diferentes funciones de la gestin del inventario. Se pretende seguir usando esas aplicaciones en usos concretos, pero tambin unificar la informacin que proveen en un nico sistema, y acceder a ella ms gilmente. No existe en la actualidad ninguna aplicacin que permita obtener informes de inventario predefinidos y filtrados de forma automtica. Se dan limitaciones de las aplicaciones actualmente empleadas a la hora de gestionar equipos presentes en diferentes redes corporativas. La aplicacin solventara este problema con una carga manual de los equipos. El departamento va adquiriendo cada vez ms responsabilidades y cargas de trabajo en el conjunto de la empresa, por lo que debe conseguir una forma de agilizar sus procesos ms bsicos.

Creado el Documento de Conceptos del Sistema, podemos pasar a la siguiente etapa del desarrollo, en la que partiremos de l para determinar los requisitos del sistema.

2.2 Anlisis de requisitos.


Durante esta fase, una vez limitadas las necesidades y las funciones que deber cubrir el proyecto, se especificaran los requisitos del sistema a partir del diseo de modelos que definan tanto la situacin del sistema actual como la situacin a conseguir. El proyecto parte de un sistema inicial prcticamente inexistente, y la necesidad de localizar y gestionar los equipos se cubre mediante el empleo de diferentes aplicaciones sin relacin entre ellas. Pese a ello se intentar dibujar diagramas de flujos de datos que expliquen la situacin inicial, describiendo los Modelos Fsico Actual, se describirn los requisitos de la aplicacin y se pasar posteriormente al diseo del Modelo Lgico Nuevo. Para finalizar esta fase, se analizara como realizar la base de datos que servir para realizar la gestin del sistema en el Modelo Conceptual de Datos. 2.2.1 Modelo Fsico Actual El Modelo Fsico actual muestra como se realiza la gestin del inventario antes de ejecutar el proyecto nuevo. En este modelo, no aparece ningn tipo de gestin de inventario sobre los monitores, pues no se realiza, y el inventario sobre el resto de entidades es mucho mas limitado de lo que se pretende que sea el sistema nuevo. Los problemas que tiene el sistema actual son los siguientes: - No existe gestin de inventario de monitores. Esto es el resultado de como se formo el departamento en su origen, derivando de otro cuya gestin de inventario era nula, y del establecimiento de prioridades a la hora de ir avanzando en la susodicha gestin. - Ninguno de los sistemas que se emplean actualmente permite obtener informes de forma automtica. Cualquier informe que se quiera desarrollar habr de ser filtrado y formateado por los usuarios volcando los datos a editores de texto y hojas de calculo. - La obtencin del inventario de CPUs actualmente es incompleta. La aplicacin que se emplea para obtenerlo solo puede ejecutarse sobre una de las redes de las que dispone la empresa, pues las otras redes pertenecen a sistemas de informacin externos, en los que no se puede instalar nada. Los equipos son nuestros, pero ejecutan sistemas que no deben ser interferidos por ninguna otra aplicacin. - La gestin de usuarios que se realiza a travs del Directorio Activo precisa de otros sistemas para obtener informes sobre aquellos. Se requiere un sistema que centralice toda la informacin para poder obtener distintas informaciones agrupadas de los usuarios, as como relacionar sus datos con los de los equipos que emplean. - La gestin de las impresoras se realiza de forma totalmente manual sobre una hoja de clculo. Se precisa incluir los datos en una base de datos que permita acceder a informes automatizados. - Se busca disponer de una base de datos que centralice toda la informacin bsica de los equipos y los usuarios para facilitar el desarrollo de herramientas para elaborar informes.

Los sistemas actuales no proporcionan ningn tipo de informacin histrica sobre los equipos o los usuarios incluidos en la empresa. No existe un verdadero control sobre los departamentos que hay en la empresa. Los usuarios del sistema sabemos por aprendizaje en que unidades departamentales estn cada uno de los usuarios, y podemos realizar muchas de nuestras tareas gracias a ese conocimiento. Es preciso regular esta situacin. En casos concretos de equipamiento, determinadas marcas y/o modelos han resultado ser sumamente insatisfactorias. Es preciso tener control sobre esos equipos de forma directa para gestionar su cambio.

As pues, se obtiene un Modelo Fsico Actual cuyas caractersticas principales son las siguientes (ver en Apndices el Diccionario de datos del Modelo Fsico Actual): DFD0. Diagrama de contexto del modelo: - Existe una nica entidad externa, origen y destino de los flujos de datos del sistema, constituida por los usuarios del Departamento de Organizacin y Sistemas. Estos usuarios son a su vez los encargados de mantener el sistema, aunque realmente en el estado actual no se trata de un sistema, sino de un conjunto de procesos mayoritariamente manuales y dispersos para ejecutar las diferentes tareas de gestin de las que se realizan.

DFD1. Diagrama Conceptual del modelo. Este diagrama muestra los diferentes tipos de elementos que se gestionan actualmente: CPUs, impresoras y usuarios. El flujo de Entrada de datos del DFD0 explosiona en las diferentes entradas de los procesos de este segundo diagrama. Los flujos empleados y los procesos son muy bsicos y prcticamente autoexplicativos. Se observa como faltan algunos elementos para gestionar, como ya se haba comentado.

10

DFD1.1. Explosin del proceso Gestionar CPUs, del DFD1. Este diagrama nos muestra como se realiza actualmente la gestin del inventario de CPUs. Existen dos tipos de flujos de datos para este proceso, uno que solicita la ejecucin de la aplicacin encargada de recopilar la informacin de los equipos y un segundo que incluye datos de equipos para realizar consultas sobre ellos. La aplicacin que realiza la recopilacin de datos inserta estos en un archivo, como datos de texto separados por comas. Pero es incapaz de entrar en todas las redes en las que tenemos equipos, y tampoco puede ser instalada en las mismas. Por otro lado, cuando se quiere sacar un informe de diferentes equipos es preciso coger los datos de las CPUs implicadas, volcarlas a una hoja de calculo y filtrar en esta la informacin, para despus formatearla. Son los resultados de esas consultas, formateadas o no en informes, las que se incluyen en el flujo de salida del proceso.

11

DFD1.2. Explosin del proceso Gestionar Impresoras, del DFD1. Este diagrama expone como se realiza la gestin de las impresoras en el sistema actual. Tanto para dar de alta como para eliminar una impresora es necesario recurrir a una hoja de calculo en la que se van incluyendo o eliminando las que entran o salen de la empresa. Y sobre esta hoja se filtran y formatean los datos para obtener el flujo de salida del diagrama destinado al usuario. Como se puede apreciar, el flujo Entrada datos impresoras, del DFD1 se ha dividido en los tres flujos de entrada de este diagrama.

12

DFD1.3. Explosin del proceso Gestionar usuarios del DFD1. - Este es el ltimo diagrama del Modelo Fsico Actual. Y muestra como se gestiona los usuarios. Dado que se dispone de un dominio con usuarios registrados y que la informacin de inters que se precisa de estos esta recogida en el Directorio Activo del sistema, se emplea ste como almacn de datos de los usuarios. Pero no resulta una herramienta apropiada para obtener informes ni datos histricos, por lo que si hay que realizar informes de usuarios se deben filtrar manualmente.

13

2.2.2 Lista de requisitos Obtenido el Modelo Fsico Actual, se elabora la lista de requisitos esenciales del nuevo sistema, a partir de la cual se proceder a desarrollar el Modelo Lgico del Nuevo Sistema. Se dispondrn diferentes requisitos separados en funcin de su naturaleza, separando aquellos con un origen funcional de los que tengan un enfoque tecnolgico, de seguridad, etc... Los requisitos principales de la aplicacin son los siguientes (presentados en el formato aprendido durante el curso):

HOJA DE REQUISITOS 1
PROYECTO: Gestin de Inventario JEFE PROY.: Pedro Soler FECHA: Nov-2005 VERSION: ESTADO: Final PG: 1 FUENTE: Usuarios PRIORIDAD: Alta CLIENTE: Depto. Organizacin y Sistemas IDENTIFICADOR REQUISITO: AR1 DESCRIPCIN REQUISITO Generacin de una base de datos de inventario

TIPO REQUISITO: Operativo BENEFICIOS Se centralizar todos los datos en un nico almacn de datos a disear, que recoja todas las marcas, modelos, departamentos, usuarios, CPUs, impresoras y monitores de la empresa, as como una tabla donde se pueda hacer un seguimiento histrico de cambios sobre los equipos y usuarios COMENTARIOS / SOLUCIONES SUGERIDAS Necesario realizar un inventario manual de todo los equipos y usuarios para ejecutar la primera carga del sistema a partir de la cual seguir incluyendo o eliminando los mismos. Se propone hacer este inventario como una de las primeras tareas, y mantenerlo manualmente hasta el comienzo de la explotacin del sistema, para poder disponer de datos de partida si fuera necesario durante las fases de diseo. DOCUMENTOS RELACIONADOS Todos los documentos actuales que recopilan datos de usuarios y equipos: listado de impresoras y equipos en formato .csv y datos de usuarios del Directorio Activo. REQUISITOS RELACIONADOS

14

HOJA DE REQUISITOS 2
PROYECTO: Gestin de Inventario JEFE PROY.: Pedro Soler FECHA: Nov-2005 VERSION: ESTADO: Final PG: 1 FUENTE: Usuarios PRIORIDAD: Alta CLIENTE: Depto. Organizacin y Sistemas IDENTIFICADOR REQUISITO: AR2 DESCRIPCIN REQUISITO Establecimiento de nuevas polticas de gestin de inventario

TIPO REQUISITO: Funcional BENEFICIOS Dado que hasta el momento no se ha procedido a realizar inventarios sistemticos de equipos, habr que definir un protocolo de introduccin de los datos en el inventario y desarrollar polticas de mantenimiento del mismo. COMENTARIOS / SOLUCIONES SUGERIDAS Crear un manual de usuario que defina, a parte de cmo se debe emplear la aplicacin, polticas de buen uso. DOCUMENTOS RELACIONADOS Manual de usuario (por desarrollar). REQUISITOS RELACIONADOS

15

HOJA DE REQUISITOS 3
PROYECTO: Gestin de Inventario JEFE PROY.: Pedro Soler FECHA: Nov-2005 VERSION: ESTADO: Final PG: 1 FUENTE: Usuarios PRIORIDAD: Alta CLIENTE: Depto. Organizacin y Sistemas IDENTIFICADOR REQUISITO: AR3 DESCRIPCIN REQUISITO Desarrollo de la aplicacin bajo una arquitectura cliente-servidor.

TIPO REQUISITO: Operativo/Tecnolgico BENEFICIOS Se emplear un modelo ya testado, y se implantar la aplicacin en un servidor que ya est en uso, por lo que no supondr un gasto extra para la empresa. COMENTARIOS / SOLUCIONES SUGERIDAS La aplicacin se desarrollar en formato WEB, de forma que el peso de la gestin recaer en el servidor. Tanto la gestin de los datos como la mayora de los procesos de la aplicacin recaern sobre el servidor, de forma que los clientes sern muy ligeros y solo se encargaran de la presentacin de los datos y de la introduccin de datos. DOCUMENTOS RELACIONADOS

REQUISITOS RELACIONADOS AR4

16

HOJA DE REQUISITOS 4
PROYECTO: Gestin de Inventario JEFE PROY.: Pedro Soler FECHA: Nov-2005 VERSION: ESTADO: Final PG: 1 FUENTE: Usuarios PRIORIDAD: Alta CLIENTE: Depto. Organizacin y Sistemas IDENTIFICADOR REQUISITO: AR4 DESCRIPCIN REQUISITO Empleo de un software de servidor y de cliente determinado por lo preexistente en la empresa

TIPO REQUISITO: Operativo/Funcional BENEFICIOS Se emplearan versiones de software ya probadas en un servidor ya probado, por lo que la implantacin de la aplicacin ser muy sencilla. La instalacin de la aplicacin en los equipos cliente se realizar mediante el simple copiado de un enlace a la aplicacin. COMENTARIOS / SOLUCIONES SUGERIDAS Se desarrollara la aplicacin de forma que se pueda emplear en cualquier equipo con Internet Explorer, pues es el explorador instalado por defecto en todos los equipos de los usuarios. El interfaz de usuario se basar en un men que ofrezca las funciones a realizar y una pagina donde se puedan mostrar los diferentes formularios de entrada de datos y presentar informes. Eso si, el empleo de las versiones preexistentes impone asimilar la tecnologa de que disponen y, con ello, las carencias de la misma en cuanto al manejo de los datos. Las versiones de software a emplear en el servidor sern: Servidor de aplicaciones WEB Apache-Tomcat 5.0 Versin de J2DSK 1.4.2 Gestor de base de datos MySQL 4.0 DOCUMENTOS RELACIONADOS

REQUISITOS RELACIONADOS AR3

17

HOJA DE REQUISITOS 5
PROYECTO: Gestin de Inventario JEFE PROY.: Pedro Soler FECHA: Nov-2005 VERSION: ESTADO: Final PG: 1 FUENTE: Usuarios PRIORIDAD: Alta CLIENTE: Depto. Organizacin y Sistemas IDENTIFICADOR REQUISITO: AR5 DESCRIPCIN REQUISITO Obtencin de informes de inventario parametrizables en funcin de las caractersticas de los elementos incluidos en el inventario

TIPO REQUISITO: Funcional/Operativo BENEFICIOS Poder obtener de forma casi inmediata los informes sobre el inventario de cualquier elemento. Adems, permitir acceder a los datos individualizados de cualquier elemento y a su histrico de actualizaciones/modificaciones. Con estos informes se prev un descenso en la carga de trabajo de todos los usuarios, as como un mejor empleo del tiempo y una mayor eficiencia en la atencin a los usuarios finales. COMENTARIOS / SOLUCIONES SUGERIDAS Desarrollo de paginas de consulta en las que se muestren los diferentes campos consultables de cada entidad o equipo, accesibles desde el propio men de la aplicacin. Diferentes tipos de consulta en funcin de que se desee informacin de un equipo en concreto, del histrico de un equipo o de un conjunto de equipos que obedezcan a un filtro. Adems, se dispondr de una forma de exportar los informes a hojas de calculo o procesadores de texto para reformatearlos en caso de que el tipo de informe predefinido no sea el deseado. DOCUMENTOS RELACIONADOS Manual de usuario. REQUISITOS RELACIONADOS

18

HOJA DE REQUISITOS 6
PROYECTO: Gestin de Inventario JEFE PROY.: Pedro Soler FECHA: Nov-2005 VERSION: ESTADO: Final PG: 1 FUENTE: Usuarios PRIORIDAD: Alta CLIENTE: Depto. Organizacin y Sistemas IDENTIFICADOR REQUISITO: AR6 DESCRIPCIN REQUISITO El sistema tendr paginas para introducir datos de altas y bajas de los diferentes elementos, as como para permitir modificaciones o actualizaciones y correcciones de los datos ya incluidos.

TIPO REQUISITO: Operativo BENEFICIOS Se integrara en una misma solucin todo la mecnica para gestionar el inventario y para obtener informes. Facilidad de acceso a la funcin de inventariado. COMENTARIOS / SOLUCIONES SUGERIDAS Partirn del men diferentes entradas de los diferentes tipos de elementos a gestionar, a saber: - Departamentos - Usuarios - Marcas - Modelos - Hardware: CPUs, Impresoras y Monitores Estos elementos tendrn todos entradas para dar de alta nuevos elementos. Pero no todos permitirn eliminar elementos (por ejemplo, no tiene sentido eliminar una marca, y podra adems dar lugar a inconsistencias en la base de datos). Adems, se podrn corregir cualquiera de los campos que se introdujeron al dar de alta el elemento, si se ha producido un error, y por otro lado se habilitara una forma de actualizar los datos de los campos actualizables (por ejemplo, el departamento al que pertenece un usuario o la cantidad de memoria de un equipo), de tal manera que cada actualizacin/modificacin pueda dar lugar a una entrada en la tabla del histrico. No todos los elementos tendrn campos actualizables, depender del tipo de elemento. DOCUMENTOS RELACIONADOS Manual de usuario REQUISITOS RELACIONADOS

19

HOJA DE REQUISITOS 7
PROYECTO: Gestin de Inventario JEFE PROY.: Pedro Soler FECHA: Nov-2005 VERSION: ESTADO: Final PG: 1 FUENTE: Usuarios PRIORIDAD: Alta CLIENTE: Depto. Organizacin y Sistemas IDENTIFICADOR REQUISITO: AR7 DESCRIPCIN REQUISITO El sistema deber ser accesible por todos los miembros del departamento indistintamente

TIPO REQUISITO: Seguridad/Funcional BENEFICIOS Permitir que todos los miembros del equipo accedan mediante un clic a los mdulos funcionales de la aplicacin, y facilitar la interaccin con el mismo a cualquiera que lo necesite. COMENTARIOS / SOLUCIONES SUGERIDAS Se toma la decisin de que se acceda libremente al sistema tras evaluar la opcin de establecer perfiles de usuario con accesos y capacidades definidas. Pero se determina que, dado que las diferentes tareas que va a facilitar el sistema son desarrolladas por igual por todos los miembros del departamento, no sera funcional. Sin embargo, se estudia la idea de realizarlo en caso de que el departamento crezca y acabe implantndose especializacin en tareas. DOCUMENTOS RELACIONADOS REQUISITOS RELACIONADOS

20

HOJA DE REQUISITOS
PROYECTO: Gestin de Inventario JEFE PROY.: Pedro Soler FECHA: Nov-2005 VERSION: ESTADO: Final PG: 1 FUENTE: Usuarios PRIORIDAD: Alta CLIENTE: Depto. Organizacin y Sistemas IDENTIFICADOR REQUISITO: AR8 DESCRIPCIN REQUISITO La distribucin de las personas en el sistema se har por departamentos

TIPO REQUISITO: Funcional BENEFICIOS Esto permitir obtener informes mas detallados segn se requiera en funcin de unidades departamentales, a las que si fuera necesario se podran asignar costes. COMENTARIOS / SOLUCIONES SUGERIDAS Se generar una tabla con los departamentos y dentro de estos, todos sus miembros. Se empleara para definir estos departamentos una estructura basada en la definicin sistematizada actualmente y a partir de la cual se estn estableciendo los nombres lgicos de los diferentes equipos dentro del sistema. Esto permitir seguir empleando la misma nomenclatura y compartimentalizar al mximo la gestin de equipos. DOCUMENTOS RELACIONADOS REQUISITOS RELACIONADOS AR9

21

HOJA DE REQUISITOS
PROYECTO: Gestin de Inventario JEFE PROY.: Pedro Soler FECHA: Nov-2005 VERSION: ESTADO: Final PG: 1 FUENTE: Usuarios PRIORIDAD: Alta CLIENTE: Depto. Organizacin y Sistemas IDENTIFICADOR REQUISITO: AR9 DESCRIPCIN REQUISITO El diseo del sistema debe ser similar a la distribucin de los equipos dentro de la empresa,

TIPO REQUISITO: Funcional BENEFICIOS Esto permitir una aproximacin mas intuitiva de los usuarios al sistema, un aprendizaje mas rpido de sus funciones y un mayos aprovechamiento de sus capacidades dentro de las necesidades del Departamento de Organizacin y Sistemas. COMENTARIOS / SOLUCIONES SUGERIDAS Se imitar la distribucin actual a la hora de relacionar los equipos entre si y con los usuarios. As, las CPUs dependern de usuarios, los monitores de CPUs y las impresoras de departamentos o de usuarios (las hay individuales y las hay de grupo). Por otro lado, los usuarios solo dependern de departamentos. DOCUMENTOS RELACIONADOS REQUISITOS RELACIONADOS AR8

22

HOJA DE REQUISITOS
PROYECTO: Gestin de Inventario JEFE PROY.: Pedro Soler FECHA: Nov-2005 VERSION: ESTADO: Final PG: 1 FUENTE: Usuarios PRIORIDAD: Alta CLIENTE: Depto. Organizacin y Sistemas IDENTIFICADOR REQUISITO: AR10 DESCRIPCIN REQUISITO Tipo de informacin que deber suministrar el sistema de los usuarios

TIPO REQUISITO: Funcional BENEFICIOS El acceso rpido de determinados datos de los usuarios y la posibilidad de relacionar estos con otros equipos es parte fundamental de la funcionalidad del sistema COMENTARIOS / SOLUCIONES SUGERIDAS Tras consultar con los miembros del departamento, se decide que la informacin referente a los usuarios que seria recomendable manejar es : - Nombre y Apellidos - Nombre lgico (el de acceso al sistema) - Departamento al que pertenece - Email - Telfono (extensin) - Estado - Fecha de creacin en el dominio DOCUMENTOS RELACIONADOS REQUISITOS RELACIONADOS

23

HOJA DE REQUISITOS
PROYECTO: Gestin de Inventario JEFE PROY.: Pedro Soler FECHA: Nov-2005 VERSION: ESTADO: Final PG: 1 FUENTE: Usuarios PRIORIDAD: Alta CLIENTE: Depto. Organizacin y Sistemas IDENTIFICADOR REQUISITO: AR11 DESCRIPCIN REQUISITO Tipo de informacin que deber suministrar el sistema sobre las CPUs

TIPO REQUISITO: Funcional BENEFICIOS El acceso rpido de determinados datos de las CPUs y la posibilidad de relacionar estas con otros equipos y con su usuario es parte fundamental de la funcionalidad del sistema COMENTARIOS / SOLUCIONES SUGERIDAS Tras consultar con los miembros del departamento, se decide que la informacin referente a las CPUs que seria recomendable manejar es : - Numero de serie - Nombre lgico - Modelo - Usuario al que pertenece - Tipo de procesador - Velocidad del procesador - Memoria RAM - Estado - Fecha de creacin en el dominio DOCUMENTOS RELACIONADOS REQUISITOS RELACIONADOS

24

HOJA DE REQUISITOS
PROYECTO: Gestin de Inventario JEFE PROY.: Pedro Soler FECHA: Nov-2005 VERSION: ESTADO: Final PG: 1 FUENTE: Usuarios PRIORIDAD: Alta CLIENTE: Depto. Organizacin y Sistemas IDENTIFICADOR REQUISITO: AR12 DESCRIPCIN REQUISITO Tipo de informacin que deber suministrar el sistema sobre las impresoras

TIPO REQUISITO: Funcional BENEFICIOS El acceso rpido de determinados datos de las impresoras y la posibilidad de relacionar estas con sus departamentos o con su usuario es parte fundamental de la funcionalidad del sistema COMENTARIOS / SOLUCIONES SUGERIDAS Tras consultar con los miembros del departamento, se decide que la informacin referente a las impresoras que seria recomendable manejar es : - Numero de serie - Nombre lgico - Modelo - Usuario al que pertenece, si es individual. - Departamento al que pertenece, si es departamental - Estado - Fecha de creacin en el dominio DOCUMENTOS RELACIONADOS REQUISITOS RELACIONADOS

25

HOJA DE REQUISITOS
PROYECTO: Gestin de Inventario JEFE PROY.: Pedro Soler FECHA: Nov-2005 VERSION: ESTADO: Final PG: 1 FUENTE: Usuarios PRIORIDAD: Alta CLIENTE: Depto. Organizacin y Sistemas IDENTIFICADOR REQUISITO: AR13 DESCRIPCIN REQUISITO Tipo de informacin que deber suministrar el sistema sobre los monitores

TIPO REQUISITO: Funcional BENEFICIOS El acceso rpido de determinados datos de los monitores y la posibilidad de relacionarlos con sus CPUs y usuarios es parte fundamental de la funcionalidad del sistema COMENTARIOS / SOLUCIONES SUGERIDAS Tras consultar con los miembros del departamento, se decide que la informacin referente a los monitores que seria recomendable manejar es: - Numero de serie - Modelo - CPU con la que se conecta. - Estado - Fecha de creacin en el sistema. DOCUMENTOS RELACIONADOS REQUISITOS RELACIONADOS

26

HOJA DE REQUISITOS
PROYECTO: Gestin de Inventario JEFE PROY.: Pedro Soler FECHA: Nov-2005 VERSION: ESTADO: Final PG: 1 FUENTE: Usuarios PRIORIDAD: Alta CLIENTE: Depto. Organizacin y Sistemas IDENTIFICADOR REQUISITO: AR14 DESCRIPCIN REQUISITO Tipo de informacin que deber suministrar el sistema sobre los diferentes modelos de equipos que se dan.

TIPO REQUISITO: Funcional BENEFICIOS Permitir establecer bsquedas en funcin de modelos concretos, lo cual facilitara determinadas actividades en la gestin del inventario. COMENTARIOS / SOLUCIONES SUGERIDAS La informacin a mostrar por los modelos diferir en funcin del tipo de modelo del que se trate. Para facilitar la diferenciacin y permitir trabajar con diferente informacin, se emplearan tres tablas con diferentes modelos en funcin de que estemos hablando de CPUs, impresoras o monitores. As, de los modelos de CPU y de Impresora, solo ser preciso conocer el nombre del modelo y la marca de la que provienen, pero en el caso de los monitores, estar ligado al modelo adems su tipo de tecnologa (CRT o TFT) y el numero de pulgadas. DOCUMENTOS RELACIONADOS REQUISITOS RELACIONADOS

27

El siguiente requisito es producto de una segunda fase de desarrollo de la aplicacin, tras una primera versin en la que los usuarios echaron en falta un modulo suplementario en la aplicacin. De ah su nomenclatura especial.

HOJA DE REQUISITOS Bis


PROYECTO: Gestin de Inventario JEFE PROY.: Pedro Soler FECHA: Feb-2006 VERSION: ESTADO: Final PG: 1 FUENTE: Usuarios PRIORIDAD: Alta CLIENTE: Depto. Organizacin y Sistemas IDENTIFICADOR REQUISITO: ARBis DESCRIPCIN REQUISITO Desarrollo de un nuevo modulo del sistema que permita obtener informes relacionando todo los equipos de un usuario o bien el usuario y equipos asociados de otro equipo.

TIPO REQUISITO: Operativo/Funcional BENEFICIOS Se pretende dar un mayor valor a la aplicacin haciendo que contribuya a la localizacin de los equipos y las incidencias con un mayor grado de precisin. Reduce los tiempos de bsqueda de los usuarios del departamento a la hora de localizar a los usuarios. COMENTARIOS / SOLUCIONES SUGERIDAS Este modulo se desarrolla durante la segunda fase de desarrollo del sistema, despus de realizar pruebas con los usuarios finales del sistema y solicitar estos el desarrollo del mismo para facilitar su quehacer diario. Se implementara como una nueva entrada en el men bajo el epgrafe Relaciones, y dentro de este se permitir obtener relaciones tanto por usuario (dando sus datos, as como los de las CPUs y Monitores que emplea) o por monitor o CPU (encontrando el usuario que los emplea y viendo que equipos tiene enlazados). Los datos de las relaciones pueden ser exportados a procesadores de texto u hojas de calculo para crear informes de los mismos. DOCUMENTOS RELACIONADOS Manual de usuario REQUISITOS RELACIONADOS AR5

28

2.2.3 Modelo Lgico Nuevo El Modelo Lgico Nuevo, al igual que el Modelo Fsico Actual, se basa en representaciones de diagramas de flujo de datos. Como se podr observar, en este modelo habr varios diagramas que sern prcticamente iguales, aunque incluirn procesos y flujos diferentes especializados en los diferentes elementos que se gestionaran en el inventario. Esto se explica porque posteriormente se emplearan tambin diferentes funciones para programar cada elemento, por lo que se prefiri separar los procesos ya desde este mismo momento. Basndose en los requisitos del sistema y en mi propia experiencia dentro del departamento, y tras analizar aquellos, se realizan los siguientes diagramas (ver en Apndices el Diccionario de datos del Modelo Lgico Nuevo): DFD0. Diagrama de contexto del modelo: Este diagrama describe nicamente la entidad externa usuarios y unos flujos genricos de entrada y salida del proceso general de gestin de inventario. A partir de esta primera descripcin se profundizar en todos los procesos que definirn la aplicacin.

29

DFD1. Diagrama Conceptual del modelo. Este modelo define una separacin entre lo que a partir de este momento se incluir dentro de Entidades (Usuarios y Departamentos) y lo que se incluir como Equipos (Marcas, Modelos, CPUs, Monitores e Impresoras). Esta separacin se realiza porque dentro de lo que es el control del inventario, definir los usuarios y departamentos es necesario para realizar determinados tipos de consultas. Pero no pueden considerarse verdaderamente como un inventario. Los procesos posteriores definirn un tratamiento de ambos grupos bastante similar, pero su separacin en este punto es necesaria en atencin a sus diferentes usos en la aplicacin. Por ultimo, muestra el formateo de los datos de salida.

30

DFD1Bis. Diagrama Conceptual del modelo en su segunda fase. Al avanzar en el desarrollo del sistema, tras evaluar la primera versin, se detecto la falta de un modulo que estableciera relaciones (ver hoja de requisitos ARBis). El rediseo de la aplicacin condujo a incluir el modulo en este punto sobre el Modelo Lgico Nuevo.

31

DFD1.1. Explosin del proceso Gestionar Equipos del DFD1 o DFD1Bis. Este diagrama es un diagrama general de los procesos que se realizan dentro del proceso general Gestionar Equipos, para poder profundizar en ellos despus sin perder la coherencia del modelo.

32

DFD1.2. Explosin del proceso Gestionar Entidades del DFD1 o DFD1Bis. Este diagrama, al igual que el anterior y por el mismo motivo, es un diagrama general, en este caso de los procesos que se realizan dentro del proceso general Gestionar Entidades.

33

DFD1.3. Explosin del proceso Encontrar Relaciones, del DFD1Bis. Este diagrama define el proceso de encontrar relaciones para los usuarios y los equipos. Aparece separado porque no solo es un modulo desarrollado con posterioridad, sino porque tambin hace mencin a una funcin de bsqueda relacionada con la gestin del inventario, pero no directamente implicada en la gestin de los diferentes elementos. Como se puede ver, una vez recibida la solicitud, se determina por qu elemento se realiza la relacin, y se procede a buscar tanto ese elemento como el resto de elementos relacionados.

34

DFD1.1.1. Explosin del proceso Gestionar Marcas, del DFD1.1. Este diagrama define los procesos y flujos que intervienen en el proceso de gestionar las marcas de los equipos que entraran en el inventario. Incluye las funciones que se pueden realizar sobre ellas como procesos separados, pero la salida de datos es un flujo nico a formatear.

35

DFD1.1.2. Explosin del proceso Gestionar Modelos, del DFD1.1. Este diagrama, similar al anterior, define los procesos de gestin de modelos y sus entradas y salidas de datos para formatear.

36

DFD1.1.3. Explosin del proceso Gestionar CPUs, del DFD1.1. Este diagrama define las funciones de gestionar los datos de una CPU concreta. Como se puede observar, incluye procesos que no se dan en las marcas o los modelos. El motivo se explica en la hoja de requisitos AR6.

37

DFD1.1.4. Explosin del proceso Gestionar Monitores, del DFD1.1. Este diagrama es prcticamente idntico al anterior, y muestra la gestin de los monitores inventariados.

38

DFD1.1.5. Explosin del proceso Gestionar Impresoras, del DFD1.1. Otro diagrama prcticamente idntico, aunque necesario para definir las funciones a disear posteriormente. Define la gestin de las impresoras.

39

DFD1.2.1. Explosin del proceso Gestionar Usuarios, del DFD1.2 Este diagrama define los procesos que intervienen en la gestin de los usuarios. Como se puede ver, muy similares a los que se realizan sobre CPUs, monitores o impresoras.

40

DFD1.2.2. Explosin del proceso Gestionar Deptos, del DFD1.2 Por ultimo, este diagrama define los procesos que se realizan en la gestin de los departamentos, muy similares a los que se realizan sobre marcas y modelos.

41

Como se puede observar, la existencia del requisito ARBis y de los diagramas DFD1Bis y DFD1.3 del Modelo Lgico Nuevo son consecuencia de un desarrollo evolutivo, en el que se genero una primera versin de la aplicacin y despus, en una segunda fase, la versin definitiva del proyecto.

2.2.4. Modelo Conceptual de Datos En el modelo conceptual de datos se parte de una serie de modelos que, unidos a los modelos de procesos ya desarrollados, permitirn finalizar en una estructura final para la base de datos que finalmente servir para gestionar nuestro sistema en desarrollo. Las premisas de las que partiremos para realizar estos modelos, resumidas en una parte de los procesos ya descritos y en otra de las condiciones del propio sistema, son las siguientes: En nuestro sistema tendremos por un lado una gestin de usuarios y por otro lado una gestin de los equipamientos. La agrupacin mayor de personas en la empresa se realiza por departamentos, entidad que tiene adems importancia a la hora de distribuir alguno de los equipos. Las CPUs solo podrn ser asignadas a usuarios. No existen CPUs departamentales, por lo que solo se asignan a usuarios. En el caso de darse equipos de uso comn entre varios usuarios, se escoger el usuario al que asignrsele en funcin de la jerarqua o la experiencia. Los monitores dependern de CPUs. Esto es una convencin decidida para simplificar como se gestiona realmente en la empresa, aunque se considera la mas adecuada. En la realidad, puede darse tanto que un ordenador tenga conectados varios monitores como que haya un monitor conectado (mediante un switch de video, teclado y ratn) a varios ordenadores. Pero dado que no existen monitores que no se conecten a ningn equipo, se consider mas oportuno que los monitores dependieran exclusivamente de CPUs. Con ello se simplificar el diseo de la base de datos sin perjudicar la efectividad del diseo. Las impresoras son un caso especial. Pueden ser impresoras departamentales compartidas (la gran mayora) o impresoras individuales (en la mayora de los despachos, algunas secretarias, etc.). Por tanto habr que disear una forma de que se den ambos casos y sea interpretable por el sistema. Habr un registro de marcas para evitar que se produzcan redundancias en los modelos. En el caso de marcas que se asocien, se creara un registro nuevo con la marca resultante. Los modelos se diferenciaran en tres tipos, para poder as definir caractersticas de los equipos que estn ligadas a ellos y no son independientes de cada equipo. Por ejemplo, si un monitor es TFT o CRT, depende del modelo. Como consecuencia, habr tres tablas de modelos, que dependern de su marca, y que sern enlazadas por cada equipo individual. Puede darse el caso de que haya usuarios que no tengan CPUs introducidos, dado que a veces se les da de alta sin en la empresa para funciones temporales y emplean equipos de otros usuarios.

42

A partir de estas premisas se disea el siguiente modelo entidad relacin, con sus cardinalidades correspondientes:

43

Con el desarrollo de estos modelos y tras la definicin de los requisitos del sistema, finalizamos esta etapa del desarrollo. Tras ella comenzamos el estudio de la arquitectura del sistema, y de ah se pasar a la etapa de diseo de la aplicacin, si bien, como acabo de comentar, no existe una relacin exactamente temporal en el paso de una etapa a otra, pues el paradigma evolutivo escogido en el desarrollo implica la vuelta atrs a etapas superadas para desarrollar nuevas funciones.

44

2.3 Estudio de Arquitectura


Aunque en un diseo estructurado habitual esta etapa se afronta justo despus del Anlisis de Requisitos, lo cierto es que en este caso la Arquitectura viene absolutamente impuesta por los requisitos del sistema. El desarrollo de este proyecto se realiza sobre una infraestructura definida, con unos equipamientos y un software previos ala propia aplicacin, por lo que esta etapa prcticamente se obvio en el proyecto. De todas maneras, de forma meramente descriptiva y para centrar el proyecto en el medio en el que funcionar la aplicacin, se definen las especificaciones tecnolgicas del sistema: Tipo de tecnologa escogida: Dada la preexistencia de algn proyecto propio del departamento basado en aplicaciones web desarrolladas en JSP, y que ya se dispone de un servidor de aplicaciones para dicha tecnologa, se escoge sta como la base para la implantacin del sistema. Grficamente, tenemos esta descripcin de la tecnologa de la arquitectura:

En este caso especifico, la red del grfico es un segmento de la red local de la empresa a la que solo tienen acceso los usuarios del propio departamento de Organizacin y Sistemas, lo cual elimina problemas de riesgo de acceso. Arquitectura de aplicaciones: La arquitectura de aplicaciones escogida sigue un esquema cliente servidor de tres capas, datos, aplicacin y presentacin. Ms concretamente, tendremos una arquitectura distribuida de forma que la gestin de los datos y la aplicacin quedaran en el lado del servidor y la presentacin del interfaz de usuario y de los resultados, estarn en el lado cliente.

45

Especificacin de hardware y software: En cuanto al hardware empleado, ser preciso un equipo servidor sobre el que instalar tanto el gestor de base de datos como el servidor de aplicaciones, y una serie de equipos clientes que accedern a la aplicacin a travs del navegador web. Estos clientes no hace falta que sean equipos de alta categora, pues la presentacin no ser demasiado exigente en cuanto a su consumo de recursos, as que se emplearan los ya existentes en el departamento. Las especificaciones de los equipos son las siguientes: - Servidor: HP Proliant DL145, con procesador AMD Opteron 242 de 1,6 GHz, y 1 GB de memoria RAM. - Clientes: Equipos HP d330 y HP 5100c, ambos modelos con procesador Pentium 4, de velocidad comprendida entre 2,8 GHz y 3 GHz, y 1 GB de memoria RAM En cuanto al software, se empleara como gestor de base de datos MySQL, en su versin 4.0, y como servidor de aplicaciones Apache Tomcat, versin 5.0. La aplicacin estar optimizada para ser empleada sobre Internet Explorer 6.0, pues es el navegador instalado de serie sobre los equipos clientes. Todo el conjunto, servidor y clientes, estn en una plataforma Windows, y tiene instaladas las versiones 2003 Server y XP respectivamente.

46

2.4 Diseo
Una vez determinada la arquitectura del proyecto, entramos de lleno en el diseo de la aplicacin. Como hemos visto en las etapas anteriores, el desarrollo de la aplicacin se ha diferenciado bsicamente en dos fases distintas. En la segunda de estas fases, realizada tras haber implementado la mayora de la aplicacin, se disea un modulo que incluye una serie de procesos importantes de la aplicacin y que no eran cubiertas inicialmente. Estos procesos, denominados genricamente Relaciones pues bsicamente se encargan de mostrar las relaciones existentes entre diferentes elementos del inventario, aparecern en la descripcin de los diferentes modelos de esta etapa como parte integrada de la aplicacin. Lo cual quiere decir que no se especificaran sus formularios de entradas ni los DFDs que los identifican de manera separada, sino que se expresaran como parte del conjunto. La etapa de diseo representar el punto ms importante del desarrollo del proyecto, pues delimitar por completo las funciones que finalmente tendr la aplicacin, as como la forma en que se presentar al usuario, los informes que ser capaz de presentar, etc. En cierta forma, los resultados de esta fase debern ser una imagen clara del resultado final de la aplicacin, pendiente tan solo de la implementacin que se realice de los procesos descritos.. En esta etapa, seguiremos desarrollando la aplicacin tanto desde el punto de vista de los procesos como de la definicin de los datos, intentando profundizar hasta un punto tal en que la implementacin posterior se pueda hacer habiendo evaluado todas las posibles variantes del programa. As, en el caso de los procesos, obtendremos los siguientes hitos como resultado: el Modelo Fsico del Nuevo Sistema, el diseo de las ventanas de entrada y los informes que generar la aplicacin, y la especificacin de las funciones a programar. Para el primero, se usara la tcnica del DFD, ya desarrollada durante el anlisis, pero haciendo una mayor profundizacin en las funciones a desarrollar. En el caso del segundo, se obtendr una definicin en forma de ejemplo de cuales son las entradas de datos que finalmente se desarrollaran, as como los formatos en os que se producirn los informes de salida de datos. Y por ultimo, la especificacin de los procesos se realizara con una pequea descripcin de los mismos, definiendo los datos que accedern y los que obtendrn como resultado de cada proceso, as como el orden que se deban realizar esos accesos dentro del propio proceso.. Y en el caso de los datos, obtendremos como hitos los Modelos Lgico y Fsico de Datos. En el primer caso, se definirn los atributos y las relaciones de las diferentes tablas a las que se acceder. Y a partir de este modelo, se obtendrn unas fichas con la definicin fsica de las tablas, que compondrn el definitivo Modelo Fsico de Datos, a partir del cual se generaran las tablas definitivas en la base de datos.

47

2.4.1 Modelo Fsico del Nuevo Sistema El Modelo Fsico Nuevo se expresa en nuestro caso como un DFD que retoma los aspectos poco concretados del Modelo Lgico Nuevo y los define y especifica a medida de lo que ser el resultado final, y consecuentemente a la plataforma elegida durante el Estudio de la Arquitectura. As pues, en este desarrollo no incluiremos una serie de DFDs que ya se explicaron en la etapa de Anlisis y partiremos a especificar y profundizar, explosionando los DFDs, aquellos procesos que se considere que han quedado menos definidos. En todo momento, al hablar de explosin de procesos no definidos en este Modelo Fsico Nuevo, haremos referencia a DFDs del Modelo Lgico Nuevo. Por orden de profundidad y de nivel de explosin: DFD1.4. Explosin del proceso Formatear Datos del DFD1Bis - Este DFD muestra como se realiza de forma genrica el formateo de los datos que se consultan de tal forma que se generan los informes segn los datos de entrega. Aunque no obedece realmente a un modulo de programacin, explica de que forma se programara en todos los casos en cada pgina.

48

DFD1.3.1. explosin del proceso Relacionar por Usuario del DFD1.3 - Este DFD muestra como, a travs de las relaciones que tendrn cada elemento con los otros en las tablas datos finales, se accede de unos a otros configurando la relacin de CPUs y Monitores de un usuario, por el cual realizamos la bsqueda

49

DFD1.3.2. explosin del proceso Relacionar por CPU del DFD1.3 - Otro proceso en el que se accede a seleccionar los datos de un elemento a travs de los de sus elementos relacionados. Pero en este caso la relacin se establece en funcin de una CPU en concreto, que facilita el acceso a su usuario y a los monitores que tiene conectados

50

DFD1.3.3. Explosin del proceso Relacionar por Monitor del DFD1.3 - Este DFD hace exactamente lo mismo que los dos procesos anteriores, si bien accede a los elementos en funcin de un monitor. En este caso, dado que los monitores no tienen relacin directa con los usuarios, se accede a estos ltimos a travs de las CPUs.

51

DFD1.1.1.1. Explosin del proceso Rellenar Alta Marca del DFD1.1.1 - Con este DFD entramos ya a describir procesos de gestin de los elementos, para definir como entran en la base de datos, como sern consultados, etc. En concreto en este caso, veremos como se gestiona el alta de una marca.

DFD1.1.1.2 Explosin del proceso Corregir Marca del DFD1.1.1 - El siguiente proceso que se describir en el caso de las marcas es la correccin de la misma. En este proceso, se muestra el dato de la marca a corregir y se devuelve el resultado modificado. No se considera necesario profundizar en otros procesos relacionados con las marcas, dada su simplicidad.

52

DFD1.1.2.1. Explosin del proceso Rellenar Alta Modelodel DFD1.1.2 - Con este DFD entramos a explicar los procesos relativos a los modelos de los equipos. El alta se realiza consultando entre las marcas disponibles.

DFD1.1.2.1. explosin del proceso Corregir Modelo del DFD1.1.2 - La correccin del modelo implica mostrar el modelo a cambiar, con sus datos, consultando a la tabla correspondiente.

53

DFD1.1.2.3. explosin del proceso Consultar Modelo del DFD1.1.2 - A diferencia de las marcas, la consulta de los modelos requiere un formulario intermedio para insertar un filtro (en este caso, por Marca).

DFD1.1.3.1. Explosin del proceso Rellenar Alta CPU del DFD1.1.3 - Con este DFD entramos a describir los procesos sobre los CPUs. Se permite tanto corregir datos de la CPU como modificar, dar de alta o consultar. El caso del alta, definiendo su modelo y usuario:

54

DFD1.1.3.2. explosin del proceso Corregir CPU del DFD1.1.3 - Corregir un elemento implica modificar sus datos por error en la introduccin de estos. Las modificaciones, en cambio, son cambios reales sobre los elementos, permanentes, que se introducen en el histrico. No todos los datos son modificables, por lo que ambos procesos se consideraran distintos. La correccin de CPUs:

DFD1.1.3.3 explosin del proceso Consultar CPU del DFD1.1.3 - Las consultas de CPUs se hacen en funcin de muchos parmetros que deben ser recogidos para ejecutarse. Tendremos:

55

DFD1.1.3.4. explosin del proceso Modificar CPU del DFD1.1.3 - Ya se ha explicado la diferencia entre correcciones y modificaciones de elementos. Pese a lo cual el proceso es casi idntico. Las modificaciones de las CPUs:

DFD1.1.4.1. explosin del proceso Rellenar Alta Monitor del DFD 1.1.4 - Empezamos a describir los procesos referentes a los monitores. En este caso, el alta de un monitor:

56

DFD1.1.4.2. explosin del proceso Corregir Monitor del DFD 1.1.4 - Este DFD define el modo en que se realizaran las correcciones de monitores:

DFD1.1.4.3. explosin del proceso Consulta Monitor del DFD 1.1.4 - La consulta de monitores permite filtros como el tipo de monitor (CRT o TFT), el numero de pulgadas... El proceso que la define:

57

DFD1.1.4.4. explosin del proceso Modificar Monitor del DFD 1.1.4 - Igual que con las CPUs, pese a ser el proceso casi idntico, es necesario diferenciar la correccin de la modificacin:

DFD1.1.5.1 explosin del proceso Rellenar Alta Impresora del DFD 1.1.5 - Ahora comenzamos con la descripcin de procesos sobre las impresoras. En muchos aspectos similar a otros elementos, aun con diferencias:

58

DFD1.1.5.2. explosin del proceso Corregir Impresora del DFD 1.1.5 - El DFD de correccin de impresoras. Casi igual al del resto de elementos y al de sus propias modificaciones

DFD1.1.5.3. explosin del proceso Consultar Impresora del DFD 1.1.5 - Las consultas en el caso de las impresoras pueden hacerse segn el modelo, los usuarios, los departamentos. El DFD de consultas:

59

DFD1.1.5.4. explosin del proceso Modificar Impresora del DFD 1.1.5 - Habr parmetros de las impresoras, como por ejemplo su modelo, que no podrn ser modificadas, solo corregidas. El proceso:

DFD1.2.1.1. explosin del proceso Rellenar Alta Usuario del DFD 1.2.1 - Con este DFD entramos a describir los procesos referentes a los usuarios. Bsicamente permiten las mismas acciones que un elemento hardware. El alta:

60

DFD1.2.1.2. explosin del proceso Corregir Usuario del DFD 1.2.1 - El DFD de correccin de usuarios permite corregir sus datos mal insertados. Tendremos:

DFD1.2.1.3. explosin del proceso Consultar Usuario del DFD 1.2.1 - Las consultas sobre usuarios permiten sacar tablas en funcin de departamentos u otros parmetros, o simplemente conocer los datos de los usuarios.

61

DFD1.2.1.4. explosin del proceso Modificar Usuario del DFD 1.2.1 - La modificacin de usuarios permite actualizar datos como email o telfono, que quedaran en el histrico.

DFD1. 2.2.1. explosin del proceso Rellenar Alta Depto del DFD 1.2.2 - Los departamentos, al igual que las marcas, por la sencillez de su estructura y sus datos, solo tienen complejidad a la hora de explicar sus procesos de alta y correccin. Las consultas son simples listados. El alta:

62

DFD1. 2.2.2. explosin del proceso Corregir Depto del DFD 1.2.2 - Para finalizar con la descripcin de los procesos, la correccin de los departamentos queda como sigue:

Como ya se ha mencionado antes, estos DFDs presentan aquellos procesos cuya descripcin durante la etapa de Anlisis de Requisitos se considera que no quedo suficientemente precisada. Pero en la especificacin que se realice de los procesos, y durante el diseo de los formularios de entrada y los informes resultantes de la aplicacin, aparecern esas funciones no descritas ahora. Estos procesos son: Localizar y Consultar Marcas Localizar Modelos Localizar CPUs Localizar Monitores Localizar Impresoras Localizar Usuarios Localizar y Consultar Departamentos

Lo cierto es que las consultas de Marcas y Departamentos solo producen listados, y estn suficientemente descritos en el proceso descrito en el DFD1.4; y la localizacin de los diferentes elementos es tan simple como el acceso a sus tablas en funcin de su identificador, tal y como se muestra en el Modelo Lgico del Nuevo Sistema, durante la etapa de Anlisis de Requisitos.

63

2.4.2 Diseo de formularios e Informes Dado que se trata de una aplicacin web, el diseo de los formularios de la aplicacin ser esencial porque representar en realidad el propio diseo del interfaz del usuario con la aplicacin. Al empezar a definir el estilo de la aplicacin y la forma en que se generaran las pginas HTML que forman el interfaz de la misma, se decidi establecer una estructura global para toda la aplicacin que permitiera el acceso a sus diferentes funciones en cualquier momento desde un men inicial. Tras estudiar las diferentes opciones para establecer el susodicho men a travs de la comparacin de pginas web de diferente tipo, nos decidimos por establecer una estructura de presentacin de la pgina en tres marcos (frames), tal y como se observa en el siguiente grafico:

De esta forma, los marco de la cabecera y del men seran siempre fijos, mientras que el marco para la presentacin de los datos ira renovndose a medida que se fueran accediendo a las diferentes opciones del men. Posteriormente, la siguiente decisin que se tom fue la definicin de unos patrones de colores sobre los que trabajar la presentacin. Para tomar la decisin decidimos referirnos a los colores ms tpicos de los documentos corporativos de la empresa. Estos tienen normalmente una base de azul, por lo que se adopto ste como el color base de la aplicacin. El fondo de las pginas sera blanco, para facilitar la legibilidad de los informes en pantalla y la claridad de los mismos. Y siguiendo estos patrones se defini el diseo de todas las tablas y formularios que surgiran en la aplicacin.

64

El marco de la cabecera se decidi emplear para mostrar el nombre de la aplicacin y una imagen corporativa del smbolo de marca de la empresa. Adems, se aadi una caja en la que se mostrara un reloj indicando la fecha y la hora (posteriormente, a travs de una funcin JavaScript al desarrollar la pgina):

En cuanto al marco del men, deba mostrar una serie de entradas que se pudieran desplegar mostrando a partir de ellas las diferentes funciones de la aplicacin. Usando editores de HTML, se creo el siguiente men, cuya segunda versin (al aadir las relaciones) queda a la derecha:

Y para obtener una pgina inicial de la aplicacin, se creo una primera pgina HTML con la que adems podamos ver la estructura de la misma y tener un primer prototipo de su diseo:

65

Una vez definida la estructura y visto el primer prototipo, empezamos a crear los formularios necesarios para desarrollar todas las funciones de la aplicacin. Como se explic con anterioridad, los formularios aparecern en el marco de presentacin de datos. Por otro lado, dado que hay varios objetos con un tipo de informacin muy parecida y que esto provoca que muchos de los formularios sean muy similares entre si y que lo nico que cambie sea el titulo del formulario, se describirn varios formularios de forma conjunta: 1. Formulario de alta de Departamentos y de Marcas:

Este formulario nicamente tiene como entrada el nombre del departamento (o de la marca). La definicin de datos de estos objetos solamente ofrece dos atributos, el cdigo del mismo y el nombre. Ser la propia aplicacin la que establezca el cdigo (de forma secuencial). Un botn ejecuta la insercin del objeto en la base de datos. 2. Formulario de correccin de Departamentos y Marcas:

En este caso los objetos se ofrecen dentro de una caja de seleccin, para escoger el que queremos corregir. Despus, un botn nos llevara a modificar el nombre mal escrito.

66

3. Formulario de insercin de Modelos de CPU o de Impresora:

Este formulario presenta una caja para seleccionar entre las marcas la del modelo de objeto. Y una caja de texto donde escribiremos el que queramos insertar. Despus, un botn ejecuta la funcin. 4. Formulario de insercin de Modelos de Monitor:

En el caso de los monitores, el modelo incluye la informacin sobre el tipo de tecnologa y el numero de pulgadas, seleccionables en cajas de seleccin. Y el nombre del modelo se introduce en la caja de texto. La insercin se ejecuta con el botn para ello. 5. Formularios para la correccin de Modelos de CPU o de Impresora:

EL formulario muestra una caja de seleccin de marca, y al seleccionar recarga la pgina mostrando la marca seleccionada y otra caja de seleccin con los modelos de objeto para esa marca en concreto. Se accede a la correccin con el botn para enviar la informacin.

67

6.

Formulario de insercin de Usuarios:

El formulario presenta una serie de cajas de texto para ingresar los datos necesarios sobre el usuario, y una caja de seleccin para escoger el departamento al que pertenezca. Luego, el botn para insertar el usuario en la base de datos. 7. Formularios de correccin de Usuarios:

La correccin de usuarios consta de tres sub-formularios. En el primero, se selecciona el departamento del que sea el usuario, luego se recarga la pgina ofreciendo adems los usuarios del departamento escogido (imagen superior) y, finalmente, el formulario en el que se pueden corregir atributos del usuario (imagen inferior).

68

8. Formularios de actualizacin de datos de Usuario:

Al igual que en el caso anterior, este formulario tiene tres sub-formularios, los dos primeros para seleccionar al usuario, como antes, y el ultimo para modificar los atributos actualizables. Como se ve en los grficos, los campos actualizables y los corregibles no son exactamente los mimos. 9. Formulario de insercin de CPUs:

Formulario que permite la insercin de las CPUs. Contiene una serie de campos de texto rellenables directamente por el usuario de la aplicacin y un campo de seleccin del tipo de uso que tendr el equipo. Y adems, hay dos campos de seleccin seguidos de botones, el de marca y el de departamento, en los que escogeremos el valor necesario y, al pulsar el botn, accederemos a escoger un modelo y un usuario concreto en la pgina recargada.

69

10. Formulario de insercin de Impresoras:

Al igual que en el caso de las CPUs, permite seleccionar una marca y un departamento, que recarga la pgina para escoger despus el modelo concreto y el usuario individual (si es que existe). El resto de campos se rellenan desde cajas de texto. 11. Formulario de insercin de Monitores:

Se introduce en texto el numero de serie, se selecciona la CPU a la que se conecta y se escoge la marca para que se recargue la pgina y podamos seleccionar el modelo concreto. Luego el botn permite insertar el monitor en la base de datos. 12. Formularios de correccin de CPUs:

Para localizar un equipo que se quiera corregir, se puede localizar bien por su numero de serie o por su nombre lgico . Al localizar el equipo pasamos al siguiente formulario para corregir sus datos:

70

El formulario de correccin muestra los datos del equipo seleccionado para corregir, con dos botones si es necesario cambiar su marca y modelo o asignrselo a un usuario de otro departamento. 13. Formularios de correccin de Impresoras:

Al igual que en el caso de las CPUs, para acceder a la impresora a corregir hay un formulario previo que permite escoger la impresora por numero de serie o por nombre lgico. Despus se llega a este formulario en el que se pueden corregir los datos con los que se creo la impresora.

71

14. Formularios de correccin de Monitores:

En el caso de los monitores, se accede al que queremos corregir solo por su numero de serie (pues no tienen nombre lgico). El formulario permite modificar sus datos errneos, y posee un botn para enviar la correccin a la base de datos. 15. Formularios de actualizacin de datos de una CPU:

Igual que en el caso de la correccin, la actualizacin dispone de un formulario previo para localizar al equipo bien por numero de serie o por su nombre lgico. Una vez localizado, se abre este formulario, donde se puede acceder a actualizar los datos de varios de sus datos. El botn de actualizar enva los datos a la base de datos.

72

16. Formularios de actualizacin de Impresoras:

Tal y como suceda en el caso de las CPUs, aqu tambin hay un formulario previo que permite acceder a la impresora por numero de serie o nombre lgico. El botn de cambio de departamento recarga la pgina permitiendo modificar el departamento y sus usuarios. Y el botn de actualizacin se encarga de transmitir los datos de actualizacin a la base de datos.

17. Formularios de actualizacin de Monitores:

Otra vez, como en el caso de la correccin de monitores, a este formulario se accede a partir de otro que recoge el numero de serie del monitor a actualizar. Lo nico actualizable en este caso es el equipo al que se conecta y el estado del equipo. La actualizacin se transmite a la base de datos por el botn del formulario.

73

18. Formularios para la localizacin de Usuarios:

Tanto para localizar usuarios concretos como para ver su histrico, se busca a partir de una caja de seleccin donde se selecciona los usuarios. Adems, hay otra caja de seleccin en la que se escoge el formato en el que se obtendrn los informes. 19. Formularios para el listado de Marcas y Departamentos:

En estos dos casos, el formulario solo ofrece el formato de salida para el informe. 20. Formularios para el listado de Modelos de CPUs, Monitores o Impresoras:

En todos estos casos, los listados de las marcas se hacen por marca, escogindose esta en la caja de seleccin, as como el formato de salida final.

74

21. Formularios para la localizacin de CPUs e Impresoras:

Tanto para CPUs como para Impresoras, la bsqueda de un objeto concreto para ver sus datos o su histrico se puede realizar a travs de su nmero de serie o de su nombre lgico. Adems, se puede tambin definir el formato de salida del informe. 22. Formulario para la localizacin de Monitores:

Los monitores solo pueden localizarse, para ver sus datos o su histrico, a partir de su numero de serie. Se puede seleccionar tambin el formato de salida del informa. 23. Formulario de consulta filtrada de Usuarios:

La consulta de usuarios filtrada permite definir parmetros de consulta para sacar listados de usuarios que los cumplan. El botn para seleccionar fecha abre una ventana con un calendario, y el del formulario realiza la consulta para emitir el informe, que puede obtenerse en diferentes formatos.

75

24. Formulario de consulta filtrada de CPUs:

La consulta por filtro de CPU permite escoger mltiples parmetros para configurar el informe resultante, la mayora a travs de cajas de seleccin, que se puede mostrar en distintos formatos de salida. 25. Formulario de consulta filtrada de Impresoras:

Mediante campos de texto y cajas de seleccin, se puede filtrar la bsqueda de impresoras para obtener listados e informes personalizados y en mltiples formatos.

76

26. Formulario de consultas filtradas de Monitores:

Como en el caso de impresoras y CPUs, se pueden realizar consultas filtradas de monitores en funcin de varios parmetros definibles por el usuario, y mostrando los informes resultantes en diferentes formatos. Todo ello se selecciona a travs de cajas de texto o de seleccin predefinidas. 27. Formularios de bsqueda de relaciones por CPU o por Usuario:

En estos dos casos, se puede encontrar las relaciones de un objeto con los dems a travs de esta consulta, seleccionando el objeto en cuestin por nombre lgico en la caja de seleccin. La salida tambin se puede seleccionar en diferentes formatos 28. Formulario de bsqueda de relaciones por Monitor:

En cambio la bsqueda por monitor solo puede realizarse buscando por numero de serie. tambin permite diferentes formatos de salida.

77

29. Formulario de insercin de fechas:

El formulario de insercin de fechas permite seleccionar un da de un mes o un ao cualquiera para poder realizar las bsquedas filtradas con mayor facilidad. La seleccin del mes y el ao se realiza a travs de cajas de seleccin, y el da simplemente marcndolo con el ratn.

Por otro lado, la aplicacin tambin ha de sacar varios informes y consultas. Estos son los modelos de informe predefinidos, aunque como ya hemos visto son parametrizables para obtener diferentes resultados en funcin de diferentes filtros de bsqueda. Todos los informes pueden extraerse en formato Excel, Word o bien va Web como pgina HTML. Como en el caso de los formularios, se agruparan informes de estructura similar: 1. Consulta de Marcas y Departamentos:

En este caso el informe es muy simple, pues solo tiene que mostrar un listado de las marcas o los departamentos incluidos en la base de datos.

78

2. Consulta de Modelos de CPU e Impresoras:

Se establece un informe en tres columnas, con la marca por la que se filtra y los modelos. 3. Consulta de Modelo de Monitor:

El informe de modelos de monitor incluye nuevas columnas para mostrar las caractersticas especificas de los modelos. 4. Consulta de datos de Usuarios especficos (localizados):

Muestra las caractersticas del usuario en formato ficha, especificando sus atributos.

79

5. Consulta del histrico de un Usuario:

El informe de histrico del usuario muestra por un lado la ficha del usuario como en la consulta anterior, y adems una tabla inferior con el historial de cambios que ha sufrido, a travs de un listado que seala el tipo de cambio, los valores anterior y final, y la fecha del cambio. 6. Consulta de Usuarios filtrados:

Este informe muestra la consulta de los usuarios que han entrado en el filtro impuesto al solicitarla. Se muestran todos los campos del usuario que ofrezcan alguna informacin relevante para el usuario de la aplicacin.

80

7. Consulta de datos de CPUs especficos (localizados):

La consulta muestra un informe en formato de ficha de la CPU y con sus caractersticas detalladas. 8. Consulta de datos histricos de una CPU:

Como en el caso de los usuarios muestra la ficha de la CPU y el histrico de los cambios que ha sufrido

81

9. Consulta de CPUs filtradas:

La consulta muestra los equipos filtrados por los atributos que sean necesarios, dando las caractersticas principales de los equipos encontrados.

10. Consulta de datos de Impresoras especificas (localizadas);

De nuevo, como en el caso de los usuarios y las CPUs, se muestra la impresora en un informe en formato ficha, con sus datos principales listados.

82

11. Consulta de datos histricos de una Impresora:

El informe muestra los datos de la impresora como una ficha, y debajo hace un listado histrico de todas las actualizaciones que haya podido sufrir en el tiempo. 12. Consulta de Impresoras filtradas:

La consulta muestra las caractersticas de una serie de impresoras que responden a un filtro determinado

83

13. Consulta de un Monitor especifico (localizado):

La consulta muestra los detalles de un monitor concreto, en forma de ficha. 14. Consulta de datos histricos de un Monitor:

Muestra la ficha del equipo y un listado histrico de las modificaciones sufridas. 15. Consulta filtrada de Monitores:

Muestra un listado de monitores filtrados en funcin de algunas de sus caractersticas.

84

16. Consulta de las relaciones de las relaciones entre Usuarios, CPUs y Monitores buscadas por Usuario:

El informe resultante muestra todos las CPUs y los monitores asociadas a un determinado usuario, con los datos ms importantes de cada uno de los elementos mostrados. 17. Consulta de las relaciones de las relaciones entre Usuarios, CPUs y Monitores buscadas por CPU:

El informe muestra el usuario de una CPU y todos los monitores que pueda tener asociados, con todos sus datos importantes.

85

18. Consulta de las relaciones de las relaciones entre Usuarios, CPUs y Monitores buscadas por Monitor:

El informe muestra el equipo al que esta conectado el monitor y el usuario dueo de ese equipo en concreto, as como sus datos ms relevantes.

Las imgenes de los tres ltimos informes, as como los formularios implicados en la solicitud de los mismos, son producto de una segunda fase de diseo, determinada por la necesidad de ampliar la aplicacin para mostrar las relaciones entre los diferentes objetos. Es importante mencionar que todos y cada uno de los informes y consultas presentados debern tener su salida en cualquiera de los formatos posibles, tal y como se mostraba al comentar los diferentes formularios. El hecho de generar la pgina en HTML y la facilidad de su manejo por aplicaciones del paquete Office, hace que la presentacin en pantalla de los datos como pgina web resulte prcticamente idntica a la que muestran como documentos de Word o de Excel. Pero el obtener los datos en esos formatos permite que sean mucho ms fcilmente manejables y que se puedan modificar al gusto todos los resultados obtenibles por la aplicacin de un modo muy simple, lo cual aporta un gran valor aadido a la aplicacin a travs de unos cambios mnimos Con estos formularios y sus consultas queda en buena parte definido el diseo visual de la aplicacin. No solo se muestra como es la esttica de la misma, sino que adems sirve como una especie de paseo por las diferentes funciones que tendr la aplicacin a su finalizacin, y permite hacerse una clara idea del resultado final de la misma.

86

2.4.3 Especificacin de procesos Realizaremos la definicin de procesos agrupados segn el tipo de elemento al que implica:

a. Marcas. Dar de alta Marca Entradas: Peticin de formulario y Datos del Marca. 1. Abrir formulario de alta de marca. 2. Introducir nombre de la marca. 3. Generar cdigo de marca 4. Insertar marca generada en tabla marca 5. Mostrar resultado del proceso Corregir Marca Entradas: Peticin de formulario, marca a corregir y datos de correccin 1. Abrir formulario de correccin de marca 2. Introducir nombre marca a corregir 2.1 Acceder tabla de marcas 2.2 Seleccionar marca Enviar a formulario de correccin 3. Mostrar formulario correccin 4. Insertar datos correccin Enviar correccin a tabla marcas 5. Mostrar resultado del proceso. Consultar Marca Entradas: Peticin de formulario Salidas: Listado de marcas 1. Abrir formulario de consulta de marcas 2. Seleccionar tipo de salida 3. Acceder tablas marcas 3.1 Generar informe de marcas 4. Mostrar tabla de marcas

87

b. Departamentos. Dar de alta Departamento Entradas: Peticin de formulario y Datos del Departamento. 1. Abrir formulario de alta de departamento. 2. Introducir nombre del departamento. 3. Generar cdigo de departamento 4. Insertar departamento generada en tabla departamentos Corregir Departamento Entradas: Peticin de formulario, departamento a corregir y datos de correccin 1. Abrir formulario de correccin de departamento 2. Introducir departamento a corregir. 2.1 Acceder tabla de departamentos 2.2 Seleccionar departamento Enviar a formulario de correccin 3. Mostrar formulario correccin 4. Insertar datos correccin Enviar correccin a tabla departamentos 5. Mostrar resultado del proceso. Consultar Departamento Entradas: Peticin de formulario Salidas: Listado de departamentos 1. Abrir formulario de consulta de departamentos 2. Seleccionar tipo de salida 3. Acceder tablas departamentos 3.1 Generar informe de departamentos 4. Mostrar tabla de departamentos

88

c. Modelos. Dar de alta Modelo Entradas: Peticin de formulario y Datos del Modelo. 1. Abrir formulario de alta de modelo 2. Seleccionar marca de cuadro de seleccin 3. Introducir nombre del modelo. 4. Generar cdigo de modelo 5. Insertar modelo generada en tabla modelos Corregir Modelo Entradas: Peticin de formulario, modelo a corregir y datos de correccin 1. Abrir formulario de correccin de modelo 2. Introducir modelo a corregir 2.1 Acceder tabla de modelos 2.2 Seleccionar modelo Enviar a formulario de correccin 3. Mostrar formulario correccin 4. Insertar datos correccin Enviar correccin a tabla modelos 5. Mostrar resultado del proceso. Consultar Modelo Entradas: Peticin de formulario Salidas: Listado de modelos filtrados por marca 1. Abrir formulario de consulta de modelos 2. Seleccionar marca por la que filtrar y tipo de salida 3. Acceder tablas modelos 3.1 Generar informe de modelos 4. Mostrar tabla de modelos

89

d.CPUs. Dar de alta CPU Entradas: Peticin de formulario y Datos de la CPU. 1. Abrir formulario de alta de la CPU. 2. Introducir datos de la CPU. 3. Generar cdigo de la CPU 4. Insertar la CPU generada en tabla CPUs Corregir CPU Entradas: Peticin de formulario, CPU a corregir y datos de correccin 1. Abrir formulario de correccin de CPU 2. Introducir CPU a corregir 2.1 Acceder tabla de CPUs 2.2 Seleccionar CPU Enviar a formulario de correccin 3. Mostrar formulario correccin 4. Insertar datos correccin Enviar correccin a tabla CPU 5. Mostrar resultado del proceso.

Modificar CPU Entradas: Peticin de formulario, CPU a actualizar y datos de modificacin 1. Abrir formulario de modificacin de CPU 2. Introducir nombre CPU a modificar 2.1 Acceder tabla de CPUs 2.2 Seleccionar CPU Enviar a formulario de modificacin 3. Mostrar formulario modificacin 4. Insertar datos modificacin Enviar modificacin a tabla CPU. Enviar datos modificacin a tabla histrico 5. Mostrar resultado del proceso. Consultar CPU Entradas: Peticin de formulario Salidas: Listado de CPUs 1. Abrir formulario de consulta de CPUs 2. Rellenar filtros y seleccionar tipo de salida 3. Generar consulta 4. Acceder tabla CPUs 4.1 Generar informe de CPUs 5. Mostrar tabla de CPUs

90

e. Monitores Dar de alta monitor Entradas: Peticin de formulario y Datos del monitor. 1. Abrir formulario de alta de monitor. 2. Introducir datos del monitor. 3. Generar cdigo de monitor 4. Insertar monitor generada en tabla monitores Corregir monitor Entradas: Peticin de formulario, monitor a corregir y datos de correccin 1. Abrir formulario de correccin de monitor 2. Introducir nombre monitor a corregir 2.1 Acceder tabla de monitores 2.2 Seleccionar monitor Enviar a formulario de correccin 3. Mostrar formulario correccin 4. Insertar datos correccin Enviar correccin a tabla monitor 5. Mostrar resultado del proceso. Modificar monitor Entradas: Peticin de formulario, monitor a actualizar y datos de modificacin 1. Abrir formulario de modificacin de monitor 2. Introducir nombre monitor a modificar 2.1Acceder tabla de monitores 2.1 Seleccionar monitor Enviar a formulario de modificacin 3. Mostrar formulario modificacin 4. Insertar datos modificacin Enviar modificacin a tabla monitor. Enviar datos modificacin a tabla histrico 5. Mostrar resultado del proceso. Consultar monitor Entradas: Peticin de formulario Salidas: Listado de monitores 1. Abrir formulario de consulta de monitores 2. Rellenar filtros y seleccionar tipo de salida 3. Generar consulta 4. Acceder tabla monitores 4.1 Generar informe de monitores 5. Mostrar tabla de monitores

91

f. Impresoras Dar de alta impresora Entradas: Peticin de formulario y Datos de la impresora. 1. Abrir formulario de alta de impresora. 2. Introducir datos de la impresora. 3. Generar cdigo de impresora 4. Insertar impresora generada en tabla impresoras Corregir impresora Entradas: Peticin de formulario, impresora a corregir y datos de correccin 1. Abrir formulario de correccin de impresora 2. Introducir nombre impresora a corregir 2.1 Acceder tabla de impresoras 2.2 Seleccionar impresora Enviar a formulario de correccin 3. Mostrar formulario correccin 4. Insertar datos correccin Enviar correccin a tabla impresora 5. Mostrar resultado del proceso. Modificar impresora Entradas: Peticin de formulario, impresora a actualizar y datos de modificacin 1. Abrir formulario de modificacin de impresora 2. Introducir nombre impresora a modificar 2.1 Acceder tabla de impresoras 2.3 Seleccionar impresora Enviar a formulario de modificacin 3. Mostrar formulario modificacin 4. Insertar datos modificacin Enviar modificacin a tabla impresora. Enviar datos modificacin a tabla histrico 5. Mostrar resultado del proceso. Consultar impresora Entradas: Peticin de formulario Salidas: Listado de impresoras 1. Abrir formulario de consulta de impresoras 2. Rellenar filtros y seleccionar tipo de salida 3. Generar consulta 4. Acceder tabla impresoras 4.1 Generar informe de impresoras 5. Mostrar tabla de impresoras

92

g. Usuarios Dar de alta usuario Entradas: Peticin de formulario y Datos del usuario. 1. Abrir formulario de alta de usuario. 2. Introducir datos del usuario. 3. Generar cdigo de usuario 4. Insertar usuario generada en tabla usuarios Corregir usuario Entradas: Peticin de formulario, usuario a corregir y datos de correccin 1. Abrir formulario de correccin de usuario 2. Introducir nombre usuario a corregir 2.1 Acceder tabla de usuarios 2.2 Seleccionar usuario Enviar a formulario de correccin 3. Mostrar formulario correccin 4. Insertar datos correccin Enviar correccin a tabla usuario 5. Mostrar resultado del proceso.

Modificar usuario Entradas: Peticin de formulario, usuario a actualizar y datos de modificacin 1. Abrir formulario de modificacin de usuario 2. Introducir nombre usuario a modificar 2.1 Acceder tabla de usuarios 2.2 Seleccionar usuario Enviar a formulario de modificacin 3. Mostrar formulario modificacin 4. Insertar datos modificacin Enviar modificacin a tabla usuario. Enviar datos modificacin a tabla histrico 5. Mostrar resultado del proceso. Consultar usuario Entradas: Peticin de formulario Salidas: Listado de usuarios 1. Abrir formulario de consulta de usuarios 2. Rellenar filtros y seleccionar tipo de salida 3. Generar consulta 4. Acceder tabla usuarios 4.1 Generar informe de usuarios 5. Mostrar tabla de usuarios

93

h. Relaciones. Relacionar por Usuario Entradas: Peticin de formulario y Datos del Usuario. Salida: Informe con la relacin de CPUs, y monitores del usuario. 1. Abrir formulario relacionar usuario 2. Seleccionar usuario y formato de salida de cuadros de seleccin Enviar 2.1 Localizar CPUs del usuario 2.2 Localizar monitores de la CPU 2.3 Generar tablas de relaciones 3. Mostrar las relaciones Relacionar por CPU Entradas: Peticin de formulario y Datos de CPU. Salida: Informe con la relacin de usuario y monitores de la CPU 1. Abrir formulario relacionar CPU 2. Seleccionar CPU y formato de salida de cuadros de seleccin Enviar 2.1 Localizar usuario de la CPU 2.2 Localizar monitor de la CPU 2.3 Generar tablas de relaciones 3. Mostrar las relaciones

Relacionar por Monitor Entradas: Peticin de formulario y Datos del Monitor. Salida: Informe con la relacin del usuario y la CPU del monitor 1. Abrir formulario relacionar monitor 2. Seleccionar monitor por Serial Number y formato de salida de cuadro de seleccin Enviar 2.1 Localizar CPU del monitor 2.2 Localizar usuario de la CPU 2.3 Generar tablas de relaciones 3. Mostrar las relaciones

Estas definiciones de procesos sern la base para la programacin posterior de cada uno de las funciones de la aplicacin. Con el Modelo Fsico Nuevo, el diseo de todos los formularios que se aplicaran posteriormente en la aplicacin y la especificacin de los procesos que formaran parte de la misma, se puede dar por terminada la parte de la etapa de Diseo dedicada a los procesos. Pasamos ahora a describir los datos.

94

2.4.4 Modelo Lgico de Datos Con el diagrama conceptual del anlisis de requisitos, las premisas ya definidas y las necesidades de informacin para cada tipo de elemento representadas en los atributos de los mismos vistos en las hojas de requisitos, obtenemos las siguientes caractersticas lgicas para cada tabla a definir en la base de datos: Tabla de departamentos: - Cdigo de departamento: Cdigo con el que se relacionara con otras tablas. Numrico entero, secuencial. Clave primaria. - Nombre de departamento: 20 caracteres. Tabla de usuarios: - Cdigo de usuario: Cdigo con el que se relacionara con otras tablas. Numrico entero, secuencial. Clave primaria. - Nombre: 20 caracteres. - Apellidos: 40 caracteres. - Nombre lgico: Nombre asignado como usuario del dominio. 20 caracteres. - Email: 30 caracteres. - telfono: Extensiones normalmente. 15 caracteres. - Departamento: Su cdigo. Clave extranjera. - Estado: Alta o Baja. Numrico entero (se asignara un valor numrico a cada estado). - Fecha de creacin: Fecha de alta en el sistema. Timestamp, 17 caracteres Tabla de marcas: - Cdigo de marca: Cdigo con el que se relacionara con los modelos. Numrico entero y secuencial. Clave primaria. - Nombre de marca: 20 caracteres. Tabla de modelos de CPU: - Cdigo de modelo de CPU: Cdigo con el que se relacionara con las CPUs. Numrico entero y secuencial. Clave primaria. - Marca: Su cdigo. Clave extranjera. - Nombre del modelo: 20 caracteres. Tabla de modelos de impresora: - Cdigo de modelo de impresora: Cdigo con el que se relacionara con las impresoras. Numrico entero, secuencial. Clave primaria. - Marca: Su cdigo. Clave extranjera. - Nombre del modelo: 20 caracteres. Tabla de modelos de monitor: - Cdigo de modelo de monitor: Cdigo con el que se relacionara con los monitores. Numrico entero, secuencial. Clave primaria. - Marca: Su cdigo. Clave extranjera. - Nombre del modelo: 20 caracteres. - Tipo de tecnologa: CRT o TFT. 20 caracteres. - Numero de pulgadas de la pantalla: Numrico entero.

95

Tabla de CPUs - Cdigo de CPU: Cdigo de entrada en la base de datos. Numrico entero, secuencial. Clave primaria. - Numero de serie: 40 caracteres. - Modelo de CPU: Su cdigo - Nombre lgico: Nombre con el que aparece en el dominio. 20 caracteres. - Tipo de procesador: Pentium II, III, IV, Mobile, Sparc... 20 caracteres - Velocidad: En MHz.. Numrico entero. - Memoria RAM: En MB. Numrico entero. - Usuario: Cdigo del usuario. - Uso que se le da: Determina o bien una localizacin especial o una aplicacin especifica que corre sobre el, y permite identificarlo. 20 caracteres. - Estado: Alta, Baja, Almacn o Reparacin. Numrico entero. - Fecha de creacin: Fecha de entrada en el sistema. Timestamp, 17 caracteres. Tabla de monitores - Cdigo de monitor: Cdigo de entrada en la base de datos. Numrico entero, secuencial. Clave primaria. - Numero de serie: 40 caracteres. - Modelo de monitor: Su cdigo. Clave extranjera. - CPU asociada: Su cdigo - Estado: Alta, Baja, Almacn o Reparacin. Numrico entero. - Fecha de creacin: Fecha de entrada en el sistema. Timestamp 17 caracteres. Tabla de impresoras - Cdigo de impresora: Cdigo de entrada en la base de datos. Numrico entero, secuencial. Clave primaria. - Numero de serie: 40 caracteres. - Modelo de impresora: Su cdigo - Nombre lgico: El nombre con el que se le identifica en las colas de impresin. 20 caracteres. - Departamento: Su cdigo. Clave extranjera. - Usuario: Su cdigo. Clave extranjera. - Estado: Alta, Baja, Almacn o Reparacin. Numrico entero. - Fecha de creacin: Fecha de entrada en el sistema. Timestamp, 17 caracteres. Tabla de histricos - Tipo de objeto: Usuario, CPU, Impresora o Monitor. Numrico entero (se asignara un valor a cada posible objeto). - Cdigo del objeto concreto: El cdigo del objeto concreto actualizado - Tipo de modificacin: Tipo de actualizacin que sufre. Numrico entero (se definir un valor para cada tipo de modificacin posible). - Nuevo valor introducido: Nuevo valor introducido. 40 caracteres - Fecha de la actualizacin: Fecha en la que se realiza la actualizacin. Timestamp, 17 caracteres.

96

Y una vez definidas las caractersticas lgicas de las tablas, y a partir de lo que vimos en el Modelo Conceptual de Datos del Anlisis de Requisitos, obtenemos la siguiente lista de relaciones, cada una con su Cardinalidad y su moda aproximada en funcin de las estimaciones hechas segn los datos actuales de inventario. Departamentos - Impresoras: Cardinalidad: 1:N. Moda: 1. Departamentos - Usuarios: Cardinalidad: 1:N Moda: 5 Usuarios - Impresoras: Cardinalidad: 1,N Moda: 0 Usuarios - CPUs: Cardinalidad: 1:N Moda: 1 CPUs Monitores: Cardinalidad: 1:N Moda: 1 Modelos CPUs - CPUs: Cardinalidad: 1:N Moda: No hay. Cada modelo tiene un numero diferente. Modelos impresoras - Impresoras: Cardinalidad: 1:N Moda: 3. Modelos monitores - Monitores: Cardinalidad: 1:N Moda: No hay. Cada modelo tiene un numero diferente. Marcas - Modelos CPUs: Cardinalidad: 1:N Moda: No hay. Cada marca tiene un numero diferente. Marcas - Modelos monitores: Cardinalidad: 1 :N Moda: Cada marca tiene un numero diferente. Marcas - Modelos impresoras: Cardinalidad: 1 :N Moda: Cada marca tiene un numero diferente.

97

2.4.5 Modelo Fsico de Datos A partir de este modelo lgico obtenido, y teniendo en cuenta las diferentes peculiaridades de la propia aplicacin y de las entradas diseadas, obtenemos las siguientes estructuras fsicas para las tablas que compondrn nuestra base de datos, en forma de fichas de las diferentes tablas:

+++ ENTIDAD: Departamento Definicin Volumen Crecimiento Permanencia Informacin de los departamentos de la empresa 20-30 Ocurrencias Prcticamente nulo. Siempre

+ATRIBUTO: NumDep Definicin Rango Formato Longitud Tipo de clave Cdigo de departamento 1 al 99999999999 Numrico entero 11 Primaria

+ATRIBUTO: NomDep Definicin Rango Formato Longitud Tipo de clave Nombre del departamento Alfabtico 100 -

+RELACION: Departamento - Impresoras Cardinalidad Moda 1:N 1

+RELACION: Departamento - Usuarios Cardinalidad Moda 1:N 5

98

+++ ENTIDAD: Marcas Definicin Volumen Crecimiento Permanencia Informacin de las marcas de los equipos 15-25 Ocurrencias 5% anual Siempre

+ATRIBUTO: NumMarca Definicin Rango Formato Longitud Tipo de clave Cdigo de la marca 1 al 99999999999 Numrico entero, secuencial 11 Primaria

+ATRIBUTO: NomMarca Definicin Rango Formato Longitud Tipo de clave Nombre de la marca Alfabtico 100 -

+RELACION: Marcas ModCPU Cardinalidad Moda 1:N -

+RELACION: Marcas - ModImp Cardinalidad Moda 1:N -

+RELACION: Marcas - ModMon Cardinalidad Moda 1:N -

99

+++ENTIDAD: ModCPu Definicin Volumen Crecimiento Permanencia Informacin de las modelos de las CPUs 10-155 Ocurrencias 5% anual Siempre

+ATRIBUTO: NumModCPU Definicin Rango Formato Longitud Tipo de clave Cdigo del modelo 1 al 99999999999 Numrico entero, secuencial 11 Primaria

+ATRIBUTO: ModeloCPU Definicin Rango Formato Longitud Tipo de clave Nombre del modelo de CPU Alfabtico 100 -

+ATRIBUTO: NumMarca Definicin Rango Formato Longitud Tipo de clave Cdigo de la marca 1 al 99999999999 Numrico entero 11 Extranjera

+RELACION: Marcas ModCPU Cardinalidad Moda 1:N -

+RELACION: ModCPU - CPUs Cardinalidad Moda 1:N -

100

+++ENTIDAD: ModMon Definicin Volumen Crecimiento Permanencia Informacin de las modelos de los monitores 20-30 Ocurrencias 10% anual Siempre

ATRIBUTO: NumModMon Definicin Rango Formato Longitud Tipo de clave Cdigo del modelo 1 al 99999999999 Numrico entero, secuencial 11 Primaria

+ATRIBUTO: ModeloMon Definicin Rango Formato Longitud Tipo de clave Nombre del modelo de monitor Alfabtico 100 -

+ATRIBUTO: NumMarca Definicin Rango Formato Longitud Tipo de clave Cdigo de la marca 1 al 99999999999 Numrico entero 11 Extranjera

+ATRIBUTO: TipoMon Definicin Rango Formato Longitud Tipo de clave Tipo de tecnologa del monitor [CRT,TFT] Alfabtico 100 -

+ATRIBUTO: Pulgadas Definicin Rango Formato Longitud Tipo de clave Numero de pulgadas de la pantalla 1 al 99999999999 Numrico entero 11 101

+RELACION: Marcas ModMon Cardinalidad Moda 1:N -

+RELACION: ModMon - Monitores Cardinalidad Moda 1. 1:N -

102

+++ENTIDAD: ModImp Definicin Volumen Crecimiento Permanencia Informacin de las modelos de las impresoras 15-25 Ocurrencias 10% anual Siempre

+ATRIBUTO: NumModImp Definicin Rango Formato Longitud Tipo de clave Cdigo del modelo 1 al 99999999999 Numrico entero, secuencial 11 Primaria

+ATRIBUTO: ModeloImp Definicin Rango Formato Longitud Tipo de clave Nombre del modelo de impresora Alfabtico 100 -

+ATRIBUTO: NumMarca Definicin Rango Formato Longitud Tipo de clave Cdigo de la marca 1 al 99999999999 Numrico entero 11 Extranjera

+RELACION: Marcas ModImp Cardinalidad Moda 1:N -

+RELACION: ModImp - Impresoras Cardinalidad Moda 1:N -

103

+++ENTIDAD: CPUs Definicin Volumen Crecimiento Permanencia Informacin de cada CPU individualizada 400-500 Ocurrencias 25-30% Anual Siempre

+ATRIBUTO: ClaveCPU Definicin Rango Formato Longitud Tipo de clave +ATRIBUTO: Serial Definicin Rango Formato Longitud Tipo de clave Numero de serie de la CPU Alfabtico 100 Cdigo de cada CPU 1 al 9999999999 Numrico entero, secuencial 11 Primaria

+ATRIBUTO: NumModCPU Definicin Rango Formato Longitud Tipo de clave +ATRIBUTO: Estado Definicin Rango Formato Longitud Tipo de clave Es el estado en que se encuentra la CPU, alta, baja... [1,2,3,4] Numrico entero 1 Cdigo del modelo 1 al 99999999999 Numrico entero, secuencial 11 Extranjera

+ATRIBUTO: NumUsu Definicin Rango Formato Longitud Tipo de clave Cdigo de usuario 1 al 99999999999 Numrico entero 11 Extranjera.

104

+ATRIBUTO: Uso Definicin Rango Formato Longitud Tipo de clave Uso (y a veces localizacin) que se le da al equipo Alfabtico 100 -

+ATRIBUTO: NomLogico Definicin Rango Formato Longitud Tipo de clave Nombre lgico de la CPU en el sistema Alfabtico 100 -

+ATRIBUTO: Procesador Definicin Rango Formato Longitud Tipo de clave Indica el tipo de procesador de la CPU Alfabtico 100 -

+ATRIBUTO: Velocidad Definicin Rango Formato Longitud Tipo de clave +ATRIBUTO: RAM Definicin Rango Formato Longitud Tipo de clave +ATRIBUTO: Fecha Definicin Rango Formato Longitud Tipo de clave Fecha de creacin del equipo Timestamp 17 Cantidad de memoria RAM de la CPU, en MB 1 al 99999999999 Numrico entero 11 Velocidad de la CPU, en MHz 1 al 99999999999 Numrico entero 11 -

105

+RELACION: Usuarios - CPU Cardinalidad Moda 1:N 1

+RELACION: CPUs - Monitores Cardinalidad Moda 1:N 1

+RELACION: ModCPU - CPU Cardinalidad Moda 1:N -

106

+++ENTIDAD: Monitores Definicin Volumen Crecimiento Permanencia Informacin de cada monitor individualizado 500-600 Ocurrencias 25-30% Anual Siempre

+ATRIBUTO: ClaveMon Definicin Rango Formato Longitud Tipo de clave +ATRIBUTO: Serial Definicin Rango Formato Longitud Tipo de clave Numero de serie del monitor Alfabtico 100 Cdigo de cada monitor 1 al 9999999999 Numrico entero, secuencial 11 Primaria

+ATRIBUTO: NumModMon Definicin Rango Formato Longitud Tipo de clave +ATRIBUTO: Estado Definicin Rango Formato Longitud Tipo de clave Es el estado en que se encuentra el monitor, alta, baja... [1,2,3,4] Numrico entero 1 Cdigo del modelo 1 al 99999999999 Numrico entero, secuencial 11 Extranjera

107

+ATRIBUTO: NumCPU Definicin Rango Formato Longitud Tipo de clave +ATRIBUTO: Fecha Definicin Rango Formato Longitud Tipo de clave Fecha de entrada del monitor en el sistema Timestamp 17 Cdigo de CPU 1 al 99999999999 Numrico entero 11 Extranjera.

+RELACION: CPUs - Monitores Cardinalidad Moda 1:N 1

+RELACION: ModMon - Mon Cardinalidad Moda 1:N -

108

+++ENTIDAD: Impresoras Definicin Volumen Crecimiento Permanencia Informacin de cada impresora individualizada 50-75 Ocurrencias 25-30% Anual Siempre

+ATRIBUTO: ClaveMon Definicin Rango Formato Longitud Tipo de clave +ATRIBUTO: Serial Definicin Rango Formato Longitud Tipo de clave Numero de serie del monitor Alfabtico 100 Cdigo de cada impresora 1 al 9999999999 Numrico entero, secuencial 11 Primaria

+ATRIBUTO: NumModImp Definicin Rango Formato Longitud Tipo de clave +ATRIBUTO: Estado Definicin Rango Formato Longitud Tipo de clave Es el estado en que se encuentra el monitor, alta, baja... [1,2,3,4] Numrico entero 1 Cdigo del modelo 1 al 99999999999 Numrico entero 11 Extranjera

109

+ATRIBUTO: NumDep Definicin Rango Formato Longitud Tipo de clave Cdigo del departamento 1 al 99999999999 Numrico entero 11 Extranjera

+ATRIBUTO: NumUsu Definicin Rango Formato Longitud Tipo de clave Cdigo del usuario 1 al 99999999999 Numrico entero 11 Extranjera

+ATRIBUTO: NomLogico Definicin Rango Formato Longitud Tipo de clave +ATRIBUTO: Fecha Definicin Rango Formato Longitud Tipo de clave Fecha de entrada de la impresora en el sistema Timestamp 17 Nombre lgico de la impresora en las colas de impresin Alfabtico 100 -

+RELACION: Deptos - Impresoras Cardinalidad Moda 1:N 1

+RELACION: Usuarios - Impresoras Cardinalidad Moda 1:N 0

+RELACION: ModImp - Impresoras Cardinalidad Moda 1:N 3

110

+++ENTIDAD: Usuarios Definicin Volumen Crecimiento Permanencia Contiene la informacin individualizada de cada usuario 250 10% Anual Siempre

+ATRIBUTO:NumUsu Definicin Rango Formato Longitud Tipo de clave Cdigo de usuario 1 al 99999999999 Numrico entero, secuencial 11 Primaria.

+ATRIBUTO: NumDep Definicin Rango Formato Longitud Tipo de clave +ATRIBUTO: Estado Definicin Rango Formato Longitud Tipo de clave Es el estado en que se encuentra el usuario, alta o baja [1,4] Numrico entero 1 Cdigo de departamento 1 al 99999999999 Numrico entero 11 Extranjera

+ATRIBUTO: Nombre Definicin Rango Formato Longitud Tipo de clave Nombre de pila del usuario Alfabtico 100 -

111

+ATRIBUTO: Apellidos Definicin Rango Formato Longitud Tipo de clave Apellidos del usuario Alfabtico 100 -

+ATRIBUTO: NomLogico Definicin Rango Formato Longitud Tipo de clave +ATRIBUTO: Email Definicin Rango Formato Longitud Tipo de clave +ATRIBUTO: Tel Definicin Rango Formato Longitud Tipo de clave +ATRIBUTO: Fecha Definicin Rango Formato Longitud Tipo de clave Fecha de creacin del usuario Timestamp 17 Telfono del usuario. Normalmente extensin, 1 o varias. Alfabtico 100 Email del usuario Alfabtico 100 Nombre lgico del usuario en el sistema Alfabtico 100 -

112

+RELACION: Usuarios - CPU Cardinalidad Moda 1:N 1

+RELACION: Usuarios - Impresoras Cardinalidad Moda 1:N 0

+RELACION: Departamentos - Usuarios Cardinalidad Moda 1:N 5

113

+++ENTIDAD: Histrico Definicin Volumen Crecimiento Permanencia Tabla encargada de recoger los datos de modificaciones pasadas Empieza en 0 10 ocurrencias al mes Siempre

+ATRIBUTO: NumClave Definicin Rango Formato Longitud Tipo de clave +ATRIBUTO: Objeto Definicin Rango Formato Longitud Tipo de clave +ATRIBUTO: Tipo Definicin Rango Formato Longitud Tipo de clave +ATRIBUTO: Modif Definicin Rango Formato Longitud Tipo de clave +ATRIBUTO: Fecha Definicin Rango Formato Longitud Tipo de clave Fecha en la que se realiza la modificacin Timestamp 17 Indica el nuevo valor introducido Alfabtico 100 Indica que tipo de modificacin se realiza sobre el objeto [1,2,3,4,5,6,7,8,9,10] Numrico entero 2 Indica el tipo de objeto tratado (Usuario, CPU, Monitor o Impresora) [1,2,3,4] Numrico entero 1 Cdigo del objeto modificado (Usuario, CPU, Monitor o Impresora) 1 al 99999999999 Numrico entero 11 Extranjera

114

Con estos documentos y modelos, damos por concluida la etapa de Diseo, y podemos pasar a la etapa de Implementacin, culminacin del desarrollo del proyecto.

115

2.5 Implementacin
En esta fase explicare como se ejecuto el paso del diseo de la aplicacin a su posterior programacin y, de ah, a su instalacin y puesta en funcionamiento definitiva. Partir como base de las tcnicas bsicas y las herramientas que se utilizaron para la implementacin, para pasar despus a explicar como se estructura el propio cdigo programado, sin exponerlo ms que en ejemplos que se consideren significativos, con la intencin de no sobrecargar la memoria. Se incluir, eso s, la aplicacin con todos sus archivos fuentes en un CD acompaando el texto, por lo que se podr consultar en aquel todo el cdigo desarrollado si se considerara necesario. Por otro lado, adems de lo relativo al cdigo, se definirn algunas de las convenciones empleadas a la hora de programar, y algunas decisiones tomadas respecto al empleo de la base de datos para mejorar el funcionamiento de la propia aplicacin. Y finalmente, se incorporarn en la seccin de apndices manuales de instalacin y uso de la aplicacin que permitirn su implantacin en un nuevo sistema si fuera necesario. 2.5.1 Tcnicas y Herramientas En cuanto a la tcnica empleada, realmente poco se puede aadir a lo que se ha visto hasta ahora en esta memoria. Se decidi emplear un sistema de generacin de modelos siguiendo una metodologa estructurada, aunque empleada de forma evolutiva, volviendo a etapas superadas para completar partes de la aplicacin. Y a partir de los modelos generados, se implemento el sistema a partir de una programacin de pginas web basadas en JSP. El motivo de decantarse por el JSP fue mltiple: por un lado, ya estaba implementada la plataforma adecuada para su uso, y por otro, el lenguaje Java es de fcil empleo, con cdigo fcilmente reutilizable y conocido por varias personas en el departamento susceptibles de tener que realizar un mantenimiento posterior. adems, las facilidades que aporta el HTML y el JavaScript y su ligereza en el equipo cliente resultaban muy adecuadas para la ejecucin de la aplicacin. Para el desarrollo se procur emplear siempre herramientas de software gratuito o contenido en paquetes ya presentes en la empresa. Aparte de lo ya definido en cuanto a la plataforma de implementacin (Apache Tomcat sobre MySQL), las herramientas de desarrollo tambin eran muy accesibles y no implicaron gasto de adquisicin. As, se dispuso de un IDE de desarrollo de software en lenguaje de programacin Java, concretamente NetBeans, en su versin 3.5. adems, y para generar algn diagrama de forma automtica, se empleo Jbuilder X, pero realmente no se aplic el uso de este ltimo ms que excepcionalmente. En cuanto al desarrollo HTML, se emplearon el CoffeeCup y el FrontPage. Todas las pginas jsp, as como el desarrollo del men de la aplicacin, se desarrollaron sobre el primero. El segundo quedo como herramienta opcional para realizar pequeas modificaciones y comprobaciones. Por ultimo, para el desarrollo de la memoria, se emplearon editores de texto (Word sobre todo, y a veces Notepad), generadores de hojas de clculo (Excel) y software generador de modelos y diagramas (Visio y SmartDraw). 116

2.5.2 Estructura del cdigo El cdigo programado se divide en dos tipos, siendo cada uno participe de forma diferente en las distintas capas en las que se estructura la aplicacin. Tenemos por un lado la parte de cdigo generada exclusivamente en Java, encargada de gestionar la conexin de la aplicacin a la base de datos, as como todos los accesos a la misma y las funciones bsicas que luego se llamaran durante la presentacin. Es cdigo que se ejecuta en el servidor para el propio funcionamiento de la aplicacin y para ser llamadas en las diferentes pginas jsp a peticin del usuario. Y por otro lado estn las propias pginas jsp, bsicamente pginas HTML en las que se emplea cdigo Java incrustado para permitir que, a partir de una misma estructura en el servidor, se puedan crear diferentes pginas finales (con diferentes datos) en el cliente. Estas pginas hacen uso tanto de las funciones Java propias de la API facilitada por la maquina virtual instalada como de las funciones que se hayan creado por el usuario y que sean importadas para su empleo. As, tendremos una serie de clases de Java generadas por el usuario y que se emplearan en las pginas jsp. Entre estas clases, algunas sern las que definan los diferentes tipos de elementos con los que trabajaremos (CPUs, Departamentos, Marcas, etc...). Pero adems habr otras dos clases que sern fundamentales en el desarrollo de la aplicacin: la clase ContextListener y la clase InventarioBD. - ContextListener: Permite al servidor de aplicaciones generar un objeto InventarioBD, lo que, explicado de forma somera, arranca la aplicacin web. - InventarioBD: Esta es la clase principal de la aplicacin, y cumple una doble utilidad: genera la conexin con la base de datos e incorpora todas las funciones que se emplearan despus para acceder desarrollar la presentacin de los datos correctamente en el cliente. En cierta forma, InventarioBD incorpora una especie de mini-API de la aplicacin, facilitando los mtodos que permitirn desarrollar despus todas las funciones que finalmente se expresan en las pginas jsp. En cuanto a las pginas jsp, estas se basan en formularios y pginas HTML. Incrustado en estas se encuentra el cdigo Java que es interpretado por el servidor de aplicaciones para generar la salida que se ofrece al cliente. En principio, el cdigo Java aplicado en estas pginas debe servir solo para gestionar la presentacin que se le va a ofrecer al cliente, modificando el contenido de las tablas y formularios HTML generados para incluir en su interior los datos consultados a la base de datos. Pero finalmente, en algunas de las pginas desarrolladas, esto ha sido difcil de cumplir y se tuvo que introducir algo de gestin, aunque procurando siempre que el procesamiento de las pginas fuera lo ms rpido posible. adems, existen casos en los que se decidi que la informacin contenida en la base de datos y que se pasara despus a los objetos de cada tipo estara codificada. Esto ocurre, por ejemplo, en el caso de la determinacin del estado de los diferentes elementos. Se prefiri utilizar un campo numrico, ya que sera un campo empleado para diferentes tipos de elementos (Usuarios, CPUs, etc.) de diferente modo, por lo que los distintos estados de los equipos son un valor numrico que ha de ser transformado en su valor real al formatear los datos de presentacin. As, un estado 1 corresponde al valor real Alta, y debe ser tenido en cuenta al presentar los datos finales, haciendo la conversin necesaria. Definiremos estos casos posteriormente.

117

Como se dijo antes, no creo adecuado mostrar el cdigo de la aplicacin en esta memoria. Pero parece oportuno mostrar una descripcin de las diferentes clases. Y aunque el desarrollo de la aplicacin no se ha realizado siguiendo una metodologa UML, he considerado que este tipo de diagramas son los ms adecuados para mostrar los atributos y funciones de cada clase de un golpe de vista. Tendremos: Clase ContextListener:

Clase Departamento:

Clase Marca:

118

Clase Modelo de CPU:

Clase Modelo de Impresora:

Clase Modelo de Monitor:

Clase CPU:

119

Clase Monitor:

Clase Impresora:

Clase Usuario:

Clase Histrico:

120

Clase InventarioBD:

Como se puede observar, la clase InventarioBD esta repleta de funciones que se pueden aplicar para acceder a la base de datos y acceder a diferentes elementos segn sea necesario para la presentacin final. Lo cierto es que alguno de los mtodos que aparecen en el diagrama estn obsoletos y han sido sustituidos por otros mtodos ms completos que se desarrollaron despus, pero se decidi no retirarlos de la clase por si resultan tiles en posteriores desarrollos.

121

2.5.3 Ejemplos de cdigo Ya se indico antes que no se mostrara todo el cdigo de la aplicacin, pero que se explicaran algunos ejemplos de la misma. Se desarrollaran tres ejemplos de cmo se han empleado las funciones implementadas. Para ello se emplearan secciones de cdigo que se consideren representativas de la aplicacin: 1. Cdigo de acceso a los datos de todas las CPUs que cumplen una determinada condicin (funcin getCpusFinal(), de la clase InventarioBD): --------------------------------------------------------------------------------------------------public ArrayList getCpusFinal (String clausulaWhere) { cpus = new ArrayList (); try { this.getConnection (); PreparedStatement preparedStatement = this.connection.prepareStatement ("SELECT * FROM cpusfinal " + clausulaWhere); ResultSet resultSet = preparedStatement.executeQuery (); while (resultSet.next ()) { Cpu cpu = new Cpu( resultSet.getInt (1), resultSet.getString (2), resultSet.getInt (3), resultSet.getInt (4), resultSet.getInt(5), resultSet.getString (6), resultSet.getString (7), resultSet.getInt(8), resultSet.getInt (9), resultSet.getString (10),resultSet.getTimestamp (11)); cpus.add(cpu); } preparedStatement.close (); } catch (SQLException e) { return null; } this.releaseConnection (); return cpus; } --------------------------------------------------------------------------------------------------La funcin recibe una clusula SQL conteniendo las condiciones segn las cuales se realizar la bsqueda y devuelve un objeto (cpus) del tipo ArrayList conteniendo todas las CPUs que cumplen la condicin. La secuencia de cdigo hace lo siguiente: - Abrir la conexin con la base de datos (this.getConnection()). - Preparar la sentencia, incorporando la clausula de condicin recibida a la parte de la sentencia que escoge la tabla sobre la que consultamos (preparedStatement). - Recoger el resultado (resultSet) y recorrerlo (resultSet.next()) generando tantas CPUs como sean necesarias, aadindolas en el ArrayList (cpus.add(cpu)). - Devuelve el objeto ArrayList con todas las CPUs (cpus), o NULL si ha habido error. Esta funcin es un ejemplo de cmo se han realizado las consultas sobre las tablas, generando mtodos de acceso a diferentes tablas segn se precisase.

122

2. Cdigo inserto en una pgina jsp en el que se indica como se recogen los parmetros que pasa la pgina anterior y como se accede a las funciones de InventarioBD (extracto de la pgina Consultar_ModCPU.jsp): --------------------------------------------------------------------------------------------------InventarioBD inventarioBD = (InventarioBD) application.getAttribute ("Inventario"); ArrayList mods; int id_marca = Integer.parseInt(request.getParameter("marca").trim()); if (id_marca == 0) { mods = inventarioBD.getModCPUs(" ORDER BY NumMarca "); } else { String clausula = " WHERE NumMarca = " + id_marca + " ORDER BY NumModCPU "; mods = inventarioBD.getModCPUs(clausula); } --------------------------------------------------------------------------------------------------La funcin recoge los parmetros de filtro de la pgina anterior y genera diferentes consultas en funcin de estos. En este caso es la seleccin de modelos de CPU, que se realiza en funcin de la marca del modelo. La secuencia de cdigo hace lo siguiente: Crear un objeto de la clase InventarioBD (inventarioBD) para acceder a sus mtodos. Crear un objeto ArrayList de modelos (mods). Recoger el parmetro marca de la pgina anterior (request.getParameter("marca")), convirtindolo en el tipo de dato que le corresponde (Integer.parseInt()), y asignndoselo a la variable id_marca. Comprobar si pide todas las marcas (valor de marca 0) o solo una en concreto (cualquier valor distinto de 0) Generar la consulta. He escogido este fragmento de cdigo porque incluye ejemplos de cmo se ha realizado el paso de parmetros de una pgina a otra (en funcin del nombre pasado por la pgina anterior, en este caso, marca) y como, segn los parmetros recibidos, se puede generar un tipo de consulta u otro. En el caso de otros elementos (Usuarios, CPUs, etc...) la consulta debe tener en cuenta muchos otros parmetros sobre los que filtrar, pero el desarrollo es muy similar. Simplemente, se acumula sobre una variable de tipo String todas las condiciones de filtro que se van aadiendo y que se han recibido de la pgina anterior, y se pasa posteriormente la consulta generada en su conjunto desde el propio jsp. En este caso el cdigo explicado sirve solo para el acceso a los datos. Posteriormente, hay parte de cdigo que se encarga de la presentacin de los mismos. Esto se hace de forma que una vez recibida la consulta, se examina si esta contiene algn elemento o no, y se genera una tabla sobre la que cada elemento consultado es una lnea a presentar. Se da por supuesto que entre el cdigo Java, estn las etiquetas HTML que crean la tabla, sus filas, etc.

123

3. Cdigo inserto en una pgina jsp que permite realizar bsquedas de monitor por departamento: --------------------------------------------------------------------------------------------------String clausers= "WHERE NumUsu IN ("; if (request.getParameter("depto") != null) { int depto = Integer.parseInt(request.getParameter("depto").trim()); if (depto != 0) { ArrayList usuarios = inventarioBD.getUsuariosFinal("WHERE NumDep = " + String.valueOf(depto)); if( (usuarios != null) && !usuarios.isEmpty() ) { for( int i = 0 ; i < usuarios.size() ; i++) { Usuario usu = (Usuario) usuarios.get (i); clausers= clausers + String.valueOf(usu.getNumero()) + ","; } clausers = clausers + "-1) "; ArrayList cpus = inventarioBD.getCPUsFinal(clausers); if( (cpus != null) && !cpus.isEmpty() ) { clausula = clausula + " AND NumCPU IN ("; for( int i = 0 ; i < cpus.size() ; i++) { Cpu cpu = (Cpu) cpus.get(i); clausula = clausula + String.valueOf(cpu.getClave()) + ","; } clausula = clausula + "-1) "; } } } } --------------------------------------------------------------------------------------------------Antes de explicar esta funcin , es preciso explicar su funcin y porque se implemento. Este fragmento de cdigo permite realizar consultas de monitores en funcin del departamento al que pertenecen. Pero el departamento no es un campo de la tabla de monitores, y para acceder a el hay que hacerlo a travs del usuario dueo de la CPU a la que se conecta el monitor. Esto en principio se puede realizar de forma muy simple a travs de consultas subordinadas. Pero la versin de MySQL empleada no las permite, por lo que es necesario desarrollar el cdigo que facilite esa consulta.

124

En el cdigo empleado hay variables que no aparecen inicializadas. La ms importante de estas variables es clausula, que es un objeto de tipo String que recoge la clausula que se emitir despus para seleccionar los monitores. No se inicializa aqu porque es una variable que se usa en el filtrado de todos los parmetros del monitor, y debe ir pasando por todos los parmetros antes y despus de el departamento. La secuencia de cdigo hace lo siguiente: - Comprobar que el parmetro por el que se filtra (depto) tiene un valor valido. - Insertar su valor en una variable (request.getParameter("depto")). - Buscar los usuarios de ese departamento incluyndolos en un ArrayList (usuarios). - Recorrer el ArrayList usuarios recogiendo su cdigo de usuario para meterlo en un objeto String llamado clausers. Con esto tenemos todos los usuarios de un departamento en clausers. - Buscar las CPUs de esos usuarios incluyndolas en un ArrayList (cpus). - Recorrer el ArrayList cpus recogiendo todos sus cdigos de CPU para meterlo en el String clausula. Con esto tenemos todos los CPUs del departamento. - Posteriormente se empleara la clausula generada as como filtro, sumndole los que se generen de otros parmetro, de forma que se busquen los monitores que cumplan las condiciones seleccionadas y cuyo numero de CPU (que si es un atributo suyo) este en los incluidos en clausula. Y esto si se puede hacer con una nica consulta (sin SELECTs subordinadas). 2.5.4 Detalles de implementacin Como se expuso al comienzo del capitulo, existen algunos detalles en la implementacin de la aplicacin que es necesario comentar. Entre estos detalles, est la codificacin de algunas opciones de la base de datos como datos numricos. Tendremos las siguientes conversiones: 1. Conversin de tipos de elementos: A la hora de realizar modificaciones o actualizaciones e insertar estas en la tabla de Histricos, es necesario definir un tipo de elemento sobre el que se acta. Las modificaciones se pueden realizar tanto sobre usuarios como sobre CPUs, monitores o impresoras (ni marcas, ni departamentos, ni modelos permiten actualizaciones), por lo que se asigna: 1. Impresoras 2. CPUs 3. Monitores 4. Usuario 2. Conversin de los estados de un elemento: Tanto usuarios como CPUs, impresoras o monitores tienen un estado que lo sita como en uso o de alta, dado de baja, en reparacin o almacenado (evidentemente, estas dos ultimas no se aplican a los usuarios). Se asigna: 1. De alta / En uso 2. Almacenado 3. reparacin 4. Dado de baja.

125

3. Conversin de los tipos posibles de actualizaciones: A la hora de completar el histrico, se pueden tener diferentes tipos de modificaciones. Algunos tipos se comparten por varios elementos, otros no, as que se decidi darles valores numricos a cada tipo de modificacin: 1. Cambio de estado (usuarios, CPUs, monitores e impresoras). 2. Cambio de usuario (para los tres elementos HW) 3. Cambio de nombre lgico (para impresoras y CPUs) 4. Cambio de RAM (CPUs). 5. Cambio de procesador (CPUs). 6. Cambio de departamento (usuarios). 7. Cambio de CPU asignada (monitores). 8. Cambio de la velocidad del procesador (CPUs). 9. Cambio del email (usuarios) 10. Cambio del telfono (usuarios) 11. Cambio de uso (CPUs) Aparte de este tipo de asignaciones, es importante mencionar como se utiliza el histrico de actualizaciones y la implicacin que esto tiene sobre la base de datos. La tabla de datos histricos es nica para todos los tipos de elementos que pueden sufrir modificaciones. Su estructura es tal que solo le hace falta recoger el cdigo del elemento actualizado, su tipo de elemento, el tipo de modificacin y el nuevo valor introducido, as como la fecha. Con ello se evita tener varias tablas para los diferentes elementos, y facilita adems la programacin, pues no es preciso desarrollar funciones para la consulta de cada tipo de histrico. En un principio, se pens hacer un histrico que recogiera los cambios de forma que al solicitar cada equipo se recogieran los valores con los que se incluyo en el sistema y, consultando el histrico, se reconstruyera su estado final. Pero tras generar el cdigo que haca esto, se determino que el sistema era poco eficiente. Sobre todo porque a la hora de hacer listados de muchos equipos o usuarios se aumentaba en gran manera el numero de consultas necesarias para generar su estado final. Despus se pens en la va contraria, mantener el estado final y reconstruir el original a travs del histrico cuando fuera necesario. Pero tras analizar la situacin tampoco pareci una buena idea, pues realizar consultas histricas tambin resultaba costoso. Al final la decisin que se implemento fue la de duplicar las tablas de CPUs, monitores, impresoras y usuarios en la base de datos, de forma que se pudiera acceder directamente a los estados iniciales y finales de los equipos. Lo cual adems facilitaba la tarea de obtener el histrico. Aunque parezca una decisin poco limpia, pues no solo redunda datos sino que prcticamente redunda tablas enteras, lo cierto es que el consumo de espacio que hace la base de datos de todos los elementos es mnimo (algo ms de 200 KB al cargar todos los datos, con las tablas duplicadas), por lo que se determino que era la forma ms til, y as se desarrollo.

126

2.4.5 Implantacin final y conclusiones Tras el desarrollo de las funciones y las pginas jsp, se empez a probar la aplicacin por los miembros del departamento en enero de 2006. Las pruebas no siguieron ningn modelo ni fueron diseadas como tales, por lo que no se incluyen aparte en esta memoria. Fruto de las pruebas iniciales fue la decisin de ampliar la aplicacin con el desarrollo de las Relaciones, tal y como se ha venido comentando a lo largo de toda la memoria. Se realizo en una segunda fase de anlisis y diseo que se culmino con el desarrollo de un nuevo modulo incorporado a la aplicacin. Otras pequeas modificaciones tambin fueron fruto de las pruebas realizadas, pero afectan a aspectos menores como detalles de diseo de pginas y tablas o adicin de algunos parmetros de bsqueda. La implementacin final se realizo en el mes de febrero de 2006. Para realizar la instalacin, se incorpora en esta memoria un manual de instalacin que esta incluido en los apndices de la misma, junto con el manual de usuario. La aplicacin lleva funcionando desde entonces sin problemas mayores, sujeta a mi mantenimiento, que se ha limitado a corregir algunos bugs encontrados muy infrecuentemente. Las conclusiones obtenidas del desarrollo de la aplicacin fueron por tanto positivas. Se cumplieron la mayora de los objetivos planteados al iniciar la planificacin de la misma y todos los requerimientos aparecidos durante el anlisis. La aplicacin sirve no solo para crear un sistema de gestionar el inventario de muchos elementos de los cuales no se tenia ni registro, sino que adems facilita el acceso a los equipos cuando surge cualquier incidencia, estableciendo una forma de localizarlos ms rpida para acceder a ellos remotamente. Cubre en cierta medida varias necesidades del departamento de Organizacin y Sistemas. Y adems, personalmente, me ha servido para profundizar en mis conocimientos en varias tecnologas, iniciarme en el HTML y dar un primer paso en la programacin de aplicaciones web que probablemente pueda resultarme til a mi y a mis compaeros en prximos proyectos.

127

128

Apndices

129

A.1. Diccionario de datos del Modelo Fsico Actual


Nombre
Alta impresora

Localizacin
DFD1.2

Definicin
Flujo de datos Flujo de datos Flujo de datos Flujo de datos Flujo de datos

Descripcin
Datos de una nueva impresora

Alta usuario

DFD1.3

Contiene los datos de alta de un usuario Contiene los datos de baja de un usuario

Baja usuario

DFD1.3

Consulta usuarios CPUs consultadas

DFD1.3

Consulta sobre un usuario concreto

DFD1.1

Contiene los datos de una o una serie de CPUs para consultar. Proceso manual de insercin de datos en el Directorio Activo para dar de alta un usuario Proceso que se encarga de dar de baja usuarios del Directorio Activo Flujo de datos que contiene una seleccin de los datos contenidos en el almacn de CPUs Flujo que renueva peridicamente todos los datos de las CPUs. Flujo con la peticin y los datos de insercin de una nueva impresora. Surge de la explosin del flujo Entrada datos impresoras Flujo que solicita la baja de una impresora concreta almacn de los datos de inventario de parte de los equipos, en formato de texto almacn que contiene un listado recopilado manualmente de las impresoras de la empresa.

Dar de alta usuario

DFD1.3

Proceso

Dar de baja usuario

DFD1.3

Proceso

Datos a consultar CPU

DFD1.1

Flujo de datos

Datos a insertar CPU

DFD1.1

Flujo de datos

Datos alta impresora

DFD1.2

Flujo de datos

Datos baja impresora

DFD1.2

Flujo de datos

Datos CPUs

DFD1.1

Almacn de datos

Datos Impresoras

DFD1.2

almacn de datos

130

Nombre
Directorio Activo

Localizacin
DFD1.3

Definicin
almacn de datos

Descripcin
Directorio Activo. almacn con los datos de los usuarios del sistema Proceso ejecutable de forma manual o automtica que ejecuta una aplicacin capaz de obtener datos de equipos de una determinada red. Proceso manual que ejecuta la eliminacin de una impresora Flujo que incorpora los datos de entrada para la gestin de CPUs, incluyendo sus altas y las consultas que se deseen hacer. Flujo que incorpora los datos de entrada para la gestin de impresoras, incluyendo sus altas y las consultas que se deseen hacer. Flujo que incorpora los datos de entrada para la gestin de usuarios, incluyendo sus altas y las consultas que se deseen hacer. Es el conjunto de los datos de entrada del sistema Proceso manual asistido por ordenador de filtrar los datos contenidos en el almacn de datos. Proceso manual de bsqueda de impresoras. Proceso manual que filtra las consultas de los usuarios del Directorio Activo Es el proceso general de gestin del inventario. Explosiona en el resto de procesos del sistema. Proceso que define la forma actual de gestionar las CPUs Proceso que define la forma actual de gestionar las impresoras

Ejecutar aplicacin inventario

DFD1.1

Proceso

Eliminar impresora

DFD1.2

Proceso

Entrada datos CPUs

DFD1, DFD1.1

Flujo de datos

Entrada datos impresoras

DFD1

Flujo de datos

Entrada datos usuarios

DFD1

Flujo de datos

Entrada de datos

DFD0

Flujo de datos

Filtrar Datos CPU

DFD1.1

Proceso

Filtrar Impresoras

DFD1.2

Proceso

Filtrar usuarios

DFD1.3

Proceso

Gestin de Inventario

DFD0

Proceso

Gestionar CPUs Gestionar Impresoras

DFD1

Proceso

DFD1

Proceso

131

Nombre
Gestionar usuarios Impresoras consultadas

Localizacin
DFD1

Definicin
Proceso

Descripcin
Proceso que define la forma actual de gestionar los usuarios. Conjunto de impresoras solicitadas para ser filtradas y formateadas. Proceso manual de insercin de datos de una nueva impresora en el almacn de impresoras. Contiene la peticin de alta de un nuevo usuario, y sus datos Contiene la peticin de baja de un nuevo usuario, y sus datos Es la peticin que realiza el usuario para ejecutar la aplicacin de inventario. Es el conjunto de datos de salida sobre CPUs del sistema

DFD1.2

Flujo de datos

Insertar impresora

DFD1.2

Proceso

peticin de alta usuario peticin de baja usuario

DFD1.3

Flujo de datos Flujo de datos

DFD1.3

peticin inventario

DFD0, DFD1, DFD1.1

Flujo de datos

Salida de datos CPUs Salida de datos impresoras Salida de datos usuarios Solicitud consulta impresora Usuario consultado

DFD0, DFD1, DFD1.1

Flujo de datos

DFD0, DFD1, DFD1.2

Flujo de datos

Es el conjunto de datos de salida sobre impresoras del sistema

DFD0, DFD1, DFD1.3

Flujo de datos

Es el conjunto de datos de salida sobre usuarios del sistema

DFD1.2

Flujo de datos

Flujo que solicita la bsqueda de una o una serie de impresoras

DFD1.3

Flujo de datos Entidad Externa

Datos totales de un usuario consultado Son los usuarios del sistema, los que lo emplean y mantienen

Usuarios

DFD0

132

A.2. Diccionario de datos del Modelo Lgico Nuevo


Nombre Localizacin Definicin
Flujo de datos

Descripcin
Recoge la consulta que se realiza sobre las CPUs Recoge la consulta que se realiza sobre los departamentos Recoge la consulta que se realiza sobre las impresoras Recoge la consulta que se realiza sobre las marcas Recoge la consulta que se realiza sobre los modelos Recoge la consulta que se realiza sobre los monitores Recoge la consulta que se realiza sobre los usuarios Proceso encargado de realizar consultas genricas sobre CPUs en funcin de distintos parmetros y variables configurables. Proceso encargado de realizar consultas genricas sobre departamentos en funcin de distintos parmetros y variables configurables.

Consulta CPUs

DFD1.1.3

Consulta Deptos

DFD1.2.2

Flujo de datos

Consulta Impresoras

DFD1.1.5

Flujo de datos

Consulta Marcas

DFD1.1.1

Flujo de datos

Consulta Modelos

DFD1.1.2

Flujo de datos

Consulta Monitores

DFD1.1.4

Flujo de datos

Consulta Usuarios

DFD1.2.1

Flujo de datos

Consultar CPU

DFD1.1.3

Proceso

Consultar Depto

DFD1.2.2

Proceso

133

Nombre

Localizacin

Definicin

Descripcin
Proceso encargado de realizar consultas genricas sobre impresoras en funcin de distintos parmetros y variables configurables. Proceso encargado de realizar consultas genricas sobre marcas en funcin de distintos parmetros y variables configurables. Proceso encargado de realizar consultas genricas sobre modelos en funcin de distintos parmetros y variables configurables. Proceso encargado de realizar consultas genricas sobre monitores en funcin de distintos parmetros y variables configurables. Proceso encargado de realizar consultas genricas sobre usuarios en funcin de distintos parmetros y variables configurables. Proceso que se encarga de corregir los datos mal insertados de las CPUs.

Consultar Impresora

DFD1.1.5

Proceso

Consultar Marca

DFD1.1.1

Proceso

Consultar Modelo

DFD1.1.2

Proceso

Consultar Monitor

DFD1.1.4

Proceso

Consultar Usuario

DFD1.2.1

Proceso

Corregir CPU

DFD1.1.3

Proceso

134

Nombre

Localizacin

Definicin

Descripcin
Proceso que se encarga de corregir los datos mal insertados de los departamentos. Proceso que se encarga de corregir los datos mal insertados de las impresoras. Proceso que se encarga de corregir los datos mal insertados de las marcas. Proceso que se encarga de corregir los datos mal insertados de los modelos. Proceso que se encarga de corregir los datos mal insertados de los monitores. Proceso que se encarga de corregir los datos mal insertados de los usuarios. Recoge la informacin de una CPU corregida. Recoge la informacin necesaria para crear una CPU. Recoge la informacin de una CPU previamente buscada.

Corregir Depto

DFD1.2.2

Proceso

Corregir Impresora

DFD1.1.5

Proceso

Corregir Marca

DFD1.1.1

Proceso

Corregir Modelo

DFD1.1.2

Proceso

Corregir Monitor

DFD1.1.4

Proceso

Corregir Usuario

DFD1.1.4

Proceso

CPU Corregida

DFD1.1.3

Flujo de datos

CPU Creada

DFD1.1.3

Flujo de datos

CPU Localizada

DFD1.1.3, DFD1.3

Flujo de datos

135

Nombre

Localizacin

Definicin

Descripcin
Recoge la informacin de una CPU modificada o dada de baja. Recoge los datos consultados sobre las CPUs para su formateo. Recoge la peticin al sistema de alta de una CPU Recoge la peticin al sistema de alta de un departamento Recoge la peticin al sistema de alta de una impresora Recoge la peticin al sistema de alta de una marca Recoge la peticin al sistema de alta de un modelo Recoge la peticin al sistema de alta de un monitor Recoge la peticin al sistema de alta de un usuario Recoge la peticin de consultas respecto a las CPUs. Recoge la peticin de consultas respecto a los departamentos.

CPU modificada/eliminada

DFD1.1.3

Flujo de datos

CPUs Consultadas

DFD1.1.3, DFD1.1, DFD1Bis, DFD1

Flujo de datos

Datos Alta CPU

DFD1.1.3

Flujo de datos

Datos Alta Depto

DFD1.2.2

Flujo de datos

Datos Alta Impresora

DFD1.1.5

Flujo de datos

Datos Alta Marca

DFD1.1.1

Flujo de datos

Datos Alta Modelo

DFD1.1.2

Flujo de datos

Datos Alta Monitor

DFD1.1.4

Flujo de datos

Datos Alta Usuario

DFD1.2.1

Flujo de datos

Datos Consulta CPUs

DFD1.1.3

Flujo de datos

Datos Consulta Deptos

DFD1.2.2

Flujo de datos

136

Nombre

Localizacin

Definicin

Descripcin
Recoge la peticin de consultas respecto a las impresoras. Recoge la peticin de consultas respecto a las marcas. Recoge la peticin de consultas respecto a los modelos. Recoge la peticin de consultas respecto a los monitores. Recoge la peticin de consultas respecto a los usuarios. Recoge la peticin de corregir una CPU localizada Recoge la peticin de corregir un departamento localizado Recoge la peticin de corregir una impresora localizada Recoge la peticin de corregir una marca localizada Recoge la peticin de corregir un modelo localizado Recoge la peticin de corregir un monitor localizada

Datos Consulta Impresora

DFD1.1.5

Flujo de datos

Datos Consulta Marcas

DFD1.1.1

Flujo de datos

Datos Consulta Modelos

DFD1.1.2

Flujo de datos

Datos Consulta Monitores

DFD1.1.4

Flujo de datos

Datos Consulta Usuarios

DFD1.2.1

Flujo de datos

Datos Correccin CPU

DFD1.1.3

Flujo de datos

Datos Correccin Depto

DFD1.2.2

Flujo de datos

Datos Correccin Impresora

DFD1.1.5

Flujo de datos

Datos Correccin Marca

DFD1.1.1

Flujo de datos

Datos Correccin Modelo

DFD1.1.2

Flujo de datos

Datos Correccin Monitor

DFD1.1.4

Flujo de datos

137

Nombre
Datos Correccin Usuario

Localizacin

Definicin
Flujo de datos

Descripcin
Recoge la peticin de corregir un usuario localizada Es el flujo de datos inicial del que derivan todos los dems. Se descompone en diferentes peticiones de altas y bajas, correcciones y modificaciones, y entrada de datos para ejecutar estas, as como las peticiones para localizar y consultar los datos del inventario. Representa todos los informes y consultas ya formateadas que se pueden extraer del sistema. Flujo que recoge una actualizacin sobre cualquiera de los elementos del inventario y lo pasa al almacn de datos histricos Recoge la peticin para localizar a una CPU. Recoge la peticin para localizar a un departamento. Recoge la peticin para localizar a una impresora. Recoge la peticin para localizar a una marca.

DFD1.2.1

Datos de Entrada

DFD0

Flujo de datos

Datos de Salida

DFD0, DFD1

Flujo de datos

Datos Histrico

DFD1.1.3. DFD1.1.4, DFD1.1.5, DFD1.2.1

Flujo de datos

Datos Localizacin CPU

DFD1.1.3

Flujo de datos

Datos Localizacin Depto

DFD1.2.2

Flujo de datos

Datos Localizacin Impresora

DFD1.1.5

Flujo de datos

Datos Localizacin Marca

DFD1.1.1

Flujo de datos

138

Nombre
Datos Localizacin Modelo

Localizacin

Definicin
Flujo de datos

Descripcin
Recoge la peticin para localizar a un modelo. Recoge la peticin para localizar a un monitor. Recoge la peticin para localizar a un usuario. Recoge la peticin para modificar o eliminar una CPU. Recoge la peticin para modificar o eliminar una impresora. Recoge la peticin para modificar o eliminar un monitor. Recoge la peticin para modificar o eliminar un usuario Recoge la informacin de un departamento corregido. Recoge la informacin necesaria para crear un departamento. Recoge la informacin de un departamento previamente buscado. Recoge los datos consultados sobre los departamentos para su formateo.

DFD1.1.2

Datos Localizacin Monitor

DFD1.1.4

Flujo de datos

Datos Localizacin Usuario

DFD1.2.1

Flujo de datos

Datos Modificacin CPU

DFD1.1.3

Flujo de datos

Datos Modificacin Impresora

DFD1.1.5

Flujo de datos

Datos Modificacin Monitor

DFD1.1.4

Flujo de datos

Datos Modificacin Usuario

DFD1.2.1

Flujo de datos

Depto Corregido

DFD1.2.2

Flujo de datos

Depto Creado

DFD1.2.2

Flujo de datos

Depto Localizado

DFD1.2.2

Flujo de datos

Deptos Consultados

DFD1.2.2, DFD1.1, DFD1Bis, DFD1

Flujo de datos

139

Nombre

Localizacin

Definicin

Descripcin
Proceso general de la bsqueda de relaciones. Explosiona en el DFD1.3 Flujo de datos que proviene de la explosin del flujo de datos Entrada Datos Equipos (DFD1) Flujo de datos que proviene de la explosin del flujo de datos Entrada Datos Entidades (DFD1) Flujo de datos que proviene de la explosin del flujo de datos Datos de Entrada (DFD0) Flujo de datos que proviene de la explosin del flujo de datos Datos de Entrada (DFD0) Flujo de datos que proviene de la explosin del flujo de datos Entrada Datos Equipos (DFD1) Flujo de datos que proviene de la explosin del flujo de datos Entrada Datos Equipos (DFD1) Flujo de datos que proviene de la explosin del flujo de datos Entrada Datos Equipos (DFD1)

Encontrar Relaciones

DFD1

Proceso

Entrada Datos CPUs

DFD1.1

Flujo de datos

Entrada Datos Deptos

DFD1.2

Flujo de datos

Entrada Datos Entidades

DFD1

Flujo de datos

Entrada Datos Equipos

DFD1

Flujo de datos

Entrada Datos Impresoras

DFD1.1

Flujo de datos

Entrada Datos Marcas

DFD1.1

Flujo de datos

Entrada Datos Modelos

DFD1.1

Flujo de datos

140

Nombre

Localizacin

Definicin

Descripcin
Flujo de datos que proviene de la explosin del flujo de datos Entrada Datos Equipos (DFD1) Flujo de datos que proviene de la explosin del flujo de datos Entrada Datos Entidades (DFD1) Es el proceso encargado de formatear los datos de las consultas para emitir los diferentes tipos de salidas que pueden recibir los usuarios. Es el conjunto de procesos que realiza el sistema. Proceso de gestin general de las CPUs. Explosiona en el DFD1.1.3 Proceso de gestin general de los departamentos. Explosiona en el DFD1.2.2 Proceso general de la gestin de entidades personales. Explosiona en el DFD1.2 Proceso general de la gestin de equipos. Explosiona en el DFD1.1

Entrada Datos Monitores

DFD1.1

Flujo de datos

Entrada Datos Usuarios

DFD1.2

Flujo de datos

Formatear Datos

DFD1, DFD1Bis

Proceso

Gestin de Inventario

DFD0

Proceso

Gestionar CPUs

DFD1.1

Proceso

Gestionar Deptos

DFD1.2

Proceso

Gestionar Entidades

DFD1

Proceso

Gestionar Equipos

DFD1

Proceso

141

Nombre

Localizacin

Definicin

Descripcin
Proceso de gestin general de las impresoras. Explosiona en el DFD1.1.5 Proceso de gestin general de las marcas. Explosiona en el DFD1.1.1 Proceso de gestin general de los modelos. Explosiona en el DFD1.1.2 Proceso de gestin general de los monitores. Explosiona en el DFD1.1.4 Proceso de gestin general de los usuarios. Explosiona en el DFD1.2.1 Recoge la informacin de una CPU corregida. Recoge la informacin necesaria para crear una impresora. Recoge la informacin de una Impresora previamente buscada. Recoge la informacin de una impresora modificada o dada de baja.

Gestionar Impresoras

DFD1.1

Proceso

Gestionar Marcas

DFD1.1

Proceso

Gestionar Modelos

DFD1.1

Proceso

Gestionar Monitores

DFD1.1

Proceso

Gestionar Usuarios

DFD1.2

Proceso

Impresora Corregida

DFD1.1.5

Flujo de datos

Impresora Creada

DFD1.1.5

Flujo de datos

Impresora Localizada

DFD1.1.5, DFD1.3

Flujo de datos

Impresora modificada/eliminada

DFD1.1.5

Flujo de datos

142

Nombre

Localizacin

Definicin

Descripcin
Recoge los datos consultados sobre las impresoras para su formateo. Proceso encargado de localizar CPUs concretas para realizar correcciones de sus datos, o actualizacionesbajas. Proceso encargado de localizar departamentos concretos para realizar correcciones de sus datos, o actualizacionesbajas. Proceso encargado de localizar impresoras concretas para realizar correcciones de sus datos, o actualizacionesbajas. Proceso encargado de localizar marcas concretas para realizar correcciones de sus datos, o actualizacionesbajas. Proceso encargado de localizar modelos concretos para realizar correcciones de sus datos, o actualizacionesbajas.

Impresoras Consultadas

DFD1.1.5, DFD1.1, DFD1Bis, DFD1

Flujo de datos

Localizar CPU

DFD1.1.3

Proceso

Localizar Depto

DFD1.2.2

Proceso

Localizar Impresora

DFD1.1.5

Proceso

Localizar Marca

DFD1.1.1

Proceso

Localizar Modelo

DFD1.1.2

Proceso

143

Nombre

Localizacin

Definicin

Descripcin
Proceso encargado de localizar monitores concretos para realizar correcciones de sus datos, o actualizacionesbajas. Proceso encargado de localizar usuarios concretos para realizar correcciones de sus datos, o actualizacionesbajas. Recoge la informacin de una marca corregida. Recoge la informacin necesaria para crear un marca. Recoge la informacin de una marca previamente buscada. Recoge los datos consultados sobre las marcas para su formateo. Recoge la informacin de un modelo corregido. Recoge la informacin necesaria para crear un modelo. Recoge la informacin de un modelo previamente buscada.

Localizar Monitor

DFD1.1.4

Proceso

Localizar Usuario

DFD1.2.1

Proceso

Marca Corregida

DFD1.1.1

Flujo de datos

Marca Creada

DFD1.1.1

Flujo de datos

Marca Localizada

DFD1.1.1

Flujo de datos

Marcas Consultadas

DFD1.1.1,DFD1.1,DFD1Bis, DFD1

Flujo de datos

Modelo Corregido

DFD1.1.2

Flujo de datos

Modelo Creado

DFD1.1.2

Flujo de datos

Modelo Localizado

DFD1.1.2

Flujo de datos

144

Nombre

Localizacin

Definicin

Descripcin
Recoge los datos consultados sobre los modelos para su formateo. Proceso que se encarga de actualizar los datos de una CPU segn se producen cambios en su situacin, o bien darle de baja. Proceso que se encarga de actualizar los datos de una impresora segn se producen cambios en su situacin, o bien darle de baja. Proceso que se encarga de actualizar los datos de un monitor segn se producen cambios en su situacin, o bien darle de baja. Proceso que se encarga de actualizar los datos de un usuario segn se producen cambios en su situacin, o bien darle de baja. Recoge la informacin de un monitor corregido. Recoge la informacin necesaria para crear un monitor.

Modelos Consultados

DFD1.1.2,DFD1.1,DFD1Bis, DFD1

Flujo de datos

Modificar o Eliminar CPU

DFD1.1.3

Proceso

Modificar o Eliminar Impresora

DFD1.1.5

Proceso

Modificar o Eliminar Monitor

DFD1.1.4

Proceso

Modificar o Eliminar Usuario

DFD1.1.4

Proceso

Monitor Corregido

DFD1.1.4

Flujo de datos

Monitor Creado

DFD1.1.4

Flujo de datos

145

Nombre

Localizacin

Definicin

Descripcin
Recoge la informacin de un monitor previamente buscado. Recoge la informacin de un monitor modificado o dado de baja. Recoge los datos consultados sobre los monitores para su formateo. Recoge los datos consultados sobre los usuarios para su formateo. Proceso encargado de localizar las relaciones de una CPU. Proceso encargado de localizar las relaciones de un monitor. Proceso encargado de localizar las relaciones de un usuario. Contiene las relaciones obtenidas para una CPU. Contiene las relaciones obtenidas para un monitor. Contiene las relaciones obtenidas para un usuario.

Monitor Localizado

DFD1.1.4, DFD1.3

Flujo de datos

Monitor modificado/eliminado

DFD1.1.4

Flujo de datos

Monitores Consultadas

DFD1.1.4, DFD1.1, DFD1Bis, DFD1

Flujo de datos

Monitores Usuarios

DFD1.2.1, DFD1.1, DFD1Bis, DFD1

Flujo de datos

Relacionar por CPU

DFD1.3

Proceso

Relacionar por Monitor

DFD1.3

Proceso

Relacionar por Usuario

DFD1.3

Proceso

Relaciones CPU

DFD1.3 ,DFD1Bis

Flujo de datos

Relaciones Monitor

DFD1.3, DFD1Bis

Flujo de Datos

Relaciones Usuario

DFD1.3, DFD1Bis

Flujo de datos

146

Nombre

Localizacin

Definicin

Descripcin
Proceso encargado de recoger los datos de alta de una CPU y enviarlo al almacn de datos de CPUs Proceso encargado de recoger los datos de alta de un departamento y enviarlo al almacn de datos de departamentos Proceso encargado de recoger los datos de alta de una impresora y enviarlo al almacn de datos de impresoras Proceso encargado de recoger los datos de alta de una marca y enviarlo al almacn de datos de marcas Proceso encargado de recoger los datos de alta de un modelo y enviarlo al almacn de datos de modelos Proceso encargado de recoger los datos de alta de un monitor y enviarlo al almacn de datos de monitores Proceso encargado de recoger los datos de alta de un usuario y enviarlo al almacn de datos de usuarios

Rellenar Alta CPU

DFD1.1.3

Proceso

Rellenar Alta Depto

DFD1.2.2

Proceso

Rellenar Alta Impresora

DFD1.1.5

Proceso

Rellenar Alta Marca

DFD1.1.1

Proceso

Rellenar Alta Modelo

DFD1.1.2

Proceso

Rellenar Alta Monitor

DFD1.1.4

Proceso

Rellenar Alta Usuario

DFD1.2.1

Proceso

147

Nombre

Localizacin

Definicin

Descripcin
Recoge la peticin de una CPU concreto para modificar, corregir o dar de baja. Recoge la peticin de un departamento concreta para modificar, corregir o dar de baja. Recoge la peticin de una Impresora concreto para modificar, corregir o dar de baja. Recoge la peticin de una marca concreta para modificar, corregir o dar de baja. Recoge la peticin de un modelo concreta para modificar, corregir o dar de baja. Recoge la peticin de un monitor concreto para modificar, corregir o dar de baja. Flujo de datos que proviene de la explosin del flujo de datos Datos de Entrada (DFD0) Recoge la peticin de un usuario concreto para modificar, corregir o dar de baja.

Solicitud CPU

DFD1.1.3, DFD1.3

Flujo de datos

Solicitud Depto

DFD1.2.2

Flujo de datos

Solicitud Impresora

DFD1.1.5, DFD1.3

Flujo de datos

Solicitud Marca

DFD1.1.1

Flujo de datos

Solicitud Modelo

DFD1.1.2

Flujo de datos

Solicitud Monitor

DFD1.1.4, DFD1.3

Flujo de datos

Solicitud Relacin

DFD1.3, DFD1Bis

Flujo de datos

Solicitud Usuario

DFD1.2.1

Flujo de datos

148

Nombre

Localizacin

Definicin

Descripcin
Se corresponder con una tabla real. Cada registro es una CPU y recoge su informacin bsica. Se corresponder con una tabla real. Cada registro es un departamento y recoge su informacin bsica. Se corresponder con una tabla real. Cada registro es una entrada histrica y recoge la informacin del cambio sufrido. Se corresponder con una tabla real. Cada registro es una Impresora y recoge su informacin bsica. Se corresponder con una tabla real. Cada registro es una marca y recoge su informacin bsica. Se corresponder con una tabla real. Cada registro es un modelo y recoge su informacin bsica. Se corresponder con una tabla real. Cada registro es un monitor, y recoge su informacin bsica.

Tabla CPUs

DFD1.1.3, DFD1.3

Almacn de datos

Tabla Deptos

DFD1.2.2

Proceso

Tabla Histrico

DFD1.1.3, DFD1.1.4, DFD1.1.5

Almacn de datos

Tabla Impresoras

DFD1.1.5, DFD1.3

Almacn de datos

Tabla Marcas

DFD1.1.1

Proceso

Tabla Modelos

DFD1.1.2

Proceso

Tabla Monitores

DFD1.1.4, DFD1.3

Almacn de datos

149

Nombre

Localizacin

Definicin

Descripcin
Se corresponder con una tabla real. Cada registro es un usuario y recoge su informacin bsica. Recoge la informacin de un usuario corregido. Recoge la informacin necesaria para crear un usuario. Recoge la informacin de un usuario previamente buscada. Recoge la informacin de un usuario modificado o dado de baja. Es el conjunto de usuarios que mantendr y a la vez explotar el sistema. Recoge los datos consultados sobre Usuarios para su formateo.

Tabla Usuarios

DFD1.2.1

Proceso

Usuario Corregido

DFD1.2.1

Flujo de datos

Usuario Creado

DFD1.2.1

Flujo de datos

Usuario Localizado

DFD1.2.1

Flujo de datos

Usuario modificado/eliminado

DFD1.2.1

Flujo de datos

Usuarios

DFD0

Entidad externa

Usuarios Consultados

DFD1.2.1, DFD1.2, DFD1

Flujo de datos

150

A.3. Diccionario de datos del Modelo Entidad Relacin


Nombre
CPU

Localizacin
ER1

Definicin
Entidad

Descripcin
Entidad que agrupa a todos las CPUs de la empresa. Entidad que engloba los departamentos de la empresa. Entidad que define a las impresoras. Entidad que engloba las marcas de cualquier tipo de elemento. Entidad que agrupa modelos exclusivamente de CPUs. Entidad que agrupa modelos exclusivamente de impresoras. Entidad que agrupa modelos exclusivamente de monitores. Entidad que agrupa a todos los monitores de la empresa. Son los empleados de la empresa. Relacin que se da entre cualquier modelo de equipo, su marca y el propio equipo. Cada equipo es de una marca y modelo determinada. Y cada modelo tambin es de una marca determinada. Pero hay marcas que no fabrican determinados equipos (monitores, por ejemplo), lo que desemboca en que haya marcas sin algn tipo de modelos y equipos. Aunque cada equipo es de un nico modelo y marca, y cada modelo solo de una marca. Relacin entre los departamentos y los usuarios. Uno o ms usuarios son miembros de un nico departamento, y cada departamento dispone de usuarios que solo dependen de l.

Departamentos

ER1

Entidad

Impresora

ER1

Entidad

Marca

ER1

Entidad

Modelo CPU

ER1

Entidad

Modelo Impresora

ER1

Entidad

Modelo Monitor

ER1

Entidad

Monitor

ER1

Entidad

Usuarios

ER1

Entidad

Es de

ER1

Relacin

Es miembro

ER1

Relacin

151

Nombre

Localizacin

Definicin

Descripcin
Relacin entre los departamentos y las impresoras. A un departamento pertenecen 0, 1 o ms impresoras. Pero cada impresora es de un nico departamento. Y cada departamento tiene 1 o ms impresoras. Relacin entre las impresoras y los usuarios individuales. Un usuario individual puede tener 0, 1 o varias impresoras para el solo. Pero las impresoras solo pueden tener 0 o 1 usuarios individuales (si pertenece a un departamento, no pertenece a usuarios). Cada registro de impresoras solo puede pertenecer a un usuario. Relacin entre CPUs y Monitores. Por las peculiaridades de la empresa, una CPU puede estar conectada a varios monitores, y un monitor tambin conectado a varias CPUs. Pero por conveniencia, se adopta la convencin de que cada monitor pertenece siempre a un nico equipo, y que cada CPU puede tener conectados 0, 1 o varios monitores. Relacin entre usuarios y CPUs. Cada usuario usa 0, 1 o varias CPUs, mientras que cada CPU pertenece a 1 y siempre 1 usuario.

Pertenece

ER1

Relacin

Posee

ER1

Relacin

Se conecta

ER1

Relacin

Usa

ER1

Relacin

152

A.4. Diccionario de datos del Modelo Fsico Nuevo


Nombre Localizacin Definicin Descripcin
Proceso que presenta el formulario de insercin de CPUs. Proceso que presenta el formulario de insercin de departamentos Proceso que presenta el formulario de insercin de Impresoras. Proceso que presenta el formulario de insercin de marcas. Proceso que presenta el formulario de insercin de modelos. Proceso que presenta el formulario de insercin de Monitores. Proceso que presenta el formulario de insercin de usuarios. Proceso que presenta el formulario de consulta de Modelos.

Abrir Formulario Alta CPU

DFD1.1.3.1

Proceso

Abrir Formulario Alta Dep

DFD1.2.2.1

Proceso

Abrir Formulario Alta Impresora

DFD1.1.5.1

Proceso

Abrir Formulario Alta Marca

DFD1.1.1.1

Proceso

Abrir Formulario Alta Modelo

DFD1.1.2.1

Proceso

Abrir Formulario Alta Monitor

DFD1.1.4.1

Proceso

Abrir Formulario Alta Usuario

DFD1.2.1.1

Proceso

Abrir Formulario Consulta Modelo

DFD1.1.2.3

Proceso

153

Nombre

Localizacin

Definicin

Descripcin
Proceso que presenta el formulario de correccin de CPUs. Proceso que presenta el formulario de correccin de departamentos. Proceso que presenta el formulario de correccin de Impresoras. Proceso que presenta el formulario de correccin de marcas. Proceso que presenta el formulario de correccin de Modelos. Proceso que presenta el formulario de correccin de Monitores. Proceso que presenta el formulario de correccin de Usuarios. Proceso que presenta el formulario de modificacin de CPUs. Proceso que presenta el formulario de modificacin de Impresoras.

Abrir Formulario Corregir CPU

DFD1.1.3.2

Proceso

Abrir Formulario Corregir Depto

DFD1.2.2.2

Proceso

Abrir Formulario Corregir Impresora

DFD1.1.5.2

Proceso

Abrir Formulario Corregir Marca

DFD1.1.1.2

Proceso

Abrir Formulario Corregir Modelo

DFD1.1.2.2

Proceso

Abrir Formulario Corregir Monitor

DFD1.1.4.2

Proceso

Abrir Formulario Corregir Usuario

DFD1.2.1.2

Proceso

Abrir Formulario Modificar CPU

DFD1.1.3.4

Proceso

Abrir Formulario Modificar Impresora

DFD1.1.5.4

Proceso

154

Nombre

Localizacin

Definicin

Descripcin
Proceso que presenta el formulario de modificacin de Monitores. Proceso que presenta el formulario de modificacin de Usuarios. Proceso que asigna el cdigo de CPU Proceso que asigna el cdigo de departamento Proceso que asigna el cdigo de Impresora Proceso que asigna el cdigo de marca Proceso que asigna el cdigo de modelo Proceso que asigna el cdigo de Monitor Proceso que asigna el cdigo de usuario Flujo que enva la cabecera del informe en funcin de los datos consultados.

Abrir Formulario Modificar Monitor

DFD1.1.4.4

Proceso

Abrir Formulario Modificar Usuario

DFD1.2.1.4

Proceso

Asignar Cdigo CPU

DFD1.1.3.1

Proceso

Asignar Cdigo Dep

DFD1.2.2.1

Proceso

Asignar Cdigo Impresora

DFD1.1.5.1

Proceso

Asignar Cdigo Marca Asignar Cdigo Modelo Asignar Cdigo Monitor Asignar Cdigo Usuario

DFD1.1.1.1

Proceso

DFD1.1.2.1

Proceso

DFD1.1.4.1

Proceso

DFD1.2.1.1

Proceso

Cabecera

DFD1.4

Flujo de datos

Cambiar Valores

DFD1.1.1.2, DFD1.1.2.2, DFD1.1.3.2, DFD1.1.3.4, DFD1.1.4.4, DFD1.1.5.4, DFD1.2.1.4, DFD1.1.5.2, DFD1.2.1.2, DFD1.2.2.2

Proceso

Proceso manual de cambiar los datos a corregir o modificar

155

Nombre
Cdigo CPU

Localizacin
DFD1.1.3.1

Definicin
Flujo de datos Flujo de datos Flujo de datos Flujo de datos Flujo de datos Flujo de datos Flujo de datos

Descripcin
Flujo con el cdigo de la CPU Flujo con el cdigo del departamento Flujo con el cdigo de la Impresora Flujo con el cdigo de la marca Flujo con el cdigo del modelo Flujo con el cdigo del Monitor Flujo con el cdigo del usuario Recoge la consulta que se realiza sobre las CPUs Flujo que contiene la consulta diseada Recoge la consulta que se realiza sobre las impresoras Recoge la consulta que se realiza sobre los modelos Recoge la consulta que se realiza sobre los monitores Recoge la consulta que se realiza sobre los usuarios Flujo que solicita las CPUs por monitor

Cdigo Dep

DFD1.2.2.1

Cdigo Impresora

DFD1.1.5.1

Cdigo Marca

DFD1.1.1.1

Cdigo Modelo

DFD1.1.2.1

Cdigo Monitor

DFD1.1.4.1

Cdigo Usuario

DFD1.2.1.1

Consulta CPUs

DFD1.1.3, DFD1.1.3.3

Flujo de datos

Consulta Creada

DFD1.2.1.3, DFD1.1.3.3, DFD1.1.4.3, DFD1.1.5.3

Flujo de datos

Consulta Impresoras

DFD1.1.5, DFD1.1.5.3

Flujo de datos

Consulta Modelos

DFD1.1.2, DFD1.1.2.3

Flujo de datos

Consulta Monitores

DFD1.1.4, DFD1.1.4.3

Flujo de datos

Consulta Usuarios

DFD1.2.1, DFD1.2.1.3

Flujo de datos

CPU Buscada Monitor

DFD1.3.3

Flujo de datos

156

Nombre
CPU Buscada Usuario

Localizacin
DFD1.3.1

Definicin
Flujo de datos

Descripcin
Flujo que solicita las CPUs por usuario Recoge la informacin de una CPU corregida. Recoge la informacin necesaria para crear una CPU. Recoge la informacin de una CPU previamente buscada. Recoge la informacin de una CPU modificada o dada de baja. Flujo que solicita la CPU del Monitor. CPUs encontradas para la relacin Proceso que recibe las tablas y las modificaciones del tipo de salida y crea el informe final. Flujo con los datos consultados para incorporar a tablas. Recoge la peticin al sistema de alta de una CPU Recoge la peticin al sistema de alta de un departamento Recoge la peticin al sistema de alta de una impresora

CPU Corregida

DFD1.1.3, DFD1.1.3.2

Flujo de datos

CPU Creada

DFD1.1.3, DFD1.1.3

Flujo de datos

CPU Localizada

DFD1.1.3, DFD1.3.1, DFD1.3.2, DFD1.3.3, DFD1.3

Flujo de datos

CPU modificada/eliminada

DFD1.1.3, DFD1.1.3.4

Flujo de datos

CPU-Monitor

DFD1.1.4.1

Flujo de datos Flujo de datos

CPUs Relacin

DFD1.3.1, DFD1.3.2, DFD1.3.3

Crear Informes

DFD1.4

Proceso

Datos a Formatear

DFD1.4

Flujo de datos

Datos Alta CPU

DFD1.1.3.1, DFD1.1.3

Flujo de datos

Datos Alta Depto

DFD1.2.2, DFD1.2.2.1

Flujo de datos

Datos Alta Impresora

DFD1.1.5, DFD1.1.5.1

Flujo de datos

157

Nombre

Localizacin

Definicin
Flujo de datos

Descripcin
Recoge la peticin al sistema de alta de una marca Recoge la peticin al sistema de alta de un modelo Recoge la peticin al sistema de alta de un monitor Recoge la peticin al sistema de alta de un usuario Recoge la peticin de consultas respecto a las CPUs. Recoge la peticin de consultas respecto a las impresoras. Recoge la peticin de consultas respecto a los modelos. Recoge la peticin de consultas respecto a los monitores. Recoge la peticin de consultas respecto a los usuarios. Flujo proveniente de la funcin de las entradas en el proceso "Formatear Datos", del DFD1Bis Recoge la peticin de corregir una CPU localizada

Datos Alta Marca

DFD1.1.1, DFD1.1.1.1

Datos Alta Modelo

DFD1.1.2, DFD1.1.2.1

Flujo de datos

Datos Alta Monitor

DFD1.1.4, DFD1.1.4.1

Flujo de datos

Datos Alta Usuario

DFD1.2.1, DFD1.2.1.1

Flujo de datos

Datos Consulta CPUs

DFD1.1.3, DFD1.1.3.3

Flujo de datos

Datos Consulta Impresora

DFD1.1.5, DFD1.1.5.3

Flujo de datos

Datos Consulta Modelos

DFD1.1.2, DFD1.1.2.3

Flujo de datos

Datos Consulta Monitores

DFD1.1.4, DFD1.1.4.3

Flujo de datos

Datos Consulta Usuarios

DFD1.2.1, DFD1.2.1.3

Flujo de datos

Datos Consultados

DFD1.4

Flujo de datos

Datos Correccin CPU

DFD1.1.3, DFD1.1.3.2

Flujo de datos

158

Nombre

Localizacin

Definicin

Descripcin
Recoge la peticin de corregir un departamento localizado Recoge la peticin de corregir una impresora localizada Recoge la peticin de corregir una marca localizada Recoge la peticin de corregir un modelo localizado Recoge la peticin de corregir un monitor localizado Recoge la peticin de corregir un usuario localizada Representa todos los informes y consultas ya formateadas que se pueden extraer del sistema. Flujo que recoge una actualizacin sobre cualquiera de los elementos del inventario y lo pasa al almacn de datos histricos Recoge la peticin para modificar o eliminar una CPU. Recoge la peticin para modificar o eliminar una impresora.

Datos Correccin Depto

DFD1.2.2, DFD1.2.2.2

Flujo de datos

Datos Correccin Impresora

DFD1.1.5, DFD1.1.5.2

Flujo de datos

Datos Correccin Marca

DFD1.1.1, DFD1.1.1.2

Flujo de datos

Datos Correccin Modelo

DFD1.1.2, DFD1.1.2.2

Flujo de datos

Datos Correccin Monitor

DFD1.1.4, DFD1.1.4.2

Flujo de datos

Datos Correccin Usuario

DFD1.2.1, DFD1.2.1.2

Flujo de datos

Datos de Salida

DFD0, DFD1, DFD1Bis, DFD1.4

Flujo de datos

Datos Histrico

DFD1.1.3. DFD1.1.4, DFD1.1.5, DFD1.2.1, DFD1.1.3.4, DFD1.1.4.4, DFD1.1.5.4, DFD1.2.1.4

Flujo de datos

Datos modificacin CPU

DFD1.1.3, DFD1.1.3.4

Flujo de datos

Datos modificacin Impresora

DFD1.1.5, DFD1.1.5.4

Flujo de datos

159

Nombre
Datos modificacin Monitor

Localizacin

Definicin
Flujo de datos

Descripcin
Recoge la peticin para modificar o eliminar un monitor. Recoge la peticin para modificar o eliminar un usuario Proceso encargado de seleccionar los campos a mostrar en funcin del tipo de dato que entra. Recoge la informacin de un departamento corregido. Recoge la informacin necesaria para crear un departamento. Flujo que incorpora el departamento a la impresora Flujo que solicita el departamento del usuario. Proceso encargado de encontrar las CPUs de un monitor Proceso encargado de encontrar las CPUs de un usuario Proceso encargado de encontrar los monitores de una CPU Proceso encargado de encontrar el usuario de una CPU

DFD1.1.4, DFD1.1.4.4

Datos modificacin Usuario

DFD1.2.1, DFD1.2.1.4

Flujo de datos

Definir Campos

DFD1.4

Proceso

Depto Corregido

DFD1.2.2, DFD1.2.2.2

Flujo de datos

Depto Creado

DFD1.2.2, DFD1.2.2.1

Flujo de datos

Depto-Impresora

DFD1.1.5.1

Flujo de datos

Depto-Usuario

DFD1.2.1.1

Flujo de datos

Encontrar CPUs Monitor

DFD1.3.3

Proceso

Encontrar CPUs Usuario

DFD1.3.1, DFD1.3.2, DFD1.3.3

Proceso

Encontrar Monitores CPUs

DFD1.3.1, DFD1.3.2, DFD1.3.3

Proceso

Encontrar Usuario CPU

DFD1.3.2, DFD1.3.3

Proceso

160

Nombre

Localizacin
DFD1.2.2.1, DFD1.1.1.1, DFD1.1.2.1, DFD1.2.1.1, DFD1.1.3.1, DFD1.1.4.1, DFD1.1.5.1, DFD1.1.1.2, DFD1.1.2.2, DFD1.1.3.2, DFED1.1.4.2, DFD1.1.5.2, DFD1.2.1.2, DFD1.2.2.2, DFD1.1.2.3, DFD1.1.3.3, DFD1.1.4.3, DFD1.1.5.3, DFD1.1.3.4, DFD1.1.4.4, DFD1.1.5.4, DFD1.2.1.4

Definicin

Descripcin

Enviar Formulario

Proceso

Proceso genrico que incorpora las modificaciones realizadas sobre un usuario y enva el formulario.

Escoger Salida

DFD1.4

Proceso

Proceso que define el tipo de salida que tendr el informe final. Flujo que recoge los campos por los que se filtrar Proceso que construye la consulta a realizar. Proceso que agrupa los datos para pedir la consulta Proceso que agrupa los datos para pedir la consulta Proceso que agrupa los datos para pedir la consulta Proceso que recoge los datos consultados, establece las cabeceras segn los campos escogidos y crea las tablas adecuadas para cada informe. Recoge la informacin de una Impresora corregida.

Filtro Escogido

DFD1.2.1.3, DFD1.1.3.3, DFD1.1.4.3, DFD1.1.5.3

Flujo de datos

Generar Consulta

DFD1.2.1.3, DFD1.1.3.3, DFD1.1.4.3, DFD1.1.5.3

Proceso

Generar Relaciones Monitor

DFD1.3.3

Proceso

Generar Relaciones Usuario

DFD1.3.1

Proceso

Generar Relaciones CPU

DFD1.3.2

Proceso

Generar Tablas

DFD1.4

Proceso

Impresora Corregida

DFD1.1.5, DFD1.1.5.2

Flujo de datos

161

Nombre

Localizacin

Definicin

Descripcin
Recoge la informacin necesaria para crear una impresora. Recoge la informacin de una impresora modificada o dada de baja. Proceso de insercin de datos de la CPU Proceso de insercin de datos de la Impresora. Proceso de insercin de datos del modelo Proceso de insercin de datos del Monitor Proceso de insercin de datos del usuario Proceso de insercin del nombre del departamento Proceso de insercin del nombre de la marca Flujo con la llamada al formulario de relaciones de CPU Flujo con la llamada al formulario de relaciones de usuario Flujo con la llamada al formulario de relaciones de usuario

Impresora Creada

DFD1.1.5, DFD1.1.5.1

Flujo de datos

Impresora modificada/eliminada

DFD1.1.5, DFD1.1.5.4

Flujo de datos

Insertar Datos CPU

DFD1.1.3.1

Proceso

Insertar Datos Impresora

DFD1.1.5.1

Proceso

Insertar Datos Modelo Insertar Datos Monitor Insertar Datos Usuario

DFD1.1.2.1

Proceso

DFD1.1.4.1

Proceso

DFD1.2.1.1

Proceso

Insertar Nombre Dep

DFD1.2.2.1

Proceso

Insertar Nombre Marca

DFD1.1.1.1

Proceso

Llamada Relacin CPU

DFD1.3.2

Flujo de datos

Llamada Relacin Monitor

DFD1.3.3

Flujo de datos

Llamada Relacin Usuario

DFD1.3.1

Flujo de datos

162

Nombre

Localizacin

Definicin
Flujo de datos

Descripcin
Recoge la informacin de una marca corregida. Recoge la informacin necesaria para crear un marca. Flujo que contiene todos los valores de la marca para la que se listaran modelos.. Flujo que solicita la marca del modelo. Recoge la informacin de un modelo corregido. Recoge la informacin necesaria para crear un modelo. Flujo que incorpora el modelo de CPU en la CPU. Flujo que incorpora el modelo de Impresora en la Impresora. Flujo que incorpora el modelo de Monitor en el Monitor. Flujo que busca los monitores de una CPU Recoge la informacin de un monitor corregido.

Marca Corregida

DFD1.1.1, DFD1.1.1.2

Marca Creada

DFD1.1.1, DFD1.1.1.1

Flujo de datos

Marca Seleccionada

DFD1.1.2.3

Flujo de datos

Marca-Modelo

DFD1.1.2.1

Flujo de datos

Modelo Corregido

DFD1.1.2, DFD1.1.2.2

Flujo de datos

Modelo Creado

DFD1.1.2, DFD1.1.2.1

Flujo de datos

Modelo-CPU

DFD1.1.3.1

Flujo de datos

Modelo-Impresora

DFD1.1.5.1

Flujo de datos

Modelo-Monitor

DFD1.1.4.1

Flujo de datos

Monitor Buscado CPU

DFD1.3.1, DFD1.3.2

Flujo de datos

Monitor Corregido

DFD1.1.4, DFD1.1.4.2

Flujo de datos

163

Nombre

Localizacin

Definicin

Descripcin
Recoge la informacin necesaria para crear un monitor. Recoge la informacin de un monitor previamente buscado. Recoge la informacin de un monitor modificado o dado de baja. Usuario buscado en la relacin Proceso que muestra los campos por los que se puede filtrar la consulta.

Monitor Creado

DFD1.1.4, DFD1.1.4.1

Flujo de datos

Monitor Localizado

DFD1.1.4, DFD1.3.1, DFD1.3.2, DFD1.3.3, DFD1.3

Flujo de datos

Monitor modificado/eliminado

DFD1.1.4, DFD1.1.4.4

Flujo de datos

Monitores Relacin

DFD1.3.1, DFD1.3.2, DFD1.3.3

Flujo de datos

Mostrar Filtro

DFD1.2.1.3, DFD1.1.3.3, DFD1.1.4.3, DFD1.1.5.3

Proceso

Nombre CPU

DFD1.1.3.1, DFD1.1.3.2, DFD1.1.3.4, DFD1.1.4.3, DFD1.1.4.1 DFD1.2.2.1, DFD1.2.1.1, DFD1.1.5.1, DFD1.2.2.2, DFD1.2.1.3, DFD1.1.5.3 DFD1.1.5.1, DFD1.1.5.2, DFD1.1.5.4 DFD1.1.1.1, DFD1.1.1.2, DFD1.1.2.3, DFD1.1.2.1 DFD1.1.2.1, DFD1.1.2.2, DFD1.1.3.3, DFD1.1.4.3, DFD1.1.5.3, DFD1.1.3.1, DFD1.1.4.1, DFD1.1.5.1 DFD1.1.4.1, DFD1.1.4.2, DFD1.1.4.4 DFD1.2.1.1, DFD1.1.3.1, DFD1.1.5.1, DFD1.2.1.2, DFD1.1.3.3, DFD1.1.5.3, DFD1.2.1.4

Flujo de datos

Flujo con el nombre de la CPU

Nombre Dep

Flujo de datos

Flujo con el nombre del departamento

Nombre Impresora

Flujo de datos Flujo de datos

Flujo con el nombre de la Impresora Flujo con el nombre de la marca

Nombre Marca

Nombre Modelo

Flujo de datos

Flujo con el nombre del modelo

Nombre Monitor

Flujo de datos

Flujo con el nombre del Monitor

Nombre Usuario

Flujo de datos

Flujo con el nombre del usuario

164

Nombre

Localizacin

Definicin

Descripcin
Proceso encargado de mostrar las CPUs para realizar la relacin Proceso encargado de mostrar los monitores para realizar la relacin Proceso encargado de mostrar los usuarios para realizar la relacin Contiene las relaciones obtenidas para una CPU. Contiene las relaciones obtenidas para un monitor. Contiene las relaciones obtenidas para un usuario. Escoge la CPU a relacionar. Proceso manual de seleccionar la marca a consultar Escoge el monitor a relacionar. Escoge el usuario a relacionar.

Recoger Solicitud CPUs

DFD1.3.2

Proceso

Recoger Solicitud Monitores

DFD1.3.3

Proceso

Recoger Solicitud Usuarios

DFD1.3.1

Proceso

Relaciones CPU

DFD1.3.2, DFD1.3, DFD1Bis

Flujo de datos

Relaciones Monitor

DFD1.3.3, DFD1.3, DFD1Bis

Flujo de datos

Relaciones Usuario

DFD1.3.1, DFD1.3, DFD1Bis

Flujo de datos

Seleccionar CPUs

DFD1.3.2

Proceso

Seleccionar Marca

DFD1.1.2.3

Proceso

Seleccionar Monitores

DFD1.3.3

Proceso

Seleccionar Usuarios

DFD1.3.1

Proceso

Solicitud CPU

DFD1.1.3, DFD1.3.1, DFD1.3.2, DFD1.3.3, DFD1.3

Flujo de datos

Recoge la peticin de una CPU concreto para modificar, corregir o dar de baja.

165

Nombre

Localizacin

Definicin

Descripcin
Recoge la peticin de un monitor concreto para modificar, corregir o dar de baja. Recoge la peticin de un usuario concreto para modificar, corregir o dar de baja. Se corresponder con una tabla real. Cada registro es una CPU y recoge su informacin bsica. Se corresponder con una tabla real. Cada registro es un departamento y recoge su informacin bsica. Se corresponder con una tabla real. Cada registro es una impresora y recoge su informacin bsica. Se corresponder con una tabla real. Cada registro es una marca y recoge su informacin bsica. Se corresponder con una tabla real. Cada registro es un modelo y recoge su informacin bsica. Se corresponder con una tabla real. Cada registro es un monitor y recoge su informacin bsica.

Solicitud Monitor

DFD1.1.4, DFD1.3.1, DFD1.3.2, DFD1.3.3, DFD1.3

Flujo de datos

Solicitud Usuario

DFD1.1.3, DFD1.3.1, DFD1.3.2, DFD1.3.3 , DFD1.3

Flujo de datos

Tabla CPUs

DFD1.1.3, DFD1.1.4.1, DFD1.1.3.2, DFD1.1.3.4

Almacn de datos

Tabla Deptos

DFD1.2.2, DFD1.1.5.1, DFD1.2.2.2, DFD1.2.1.3, DFD1.1.5.3, DFD1.2.1.1

Almacn de datos

Tabla Impresoras

DFD1.1.5, DFD1.1.5.2, DFD1.1.5.4

Almacn de datos

Tabla Marcas

DFD1.1.1, DFD1.1.2.1, DFD1.1.1.2, DFD1.1.2.3

Almacn de datos

Tabla Modelos

DFD1.1.2, DFD1.1.3.1, DFD1.1.4.1, DFD1.1.5.1, DFD1.1.2.2, DFD1.1.3.3, DFD1.1.4.3, DFD1.1.5.3

Almacn de datos

Tabla Monitores

DFD1.1.4, DFD1.1.4.2, DFED1.1.4.4

Almacn de datos

166

Nombre

Localizacin
DFD1.2.1, DFD1.1.3.1, DFD1.1.5.1, DFD1.2.1.2, DFD1.1.3.3, DFD1.1.5.3, DFD1.2.1.4

Definicin

Descripcin
Se corresponder con una tabla real. Cada registro es un usuario y recoge su informacin bsica. Flujo que enva las tablas HTML generadas para crear el informe definitivo. Flujo que solicita buscar relaciones. Flujo que identifica la salida de datos Flujo que solicita el usuario de la CPU Recoge la informacin de un usuario corregido. Recoge la informacin necesaria para crear un usuario. Recoge la informacin de un usuario previamente buscado. Recoge la informacin de un usuario modificado o dado de baja. Usuario buscado en la relacin Flujo que solicita el usuario de la CPU. Flujo que solicita el usuario de la Impresora.

Tabla Usuarios

Almacn de Datos

Tablas generadas

DFD1.4

Flujo de datos

Tipo Relacin

DFD1.3.1, DFD1.3.2, DFD1.3.3

Flujo de datos Flujo de datos Flujo de datos

Tipo Salida

DFD1.4

Usuario Buscado CPU

DFD1.3.2, DFD1.3.3

Usuario Corregido

DFD1.2.1, DFD1.2.1.2

Flujo de datos

Usuario Creado

DFD1.2.1

Flujo de datos

Usuario Localizado

DFD1.2.1, DFD1.3.1, DFD1.3.2, DFD1.3.3, DFD1.3

Flujo de datos

Usuario modificado/eliminado

DFD1.2.1, DFD1.2.1.4

Flujo de datos

Usuario Relacin

DFD1.3.1, DFD1.3.2, DFD1.3.3

Flujo de datos Flujo de datos

Usuario-CPU

DFD1.1.3.1

Usuario-Impresora

DFD1.1.5.1

Flujo de datos

167

Nombre

Localizacin
DFD1.3.1, DFD1.3.2, DFD1.3.3

Definicin
Flujo de datos

Descripcin
Usuarios encontrados para la relacin Flujo con todos los atributos de la CPU Flujo que contiene todos los valores corregidas de la CPU. Flujo que contiene todos los valores actualizados de la CPU. Flujo con todos los atributos del departamento Flujo que contiene todos los valores corregidos del departamento. Flujo con todos los atributos de la Impresora Flujo que contiene todos los valores corregidos de la Impresora. Flujo que contiene todos los valores actualizados de la Impresora. Flujo con todos los atributos de la marca Flujo que contiene todos los valores corregidos de la marca. Flujo con todos los atributos del modelo

Usuarios Relacin

Valores CPU

DFD1.1.3.2, DFD1.1.3.4

Flujo de datos

Valores CPU Corregidas

DFD1.1.3.2

Flujo de datos

Valores CPU Modificados

DFD1.1.3.4

Flujo de datos

Valores Depto

DFD1.2.2.2

Flujo de datos

Valores Depto Corregidos

DFD1.2.2.2

Flujo de datos

Valores Impresora

DFD1.1.5.2, DFD1.1.5.4

Flujo de datos

Valores Impresora Corregidos

DFD1.1.5.2

Flujo de datos

Valores Impresora Modificados

DFD1.1.5.4

Flujo de datos

Valores Marca

DFD1.1.1.2, DFD1.1.2.3

Flujo de datos

Valores Marca Corregidos

DFD1.1.1.2

Flujo de datos

Valores Modelo

DFD1.1.2.2

Flujo de datos

168

Nombre

Localizacin

Definicin

Descripcin
Flujo que contiene todos los valores corregidos del modelo. Flujo con todos los atributos del Monitor Flujo que contiene todos los valores corregidas del Monitor. Flujo que contiene todos los valores actualizados del Monitor. Flujo con todos los atributos del Usuario Flujo que contiene todos los valores corregidos del Usuario. Flujo que contiene todos los valores actualizados del Usuario. Flujo que define las variaciones del documento para formatos Office Flujo que define las variaciones del documento para formatos Office

Valores Modelo Corregidos

DFD1.1.2.2

Flujo de datos

Valores Monitor

DFD1.1.4.2, DFD1.1.4.4

Flujo de datos

Valores Monitor Corregidas

DFD1.1.4.2

Flujo de datos

Valores Monitor Modificados

DFD1.1.4.4

Flujo de datos

Valores Usuario

DFD1.2.1.2, DFD1.2.1.4

Flujo de datos

Valores Usuario Corregidos

DFD1.2.1.2

Flujo de datos

Valores Usuario Modificados

DFD1.2.1.4

Flujo de datos

Variaciones HTML

DFD1.4

Flujo de datos

Variaciones Office

DFD1.4

Flujo de datos

169

A.5. Manual de usuario


Los pasos para el uso de la aplicacin desde un equipo cliente, una vez este activada en el servidor de aplicaciones desde el que se este corriendo, son las siguientes: 1. Abrir Internet Explorer (se puede utilizar otros exploradores, pero su funcionalidad se vera limitada en algunas funciones JavaScript que no estn optimizadas mas que para IE). 2. Conectar usando la siguiente ruta: http://[nombre_de_servidor]:8080/Inventario Donde [nombre_de_servidor] corresponde al nombre del servidor que corre la aplicacin. Si la aplicacin se va a utilizar con frecuencia, se recomienda crear un acceso directo a la misma que facilite una apertura rpida. Una vez hecho esto, se mostrara la pagina de inicio de la aplicacin:

Esta pagina muestra por un lado un marco principal donde se podrn ver la informacin que en cada momento solicitemos, un marco de cabecera, que siempre estar presente y que, a parte de cabecera, nos dar informacin en todo momento de la hora y fecha del sistema, y un marco lateral, a la izquierda, donde se nos presentara un men con todas las opciones que podremos emplear en la aplicacin.

170

Men de la aplicacin El men de la aplicacin muestra la siguiente estructura: Al seleccionar cualquiera de los cuadros, ste aparecer resaltado, y si contiene algn submen expandible, mostrara los datos del submen. Los elementos finales de cada rama del men sern funciones accesibles por el usuario.

Por ejemplo, si se pulsa sobre el cuadro Inicio, se volver siempre a la pagina de inicio, ya que no tiene ningn submen. Pero si se pulsa sobre Marcas, se expandir un submen con la siguiente informacin. Donde los cuadros del submen abrirn las paginas correspondientes a las funciones indicadas. El rbol de funciones que se pueden realizar con la aplicacin son las siguientes: 1. Inicio 2. Marcas 2.1 Introducir nueva 2.2 Corregir Marca 2.3 Consultar Marca 3. Modelos 3.1 CPUs 3.1.1 Alta 3.1.2 Corregir 3.1.3 Consultar 3.2 Monitores 3.2.1 Alta 3.2.2 Corregir 3.2.3 Consultar 3.3 Impresoras 3.3.1 Alta 3.3.2 Corregir 3.3.3 Consultar

171

4. Deptos. 4.1 Introducir nuevo 4.2 Corregir Depto. 4.3 Consultar Depto. 5. Usuarios 5.1 Alta 5.2 Corregir 5.3 Actualizar 5.4 Consultar 5.4.1 Localizado 5.4.2 Histrico 5.4.3 Por filtro 6. Hardware 6.1 CPUs 6.1.1 Alta 6.1.2 Corregir 6.1.3 Actualizar 6.1.4 Consultar 6.1.4.1 Localizado 6.1.4.2 Histrico 6.1.4.3 Por filtro 6.2 Impresoras 6.2.1 Alta 6.2.2 Corregir 6.2.3 Actualizar 6.2.4 Consultar 6.2.4.1 Localizado 6.2.4.2 Histrico 6.2.4.3 Por filtro 6.3 Monitores 6.3.1 Alta 6.3.2 Corregir 6.3.3 Actualizar 6.3.4 Consultar 6.3.4.1 Localizado 6.3.4.2 Histrico 6.3.4.3 Por filtro 7. Relaciones 7.1 Por Usuario 7.2 Por CPU 7.3 Por Monitor Solo los puntos finales de cada ramificacin corresponden a una funcin de la aplicacin mostrada por una pagina o un formulario. Es decir, para acceder a la consulta histrica de un monitor, ser preciso ir a la opcin Hardware del men, pulsarla, y navegar dentro del men, accediendo por los submens correspondientes a las opciones de Monitores y Consultar hasta llegar a pulsar la opcin Histrico.

172

El uso de la aplicacin es sumamente intuitivo. Una vez accedida la funcin a la que se quiere acceder, se mostrara la pagina que la ofrezca. En el caso de consultas que se puedan realizar directamente (consultas de marcas o de departamentos), solo con pulsar sobre la opcin del men se ofrecer el listado solicitado. Pero lo habitual es que se abra un formulario que solicite informacin necesaria para ejecutar las funciones. La informacin solicitada ser siempre muy intuitiva, por lo que probablemente es mejor ver el funcionamiento a travs de ejemplos: Ejemplo 1: Alta de un usuario: El formulario de alta de un usuario es el siguiente:

Se solicitan datos referentes al nombre del usuario, su apellido, el nombre lgico del usuario, el email asignado, la extensin telefnica y el departamento al que pertenece. Como se puede observar, la informacin del departamento se accede desde un cuadro de seleccin. El usuario se creara con el departamento que este escogido en la casilla al pulsar el botn Aadir Usuario. Cada formulario de alta de los elementos de la aplicacin presentara una solicitud de datos diferentes, que habr que rellenar para poder realizar la insercin del elemento en la base de datos. La aplicacin mantiene un control de los datos que se introduce, de forma que si lo que se solicitan son datos numricos (como la velocidad del procesador, a la hora de crear una CPU), no aceptara una cadena de caracteres para rellenar el campo. Adems, no es posible dejar campos sin contestar. Si alguno de los campos se deja en blanco por error, al querer ejecutar la insercin aparecer un mensaje avisndonos y se solicitara que se rellene.

173

Ejemplo 2: Localizacin de una impresora determinada. El formulario de esta funcin:

En este caso, se puede acceder a la informacin buscando por cualquiera de los dos parmetros facilitados, el numero de serie o el nombre lgico. Si se sabe el nombre lgico de la impresora (bastante mas sencillo que saberse los nmeros de serie), bastar seleccionarlo en su cuadro de seleccin y pulsar Consultar para acceder a los datos. Igualmente, si por cualquier motivo desconocemos el nombre lgico pero podemos acceder a su numero de serie, tambin se podr ejecutar la bsqueda. En este tipo de casos, el escoger una casilla u otra depender del usuario, y no se exigir cumplimentar todas las casillas para acceder a la informacin, no aparecern mensajes de alerta. Siempre que los formularios permitan este tipo de bsquedas en funcin de dos campos, se indicara en el propio formulario, para que el uso de la aplicacin sea lo mas intuitiva posible. En este ejemplo podemos ver adems que todas las consultas que se realizan y todos los informes que se solicitan pueden ser emitidos en diferentes formato. Efectivamente, si el tipo de salida escogido es HTML (seleccionado por defecto), se mostrara la informacin en formato pagina web, dentro de la aplicacin. Sin embargo, tambin podemos escoger las opciones WORD y EXCEL, que abrirn documentos en los respectivos formatos cuando as sea requerido. Esta utilidad, aparte de integrar el empleo de la aplicacin con el paquete de aplicaciones Office, pretende facilitar la modificacin de los informes predefinidos para eliminar campos o filas a gusto del usuario.

174

Ejemplo 3: Consulta de CPUs por filtro Se accede a la misma mediante el siguiente formulario:

El acceso a la informacin de los diferentes elementos a travs de filtros, se realiza en funcin de los atributos correspondientes a ese elemento, pudiendo hacerlos en todos los rangos de valores que permita. Los filtros se aplican de tal forma que si no se rellenan sus casillas no se tendrn en cuenta. Adems, una vez introducido un valor en cualquiera de los parmetros de bsqueda, la condicin establecida restringe la bsqueda para los siguientes parmetros. Es decir, la bsqueda por los diferentes parmetros se realiza en con una consulta de tipo AND, y los equipos que se muestren finalmente sern la respuesta de un filtro total que sume todas las condiciones escogidas. En este formulario y en alguna otra consulta, se ofrece la opcin de realizar bsquedas en funcin de fechas. Cuando esto sea as se podr poner la fecha de dos formas diferentes: - Introduciendo la fecha en formato dd/mm/aaaa - O bien pulsando el botn Seleccione Fecha, lo cual abrir una ventana donde se podr seleccionar la fecha escogida de un calendario que se mostrara, simplemente haciendo clic sobre ella.

175

Ejemplo 4: Informe de consulta de monitores: El informe que se presenta en la aplicacin es el siguiente:

Este es un ejemplo de cmo se muestra la informacin consultada en la aplicacin. En este caso se ha realizado una consulta de monitores segn la marca de los mismos, y se puede observar como la informacin se ordena en filas de equipos con unas columnas que ofrecen informacin relativa a los monitores que cumplen la consulta solicitada. Como se puede observar, los nmeros de serie de los monitores estn aparentemente subrayados. En realidad lo que sucede es que esos campos remiten a enlaces a paginas que permiten corregir los monitores pulsando directamente sobre su numero de serie. Esto sucede as en varias de las paginas de la aplicacin. Con estos ejemplos se cubren en realidad todas las particularidades de la aplicacin. Se ha pretendido que un simple paseo por la misma sea suficiente para poder empezar a utilizarla. Evidentemente hay una gran cantidad de paginas que no se han mostrado. Pero su empleo resulta absolutamente intuitivo, y no se ha considerado necesario explicar cada una de ellas especficamente para no hacer este manual demasiado pesado

176

A.6. Manual de instalacin


La aplicacin en el lado cliente no precisa ningn tipo de instalacin especial. Simplemente bastar con emplear el navegador Internet Explorer, incorporado con todas las versiones actuales de Windows, y seguir las instrucciones dictadas en el manual de usuario. En el lado del servidor, en cambio, exige la instalacin de diferentes programas. Todos los programas y archivos mencionados, se han incorporado al CD incluido con la memoria: 1. Entorno de Ejecucin Java (J2SE v 1.4.2_03 SDK) Ejecutaremos el Setup de Instalacin e instalaremos todas las opciones por defecto. 2. Servidor de Aplicaciones TOMCAT Ejecutaremos el Setup seleccionando instalacin completa y seleccionaremos todas las opciones por defecto excepto cuando nos pida la ruta de la Mquina Virtual de Java, que seleccionaremos en lugar de la propuesta, la ruta del Entorno de Ejecucin Java recin instalado (c:\j2sdk). 3. Entorno MYSQL Este entorno se instala en varias fases: - Servidor MySQL: Procederemos a descomprimir el contenido del fichero en un directorio temporal, y una vez hecho, ejecutaremos el setup incluido con las opciones por defecto. - Consola de gestin de la base de datos (Control Center): Descomprimiremos el contenido del fichero en un directorio temporal, y ejecutaremos el Setup incluido, seleccionando nicamente idioma ESPAOL. - Conector J: Descomprimiremos el contenido del fichero en C:\Archivos de programa\Apache Software Foundation\Tomcat 5.0\common\lib. Una vez hecho esto copiaremos el fichero mysql-connector-java-3.0.11stable-bin.jar situado en C:\Archivos de programa\Apache Software Foundation\Tomcat 5.0\common\lib\mysql-connector-java-3.0.11-stable en C:\Archivos de programa\Apache Software Foundation\Tomcat 5.0\common\lib. 4. Instalacin de la aplicacin de gestin de Inventario Tambien requiere varios procesos: - Colocacion de la carpeta Inventario, conteniendo las paginas jsp y las clases de Java desarrolladas en la ruta C:\Archivos de programa\Apache Software Foundation\Tomcat 5.0\webapps. - Copiaremos el fichero server.xml a C:\Archivos de programa\Apache Software Foundation\Tomcat 5.0\conf, y sobrescribiremos el existente.

177

Copiaremos el fichero Inventario.xml en C:\Archivos de programa\Apache Software Foundation\Tomcat 5.0\conf\Catalina\localhost. Crear una variable de entorno nueva en el sistema, denominada CLASSPATH, o modificaremos la existenete si fuera el caso, para asignarle la siguiente ruta: C:\Archivos de programa\Apache Software Foundation\Tomcat 5.0\common\lib\mysql-connector-java-3.0.11stable\com\mysql\jdbc;C:\Archivos de programa\Apache Software Foundation\Tomcat 5.0\common\lib\mysql-connector-java-3.0.11stable\org\gjt\mm\mysql;C:\Archivos de programa\Apache Software Foundation\Tomcat 5.0\common\lib\mysql-connector-java-3.0.11stable\mysql-connector-java-3.0.11-stable-bin.jar;C:\Archivos de programa\Apache Software Foundation\Tomcat 5.0\src\jakartaservletapi-5\jsr154\src\share\javax\servlet

Una vez instalado el software, ser preciso activar la aplicacin siguiendo los siguientes pasos: 1. Activacin del Servidor de Base de Datos MySQL Ejecutaremos winmysqladmin.exe situado en C:\MySql, nos pedir un usuario y password. Los valores a introducir son: - Usuario: inventario - Password: inventario Ahora nos pedir un usuario de base de datos: - Usuario: root - Host: localhost - Password: Dejar en blanco Pulsaremos Test y aceptaremos. 2. Creacin de la Base de Datos Abriremos MySQL Control Center y crearemos una nueva base de datos llamada inventario. Una vez hecho esto. Crearemos un nuevo usuario llamado: - Usuario: inventario - Host: localhost - Password: inventario Y le daremos permiso de control total con opcin grant sobre la base de datos biblioteca. Pulsaremos Add y Apply y cerraremos. Ahora abriremos la base de datos inventario haciendo doble click sobre ella y pulsaremos el botn SQL, abriremos el fichero crea_tablas.sql y ejecutaremos su contenido. 3. Arranque de la Aplicacin Pararemos el Servidor Tomcat y lo rearrancaremos. Con ello habr terminado el proceso de instalacin y se podr arrancar desde el cliente.

178

Bibliografa

179

[PRESS88]

S. Pressman, Roger. Ingeniera del software. Un enfoque prctico. McGraw Hill, Madrid 1988. Barranco de Areba, Jess. Metodologa del anlisis estructurado de sistemas, UPCO, Madrid 2002. Sommervile, I. Software Engineering, Addison-Wesley, USA, 1996.

[BARRA02]

[SOMME96]

180

También podría gustarte