CATEDRA: Análisis y Diseño de Sistemas

AUTORES:

Carmen Ríos

Tomas Moreno

Loly Gómez

 

Desarrollo de un Sistema de Información basados en tecnología WEB con acceso a base de datos

 

  • Softwares que permitan realizar acceso a base de datos utilizando un sistema de información en la web

JSP(JavaServerPages):
JavaServer Pages (JSP), en el campo de la Informática, es una tecnología para crear aplicaciones web. Es un desarrollo de la compañía Sun Microsystems, y su funcionamiento se basa en scripts, que utilizan una variante del lenguaje java.

La JSP, es una tecnología Java que permite a los programadores generar contenido dinámico para web, en forma de documentos HTML, XML, o de otro tipo. Las JSP's permite al código Java y a algunas acciones predefinidas ser incrustadas en el contenido estático del documento web.

En las JSP, se escribe el texto que va a ser devuelto en la salida (normalmente código HTML) incluyendo código java dentro de él para poder modificar o generar contenido dinámicamente. El código java se incluye dentro de las marcas de etiqueta <% y %>, a esto se le denomina scriptlet.

La principal ventaja de JSP frente a otros lenguajes es que permite integrarse con clases Java (.class) lo que permite separar en niveles las aplicaciones web, almacenando en clases java las partes que consumen más recursos así como las que requieren más seguridad, y dejando la parte encargada de formatear el documento html en el archivo jsp. La idea fundamental detras de este criterio es el de separar la lógica del negocio de la presentación de la información.

Independientemente de la certeza de la aseveración, Java es conocido por ser un lenguaje muy portable (su lema publicitario reza: escríbelo una vez, córrelo donde sea), y sumado a las capacidades de JSP se hace una combinación muy atractiva.

Sin embargo JSP no se puede considerar un script al 100% ya que antes de ejecutarse el servidor web compila el script y genera un servlet, por lo tanto, se puede decir que aunque este proceso sea transparente para el programador no deja de ser una aplicación compilada. La ventaja de esto es algo más de rapidez y disponer del API de Java en su totalidad.

Debido a esto la tecnología JSP, así como Java está teniendo mucho peso en el desarrollo web profesional (sobre todo en intranets).

 XML (eXtensible Markup Language):

XML, acrónimo en inglés de eXtensible Markup Language («lenguaje de marcas extensible»), es un metalenguaje extensible de etiquetas desarrollado por el World Wide Web Consortium (W3C). Es una simplificación y adaptación del SGML y permite definir la gramática de lenguajes específicos (de la misma manera que HTML es a su vez un lenguaje definido por SGML). Por lo tanto XML no es realmente un lenguaje en particular, sino una manera de definir lenguajes para diferentes necesidades. Algunos de estos lenguajes que usan XML para su definición son XHTML, SVG, MathML.

XML no ha nacido sólo para su aplicación en Internet, sino que se propone como un estándar para el intercambio de información estructurada entre diferentes plataformas. Se puede usar en bases de datos, editores de texto, hojas de cálculo y casi cualquier cosa imaginable.

XML es una tecnología sencilla que tiene a su alrededor otras que la complementan y la hacen mucho más grande y con unas posibilidades mucho mayores. Tiene un papel muy importante en la actualidad ya que permite la compatibilidad entre sistemas para compartir la información de una manera segura, fiable y fácil..

ASP (Active Server Pages):

Active Server Pages (ASP) es una tecnología del lado servidor de Microsoft para páginas web generadas dinámicamente, que ha sido comercializada como un anexo a Internet Information Server (IIS).

ASP ha pasado por cuatro iteraciones mayores, ASP 1.0 (distribuido con IIS 3.0), ASP 2.0 (distribuido con IIS 4.0), ASP 3.0 (distribuido con IIS 5.0) y ASP.NET (parte de la plataforma .NET de Microsoft). Las versiones pre-.NET se denominan actualmente (desde 2002) como ASP clásico.

PHP (Hipertext Pre-procesor):

PHP es un lenguaje de programación usado generalmente para la creación de contenido para sitios web. Las siglas significan "PHP Hypertext Pre-processor" (inicialmente PHP Tools, o, Personal Home Page Tools), y se trata de un lenguaje interpretado usado para la creación de aplicaciones para servidores, o creación de contenido dinámico para sitios web. Últimamente también para la creación de otro tipo de programas incluyendo aplicaciones con interfaz gráfica

