• No se han encontrado resultados

Utilización de servicios web en el desarrollo del sistema para el seguimiento y control de textos en la UCLV

N/A
N/A
Protected

Academic year: 2020

Share "Utilización de servicios web en el desarrollo del sistema para el seguimiento y control de textos en la UCLV"

Copied!
74
0
0

Texto completo

(1)UNIVERSIDAD CENTRAL “MARTA ABREU” DE LAS VILLAS Facultad de Matemática, Física y Computación Ingeniería Informática. TRABAJO DE DIPLOMA Utilización de servicios web en el desarrollo del Sistema para el Seguimiento y Control de Textos en la UCLV Autor: Rigoberto Rodriguez Abreu Tutores: Dr. Daniel Gálvez Lio MSc. María Eugenia O’Farrill Pie. 2015.

(2) Declaración Jurada. El que suscribe, Rigoberto Rodriguez Abreu, hago constar que el trabajo titulado Utilización de servicios web en el desarrollo del Sistema para el Seguimiento y Control de Textos en la UCLV fue realizado en la Universidad Central “Marta Abreu” de Las Villas como parte de la culminación de los estudios de la especialidad de Ingeniería Informática, autorizando a que el mismo sea utilizado por la institución, para los fines que estime conveniente, tanto de forma parcial como total y que además no podrá ser presentado en eventos ni publicado sin la autorización de la Universidad.. ________________ Firma del autor Los abajo firmantes, certificamos que el presente trabajo ha sido realizado según acuerdos de la dirección de nuestro centro y el mismo cumple con los requisitos que debe tener un trabajo de esta envergadura referido a la temática señalada.. ___________________________ Firma del Tutor. ____________________________ Firma del Jefe del Laboratorio.

(3) Dedicatoria. A mis padres por todo el esfuerzo y el sacrificio que han tenido conmigo en todos estos años de estudios y por confiar en mí. A todos mis amigos por compartir el tiempo en estos cinco años de la carrea..

(4) Agradecimientos. Al Dr. Daniel Gálvez Lio y la MSc. María Eugenia O’Farrill Pie, tutores de esta tesis, por su excelente conducción científica y por todo el tiempo prestado que hizo posible la realización de este trabajo. A todos mis amigos que me dieron el aliento necesario para seguir adelante en las largas horas de estudio. A Adonnis Almeida Montesino (EL FLACO), a Julio C. Roque Rodríguez (QMAY) y a todos mis compañeros de aula en general. A todas las personas que me conocen y me dieron el aliento a conquistar nuevas metas en mi vida. A mi familia y en especial a mis padres Rigoberto Rodriguez Rodriguez y Sonia Luz Abreu Gutiérrez, por todo el amor que me brindaron en la realización de este trabajo. A mi novia Keylin Domínguez Clavelo por alentarme en cada momento y ayudarme a seguir adelante en los momentos más difíciles. A todos muchas gracias..

(5) Resumen En este trabajo se aborda el problema del control y el seguimiento de los textos en la UCLV. Este es un proceso complejo que involucra a varias áreas entre las que se encuentran las facultades, los centros no docentes y las Facultades Universitarias Municipales (FUM), siendo una de las principales prioridades que tiene el ViceRectorado Docente Educativo. A partir de un conjunto de estudios realizados relacionados con este proceso y la conformación de las necesidades bibliográficas en las facultades se decidió implementar una aplicación web que los modelara y que utilizara información proveniente de una serie de servicios web disponibles. Por este motivo se implementa el sistema para el seguimiento y el control de los textos en la Universidad, que está creado para lograr una adecuada organización, control, planificación y distribución de los libros y una serie de guías que conforman el sistema de textos del Ministerio de Educación Superior (MES)..

(6) Abstract In this project is stated the problem of control and tracking of textbooks in the Central University of Las Villas (UCLV). This is a complex process that involves various areas, included the faculties, not educational centers and the Municipal University Faculties (FUM). It is one of the main priorities that the Vice Rector ship has. Since done studies in relation with this to conform the bibliographic necessity, it was agreed to create an informatics system able to model this problem using web services and to serve as a web application. Then, it is done this system in the University to obtain a good organization, control, planning and distribution of texts and a series of guides that conforms the texts system of the Higher Education Ministry (MES)..

(7) Contenido Introducción ....................................................................................................................... 1 Objetivo general ............................................................................................................. 2 Objetivos específicos ..................................................................................................... 2 Capítulo I. El aseguramiento bibliográfico en la Universidad Central “Marta Abreu” de Las Villas. ................................................................................................................................. 4 I.1 Indicaciones metodológicas relacionadas con la bibliografía .................................... 4 I.1.1 Proceso de seguimiento y control de los textos en la Universidad ......................... 7 I.1.2 Proceso de determinación de la demanda de textos en la Universidad ................. 9 I.2 Análisis de las herramientas precedentes ............................................................... 11 I.2.1 Tecnologías utilizadas en la implementación de SICTEXTO2.0 ................................... 13 I.5 Valoración de las tecnologías en la implementación de SICTEXTO3.0 .................. 14 I.5.1 WebServices .................................................................................................................... 14 I.5.2 Symfony 2.4 como framework de trabajo ....................................................................... 16 I.5.3 PostgreSQL ..................................................................................................................... 20 Capítulo II. Modelado del proceso de seguimiento de los textos en la Universidad y los Requisitos del sistema a desarrollar: ............................................................................... 21 II.1 Modelado del proceso de distribución de libros a las áreas y elaboración de las necesidades bibliográficas utilizando la notación BPMN ............................................. 21 II.1.1 Modelado del proceso de distribución y control de los textos ....................................... 22 II.1.2 Modelado del proceso de determinación de la demanda de los textos .......................... 23 II.1.3 Modelado del proceso de préstamo y devolución de libros a estudiantes y profesores . 24 II.2 Diagramas de casos de uso del negocio ............................................................... 25 II.3 Actores del Sistema ............................................................................................... 28 II.4 Requisitos Funcionales del Sistema ...................................................................... 29 II.5 Requisitos no Funcionales del Sistema ................................................................. 31 II.6 Diagrama de Paquetes .......................................................................................... 32.

(8) II.7 Diagrama de Casos de Uso del Sistema ............................................................... 34 II.8 Descripción de los casos de uso del Sistema ........................................................ 38 II.8.1 Descripción del caso de uso: Gestionar Plan Bibliográfico ........................................... 38 II.8.2 Descripción del caso de uso: Visualizar Módulo de Textos .......................................... 40 Capítulo III. Descripción de la propuesta de solución ...................................................... 42 III.1 Arquitectura Orientada a Servicios ........................................................................ 42 III.1.1 Creación de los Servicios web ...................................................................................... 43 III.2 Diagrama de clases para el caso de uso Gestionar Plan Bibliográfico ................. 45 III.3 Diagrama de secuencia ........................................................................................ 46 III.4 Diseño de la base de datos ................................................................................... 48 III.4.1 Modelo conceptual de datos ......................................................................................... 49 III.5 Modelo de componentes ....................................................................................... 50 III.6 Diagrama de despliegue ....................................................................................... 51 III.6.1 Configuración de las conexiones al Gestor de Base de Datos y a los Servicios Web .. 53 Capítulo IV. Validación de la solución propuesta ............................................................. 56 IV.1 Introducción de los datos iniciales a la Base de Datos del Sistema ......................... 56 IV.2 Casos de Pruebas realizadas al software ............................................................. 58 Conclusiones................................................................................................................ 60 Recomendaciones ....................................................................................................... 61 Anexos1 ....................................................................................................................... 62 Anexos2 ....................................................................................................................... 63 Referencias biográficas ................................................................................................ 64 Bibliografías ................................................................................................................. 65.

