TECNOLOGÍA WEB Y GESTIÓN DOCUMENTAL

Edita Fernández Abellap, Eva María Iglesias Febreiro, Enrique Barreiro Alonso. Escuela Superior de Ingeniería Informática, Universidad de Vigo

 

 

RESUMEN

La continua evolución de las tecnologías de Internet están cambiando la naturaleza de los sistemas de información y las aplicaciones de gestión de los procesos de las organizaciones. En este sentido, la combinación de la tecnología ASP (Active ServerPages), con el estándar XML (eXtended Markup Language), permite desarrollar potentes sistemas de gestión documental de gran utilidad y facilidad de uso.

La aplicación que aquí se presenta, desarrollada como un Proyecto Fin de Carrera de la titulación de Ingeniería Técnica en Informática de Gestión, es una aplicación web que permite la gestión del flujo de documentos en la Escuela Superior de Ingeniería Informática de la Universidad de Vigo, permitiendo las operaciones de registro de documentos, tanto de entrada como de salida; operaciones que serán realizadas por un Secretario. Además el sistema permite realizar consultas sobre los documentos registrados de forma que el Secretario podrá obtener tanto datos como el contenido concreto del documento a localizar, mientras que el resto de usuarios sólo podrán acceder a los contenidos si el Secretario les concede autorización para hacerlo.

  1. INTRODUCCIÓN.
    1. Descripción del Sistema.

El objetivo genérico del Proyecto Fin de Carrera era profundizar en el estudio de tecnologías web y utilizar este conocimiento para automatizar la gestión de los documentos que entran y salen de un organismo oficial como puede ser un centro universitario.

Así pues, los funciones principales del sistema son:

  1. Permitir el registro tanto de los documentos de entrada como de salida.
  2. Facilitar la consulta de los documentos registrados.
  3. Proporcionar un control de los usuarios que pueden acceder al sistema junto con las operaciones que pueden realizar según sus permisos de acceso:

  • Secretario: Realizará el registro de documentos y podrá consultar tanto los datos como los contenidos de los mismos. Además será el encargado de autorizar o denegar a otros usuarios las visualización del contenido de un documento concreto.
  • Usuario: Podrá consultar los datos de cualquier documento pero para poder visualizar su contenido, tendrá que realizar una petición al secretario.
  • Administrador: Será el encargado de llevar el control de usuarios (altas, bajas y modificaciones).

4. Realizar copias de seguridad de los datos almacenados cuando el secretario lo considere oportuno.

    1. Solución Adoptada.
    2. Para desarrollar el sistema se ha utilizado tecnología basada en Internet que permite interactuar con la base de datos, obtener la información solicitada por los usuarios del sistema y actualizar dicha información.

      Se ha optado por la utilización de Active Server Pages (ASP) [6] para el desarrollo de la aplicación. Este modelo de programación está basado en la filosofía de aprovechar la potencia del servidor para generar páginas Web dinámicas, siendo el servidor el encargado de ejecutar el código ASP ante la petición del cliente. Una vez ejecutado, devolverá el resultado como HTML para que el cliente pueda visualizarlo como una página Web estática.

      Además se ha recurrido a la utilización de XML (eXtended Markup Language) [5] para recoger los datos obtenidos de las consultas y su posterior visualización en el cliente.

    3. Metodología.
    4. Para el análisis y diseño del sistema se ha utilizado el Lenguaje Unificado de Modelado (UML) [3]. Este lenguaje permite visualizar, especificar, construir y documentar los componentes de un sistema. Es importante señalar que UML es una notación y no un estándar de proceso software. Hay que añadir que UML presenta limitaciones para representar las cuestiones importantes en una aplicación web, como páginas web o enlaces y sus relaciones con los componentes del sistema, limitaciones que en parte han sido subsanadas con una extensión de UML [1].

    5. Realización.

El sistema ha sido desarrollado como Proyecto Fin de Carrera [4], y dentro del marco del proyecto del Plan Nacional de I+D (CICYT) TEL-1999-0958. Su período de realización fue de tres meses.

  1. ANALISIS
    1. Funciones del Sistema.

Las funciones que debe realizar un sistema software pueden pertenecer a cualquiera de las siguientes categorías:

  • Evidente: Debe llevarse a cabo y el usuario debe ser consciente de ello.
  • Oculta: Debe llevarse a cabo, pero no es visible para los usuarios. Esto sucede con muchos servicios técnicos tales como almacenar información en un mecanismo de almacenamiento persistente.
  • Opcional: No implica tiempo o costo extras.