Los principales usos del PHP son los siguientes:

    * Programación de páginas web dinámicas, habitualmente en combinación con el motor de base datos MySQL, aunque cuenta con soporte nativo para otros motores, incluyendo el estándar ODBC, lo que amplía en gran medida sus posibilidades de conexión.

    * Programación en consola, al estilo de Perl o Shell scripting.

    * Creación de aplicaciones gráficas independientes del navegador, por medio de la combinación de PHP y GTK (GIMP Tool Kit), lo que permite desarrollar aplicaciones de escritorio en los sistemas operativos en los que está soportado.

Ventajas de PHP

    * Es un lenguaje multiplataforma.

    * Capacidad de conexión con la mayoría de los manejadores de base de datos que se utilizan en la actualidad.

    * Leer y manipular datos desde diversas fuentes, incluyendo datos que pueden ingresar los usuarios desde formularios HTML.

    * Capacidad de expandir su potencial utilizando la enorme cantidad de módulos (llamados ext's o extensiones).

    * Posee una amplia documentación en su página oficial ([1]).

    * Es libre, por lo que se presenta como una alternativa de fácil acceso para todos.

    * Permite las técnicas de Programación Orientada a Objetos.

    * Nos permite crear los formularios para la web

 

 

Caso Práctico: Creación del Sitio Web de da Delegación de Personal de la Universidad de Oriente Núcleo Nueva Esparta.

INTRODUCCIÓN

La presente investigación consta de un estudio sobre las actividades que se realizan dentro de la Oficina de Personal de la Universidad de Oriente, Núcleo de Nueva Esparta, con la finalidad de determinar y corregir las deficiencias presentes en su sistema de trabajo. El sistema de expedientes donde se almacena la información del personal de la Universidad de Oriente, basados en archiveros, de manipulación manual, impide el buen desempeño de las actividades administrativas como son recolección, actualización de la información, aunado a que los mismos entorpecen la rapidez con que esta oficina pueda cumplir con los requerimientos de información de directivos universitarios, que  necesitan dicha información para la toma de decisiones efectivas. El estudio mencionado ha dado como resultado, la creación de un sistema informático basado en web orientado a optimizar la administración de la información relevante para la Delegación de Personal del Núcleo de Nueva Esparta, referente al personal docente, administrativo y obrero que labora en la universidad, obteniendo así un sistema que automatiza los procesos administrativos dando calidad, rapidez y eficiencia a los mismos, y acelerando el proceso de toma de dediciones por parte de directivos administrativos del núcleo basado en la información aportada por el sistema.

 

PLANTEAMIENTO

La Delegación de Personal de la Universidad de Oriente Núcleo De Nueva Esparta, tiene como  objetivos principales (Memoria y Cuenta, 2003):

·        Coordinar, controlar y ejecutar las políticas, programas, convenios y contratos en el Núcleo, que para el Personal aprueben las Autoridades Centrales de la Institución.

·        Manejo de la información referente al personal Docente, Administrativo y Obrero, entre esta información se encuentra contratos, tiempos de servicios, categorías, dedicaciones, adscripciones a departamentos, cargos que ocupa, entre otras.

La Delegación de Personal está conformada por dos Unidades: Delegación de Nómina y Área de Bienestar Social; y las funciones que cumple esta Delegación están sujetas a las instrucciones  de la Dirección de Personal, del Decano y de la Coordinación Administrativa del núcleo.

La Delegación de Personal de la Universidad de Oriente Núcleo de Nueva Esparta, tiene como finalidad el manejo de la información referente al personal Docente, Administrativo y Obrero, lo cual es vital para el control de los recursos humanos que posee y las posibilidades que éste ofrece para la misma universidad.

Para distintos procesos administrativos, como la búsqueda de personal en el Núcleo de Nueva Esparta que cumpla el perfil para ocupar determinados cargos; el control de amonestaciones y averiguaciones abiertas a un determinado personal, control del registro de permisos, control de los reconocimientos, estudios, dedicaciones, categorías del personal, entre otros, es necesario acceder a la información que se encuentra contenida en archiveros y carpetas.

Este sistema de almacenado de información tiene la tendencia a ser muy lento, especialmente si se desea saber información específica de cómo está distribuida la población de un tipo de personal, en cuanto a una característica determinada, debido a que éste implica la revisión detallada de su expediente el cual algunas veces puede ser voluminoso, retrasando el proceso de toma de decisiones de las autoridades, por el lento arribo de la información oportuna a sus despachos.

También está planteada la problemática de la pérdida de información debido a errores humanos, ya que en la manipulación de los expedientes, en busca de una información específica, puede ser colocada alguna de las páginas que conforman el mismo en otro expediente, significando un gran problema, dado que la información puede ser vital para otro proceso futuro de recolección de información.

Otro problema planteado, es el inadecuado proceso de la información debido a que esta labor puede ser larga, ardua y repetitiva. También se manejan distintos reportes que deben ser entregados de manera periódica, los cuales casi nunca son entregados a tiempo debido al mismo problema inherente al sistema de búsqueda de información en los expedientes.

Para dar solución a la problemática anteriormente planteada se propone, en base a los requerimientos y soluciones óptimas a la mísma, el diseño y construcción de un sistema de información basado en web capaz de manejar la información  contenida en los archivos físicos del personal, que luego de ser alimentado con los datos contenidos en los mísmos, permitirá acelerar de manera notable los procesos administrativos, como el reclutamiento entre el personal - del Núcleo de Nueva Esparta - de aquel que cumpla el perfil para ocupar determinados cargos vacantes (Reclutamiento Interno); control de amonestaciones y averiguaciones abiertas a un determinado personal, control del registro de permisos, control de los reconocimientos, estudios, dedicaciones, categorías del personal, entre otros.

 

PROCEDIMIENTO Y JUSTIFICACIÓN PARA LA INCORPORACIÓN DE UNA APLICACIÓN WEB EN LA DELEGACIÓN DE PERSONAL DE LA UNIVERSIDAD DE ORIENTE NÚCLEO DE NUEVA ESPARTA.

Previo a la puesta en marcha del proyecto de implantación de la aplicación web SadP, existen una serie de requerimientos técnicos que debe cubrir la delegación:

·        Acceso a Internet

·        Servidor Web para alojar la aplicación

·        El dominio será asignado por la Delegación de Teleinformática del Núcleo de Nueva Esparta.

Esta inversión en equipos para la puesta en marcha de este proyecto se justifica en la necesidad de conectividad constante y actualizada de los diversos departamentos de la universidad con la Delegación de Personal del Núcleo, para facilitar el flujo de información en cuanto al manejo de expedientes del personal Docente, Administrativo y Obrero..

 

OBJETIVO GENERAL

Desarrollar un sistema de información basado en web para la administración de la información del personal Docente, Administrativo y Obrero para la Delegación de Personal de la Universidad De Oriente Núcleo De Nueva Esparta.

OBJETIVOS ESPECÍFICOS

1.      Analizar los procesos administrativos que se llevan a cabo en la Delegación de Personal de Universidad De Oriente Núcleo De Nueva Esparta.

2.      Diseñar el sistema de información web basado en esta propuesta, que dé solución a las deficiencias presentes en el modelo de funcionamiento de la Delegación de Personal de la Universidad De Oriente Núcleo De Nueva Esparta  para así dar agilidad y fiabilidad a la obtención y organización de información del personal.

3.      Llevar el diseño del sistema web a un entorno de programación, lo que permitirá desarrollar una interfaz usable para el manejo de los distintos aspectos de la información de los expedientes del personal.

4.      Implantar el sistema de información en la Delegación de Personal de la Universidad De Oriente Núcleo De Nueva Esparta y otras dependencias que puedan estar interesadas y relacionadas con la información que esta delegación pueda manejar

 

METODOLOGÍA

Las técnicas de recolección de datos, permiten a los analistas llevar a cabo una investigación amplia y exacta  de los requerimientos y necesidades que manifiestan los entes solicitantes de los nuevos sistemas. Las técnicas utilizadas para esta investigación fueron:

·        Entrevistas no estructuradas a expertos.

·        Revisiones bibliográficas.

·        Consulta de material electrónico en Internet

·        Observación directa de los procesos que se estudian.

Como herramienta para el diseño se trabajo con Proceso Unificado de Desarrollo (PUD) (Booch, Rumbaugh y Jacobson, 1999).

 

Fase 1: Preparación Inicial

Para el diagrama de casos de usos se identificaron los siguientes actores:

Administrador: Son operadores de alto nivel de privilegios, con acceso irrestricto a todas las funciones y capacidades del sistema, además de tareas administrativas, son entes internos a la delegación de personal tales como Delegado De Personal, Administrador del Sistema.

Operador Con Privilegios De Nivel Medio: Son operadores con un nivel de acceso medio a las funciones y capacidades del sistema. Al igual que el actor Administrador, son entes internos a delegación de personal y su nivel de privilegio está determinado por su ocupación, para el análisis estos operadores serán Secretaria de la Delegación Personal, Archivista de la Delegación de Personal.

Operador Con Privilegios De Nivel Mínimo: Son operadores con un nivel de acceso mínimo a las funciones y capacidades del sistema, esto implica que podrán leer cierta información pero no podrán modificarla. A Diferencia del actor Administrador y el actor  Operador Con Privilegios De Nivel Medio, éstos son entes externos a la Delegación de Personal, para el análisis están compuestos por todos aquellos operadores de otras dependencias dentro de la Universidad de Oriente Núcleo de Nueva Esparta.

En la Figura 1 se muestran los actores anteriormente descritos y su interrelación con el sistema.

Figura 1. Diagrama de Caso de Uso Tipos de Actores que Interactúan con SAdP.

 

Acceso A SAdP: El Caso de Uso muestra la validación del nombre de operador y clave en el sistema ha si como establecer su nivel de privilegios de operación del sistema (ver Figura 2).

Figura 2. Diagrama de Caso de Uso Acceso A SAdP.

Principal: El Caso de Uso muestra el acceso a las opciones de operación del sistema, por parte del operador que ha iniciado sesión en sistema (ver Figura 3).

Figura 3. Diagrama de Caso de Uso Principal.

Archivo: El Caso de Uso muestra el acceso a las opciones disponibles en Archivo, por parte del operador que ha iniciado sesión en sistema (ver Figura 4).

Figura 4. Diagrama de Caso de Uso Archivo.

Ver: El Caso de Uso muestra el acceso a las opciones disponibles en Ver, por parte del operador que ha iniciado sesión en sistema (ver Figura 5).

Figura 5. Diagrama de Caso de Uso Ver.

Ayuda: El Caso de Uso muestra el acceso a las opciones disponibles en Ayuda, por parte del operador que ha iniciado sesión en sistema (ver Figura 6).

Figura 6. Diagrama de Caso de Uso Ayuda.

Operaciones: El Caso de Uso muestra el acceso a las opciones disponibles en Operaciones, por parte del operador que ha iniciado sesión en sistema (ver Figura 7).

 

Figura 7. Diagrama de Caso de Uso Operaciones.

Administración De Sistema: El Caso de Uso muestra el acceso a la Administración de Sistema, que permite el control de variables y parámetros operacionales del sistema, permite también Agregar, Eliminar y Modificar Cuentas de Operador, Agregar y Eliminar Imágenes de Operador, por parte de los operadores que  ha iniciado sesión en el sistema y con los privilegios adecuados (ver Figura 8).

Figura 2. Diagrama de Caso de Uso Administración del Sistema.

Mantenimiento: El Caso de Uso muestra el acceso a las opciones disponibles en Mantenimiento, por parte del operador que ha iniciado sesión en sistema y con los privilegios adecuados (ver Figura 9).

Figura 9. Diagrama de Caso de Uso Mantenimiento.

 

 

Preferencias del Operador: El Caso de Uso muestra el acceso a las opciones disponibles en las Preferencias del Operador, por parte del operador que ha iniciado sesión en sistema (ver Figura 10).

 

Figura 10. Diagrama de Caso de Uso Preferencias del Operador

Expediente: El Caso de Uso muestra el acceso a las opciones disponibles en Expediente, por parte del operador que ha iniciado sesión en sistema (ver Figura 11).

Figura 11. Diagrama de Caso de Uso Expediente

Fase 2: Preparación Detallada

En esta fase se procede a un diseño más detallado del sistema, mediante el empleo de otros diagramas que sirven de apoyo y se basan en los Diagramas De Caso De Usos ya presentados en la fase anterior.

Diagramas de Clases

En este diagrama se busca esquematizar de una manera jerárquica y orientada a clases que permita visualizar el sistema de una manera global y la interacción de las clases entres si.

En la siguientes Figuras (Ver Figura 12 a la Figura  26) se muestran los diagramas de clases del sistema SAdP. Por razones de espacio se ha divido en varias partes.

Figura 12. Diagrama de Clase (1/15) del Sistema SAdP.

Figura 13. Diagrama de Clase (2/15) del Sistema SAdP.

Figura 14. Diagrama de Clase (3/15) del Sistema SAdP.

Figura 15. Diagrama de Clase (4/15) del Sistema SAdP.

Figura 16. Diagrama de Clase (5/15) del Sistema SAdP.

Figura 17. Diagrama de Clase (6/15) del Sistema SAdP.

Figura 18. Diagrama de Clase (7/15) del Sistema SAdP.

Figura 19. Diagrama de Clase (8/15) del Sistema SAdP.

Figura 20. Diagrama de Clase (9/15) del Sistema SAdP.

Figura 21. Diagrama de Clase (10/15) del Sistema SAdP.

Figura 22. Diagrama de Clase (11/15) del Sistema SAdP.

 

Figura 23  Diagrama de Clase (12/15) del Sistema SAdP.

Figura 24. Diagrama de Clase (13/15) del Sistema SAdP.

 

 

Figura 25. Diagrama de Clase (14/15) del Sistema SAdP.

Figura 26. Diagrama de Clase (15/15) del Sistema SAdP.

 

Diagrama De Secuencia

En este diagrama se busca esquematizar la vida e interacción de los objetos que conforman las instancias de las clases del sistema.

En la siguientes figuras (ver Figura 27 a la Figura 122) se muestran los diagramas de actividades del sistema SAdP.

Operador

 

Figura 27. Diagrama de Secuencia Inicio de Sesión.

Figura 28. Diagrama De Secuencia Acceso a las Administraciones.


Figura 29. Diagrama de Secuencia del Sistema SAdP, Administración del Sistema.

 

Figura 30. Diagrama de Secuencia del Sistema SAdP, Administración de Semestres.

Figura 31. Diagrama de Secuencia Administración de Cargos.

Figura 32. Diagrama de Secuencia Administración de Instituciones.

Figura 33. Diagrama de Secuencia Administración de Estudios.

Figura 34.  Diagrama de Secuencia Administración de Dedicaciones.

Figura 35. Diagrama de Secuencia Administración de Categorías.

Figura 36. Diagrama de Secuencia Administración de Actividades Extra.

Figura 37. Diagrama de Secuencia Administración de Publicaciones.

Figura 38. Diagrama de Secuencia Administración de Permisos.

Figura 39. Diagrama de Secuencia Administración de Amonestaciones.

Figura 40 Diagrama de Secuencia Administración de Códigos Cargos.

Figura 41  Diagrama de Secuencia Administración de Dependencias.

Figura 42. Diagrama de Secuencia Administración de Expedientes.

Diagrama De Despliegue

El diagrama de despliegue muestra la interacción en entre el software y el Hardware de los equipos que lo contienen.

 

Otras Dependencias: Cliente Web

 

Figura 43. Diagrama de Despliegue del Sistema SAdP.

Fase 3: Construcción

En esta fase, se inicia la implementación del sistema como un programa informático, para ello se utiliza como herramienta, un lenguaje que permita codificar el diseño lógico del sistema en una seria de pasos interpretables por el computador. Para esta investigación la solución planteada fue el uso de PHP que es un lenguaje que permite la creación de interfaces Web que cumplen con los estándares de apariencia y usabilidad establecido por Microsoft en sus guías de interfaz de usuario y en sus productos que actualmente posee en el mercado.

La herramienta seleccionada posee como lenguaje para programación un lenguaje que está más cercano al JavaScript o a C.

Durante la fase de construcción se debe seguir el modelo de diseño para la implementación del sistema, dado que este es solo un caso de estudio para el diseño no se desarrollara la etapa de construcción ni la de Pruebas.

CONCLUSIONES

Para el proceso de análisis del sistema se investigaron los procesos administrativos realizados por la delegación de personal, y se encontró que todos eran realizados de manera manual sin presencia alguna automatización de ningún tipo. Se discutió con el Delegado De Personal sobre estos procesos, para su mejor entendimiento y se concluyo que los mismos podían ser automatizados, usando técnicas de procesamiento de información digital.

Para el desarrollo del sistema SAdP se utilizo la metodología del proceso unificado de desarrollo presentada por los expertos en análisis y diseño de software Booch, Rumbaugh y Jacobson (1999). Esta metodología permitió cumplir con los requerimientos de usuario para el sistema, y logrando cumplir con el análisis y diseño del software.

Para el almacenamiento de la información contenida en la base de datos, se usó el esquema lógico relacional de la base de datos, manejada por el manejador de base de datos Firebird.

INFOGRAFIA

Booch, G. Rumbaugh, J. y Jacobson, I. (1999). El Proceso Unificado de Desarrollo de Software. México: McGraw-Hill.

http://www.rational.com

http://es.wikipedia.org/wiki/Active_Server_Pages

http://es.wikipedia.org/wiki/PHP

http://es.wikipedia.org/wiki/XML