(9) Introducción El Ministerio de Educación Superior (MES) tiene entre sus prioridades el aseguramiento del cubrimiento bibliográfico de las diferentes carreras que se ejecutan en los Centros de Enseñanza Superior (CES) y las Facultades Universitarias Municipales (FUM) del país. El Plan Nacional de Publicaciones del MES, elaborado en base a las necesidades de textos reportadas por cada CES, sirve de base para la impresión y posterior distribución de los textos. Para manejar informativamente este proceso el MES cuenta con el software TextSol el cual termina su accionar cuando los libros de textos son distribuidos a los diferentes CES. El seguimiento al texto desde que llega a la universidad hasta que esté en manos de los estudiantes, es una de las prioridades que tiene el Vicerrectorado Docente Educativo de la UCLV. En este proceso se ven involucrado personal de diferentes áreas entre las que se encuentra: el almacén ATM, el Vicerrectorado Docente Educativo, las facultades, las FUM y otros centros receptores de libros como la Biblioteca o Centros de Estudio/Investigación. En junio de 2010 se desarrolló el primer trabajo acerca de esta problemática (Sánchez, 2010). En ese trabajo se obtuvo una herramienta completamente implementada en php del lado del servidor y del lado del cliente se utilizaron los lenguajes HTML, CSS y JavaScript. En junio de 2013 se desarrolló el segundo trabajo relativo a esta problemática (González, 2013). En este trabajo se siguió utilizando los lenguajes HTML, CSS y JavaScript del lado del cliente y del lado del servidor se utilizó el lenguaje php, pero esta vez se implementó con ayuda del marco de trabajo Symfony. Aunque en ambos trabajos se reportan pruebas al sistema con resultados satisfactorios, estos no se desplegaron y no fueron utilizados por los usuarios finales, por lo que el control y seguimiento de los textos que arriban a nuestra universidad sigue siendo un problema a resolver. EL CEI y la facultad de MFC están definiendo una política para el desarrollo de sus aplicaciones informáticas a través de servicios web como se analiza y discute en el 1.

(10) trabajo (Cabrera and Hernández, 2014). El uso de servicios web (Corporation, 2006) está bastante difundido como arquitectura para el desarrollo de aplicaciones con distintos niveles de integración y sobre todo abiertas que permitan a desarrollos futuros acoplarse, reusar y extender los servicios ya desarrollados.. Objetivo general . Implementar. un. sistema. computacional. para. el. seguimiento. y. control. automatizado de los textos, usando servicios web y garantizando el cumplimiento de las políticas para el desarrollo de aplicaciones informáticas en el CEI, la Facultad y la Universidad.. Objetivos específicos . Rediseñar una base de datos para el control de textos, a partir de la información que se necesita en el CES.. . Diseñar los servicios web necesarios para abordar el desarrollo del sistema para el seguimiento y control automatizado de los textos.. . Desarrollar los servicios web definidos.. . Implementar el sistema para el seguimiento y control automatizado de los textos, usando los servicios web implementados.. Este trabajo se justifica a partir de la necesidad de informatizar el proceso de seguimiento y control de los textos que arriban a la UCLV hasta que los mismos son ubicados en las facultades para su distribución a los estudiantes y del proceso de elaboración de las necesidades de textos de las facultades, FUM y otras áreas que se integran a nivel de Universidad y se envía al MES para su inclusión en el Plan Nacional de Publicaciones. Desde el punto de vista de la tecnología utilizada, los servicios web facilitan una mayor flexibilidad en la construcción de aplicaciones, interoperabilidad entre aplicaciones sin importar el lenguaje de programación que se utilice para su 2.

(11) implementación, lo que garantiza la reutilización de los mismos y además su empleo forma parte de la estrategia de informatización del CEI y otras áreas universitarias. El presente trabajo consta de cuatro capítulos. En el capítulo 1 se recoge toda la información referente a las carreras y a su bibliografía, al proceso de seguimiento de los libros dentro de la universidad y también se analizan los sistemas precedentes a este trabajo. Se abordan las tecnologías que serán empleadas para darle una solución computacional. En el capítulo 2 se hace referencia a todo el proceso relacionado con el negocio, actores y casos de usos del negocio, las reglas del negocio y el modelado del proceso actual. También se analizan los requisitos funcionales y no funcionales del sistema a desarrollar así como los actores y caso de uso del sistema. En el capítulo 3 se trata lo referente al proceso de implementación de la aplicación y se abordan temas como la arquitectura del sistema a desarrollar, los diagramas de clases de la aplicación, la creación de los servicios web, los diagramas de secuencia para los casos de uso seleccionados entre otros aspectos. En el capítulo 4 se aborda el tema relacionado con las herramientas implementadas para el poblado de la base de datos del sistema y de las pruebas realizadas a la aplicación para comprobar los datos cargados.. 3.

(12) Capítulo I. El aseguramiento bibliográfico en la Universidad Central “Marta Abreu” de Las Villas. En este capítulo se abordan temas como la descripción detallada de los procesos de seguimiento del texto en la Universidad, así como los sistemas ya existentes vinculados al campo de acción, realizando un análisis de los mismos. También se analizan las tecnologías que se utilizarán en la implementación del nuevo sistema y las ventajas de las mismas.. I.1 Indicaciones metodológicas relacionadas con la bibliografía La problemática del aseguramiento bibliográfico de las diferentes carreras ha sido, desde hace varios cursos, un tema de análisis a todos los niveles en el Ministerio de Educación Superior. Las primeras indicaciones que permitían normar con rigor la actividad del manejo de los textos, para garantizar el adecuado aseguramiento bibliográfico de las asignaturas, a las que se ha tenido acceso datan de 2003. Muchos de los elementos contenidos en esas indicaciones aún tienen vigencia, otros han sido modificados por resoluciones posteriores. Los diferentes procesos de actualización de los planes de estudio de las carreras, en particular, del plan bibliográfico provocan modificaciones de los textos básicos a utilizar y en ocasiones el país carece de condiciones para mantener los niveles de producción de textos o la inmediatez de su producción de manera que se garantice el aseguramiento bibliográfico de las carreras. Es por ello que han surgido estrategias en el perfeccionamiento de los planes bibliográficos, tanto en los aspectos conceptuales como en la racionalización de los textos básicos por carrera. Se introduce el concepto de disponibilidad bibliográfica, por el cual se entiende la posibilidad de que el texto básico, los textos complementarios, la literatura auxiliar u otros materiales necesarios en una asignatura se encuentren en soporte electrónico, colocados en la red, accesibles a todos los estudiantes, lo cual permite garantizar el aseguramiento bibliográfico, el nivel de actualización de las asignaturas y la satisfacción de las necesidades de los estudiantes. En este sentido los colectivos de asignaturas, disciplinas y carreras tienen el papel 4.

(13) protagónico y la responsabilidad de lograr un nivel adecuado de información a los estudiantes de la situación del aseguramiento bibliográfico aunando acciones a nivel de CES como se reclama en [VRAO-229 en la intranet viceministro] y en la nota a los rectores enviada por el entonces Ministro de Educación Superior [carta ministro 29/dic/2009] en la que se refuerza, con un grupo de actividades, el proceso de gestión y control de la situación de los textos en los CES para el curso 2010/2011.. En diferentes indicaciones metodológicas del Vice Rectorado Docente Educativo (VRDE), relacionadas con la bibliografía de las carreras de la Universidad Central “Marta Abreu” de Las Villas, se dan una serie de orientaciones que deben ser cumplidas por todas las áreas implicadas en el aseguramiento bibliográfico y control del libro universitario. Estas indicaciones se van modificando y no en pocas ocasiones las informaciones que fluyen cambian, incluyendo el formato en que deben enviarse dichas informaciones. Sin embargo, la aspiración de lograr niveles adecuados de satisfacción de los estudiantes con la bibliografía en todas las asignaturas, no está resuelto. De una parte, la existencia de un conjunto de factores que hoy afectan este propósito, entre los cuales pueden mencionarse la llegada tardía de los libros procedentes de los poligráficos y la Empresa Nacional de Producciones y Servicios de la Educación Superior (ENPSES) a la Universidad, la demora en la distribución por ATM de los libros a los puntos de préstamos de la sede central y las FUM, el módulo de texto que debe ser entregado en cada semestre a los estudiantes, no se entrega, o se entrega tarde y en ocasiones de forma inadecuada en el punto de préstamo, la existencia de textos en los puntos de préstamos sin estar incluidos en los módulos de textos y la poca exigencia de los departamentos docentes para que sus profesores garanticen el aseguramiento bibliográfico de cada una de las asignaturas impartidas y utilicen adecuadamente los libros disponibles en el punto de libros. Por otra parte, el estudiante sigue identificando como resuelto el problema de la bibliografía de una asignatura, solo cuando dispone de un texto en sus manos, para su uso exclusivo, por lo que ha interpretado que una de las. 5.