De acuerdo a esta clasificación, en el sistema desarrollado se identificaron las siguientes funciones:

Código

Función

Clasificación

R.1

Identificación de usuarios

Evidente

R.2

Realizar alta del registro de entrada

Evidente

R.3

Realizar alta del registro de salida

Evidente

R.4

Introducir contenido entrada

Evidente

R.5

Introducir contenido salida

Evidente

R.6

Dar de alta usuario

Oculta

R.7

Dar de baja usuario

Oculta

R.8

Modificar datos usuario

Oculta

R.9

Consultar datos entrada

Evidente

R.10

Consultar datos salida

Evidente

R.11

Consultar contenido

Evidente

R.12

Realizar petición de visualización de contenido

Evidente

R.13

Aceptar o denegar petición

Evidente

R.14

Modificar clave de acceso pasado un mes de haberla introducido por motivos de seguridad

Opcional

R.15

Cierre del ejercicio: al llegar al 31 de Diciembre los números de registro de entrada y de salida se ponen a cero

Evidente

R.16

Llevar un log con las autorizaciones concedidas

Oculta

R.17

Secretario realiza la copia de seguridad.

Oculta

Tabla1: Funciones del Sistema.

    1. Casos de Uso.

En el diagrama de casos de uso que se muestra en la Figura 1 se especifican las funcionalidades del sistema y los actores que las llevan a cabo.

Figura 1: Diagrama de Casos de Uso. Funcionalidades del sistema.

  1. IMPLEMENTACIÓN.
    1. Arquitectura del sistema.

Para desarrollar la aplicación se ha utilizado una arquitectura Cliente/Servidor de dos capas:

  1. Por un lado, el equipo desde el que se accede al sistema utilizando un navegador.
  2. Por el otro, el equipo que alberga los programas necesarios para gestionar las peticiones del cliente. En este caso los programas del servidor son Internet Information Server, que dará soporte a las páginas ASP, y el gestor de bases de datos SQL Server 7.

    1. Active Server Pages (ASP).

Las Páginas Activas en Servidor de Microsoft proporcionan un soporte adecuado de procesamiento en el servidor a la vez que permiten su coexistencia con páginas activas en el cliente. Estas páginas provienen de Visual Basic Script y han sido desarrolladas exclusivamente para trabajo en servidor.

Las principales ventajas de esta tecnología son:

  1. Podrá utilizar cualquier tipo de explorador sin miedo a que soporte o no cierta tecnología.
  2. Proporciona ciertas facilidades al ejecutarse en el servidor, como es gestionar recursos del sistema.
  3. La mayor ventaja de las páginas activas en servidor es la de poder compartir información con otros usuarios.

    1. Acceso a la Base de Datos.
    2. Para la implementación de la base de datos se ha utilizado el sistema gestor Microsoft SQL Server 7 [2], aprovechando la facilidad que proporciona ASP para trabajar con la mayoría de los sistemas de bases de datos actuales. Para ello, ASP utiliza el modelo ADO (ActiveX Data Objects) y la tecnología de conexión con bases de datos ODBC (Open Data Base Connectivity), aunque también se puede usar OLE DB. ODBC proporciona la interfaz que permite a la aplicación acceder a la información contenida en las bases de datos a través de sus distintos controladores, utilizando para ello el lenguaje SQL estándar, independientemente del sistema gestor de bases de datos utilizado.

    3. Extensible Markup Languaje (XML).
    4. El Lenguaje Extensible de Marcas es un subconjunto de SGML, diseñado para facilitar la implementación e interoperatividad con SGML y HTML.

      Para crear documentos XML, que serán los encargados de recoger la información extraída de la base de datos al realizar las consultas, se han utilizado las páginas ASP. ASP ofrece un entorno en el que se pueden crear documentos de forma dinámica combinando lenguajes como Jscript y VBScript. El archivo ASP se procesa en el servidor y sólo se entrega al cliente el documento XML resultante.

      Un ejemplo del código que genera un documento XML mediante la utilización de páginas ASP a partir de los datos extraídos de la base de datos es el siguiente:

       

       

       

       

       

       

       

       

       

       

       

       

       

       

       

       

      Tabla 2. Ejemplo de generación de un documento XML mediante ASP.

    5. Funcionamiento del Sistema.