(14) cualidades de un profesional de estos tiempos es la capacidad de gestionar su propia información a través de la información a su alcance en la red. En todo caso siempre se ha considerado un conjunto de áreas universitarias involucradas en el proceso de seguimiento y control del texto, cada una de las cuales tiene responsabilidad sobre este proceso de estricto cumplimiento. Entre esas áreas están: - ATM: responsable de la recepción y distribución interna en el CES y las FUM de los textos. - VRDE: responsable de todo el proceso dentro del CES y de gestionar las necesidades bibliográficas con el MES. - Las Facultades y las FUM: responsables de la coordinación entre factores para la entrega de los módulos de textos a los estudiantes y de las necesidades de textos al VRDE. - El punto de préstamos de libros: responsable por el cuidado, conservación y protección de todos los libros existentes en el mismo; así como de tener actualizada toda la documentación establecida para este fin y de realizar los préstamos de los textos a los estudiantes y profesores. - El colectivo de carrera: velar por el cumplimiento del plan bibliográfico y su actualización en correspondencia con la CNC, actualizar el módulo de textos y otras informaciones de control relativas a los libros a nivel de asignaturas y disciplinas. - El departamento docente: exigir a sus profesores el aseguramiento bibliográfico de la asignatura que imparte, utilizando para ello todas las fuentes y vías disponibles, incluyendo la búsqueda de información por parte de los estudiantes en aquellos casos en que se requiera. - El colectivo de año: realizar el análisis del aseguramiento bibliográfico del año y tomar las medidas que se sean necesarias para garantizarlo, manteniendo informados a estudiantes y profesores. 6.

(15) - El profesor: planificar el uso adecuado de los textos en la asignatura que imparte, evitando el exceso de información no esencial para los objetivos de la asignatura, debe dar una información detallada de la situación de su asignatura en cuanto a la bibliografía. - La Federación de Estudiantes Universitarios (FEU) y la Unión de Jóvenes Comunistas (UJC) de cada grupo: participar activamente en la precisión, ejecución y control de cada una de las acciones que se llevarán a cabo para el aseguramiento bibliográfico en cada una de las asignaturas, contribuir a que los estudiantes tengan toda la información necesaria acerca de la bibliografía disponible en cada asignatura y de otras acciones y actividades relacionadas con los textos. En el capítulo I de (Sánchez, 2010) se hace un resumen bien detallado de las responsabilidades a asumir por cada una de las áreas universitarias, factores institucionales y organizaciones en el proceso de seguimiento y control del libro de texto.. I.1.1 Proceso de seguimiento y control de los textos en la Universidad El proceso de seguimiento de los textos en la UCLV comienza por el departamento de ATM cuando este recibe los libros provenientes del Ministerio de Educación Superior (MES). En este momento se llena el informe de recepción por duplicado con los datos correspondientes al texto recibido y se informa al Puesto de Dirección del libro del Vice Rectorado Docente Educativo (VRDE) del arribo de los textos (se envía uno de los informes de recepción). Este Puesto de Dirección del libro en el VRDE 1 recibe los informes de recepción de los libros de ATM y realiza su distribución, teniendo en cuenta las necesidades bibliográficas declaradas por cada una de las áreas universitarias. Esta información se coloca en los vales de entrega que se envían al departamento de ATM para que realice la distribución física de los libros a las áreas. En el almacén, perteneciente a ATM, se hace el pre despacho de los textos a partir de los vales de. 1. Al Puesto de Dirección del Libro perteneciente al VRDE se le referencia en este documento como VRDE.. 7.

(16) entrega y se espera por la distribución de los libros a los puntos de préstamos, la cual se hace acompañada de la factura para el control económico de ese medio de rotación. En cada punto de préstamo de las facultades, el encargado recibe los textos, los clasifica e incluye esos nuevos títulos recibidos en el libro de control de entrada de texto, con todos los datos correspondientes y actualiza el libro de control de existencias físicas (inventario del punto de préstamos de libros). Además, informa a la dirección del área del arribo de los libros (título de cada texto y cantidad de cada uno). A su vez la dirección del área analiza a que carrera de las atendidas por ella le corresponde cada uno de los títulos recibidos e informa al correspondiente departamento carrera de todos los datos de los libros. En el departamento carrera se informa a los profesores jefes de disciplinas y de asignaturas que analicen las asignaturas en las que el libro se pueda emplear, generalmente se les orienta que pasen por el punto de libros a revisar físicamente el libro y sus contenidos. Cuando se toma la decisión de incorporar el texto a alguna asignatura, el profesor responsable de esa asignatura lo reporta a la disciplina y esta al coordinador de carrera, tomándose un acuerdo a este nivel y se incorpora al Plan Bibliográfico. Si la asignatura está impartiéndose en ese momento el profesor y las organizaciones estudiantiles ejecutan las coordinaciones con el punto de préstamo para la entrega inmediata del texto a los estudiantes, sino se tiene en consideración para la entrega del módulo de texto en el próximo semestre. En el punto de préstamos de cada área se realizan dos procesos masivos de préstamos de textos a los estudiantes, uno en cada semestre que se corresponde con la entrega del módulo de texto a los estudiantes. Cada una de estas entregas se planifican y coordinan entre los diferentes factores y el estudiante acude al punto de libros a recibir los libros contemplados en su módulo de textos en la fecha programada, para lo cual el personal que atiende el punto de préstamo recibe con anterioridad la información del módulo de texto y el listado de estudiantes por carrera y años académicos. También es posible que en el punto de préstamos se realicen préstamos individuales a estudiantes y profesores de libros según sus intereses y/o necesidades, para lo cual el encargado del punto de. 8.

(17) libro solicita al estudiante o profesor ciertos datos para proceder a efectuar el préstamo y se registran en el libro de control de préstamos. El colectivo de año debe realizar el análisis del aseguramiento bibliográfico del año a partir del momento en que el módulo de texto es entregado a los estudiantes, analizando la proporción de estudiantes por libro para cada uno de los textos utilizados en el año y planeando un conjunto de acciones del colectivo en función de mejorar esa situación cuando sea preciso, así como manteniendo informados a los estudiantes y al colectivo de carrera del estado del aseguramiento bibliográfico en el año y de las medidas tomadas. Esta información permite al colectivo de carrera mantener actualizado el plan bibliográfico de la carrera e interactuar con la CNC en los procesos de actualización del mismo y también para llenar el Modelo 223.100 donde se refleja el cubrimiento bibliográfico de la carrera. Al finalizar cada semestre se realiza el proceso de recogida de préstamos por parte del personal del punto de libros, en este proceso los estudiantes devuelven los libros recibidos como parte de su módulo de texto y el encargado del punto de libros debe verificar las posibles pérdidas y/o deterioro de los libros, tomando las medidas orientadas a esos efectos y actualizando el inventario de libros existente en el punto. Este proceso de recogida de texto debe ser planificado por la dirección del área teniendo en cuenta el grafico docente de cada carrera.. I.1.2 Proceso de determinación de la demanda de textos en la Universidad El proceso de determinación de la demanda de textos se realiza entre los meses de abril y mayo, según las orientaciones del VRDE, consiste en la determinación de las necesidades de textos para el próximo curso por cada una de las carreras de un CES, esas necesidades se calculan por cada carrera, se consolidan en cada una de las áreas universitarias que atienden carreras, entiéndase facultades y FUM, y se elevan al Puesto de Dirección del libro en el VRDE de cada CES, quien es el encargado de conciliarlas y enviarlas al Puesto de Dirección del libro del MES. Si todo el proceso funciona 9.

(18) correctamente los libros demandados durante un curso deben arribar al CES para ser distribuidos en el próximo curso docente. Este proceso parte de la base que se cuenta con el inventario de los textos en el punto de préstamos, el plan bibliográfico actualizado según la CNC y el pronóstico de matrícula por años de cada carrera para el próximo curso académico. El cubrimiento bibliográfico de cada asignatura de una carrera dada puede ofrecer una idea de la situación con cada texto en el curso actual. Si no se cuenta con la información indicada anteriormente deben llevarse a cabo las acciones necesarias para obtenerla. Es además un proceso en el que el responsable del punto de libro, el VDD o subdirector de la FUM y los jefes de carreras interactúan intensamente para poder llevarlo a cabo. Como resultado del mismo se obtiene la información siguiente: -. Demanda de textos para el próximo curso. La demanda de los textos se calcula a nivel de facultades y se consolida en el Puesto de Dirección del Libro en el VRDE para ser enviadas al MES con el objetivo de satisfacer completamente la distribución de los libros a los estudiantes en el próximo curso.. -. Relación de Títulos Ociosos. Los libros ociosos en el almacén del punto de préstamos son aquellos que no se utilizan en ninguna carrera de las que se imparten en la facultad correspondiente.. -. Relación de Títulos en Exceso. Los libros en exceso son los que se utilizan en las carreras de una facultad y son entregados a los estudiantes y aún así su existencia prevalece en el almacén del punto de préstamo de la facultad.. -. Relación de Títulos deteriorados.. 10.

(19) Los libros deteriorados son aquellos que se encuentran en el punto de préstamos de las facultades y ya no es posible su utilización por el estado de deterioro que presentan los mismos. -. Plan de ediciones internas del área universitaria (Facultad o FUM).. La mayoría de la información anterior es colocada en el Modelo 223.100 que debe ser entregado por cada área universitaria (en coordinación con cada una de las carreras que atiende) al VRDE y este a su vez consolidarlo y enviarlo al MES. Durante el proceso del traslado de los libros desde el MES a la Universidad y de la distribución de estos a cada una de las áreas, puede ocurrir pérdida o deterioro de los mismos lo que afectaría el cubrimiento bibliográfico a las carreras que solicitaron dicho texto. Para ello el VRDE al enviar las necesidades bibliográficas al MES para el próximo curso, incorpora un 20% por encima de la demanda total de cada libro a solicitar, disminuyendo la probabilidad de que ocurra déficit de textos en el aseguramiento bibliográfico a las carreras de cada facultad.. I.2 Análisis de las herramientas precedentes En el trabajo precedente realizado en el 2010 (Sánchez, 2010) se implementó una herramienta que cuenta con funcionalidades para seis actores como son: Administrador, ATM, Vicerrectorado docente, Vicedecano docente, Coordinador de Carrera y Punto de libros. Se utilizó para su implementación en el lado del servidor el lenguaje php y del lado del cliente html, css y JavaScript. En el trabajo que se realizó en el 2013 (González, 2013) se obtuvo una herramienta que continuó utilizando php para su implementación del lado del servidor y html, css y JavaScript para la parte del cliente. Además se utilizó el framework de trabajo Symfony para organizar y agilizar el proceso de implementación de las funcionalidades de la misma y se mantuvieron los mismos actores que la versión anterior. Al realizar un estudio de los sistemas precedentes se llegó a la conclusión de que en estos no se implementaron todas las funcionalidades que deben corresponder con el 11.

(20) proceso de negocio actual y se encontraron algunos elementos que presentan dificultades los cuales serán descritos a continuación. En el trabajo del 2010 se constata que en el diseño de la base de datos se incluyen un conjunto de tablas que permitirían almacenar la información referente al plan bibliográfico de cada uno de los planes de estudio de las diferentes carreras, sin embargo en el software no se tiene ninguna opción que permita visualizar dicha información. Con respecto al módulo de textos no se tiene la opción mediante el sistema de confeccionar el mismo y la tabla que almacena dicha información, aunque aparece en la base de datos, no se llena en ningún momento. Realizando un estudio del trabajo precedente desarrollado en el año 2014 y de los distintos procesos relacionados con el control y seguimiento de los libros en la Universidad se llegó a la conclusión de que no se implementaron algunos de estos procesos en dicho trabajo. No se garantiza a través del sistema un control referente a los préstamos de libros a estudiantes y profesores en los puntos de préstamos de cada facultad, no existe la posibilidad que el encargado del punto de libro pueda acceder de manera íntegra al módulo de textos a entregar a un estudiante según su carrera y año. No se implementó en el sistema. la posibilidad de obtener de forma automática la. existencia física en el punto de libros lo que permite agilizar el proceso de inventario en el almacén y llevar un control más eficiente de los textos. Al no gestionar parte de la información base como la relacionada con el cubrimiento bibliográfico a un grupo de una carrera determinada no es posible calcular las necesidades bibliográficas teniendo en cuenta el pronóstico de la matrícula del próximo curso para dicho grupo. No es posible, a través de ese sistema, la obtención de los libros que se encuentran ociosos y listado de libros dado de bajas en el punto de libro de un área determinada. Los sistemas anteriores no se llegaron a desplegar en la UCLV para permitir que los usuarios finales hicieran una evaluación de los mismos y obtuvieran un manejo de la información a través de estos. Se consideraron sistemas monolíticos ya que todo el código utilizado para la implementación de las funcionalidades de los mismos estaba presente en el propio sistema. Esto trae como consecuencia que cualquier cambio que 12.

(21) ocurra en el proceso de negocio hay que reestructurar el código de la aplicación para su correcto comportamiento. También es más difícil de reutilizar en otros sistemas las funcionalidades que brindan estas aplicaciones.. I.2.1 Tecnologías utilizadas en la implementación de SICTEXTO2.0 A continuación se describen las tecnologías que se utilizaron en la implementación de la versión 2.0 de SICTEXTO. I.2.1.1 Symfony como framework de trabajo En la herramienta precedente realizada en el 2013 se utilizó la versión 1.5 de Symfony. Este es un marco de trabajo diseñado para optimizar el desarrollo de las aplicaciones web. Según (González, 2013) este separa la lógica de negocio, la lógica de servidor y la presentación de la aplicación web. Proporciona varias herramientas y clases encaminadas a reducir el tiempo de desarrollo de una aplicación web compleja. Además, automatiza las áreas más comunes, permitiendo al desarrollador dedicarse por completo a los aspectos específicos de cada aplicación. 1.2.1.2 Doctrine Para mapear en el sistema desarrollado anteriormente cada una de las tablas de la base de datos y trabajar con un esquema de la misma como si fuese un conjunto de objetos se utilizó Doctrine que es una librería para PHP que proporciona esas facilidades. De esta manera se realizaron las tareas fundamentales sobre la base de datos utilizando esta librería. I.2.1.3 PostgreSQL Como gestor de base de datos en el desarrollo de la aplicación anterior se utilizó PostgreSQL. Es el sistema de gestión de bases de datos de código abierto más potente del mercado, utiliza un modelo cliente/servidor y usa multiprocesos en vez de multihilos para garantizar la estabilidad del sistema lo que garantiza según (González, 2013) que en caso de ocurrir un fallo en uno de los procesos no afectará el resto y el sistema continuará funcionando. 13.

(22) I.5 Valoración de las tecnologías en la implementación de SICTEXTO3.0 Una vez finalizado el estudio de las tecnologías utilizadas en la implementación de la versión 2.0 de SICTEXTO se llegó a la conclusión que se seguirá utilizando PostgreSQL como sistema gestor de base de datos, symfony como framework de trabajo pero esta vez en una versión más actualizada, la versión 2.4 y Doctrine para generar de forma automática del modelo de clases basando en el modelo relacional de tablas de la base. Además se identificaron nuevas tecnologías y herramientas que serán descritas a continuación.. I.5.1 WebServices Se decide utilizar en el desarrollo de este trabajo el uso de servicio web ya que es una tecnología que maneja un conjunto de protocolos y estándares que sirven para intercambiar datos entre aplicaciones, desarrolladas en distintos lenguajes de programación y ejecutadas sobre cualquier plataforma. La interoperabilidad entre las aplicaciones se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la arquitectura y reglamentación de los servicios Web. Para mejorar la interoperabilidad entre distintas implementaciones de servicios Web se ha creado el organismo WS-I, encargado de desarrollar diversos perfiles para definir de manera más exhaustiva estos estándares. Es una máquina que atiende las peticiones de los clientes web y les envía los recursos solicitados.. 14.