Las operaciones que se pueden realizar dependerán del tipo de acceso del que dispone el usuario que está accediendo al sistema. Por ello, en el momento del acceso se debe pasar por un control de usuarios que limitará las operaciones a realizar.

Entre estas operaciones, las más importantes son el registro de documentos, realizado por el secretario, y la consulta de los mismos, junto con la concesión de autorizaciones.

Registro. Existen una serie de datos a introducir de cada uno de los documentos, entre los que cabe destacar el contenido escaneado de los mismos.

Consulta. Tanto los usuarios como el secretario pueden consultar los datos de un documento, siendo el segundo el único que puede acceder al contenido del mismo. Los usuarios, en caso de querer visualizar este contenido, deberán hacer una petición que se remitirá vía e-mail al secretario. Este último, después de hacer las comprobaciones necesarias, autorizará o denegará la visualización, enviándose los distintos archivos también vía e-mail al usuario que ha realizado la petición.

  1. CONCLUSIONES.

Con la utilización de este sistema se podrían obtener las siguientes ventajas:

  1. Mejorar la seguridad de los documentos registrados, ya que se lleva a cabo un estricto control de usuarios, además de la imposibilidad de acceder al sistema sin pasar previamente por las validaciones de acceso.
  2. El sistema mantiene un log con todas las autorizaciones concedidas, de manera que en cualquier momento y ante cualquier problema, se podrá consultar el mismo accediendo directamente a la base de datos.
  3. Se facilita el registro de los documentos que entran o salen del centro, impidiendo errores en la fecha o número de registro ya que estos datos son introducidos automáticamente por el sistema. Además, la aplicación ofrece una forma de almacenar el contenido de los documentos muy adecuada para la recuperación del mismo.
  4. Por otro lado, se mejora en gran medida la localización de un documento, reduciéndose el tiempo de búsqueda a unos pocos segundos si el usuario conoce algún dato significativo del documento que está buscando, mientras que por el método usado actualmente pueden pasar días hasta que se localiza el documento debido a su realización manual.
  5. Se reduce el tiempo de espera de un usuario para saber si se autoriza o deniega su petición para obtener el contenido de un documento, debido a que el secretario obtiene dicho contenido inmediatamente y envía su respuesta por correo electrónico.
  6. Se espera extender el sistema, incrementando sus funcionalidades y tratando de aprovechar aún más la potencia y versatilidad que ofrece XML:

        1. Utilización de XML en las consultas. Las hojas de estilo XSL serían las encargadas de realizar las búsquedas entre las etiquetas definidas en las DTD’s o esquemas del documento XML.
        2. Utilización de XML en el registro de los documentos. Se construiría un documento XML con los datos introducidos por el secretario, y a continuación se utilizaría una API que recorrería dicho documento extrayendo del mismo la información que se desee almacenar en la base de datos, como podría ser SAX o DOM para Java.
        3. Utilización de firmas digitales. Mediante este sistema, cada empleado dispondría de dos claves, una pública y otra privada. El usuario firma el texto utilizando su clave privada, conocida sólo por él, y envía al secretario el texto firmado. Éste lo recibe y mediante la clave pública del usuario, conocida por todos, verifica que la firma del texto es correcta.

  1. REFERENCIAS.
  2. [1] Jim Conallen. "Building Web Applications with UML". Addison-Wesley, 1999.

    [2] Jeffrey Byrne. "Creación de sitios Web con SQL Server 7". Prentice Hall,2000.

    [3] Grady Booch, James Rumbaugh, Ivar Jacobson. "El Lenguaje Unificado de Modelado". Addison-Wesley,1999

    [4] Fernández Abella, Edita; Iglesias Febreiro, Eva M. "Gestión Documental de un Centro Universitario", octubre 2000.

    [5] Richard Anderson, Mark Birbeck, Michael Kay, Steven Livingstone, Brian Loesgen, Didier Martin, Stephen Mohr, Nikola Ozu, Bruce Peat,Jonathan Pinnock, Peter Stark, Kevin Williams. "Professional XML". Wrox Press Ltd, 2000.

    [6] Mark Wilson, Tracey Wilson. "XML Programming with VB and ASP". Manning Publications Co.,2000

  3. CORRESPONDENCIA

Edita Fernández Abella

Montiños, s/n. CP: 32800 Celanova-Ourense

Tlfns: 988431847 – 636537411 – 636236658. E-mail: editafer@yahoo.es