(23) Figura I-1 Simbología de servicios web. Para describir cada uno de los servicios web se utiliza WSDL (Web Services Definition Language) que no es más que una descripción pública de los mismos. Está basado en XML y describe la forma de comunicación, es decir, los requisitos del protocolo y los formatos de los mensajes necesarios para interactuar con los servicios listados en su catálogo. En este archivo se encuentra qué información debe ser enviada al servicio, qué información devuelve el servicio y dónde encontraremos el servicio en primer lugar. La ventaja principal, además de eliminar ambigüedad, es el estándar de hecho y está en XML, puede ser leído por máquinas hasta tal punto que permite crear clientes de forma automática. La principal razón para usar servicios Web es que se pueden utilizar con HTTP sobre TCP (Transmission Control Protocol) en el puerto 80. Dado que las organizaciones protegen sus redes mediante firewalls que filtran y bloquean gran parte del tráfico de 15.

(24) Internet, cierran casi todos los puertos TCP salvo el 80, que es, precisamente, el que usan los navegadores. Los servicios Web utilizan este puerto, por la simple razón de que no resultan bloqueados. Es importante señalar que los servicios web se pueden utilizar sobre cualquier protocolo, sin embargo, TCP es el más común. Otra razón por la que los servicios Web son muy prácticos es que pueden aportar gran independencia entre la aplicación que usa el servicio Web y el propio servicio. De esta forma, los cambios a lo largo del tiempo en uno no deben afectar al otro. Esta flexibilidad será cada vez más importante, dado que la tendencia a construir grandes aplicaciones a partir de componentes distribuidos más pequeños es cada día más utilizada. I.5.1.1 Ventajas de la utilización de los servicios web A continuación veremos algunas de las ventajas que trae consigo la utilización de servicios web en aplicaciones . Aportan interoperabilidad entre aplicaciones de software independientemente de sus propiedades o de las plataformas sobre las que se instalen.. . Los servicios Web fomentan los estándares y protocolos basados en texto, que hacen más fácil acceder a su contenido y entender su funcionamiento.. . Permiten que servicios y software de diferentes compañías ubicadas en diferentes lugares geográficos puedan ser combinados fácilmente para proveer servicios integrados.. I.5.2 Symfony 2.4 como framework de trabajo Como había comentado en el epígrafe anterior se va a seguir utilizando el framework de trabajo Symfony (Eguiluz, 2013), esta vez en su versión 2.4, la cual proporciona algunas mejoras sobre la versión antes utilizada lo cual permitirá un mejor desempeño del sistema a implementar. I.5.2.1 Facilidades de Symfony Symfony fue creado para que se ajustara a los siguientes requisitos:. 16.

(25) . Independiente del sistema gestor de bases de datos. . Sencillo de usar en la mayoría de casos, pero lo suficientemente flexible como para adaptarse a los casos más complejos. . Basado en la premisa de "convenir en vez de configurar", en la que el desarrollador solo debe configurar aquello que no es convencional. . Sigue la mayoría de mejores prácticas y patrones de diseño para la web. . Preparado para aplicaciones empresariales y adaptable a las políticas y arquitecturas propias de cada empresa, además de ser lo suficientemente estable como para desarrollar aplicaciones a largo plazo. . Código fácil de leer que incluye comentarios de php Documentor y que permite un mantenimiento muy sencillo. . Fácil de extender, lo que permite su integración con librerías desarrolladas por terceros. . Cuenta con una gran cantidad de referencias, entre ellas contamos con intranets corporativas, redes sociales, sitios de la comunidad, sitios para el público en general, etc. Ejemplos no faltan como son en el caso de Yahoo, Dailymotion, Opensky.com, Exercise.com e incluso aplicaciones como phpBB y Drupal.. I.5.2.2 Mejoras de la versión 2.4 de Symfony sobre la versión 1.5 A partir de la versión 2.0 se comenzó a incluir un motor de plantillas llamado twig. Las plantillas creadas con Twig son concisas, bonitas y fáciles de entender. Ayuda al diseñador del sitio a crear una vista más agradable de la aplicación. En cuanto al aspecto de seguridad en la versión 1.5 se añadían plugins para agregarle seguridad al sitio mientras que en la versión 2.4 ya lo tiene todo incluido, se puede proteger la parte de administración del sitio con usuarios y contraseñas y añadirle a los usuarios un rol determinado para que este pueda acceder solo a la información que le corresponde 17.

(26) dentro del sitio. En cuanto a la flexibilidad en Symfony 1.5 se dice que es bastante flexible mientras que en la versión 2.4 es muy flexible, no hay nada que no se pueda cambiar en esta versión del framework. El rendimiento en la versión 2.4 es mucho mejor ya que se guardan archivos de caché para todo lo que se hace dentro del proyecto trayendo consigo un acceso más rápido a las funcionalidades de la aplicación. También la versión 2.4 incluye el uso de formularios lo que hace que se simplifiquen cosas como la validación de los mismos. I.5.2.3 El paquete BeSimpleSoapBundle para Symfony El paquete BeSimpleSoapBundle es un paquete que nos permite construir servicios SOAP vasados en web services (Symfony, 2014) desde aplicaciones desarrolladas en Symfony. Para ello se incorpora este paquete en la aplicación y luego de una serie de configuraciones se puede implementar desde Symfony servicios web. A través de este paquete se puede realizar el manejo de varios tipos de datos entre los que se encuentra los de tipo string, boolean, int, float, date time Object entre otros. Para la especificación del tipo de dato de entrada a un método, el tipo de dato que devuelve y el propio nombre del método se utilizan anotaciones en las clases donde se maneja la información que va a devolver el servicio. Estos datos se guardan en el archivo wsdl generado por el paquete BiSimpleSoapBundle el que permite realizar una descripción pública del servicio implementado. A continuación se muestra un ejemplo de una anotación utilizada en una clase que controla los datos a devolver en un servicio web.. 18.

(27) Cada uno de los elementos de la anotación describe los elementos fundamentales a la hora de generar el archivo wsdl que va a realizar de forma pública una descripción del servicio web.. -@Soap\Method("hello"): Define el nombre que tendrá el método en el archivo wsdl generado. -@Soap\Param("names", phpType = "string[]"): Se especifica el parámetro de entrada al método. -@Soap\Result(phpType=string"): Es el tipo de dato que va a devolver el servicio web creado. I.5.2.4 Doctrine Para obtener desde la aplicación Symfony un mapeo de las tablas de la base de datos a utilizar se continuará utilizando Doctrine como en la versión anterior del sistema. Doctrine está inspirado en Hibernate, que es uno de los ORM más populares y grandes que existen y nos brinda una capa de abstracción de la base de datos muy completa. La característica más importante es que te da la posibilidad de escribir consultas de base de datos en un lenguaje propio llamado Doctrine Query Language (DQL). Cuando se trabaja con ORM, necesitas crear el conjunto de clases que representa el modelo de la aplicación, luego estas clases serán vinculadas al esquema de la base de datos de forma automática con un motor ORM. Aunque son cosas diferentes, cuando se diseña un modelo relacional y un modelo de clases, suelen ser muy parecidos. Doctrine aprovecha esta similitud y permite generar de forma automática el modelo de clases basándose en el modelo relacional de tablas. Es decir, si tenemos una tabla llamada usuarios, se autogenerará una clase llamada Usuarios cuyas propiedades son las columnas de dichas tablas (SENSIOLABS, 2009). 19.

(28) I.5.3 PostgreSQL Como gestor de base de datos a utilizar en la implementación del nuevo sistema se decidió seguir utilizando PostgreSQL por las características que presenta el mismo. Este gestor es totalmente compatible con ACID, tiene soporte completo para claves foráneas, uniones, vistas, disparadores y procedimientos almacenados (en varios lenguajes). Incluye la mayoría de los tipos de datos del SQL 2008, incluyendo INTEGER, numérico, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL, y TIMESTAMP. También soporta almacenamiento de objetos binarios grandes, como imágenes, sonidos o vídeo. Cuenta con interfaces nativas de programación para C/C++, Java, Perl, Python, Ruby, Tcl, ODBC, entre otros, y la documentación que actualmente existe es realmente excepcional.. 20.

(29) Capítulo II. Modelado del proceso de seguimiento de los textos en la Universidad y los Requisitos del sistema a desarrollar: En el presente capítulo se abordará el tema del modelado del negocio y la presentación de los requisitos del sistema. Para ello se utilizó la notación UML que no es más que un lenguaje gráfico para especificar, construir, visualizar y documentar las partes o artefactos (información que se utiliza o produce mediante un proceso de software). Se brindan elementos como son: modelo de casos de uso del sistema, el modelado del proceso de negocio actual, se describen los casos de usos más significativos y se muestran elementos como son requisitos funcionales y no funcionales del sistema a desarrollar.. II.1 Modelado del proceso de distribución de libros a las áreas y elaboración de las necesidades bibliográficas utilizando la notación BPMN Un Diagrama de Procesos de Negocio es una notación gráfica estandarizada que permite el modelado de procesos de negocio, en un formato de flujo de trabajo. BPMN fue inicialmente desarrollada por la organización Business Process Management Initiative (BPMI), y es actualmente mantenida por el OMG (Object Management Group). El principal objetivo de BPMN es proveer una notación estándar que sea fácilmente legible y entendible por parte de todos los involucrados e interesados del negocio. Entre estos interesados están los analistas de negocio (quienes definen y redefinen los procesos), los desarrolladores técnicos (responsables de implementar los procesos) y los gerentes y administradores del negocio (quienes monitorean y gestionan los procesos). En síntesis BPMN tiene la finalidad de servir como lenguaje común para cerrar la brecha de comunicación que frecuentemente se presenta entre el diseño de los procesos de negocio y su implementación. A continuación se muestran los diagramas de proceso de negocio correspondientes al proceso de seguimiento y control de los textos y al proceso de determinación de la demanda bibliográfica. 21.

(30) II.1.1 Modelado del proceso de distribución y control de los textos El siguiente modelado del proceso de distribución y control de los textos comienza cuando se reciben en el almacén ATM los libros provenientes del MES. Luego de pasar por una serie de actividades en las que se ven involucrados una serie de actores, este proceso culmina cuando el libro es incorporado al módulo de texto de los estudiantes.. Figura II-2 Diagrama del proceso de negocio Distribución de los textos a las áreas. 22.

(31) II.1.2 Modelado del proceso de determinación de la demanda de los textos El proceso de confección de la demanda comienza cuando el coordinador de carrera y el VDD realizan el pronóstico de la matrícula del próximo curso y la confección del plan bibliográfico respectivamente. Se calcula en el punto de libro el cubrimiento bibliográfico a partir de la información brindada por el VDD y el coordinador de carrera, la que ayuda a calcular cada una de la información que se coloca en el modelo 233.100 para ser enviado al MES.. Figura II-2 Diagrama del proceso de cálculo de las necesidadesbibliográficas. 23.

(32) II.1.3 Modelado del proceso de préstamo y devolución de libros a estudiantes y profesores El siguiente diagrama muestra el proceso de préstamo de libros a estudiantes y profesores en el punto de libro de cada facultad.. Figura II-3 Diagrama del proceso de préstamo de libros a estudiantes y profesores.. 24.

(33) II.2 Diagramas de casos de uso del negocio A continuación se presentan los diagramas de casos de uso del negocio para cada uno de los actores que intervienen en el proceso de seguimiento al libro dentro de la universidad y el proceso de determinación de la demanda, representando las tareas que realizan cada uno de ellos. El actor del negocio ATM realiza las tareas de recibir los libros provenientes del MES, llenar el informe de recepción, recibir el vale de entrega, entre otras actividades.. Figura II-4 Casos de uso del negocio para el actor ATM. El actor Punto de Libros realiza las tareas de recibir libros enviados, actualizar libro de control de existencia física, entregar y recoger módulo de textos a los estudiantes, etc.. 25.

(34) Figura II-5 Casos de uso del negocio para el actor Punto de Libros.. El actor coordinador de carrera es quien incorpora los libros al módulo de textos, calcula las necesidades bibliográficas de su carrera e informa al Jefe de Disciplina de la llegada de los textos al área.. Figura II-6 Casos de uso del negocio para el actor Coordinador de Carrera.. 26.

(35) En el diagrama de caso de uso para el actor Vicedecano Docente se muestran las tareas que realiza el mismo como son analizar textos recibidos para distribuir a carreras, informar al departamento de carrera de la llegada de los textos, enviar necesidades bibliográficas al VRDE, etc.. Figura II-7 Casos de uso del negocio para el actor VDD. El actor VRDE es quien recibe el informe de recepción de los textos provenientes del MES, realiza la distribución teniendo en cuenta las necesidades bibliográficas y envía dichas necesidades al MES.. 27.

(36) Figura II-8 Casos de uso del negocio para el actor VRDE.. II.3 Actores del Sistema Luego de describir cada uno de los casos de uso del negocio para los actores que intervienen en los procesos de seguimiento y control de los libros en la Universidad y del cálculo de las necesidades bibliográficas se decidió mantener cada uno de estos actores del negocio como actores del sistema a desarrollar y además incluir un actor administrador que gestione la información referente a cada uno de estos actores. -Actor ATM Gestionará toda la información referente a los libros que llegan y se encuentran en el Departamento ATM. -Actor Administrador 28.

(37) Gestiona la información del sistema y de cada uno de los usuarios del mismo. -Actor Vicerrectorado Docente Educativo (VRDE) Maneja la información en el Puesto de información del libro en el VRDE. -Actor vicedecano Docente (VDD) Obtiene y gestiona información relacionadas con los textos en cada área universitaria. -Actor Coordinador de Carrera Maneja la información de los libros en la carrera en la que es coordinador. -Actor Punto de Libros Controla los textos en los puntos de préstamos de las facultades y lleva un inventario de los mismos.. II.4 Requisitos Funcionales del Sistema Los requerimientos de un sistema son la descripción de las necesidades o deseo de un producto. La meta primaria de la fase de requerimientos es identificar y documentar lo que en realidad se necesita, en una forma que claramente se lo comunique al cliente y a los miembros del equipo de desarrollo.. R1 Gestionar Clasificación. R2 Gestionar libros. R1.1 Nueva Clasificación. R2.1 Recepcionar libro nuevo. R1.2 Editar Clasificación. R2.2 Recepcionar libro existente R2.3 Editar libro R2.4 Agregar baja de libro. R3 Gestionar usuario. R4 Gestionar libro a carrera. R3.1 Nuevo usuario. R4.1 Asignar libro a carrera. R3.2 Editar usuario. R4.2 Editar asignación de libro a. 29.

(38) carrera. R5 Gestionar área universitaria. R6 Gestionar libro a área. R5.1 Nueva área universitaria. R6.1 Asignar libro a área. R5.2 Editar área universitaria. R6.2 Editar asignación. R7 Reportes R7.1 Libros que están en una carrera. R8 Gestionar tipo de baja. R7.2 Plan Bibliográfico. R8.1 Nuevo tipo de baja. R7.3 Mostrar necesidad (VDD). R8.2 Editar tipo de baja. R7.4 Módulo de Textos a entregar(Punto de Libros) R7.5 Mostrar Módulo de Textos(VDD) R7.6 Mostrar Módulo de Textos(Coordinador de Carrera). R7.7 Obtener libros ociosos (Coordinador de Carrera). R7.8 Libros que están en un área R7.9 Libros dado de bajas en un área R7.10 Libros prestados a estudiantes en un área R7.11 Libros prestados a profesores en un área R9 Gestionar libro a carrera. R10 Gestionar plan bibliográfico. R9.1 Asignar libro a carrera. R10.1 Nuevo plan bibliográfico. R9.2 Editar asignación. R10.2 Editar plan bibliográfico. R11 Gestionar libro otras vías. R12 Gestionar libro a asignatura. 30.

(39) R11.1 Nuevo libro otras vías. R12.1 Nueva asignación. R11.2 Editar libro otras vías. R12.2 Editar asignación. R13 Gestionar préstamo y devolución de libros R13.1 Préstamo de Libros a Estudiantes R13.2 Préstamo de Libros a profesores R13.3 Entrega del módulo de texto a los estudiantes R13.4 Recogida de libros a estudiantes R13.5 Recogida de libro a profesores. II.5 Requisitos no Funcionales del Sistema Identificar los requisitos no funcionales del sistema, como es el caso de las restricciones del entorno, de la implementación, dependencia de la plataforma, rendimiento, facilidad a la hora de realizar mantenimiento e incrementación de este, son aspectos básicos que deben estar claros ya que muchos de estos pueden convertirse en casos de uso del sistema. Estos requisitos no funcionales sirven de guía a los usuarios finales del sistema para poder garantizar un funcionamiento óptimo de este, dándole a los usuarios la garantía de un producto seguro, usable, agradable y conveniente; por lo que debe tener una alta tendencia a ser visitado y usado. A continuación se detallaran los requisitos no funcionales de este sistema: Interfaz del sistema: Este entorno web propuesto debe garantizar una interfaz gráfica. grata para los usuarios finales, además proporcionar una fácil familiarización e interacción usuario-sistema.. 31.

(40) Rendimiento: El tiempo de respuesta no debe excederse del tiempo de espera del. servidor ante cada una de las acciones solicitadas. Se impone condiciones como velocidad, rendimiento, tiempo de respuesta a cada una de las acciones solicitadas por el usuario, encargado del punto de libros y el administrador del mismo. Ayuda y Documentación: Ayuda, documentación y soporte técnico. El sistema debe. brindar en todo momento ayuda y soporte técnico a los usuarios que así lo requieran acorde a las funcionalidades previstas para el mismo. Seguridad: La transmisión debe ser segura, sólo las personas autorizadas pueden tener. acceso a informaciones específicas. Significa que en dependencia del rol que se esté empleando se puede captar información específica.. II.6 Diagrama de Paquetes Un diagrama de paquetes muestra cómo un sistema está dividido en agrupaciones lógicas mostrando las dependencias entre esas agrupaciones. Dado que normalmente un paquete está pensado como un directorio, los diagramas de paquetes suministran una descomposición de la jerarquía lógica de un sistema. Los Paquetes están normalmente organizados para maximizar la coherencia interna dentro de cada paquete y minimizar el acoplamiento externo entre los mismos. Cada paquete puede asignarse a un individuo o a un equipo, y las dependencias entre ellos pueden indicar el orden de desarrollo requerido. A continuación se muestra un diagrama de paquete de la aplicación a implementar. En el paquete resources se encuentran los recursos de la aplicación como son los archivos de enrutamiento para acceder a la ruta deseada por el usuario y todo lo referente a la vista del sistema, archivos css y JavaScript. En el paquete Controller se encontrarán las clases php donde se van a implementar todas las funcionalidades del sistema, de acuerdo con los procesos de negocios explicados en el capítulo anterior. En Servicios se van a tener las clases php que responden a cada uno de los servicios web a implementar. En estas clases es donde se manipula y organiza toda la información que devuelven los servicios solicitados por los clientes, así como el proceso de inserción de 32.

(41) la información en las tablas de la base de datos que le corresponde a cada servicio. En el paquete Util se encontrarán las clases php que nos dan la posibilidad de exportar en un archivo Excel información solicitada por los usuarios como por ejemplo el Plan Bibliográfico de una carrera dada. Entity contendrá las entidades de Symfony que son las encargadas de mapear cada una de las tablas de la base de datos, utilizando Doctrine (WAGE, 2009), para realizar las operaciones básicas sobre estas. Se muestra la dependencia del paquete Entity con Formularios ya que para realizar las operaciones sobre la base de datos a través de las entidades, se utilizan formularios los que se encuentran en este paquete y serán utilizados en dependencia de la operación y sobre la tabla que se vaya a realizar.. Figura II-8 Diagrama de Paquetes.. 33.

(42) II.7 Diagrama de Casos de Uso del Sistema Un caso de uso es un fragmento de funcionalidad del sistema que proporciona al usuario un resultado importante, los casos de usos representan los requisitos fundamentales. A continuación se presenta los diagramas de caso de uso para cada uno de los actores del sistema a implementar: Los usuarios de tipo Punto de Libros pueden prestar libros a estudiantes y a profesores, realizar baja de libros en su almacén ya sea por deterioro o pérdida, acceder de forma directa al módulo de texto a entregar a los estudiantes así como visualizar el inventario del punto de préstamos.. Figura II-9 Casos de uso del sistema para el actor Punto de Libros.. 34.

(43) Los usuarios de tipo administrador pueden añadir, modificar o eliminar información del sistema, entre las que se puede incluir añadir un nuevo usuario, eliminar un área universitaria, modificar la clasificación de los libros, etc.. Figura II-10 Casos de uso del sistema para el actor Administrador.. El usuario de tipo ATM realizará las actividades de gestionar la llegada de los libros provenientes del MES, lo que incluye añadir los libros recibidos al sistema y actualizar la existencia en el almacén ATM. También podrá visualizar los vales de entrega de libros a las áreas universitarias.. Figura II-11 Casos de uso del sistema para el actor ATM. 35.

(44) Los usuarios de tipo coordinador de carrera tienen la opción de Gestionar el Plan Bibliográfico de su carrera, lo que incluye la asignación de los libros a las asignaturas, la introducción en el sistema de textos que no provienen del MES y la modificación del Plan Bibliográfico existente. También tienen la posibilidad de obtener las necesidades bibliográficas, los libros ociosos, así como la visualización de los módulos de textos de su carrera, etc.. Figura II-12 Casos de uso del sistema para el actor Coordinador de Carrera.. El VDD tendrá la posibilidad de visualizar los módulos de textos de las carreras de su facultad, el plan bibliográfico, obtener las necesidades bibliográficas a nivel de facultad y ver los libros que se encuentren ociosos.. 36.

(45) Figura II-13 Casos de uso del sistema para el actor VDD.. Los usuarios de tipo VRDE podrán ver el plan bibliográfico de cualquier carrera de la universidad, gestionar los libros del sistema lo que incluye adicionar nuevos libros, eliminar o modificar los ya existentes, podrá asociar un libro a una o varias carreras, realizar la distribución de los libros a las áreas, etc.. 37.

(46) Figura II-14 Casos de uso del sistema para el actor VRDE.. II.8 Descripción de los casos de uso del Sistema A continuación se describen los casos de uso Gestionar Plan Bibliográfico por el actor Coordinador de Carrera y Visualizar Módulo de Textos por el actor Vice-Decano Docente.. II.8.1 Descripción del caso de uso: Gestionar Plan Bibliográfico Caso de Uso: Gestionar Plan Bibliográfico. Actores: Coordinador de Carrera.. Propósito: Crear, eliminar y editar información referente al plan bibliográfico de una. 38.

(47) carrera.. Acción del Actor. 1. El. usuario. Respuesta del Negocio. selecciona. el. menú. Gestiones del Jefe de Carrera.. 2 El sistema muestra un submenú con cuatro opciones: a). Gestionar plan bibliográfico.. b). Asignar libros a asignaturas de. currículo Optativo/Electivo. c). Obtener Libros ociosos.. Escenario 2b. 3 El. usuario. selecciona la. opción. gestionar plan bibliográfico del menú. 4 El sistema muestra un submenú con tres opciones:. Gestiones del jefe de carrera. a). Asignar textos al currículo base y. currículo propio. b). Adicionar libro procedente de otras. vías. c). Editar Plan Bibliográfico.. Escenario 4a. 5 El usuario selecciona la opción asignar. 6 El sistema muestra una vista con las 39.

(48) textos al currículo base y al currículo. asignaturas del currículo base y propio. propio.. donde se le podrán asignar los textos que tiene asignados esa carrera.. Escenario 4b. 7. El. usuario. selecciona la. opción. 8 El sistema muestra una vista donde se. Adicionar libro procedente de otras vías.. adicionan nuevos libros a la carrera que no provienen del ministerio de educación superior y se utilizan en ella.. Escenario 4c. 9 El usuario selecciona la opción Editar. 10 El sistema muestra una vista donde se. plan bibliográfico.. podrá editar la asignación de un libro a una. asignatura. de. la. carrera. del. coordinador, así como eliminarla para confeccionar un nuevo Plan Bibliográfico.. II.8.2 Descripción del caso de uso: Visualizar Módulo de Textos Caso de Uso: Visualizar Módulo de Textos Actor: Vice-Decano Docente Propósito: Poder visualizar el módulo de textos dado un curso, un semestre, un año y una carrera de la facultad a la que pertenece el Vicedecano Docente. Acción del Actor. Respuesta del Negocio 40.

(49) 1 El usuario selecciona el menú Ver Información. 2 El sistema muestra un submenú con dos opciones: a) Plan Bibliográfico. b)Módulo de Textos.. Escenario 2b. El usuario selecciona la opción Módulo de. El sistema muestra una vista donde el. Textos del menú Ver Información.. usuario selecciona el curso, el semestre, el año y la carrera de la que quiere visualizar el módulo de texto.. El usuario selecciona el botón ver del. El sistema muestra un listado en una tabla. formulario luego de haber seleccionado la. donde se visualiza el módulo de texto. información que desea visualizar.. referente al curso, el semestre, el año y la carrera seleccionada.. 41.

(50) Capítulo III. Descripción de la propuesta de solución En este capítulo se abordan todos los temas relacionados con la propuesta del nuevo sistema, describiendo elementos como la arquitectura que presenta el mismo. También se muestran diagramas de clases, de secuencia y se describe el patrón de diseño utilizado en su implementación. Tendremos la descripción de los servicios web a implementar que brindarán información referente a los libros en la UCLV y la utilización de otros servicios para completar el correcto funcionamiento del sistema como propuesta de solución.. III.1 Arquitectura Orientada a Servicios La arquitectura orientada a servicios (SOA) es un paradigma para diseñar y desarrollar sistemas distribuidos (Schmutz, 2010). Las soluciones SOA han sido creadas para satisfacer los objetivos de negocio las cuales incluyen facilidad y flexibilidad de integración con sistemas legados, alineación directa a los procesos de negocio reduciendo costos de implementación, innovación de servicios a clientes y una adaptación ágil ante cambios incluyendo reacción temprana ante la competitividad. La implementación de la aplicación utilizando la arquitectura SOA nos permite que esta sea altamente escalable ya que refleja partes muy importantes del proceso de negocio y a su vez brinda una forma bien definida de exposición de los servicios, lo cual facilita la interacción entre diferentes sistemas propios o de terceros.. Figura III-1 Arquitectura Orientada a Servicios. 42.

(51) III.1.1 Creación de los Servicios web Para darle cumplimiento a los objetivos de este trabajo, se crearán un conjunto de servicios web relacionados con la bibliografía dentro de la universidad. El objetivo de la creación de estos servicios es tener la información que brindan los mismos disponible en otras aplicaciones y de esta manera poder reutilizar el código ya implementado. Para la creación de los servicios web desde Symfony primeramente es necesario tener copiado en nuestro proyecto el paquete BeSimpleSoapBundle el cual nos permitirá la creación. de. los. mismos.. Se. copia. en. la. dirección. SICTEXTO3.0\vendor\bundles\BeSimple\ todo el contenido de este paquete y en el archivo appKernel.php que se encuentra en la dirección SICTEXTO3.0\app\ se habilita el paquete copiado para poder utilizar su contenido. $bundles = array( new Ideup\SimplePaginatorBundle\IdeupSimplePaginatorBundle(), );. En el archivo routing.yml que se encuentra en SICTEXTO3.0\app\config\ se debe incluir el BeSimpleSoapBundle para manejar los enrutamientos relacionados con la llamada a los servicios web.. _besimple_soap: resource: "@BeSimpleSoapBundle/Resources/config/routing/webservicecontroller.xml" prefix: /ws. Luego. en. el. archivo. config.yml. que. se. encuentra. en. la. dirección. SICTEXTO3.0\app\config\ se incorporan la configuración de los servicios a crear. A continuación se muestra la configuración realizada para el servicio web creado para manejar la información relacionada con el Plan Bibliográfico. be_simple_soap:. 43.

(52) cache: type: disk lifetime: 86400 limit: 5 services: PlanBibliograficoService: namespace: http://localhost/SICTEXTO3.0/web/app_dev.php/ws/planbibliograficoservice binding: rpc-literal resource: "@ContenidoBundle/Servicios/pbService.php" resource_type: annotation. Este servicio web nos brinda, dado una carrera, sus asignaturas, el año en que se impacte, los libros que le son asignadas a la asignatura y la clasificación de cada uno de estos. A partir del archivo wsdl, creado por el BeSimpleSoapBundle, se tendrá la información que brinda nuestro servicio y la llamada de mismo se realiza cuando se especifica la URL que se le asignó al servicio al crearlo. A continuación se muestra un ejemplo de cómo se hace la llamada al servicio web plan bibliográfico desde una clase controladora en Symfony.. $url_webServicePB = $this->devolverURL('planbibliograficoservice'); $clientPB = new \SoapClient($url_webServicePB); $resultPB = $clientPB->ListarPlanBibliograficoCarrera($idCarrera);. Lo primero que se hace es definir la URL que se le asignó al servicio al crearlo en el archivo config.yml. Esta URL se obtiene a través de un método que se implementó que al pasarle el nombre de un servicio web devuelve la dirección que le corresponde. Luego se le pasa esta dirección al constructor de la clase SoapClient para crear el cliente del servicio web según la dirección pasada como parámetro. Al llamar a través de este 44.

(53) cliente al método definido en el servicio web ListarPlanBibliograficoCarrera se guarda en la variable $resultPB el resultado de la llamada al servicio web. Otro servicio a crear es el relacionado con los módulos de textos de la carrera. A partir del Plan Bibliográfico y de la información obtenida en la llamada a un servicio web creado en el trabajo de (Benites, 2015) que devuelve el listado de las asignaturas de una carrera y en que semestre se impacte, se crea el módulo de texto por años y por carrera. Este servicio web, dado un año, un curso y un semestre, nos devuelve el módulo de texto que debe de ser entregado a los estudiantes correspondientes. Al tener la disponibilidad de este servicio garantizamos que, desde otras aplicaciones les sea necesario la información del módulo de texto, se tenga dicha información disponible para ser usada.. III.2 Diagrama de clases para el caso de uso Gestionar Plan Bibliográfico Un diagrama de clases es un tipo de diagrama estático que describe la estructura de un sistema mostrando sus clases, atributos y las relaciones entre ellos. Los diagramas de clases son utilizados durante el proceso de análisis y diseño de los sistemas, donde se crea el diseño conceptual de la información que se manejará, y los componentes que se encargaran del funcionamiento y la relación entre uno y otro. A continuación se muestra un diagrama de clases para el caso de uso Gestionar Plan Bibliográfico.. 45.

Figure

Figura II-2 Diagrama del proceso de negocio Distribución de los textos a las áreas.
Figura II-2 Diagrama del proceso de cálculo de las necesidadesbibliográficas.
Figura II-3 Diagrama del proceso de préstamo de libros a estudiantes y profesores.
Figura II-5 Casos de uso del negocio para el actor Punto de Libros.
+7

Referencias

Documento similar

You may wish to take a note of your Organisation ID, which, in addition to the organisation name, can be used to search for an organisation you will need to affiliate with when you

Where possible, the EU IG and more specifically the data fields and associated business rules present in Chapter 2 –Data elements for the electronic submission of information

The 'On-boarding of users to Substance, Product, Organisation and Referentials (SPOR) data services' document must be considered the reference guidance, as this document includes the

In medicinal products containing more than one manufactured item (e.g., contraceptive having different strengths and fixed dose combination as part of the same medicinal

Products Management Services (PMS) - Implementation of International Organization for Standardization (ISO) standards for the identification of medicinal products (IDMP) in

Products Management Services (PMS) - Implementation of International Organization for Standardization (ISO) standards for the identification of medicinal products (IDMP) in

This section provides guidance with examples on encoding medicinal product packaging information, together with the relationship between Pack Size, Package Item (container)

Package Item (Container) Type : Vial (100000073563) Quantity Operator: equal to (100000000049) Package Item (Container) Quantity : 1 Material : Glass type I (200000003204)