Professional Documents
Culture Documents
Tesis presentada el 4 de mayo de 2005 ante los siguientes sinodales: M. C. Mara Auxilio Medina Nieto M. C. Ricardo Ruiz Rodrguez M. C. Rodolfo Maximiliano Valds Dorado Director de Tesis: M. C. David Martnez Torres
Dedicatoria A mi madre, por el amor y la confianza ciega que me tiene. Ya que sin eso no sera quien soy, ni hubiera logrado nada en mi vida. Te amo Mam A mis hermanos, por que bien o mal siempre quise ser un ejemplo al cual pudieran seguir. Espero no haberlos decepcionado. Los amo Berenice y Cristian A mi abuela Estela, por que sus palabras de cario siempre llenan mi corazn. Te amo mi viejita
Agradezco especialmente a: A Dios, por que debido a su gracia, todas las personas que menciono estn aqu conmigo. A mis tos Jos Alfredo y Reynel, a los cuales les digo que no existen palabras que expresen mi agradecimiento y cario. Espero que el profesionista y hombre que soy ahora no los haya decepcionado en ningn momento. A mi Padre, por que me inspir a dar lo mejor y me llena de orgullo quien es ahora. A mi ta Rosinda, por que siempre hizo el esfuerzo por ayudarme. A Nancy, por que a pesar de todo nunca perdiste la fe en m. Gracias por todo, desde lo ms profundo de mi corazn. A toda mi familia, por que siempre tuve su apoyo.
Agradecimientos A mi asesor y amigo David, por que l quiso ayudarme a cumplir con este objetivo, pero sobre todo por su paciencia, confianza y apoyo de principio a fin. A Mario, por su amistad y confianza, que espero no haber defraudado. Gracias por sus consejos y su gran apoyo. A mi novia Adriana, por que al estar a mi lado me das paz, razn y sobre todo amor. A mis revisores y sinodales Mara Auxilio, Ricardo y Maximiliano, por su ayuda y su tiempo. A mis profesores, compaeros y amigos por todo lo que aprend para la profesin, el trabajo y la vida. A la Universidad Tecnolgica de la Mixteca, mi casa de estudios, por ser un excelente reto profesional para m.
10
ndice
ndice ..................................................................................................................... xi Lista de figuras ................................................................................................................... xiii Lista de tablas .....................................................................................................................xv Prlogo .................................................................................................................. xvii 1. Introduccin .......................................................................................................................1 1.1. Conceptos previos...............................................................................................................2 1.2. Sistemas de informacin .....................................................................................................2 1.3. Bibliotecas digitales ............................................................................................................3 1.4. Importancia de las bibliotecas digitales en la investigacin tecnolgica............................5 2. Marco conceptual del desarrollo de software....................................................................7 2.1. Desarrollo de bibliotecas digitales ......................................................................................7 2.2. Tecnologa de objetos .........................................................................................................8 2.2.1. El Lenguaje Unificado de Modelado (UML) ...................................................9 2.3. Arquitectura de software...................................................................................................10 2.3.1. Arquitectura Web............................................................................................10 2.3.2. Clasificacin de arquitecturas de software .....................................................11 2.4. Patrones de diseo (Design Patterns)................................................................................12 2.5. Marcos de trabajo (Frameworks) ......................................................................................13 2.6. Tecnologa de componentes..............................................................................................14 2.7. Bases de datos ...................................................................................................................15 2.7.1. PostgreSQL .....................................................................................................16 2.8. Herramientas de desarrollo Web.......................................................................................18 2.8.1. PHP: Personal Home Page, Procesador de Hipertexto ...................................19 2.8.2. Otras herramientas para desarrollo de sistemas Web .....................................20 3. Anlisis y diseo del sistema .............................................................................................23 3.1. Anlisis del sistema ..........................................................................................................24
12
3.1.1. Documento de Requisitos de Usuario (DRU) ................................................ 24 3.1.2. Especificacin de Requerimientos de Software (ERS).................................. 27 3.2. Diseo del sistema ........................................................................................................... 36 3.2.1. Diseo orientado a objetos ............................................................................. 38 3.3. Anlisis y Diseo de la Base de Datos............................................................................. 52 3.3.1. Relaciones de las Tablas ................................................................................ 53 3.3.2. Definicin de Tablas ...................................................................................... 53 4. Implementacin y pruebas ............................................................................................... 57 4.1. Implementacin................................................................................................................ 57 4.1.1. Diseo e implementacin de distribucin fsica ............................................ 57 4.1.2. Diseo e implementacin de interfaces (versin 1.0) .................................... 59 4.2. Pruebas de Usabilidad ...................................................................................................... 68 4.2.1. Ventajas de aplicar la usabilidad.................................................................... 68 4.2.2. Importancia de la usabilidad en los sitios Web.............................................. 69 4.2.3. Realizacin de pruebas................................................................................... 70 4.3. Aplicacin de pruebas ...................................................................................................... 71 4.3.1. Cuestionario para usuarios de pruebas de usabilidad..................................... 71 4.3.2. Cuestionario para observador de pruebas de usabilidad ................................ 71 4.4. Anlisis de resultados ...................................................................................................... 72 4.4.1. Prueba 1 Registrarse como usuario ................................................................ 72 4.4.2. Prueba 2 Bsqueda y descarga de un documento. ......................................... 73 4.4.3. Prueba 3 Cargar un documento a la biblioteca digital. .................................. 74 4.4.4. Correcciones generales del sistema................................................................ 76 5. Conclusiones y expectativas ............................................................................................. 79 5.1. Conclusiones finales ........................................................................................................ 79 5.2. Aportaciones realizadas ................................................................................................... 80 5.3. Limitaciones y lneas de investigacin abiertas ............................................................... 80 5.3.1. Limitaciones................................................................................................... 81 5.3.2. Lneas de investigacin abiertas .................................................................... 81 5.4. Expectativas futuras ......................................................................................................... 83 Bibliografa ..................................................................................................................... 85 Anexos ..................................................................................................................... 93 Anexo 1. Glosario ........................................................................................................ 93 Anexo 2. Acrnimos .................................................................................................... 95 Anexo 3. Extensin de Especificacin de Casos de Uso............................................. 97 Anexo 4. Formato de cuestionario para usuario en pruebas de usabilidad................ 146 Anexo 5. Formato de cuestionario para observador en pruebas de usabilidad.......... 153 Anexo 6. Pantallas de DL-CASI versin 1.1 (vista de correcciones)........................ 158
Lista de figuras
Figura 2.1. Figura 2.2. Figura 3.1. Figura 3.2. Figura 3.3. Figura 3.4. Figura 3.5. Figura 3.6. Figura 3.7. Cientfica Figura 3.8. otra. Figura 3.9. Figura 3.10. Figura 4.1. Figura 4.2. Figura 4.3. Figura 4.4. Figura 4.5. Figura 4.6. Esquema del funcionamiento de PHP [16] .................................................. 19 Esquema de una pgina ASP [URL8] ......................................................... 21 Esquema del formato de subir de documentos. ............................................. 34 Esquema del formato de registro de usuarios. ............................................... 35 Diseo general del sistema ............................................................................ 36 Descomposicin del sistema en capas (Layers)............................................. 37 Vista Fsica de las capas del sistema ............................................................ 38 Contexto de la Biblioteca Digital de Documentos de Literatura Cientfica .. 39 Modelo de Utilizacin de la Biblioteca Digital de Documentos de Literatura ....................................................................................................................... 40 USUARIOS es una entidad independiente y no tiene relacin con ninguna ....................................................................................................................... 53 En esta figura se ve la relacin que existe entre AUTORES y ARTICULOS. . ....................................................................................................................... 53 En esta figura se ve la relacin 1 a 1 que existe entre ARTICULOS y RUTAS ....................................................................................................................... 53 rbol de distribucin de cada pgina del sitio Web ...................................... 58 Interfaz que muestra que el usuario ha sido identificado............................... 59 Interfaz de bienvenida a la biblioteca digital ................................................. 60 Localizacin de Ingresar al sistema en el men principal ............................. 60 Interfaz Ingresar al sistema ............................................................................ 61 Interfaz para registro de usuario .................................................................... 62
14 Figura 4.7. Figura 4.8. Figura 4.9. Figura 4.10. Figura 4.11. Figura 4.12. Figura 4.13. Figura 4.14. Figura A6.1. Figura A6.2. Figura A6.3. Figura A6.4. Figura A6.5.
Diseo e implementacin de un sistema de biblioteca digital Interfaz para recuperar password de usuario.................................................. 62 Interfaz de muestra de autores resultantes ..................................................... 63 Interfaz de muestra de documentos encontrados ........................................... 64 Interfaz del abstract (descarga del documento).............................................. 65 Interfaz para subir documentos ...................................................................... 66 Mensaje positivo, cuando el documento no esta registrado........................... 66 Mensaje negativo, cuando ya existe un documento con ese ttulo................. 67 Interfaz de apoyo para la captura de los nombres de autores......................... 67 Interfaz de Inicio .......................................................................................... 158 Encabezado del sistema ............................................................................... 158 Interfaz para registrar nuevo usuario ........................................................... 159 Formulario para cargar documentos ............................................................ 160 Subventana con la lista de autores ............................................................... 161
Lista de tablas
Tabla 2.1. Tabla 2.2. Tabla 3.1. Tabla 3.2. Tabla 3.3. Tabla 3.4. Tabla 3.5. Tabla 3.6. Tabla 3.7. Tabla 3.8. Tabla 3.9. Tabla 4.1. Catlogo de patrones de diseo [20] ............................................................ 13 Comparacin de caractersticas de base de datos [URL18] ........................ 18 Definiciones ................................................................................................... 28 Abreviaturas ................................................................................................... 28 Definicin de campos de carga de documentos. ............................................ 34 Definicin de campos de registro de usuarios. .............................................. 35 Definicin de tabla USUARIOS ................................................................ 54 Definicin de tabla ARTICULOS .............................................................. 54 Definicin de tabla AUTORES .................................................................. 55 Definicin de tabla REL_ART_AUTO...................................................... 55 Definicin de tabla RUTAS ....................................................................... 55 Descripcin de pginas Web del sistema de biblioteca digital ...................... 59
16
Prlogo
Actualmente gran parte de los sistemas de software utilizan la Internet para su distribucin alrededor de todo el mundo. La mayora de las personas recurren cotidianamente a este medio para diversas actividades de la vida diaria como: comunicarse con otras personas, realizar compras, bsqueda de informacin, entretenimiento, educacin, etc. De igual manera las computadoras se han vuelto una herramienta casi indispensable que ayuda en el funcionamiento de la industria manufacturera, en las escuelas y universidades, el cuidado de la salud, a las finanzas, al gobierno y a la labor de investigacin. El contexto del presente trabajo se centra primeramente en la labor de los integrantes del Cuerpo Acadmico de Ingeniera de Software (CASI) del Instituto de Electrnica y Computacin (IEC) de la Universidad Tecnolgica de la Mixteca (UTM) en Huajuapan de Len, Oaxaca. Los integrantes del CASI son profesores-investigadores por lo que sus principales actividades son: la docencia, el desarrollo de proyectos de investigacin, la direccin de tesis y la publicacin de resultados, necesariamente requieren recursos materiales y tcnicos para realizar investigaciones cientficas, recursos tales como: la Internet, la biblioteca universitaria, bibliografa del CASI o propia. Para facilitar las labores de investigacin, esta tesis propone el desarrollo de una herramienta a la cul sea fcil acceder, confiable y til, que apoye la labor de investigacin. En particular, este trabajo de tesis pretende proporcionar una herramienta de almacenamiento, bsqueda y recuperacin de informacin, que apoye a los investigadores y personas interesadas en realizar investigacin. La herramienta a desarrollar, se define como un Sistema en Web de Biblioteca Digital de Documentos de Literatura Cientfica. El desarrollo de esta tesis plantea dos objetivos: primero, desarrollar un estudio sobre las tendencias y expectativas de las bibliotecas digitales en el campo de la investigacin cientfica; y segundo, el anlisis, diseo e implementacin del Sistema en Web de Biblioteca Digital utilizando las herramientas que el diseo Web y la Ingeniera de Software ofrecen como:
18
Herramientas para desarrollo Web (HTML, PHP, JavaScripts, entre otros.) y modelado de sistemas de software como UML. Como objetivos particulares del desarrollo se plantean los siguientes: Estudio de los alcances y satisfaccin de necesidades con el desarrollo de este sistema. Distribucin y propagacin de informacin cientfica de calidad al alcance de todos los integrantes del cuerpo acadmico (CASI) y de toda persona interesada.
Construccin de un acervo de documentos digitales de literatura cientfica, con informacin confiable y til. Estudio de usabilidad. Realizar un diseo que permita adiciones futuras que logren hacer de este sistema una herramienta tecnolgica potente. Para solucionar los problemas planteados, esta tesis se organiza de la siguiente manera: El captulo 1 presenta la introduccin que describe los conceptos relacionados a los sistemas de informacin, los objetivos y alcances de las Bibliotecas Digitales, as como las expectativas. El captulo 2 se dedica al estudio de las metodologas utilizadas para el desarrollo del sistema: programacin orientada a objetos, arquitectura de software, patrones de diseo, marcos de trabajo, base de datos y en general una breve descripcin terica de la Ingeniera de Software. El captulo 3 se centra en el ciclo de vida del software, anlisis y diseo del sistema de biblioteca digital utilizando herramientas de modelado. El captulo 4 describe la implementacin, pruebas y anlisis de resultados del sistema. El captulo 5 muestra las conclusiones, limitaciones, lneas de investigacin y trabajo futuro para adiciones futuras que mejoren el rendimiento, utilidad y factibilidad del sistema.
1. Introduccin
Los continuos avances de la informtica y las telecomunicaciones, adems del crecimiento global de la Web, han ayudado a la difusin de la informacin alrededor de todo el mundo y a su acceso de manera instantnea, provocando que la informacin se convierta en una de las herramientas ms importante para el crecimiento de cualquier organizacin en el mundo. Tal como lo menciona Gonzlez [22] la utilizacin del computador como elemento integrante de procesos de enseanza y aprendizaje se remonta a varias dcadas atrs y ha ido cobrando una creciente importancia, acentuada si cabe por la globalizacin de las comunicaciones y el acceso a la informacin proporcionado por la extensin de la Internet y especialmente de la Web (WWW). Por lo anterior, el compartir informacin veraz, confiable y al alcance de la mano, se ha convertido en una prioridad para los informticos en estos das, ya que, aunque la Web por s solo es una fuente de informacin que mucha gente utiliza, gran cantidad de sta es insuficiente o de fuentes de dudosa reputacin que provoca que los resultados de las bsquedas de informacin sean poco confiables. Con el propsito de aprovechar las ventajas que ofrece la Web para compartir informacin en lnea, junto con tcnicas de programacin que facilitan la creacin de aplicaciones; se pueden ofrecer sistemas en lnea de recopilacin, bsqueda y recuperacin de informacin de alto nivel, confiables y seguros, que apoyen la bsqueda de informacin de calidad. Por tal motivo, es necesario el desarrollo de sistemas de informacin que faciliten la bsqueda y recuperacin de documentos cientficos 1 , aplicando tecnologas Web, para lograr acervos confiables y tiles para personas interesadas en recopilar informacin actual y de calidad.
Documentos cientficos: En esta tesis definimos este trmino, como Artculos cientficos dentro de los que se encuentran: Tesis de licenciatura, maestra y doctorado, Trabajos tcnicos (Technical Reports)
Introduccin
Un sistema de informacin computarizado posibilita el procesamiento de datos a una gerencia, adems le proporciona a los gerentes la informacin para tomar ms decisiones y mejor fundamentadas. La capacidad de procesamiento de datos, el manejo o el procesamiento de stos, es solo una faceta de un sistema de informacin. Un sistema de informacin pone a disposicin de quienes toman decisiones, las herramientas necesarias para generar informes y la posibilidad de hacer consultas, asimismo, les permite tener informes peridicos de rutina. Debido a que un sistema de informacin ayuda a la gerencia a la toma de decisiones administrativas, tambin suele ser llamado sistema de informacin administrativo (MIS lase Anexo 1. Anexo 2. ) [29] . En las empresas, los analistas desarrollan preferentemente dos tipos diferentes de sistemas de informacin: los sistemas de procesamiento de transacciones y sistemas de decisiones administrativas [44] . Por otro lado, una biblioteca digital es un sistema de informacin de procesamiento de transacciones donde los usuarios introducen informacin del documento cientfico que desean y el sistema da como resultado un listado de documentos relacionados con el criterio de bsqueda.
Colecciones digitales. Tesis digitales, artculos, reportes tcnicos, data warehouses (lase Anexo 1. ), libros electrnicos y materiales digitalizados. Servicios digitales. Mecanismos para almacenamiento, recuperacin, visualizacin, recomendacin, anlisis, personalizacin, colaboracin, entre otros.
En la Web existen una gran cantidad de bibliotecas digitales, muchas Universidades que han decidido apoyar la educacin ofreciendo este servicio, as como empresas que comercian con informacin digital. A continuacin se presentan algunas de las bibliotecas digitales ms reconocidas: ACM Digital Library, sitio publicado por la Association for Computing Machinery para tener acceso a documentos digitales, publicaciones concernientes al ACM, su uso esta restringidos a miembros ACM o personas suscritas. Los servicios que proporciona esta biblioteca digital, son la de bsqueda y descarga de artculos de literatura cientfica de sus agremiados 2 . IEEE Computer Society Digital Library, Con cerca de 100,000 miembros, la IEEE Computer Society es la organizacin lder en el mundo de profesionales de la computacin. Tiene acceso a miles de artculos digitales de la Computer Society. Esta socie-
http://portal.acm.org/dl.cfm ACM Digital Library, The ACM Portal is published by the Association for Computing Machinery. Copyright 2005 ACM, Inc.
dad esta dedicada al avance de la teora, prctica y aplicaciones de la computacin y tecnologas del procesamiento de informacin 3 . elaleph.com, nombre derivado de un cuento de Jorge Luis Borges. En este cuento, Borges define a El Aleph como: "el lugar donde, sin ninguna posible confusin, todos los lugares del mundo se encuentran, vistos desde todos los ngulos". Nace de una inquietud cultural y la necesidad de conseguir textos en espaol en la Internet para investigacin [URL1] . En la mayora de los casos los documentos electrnicos son gratuitos. Existen ms bibliotecas digitales tales como: Citeseer.IST, D-lib.org entre muchas otras que se encuentran disponibles a travs de la Web, ofreciendo servicios gratuitos o no. En Mxico, algunas instituciones han promovido la construccin de colecciones digitales. Los servicios desarrollados alrededor de ellas con frecuencia se limitan a bsquedas convencionales, sin embargo es posible explorar medios que permitan aumentar su difusin y su potencial como apoyo a actividades de aprendizaje, enseanza e investigacin [39] . Como antecedentes y pioneros de las bibliotecas digitales en Mxico, mencionaremos los siguientes: Colecciones de la Universidad de Colima, pioneros en Mxico en la creacin y difusin de colecciones en formato digital. La biblioteca electrnica ofrece servicio online de informacin sobre documentos de su propia biblioteca y de otras extranjeras. Cuenta con reas dedicadas al acervo, que comprenden espacios destinados a textos electrnicos y CD-ROM, colecciones bibliogrficas, hemeroteca y mapoteca [17] . Instituto Latinoamericano de Comunicacin Educativa, puede accederse a travs de ste, a cientos de libros en formato digital de diversas reas. Los documentos, disponibles en HTML con algunos medios de bsqueda bsica, han sido editados por entidades como el Fondo de Cultura Econmica y el Consejo Nacional para la Cultura y las Artes 4 . Colecciones Phronesis, herramientas que pueden utilizarse para la construccin y administracin de algunas colecciones digitales. Es un proyecto de la Red de Desarrollo e Investigacin en Informtica (REDII) del CONACYT, desarrollado por el ITESM. Colecciones en IPN y UNAM, publican en formato digital las tesis de su programa doctoral y de sus dos programas de maestra, que incluyen documentos producidos desde 1999 a travs de su sitio Web, donde se puede examinar la sinopsis de la tesis y descargar el documento. La UNAM tambin incluye la Biblioteca Jurdica Virtual con 360 libros, 2200 artculos, revistas y monografas del instituto de Biologa, entre muchas otras publicaciones digitalizadas por la Coordinacin de Publicaciones Digitales 5 . Colecciones Digitales en la Universidad de las Amricas, bajo una iniciativa denominada Bibliotecas Digitales Universitarias para Todos, ha dedicado esfuerzos a la
http://www.computer.org/publications/dlib/ IEEE Computer Society Digital Library This site and all contents (unless otherwise noted) are Copyright 2004, IEEE, Inc. All rights reserved.
4 5
Introduccin
construccin de colecciones y servicios digitales que apoyen a las actividades acadmicas de estudiantes y profesores universitarios 6 . Estos son solo algunos ejemplos del desarrollo de las bibliotecas digitales en Mxico, y que contribuyen en el desarrollo educativo, empendose en ofrecer informacin al alcance de todos los investigadores, estudiantes, profesores que requieran informacin confiable y de actualidad [39] . Las instituciones mencionadas, se han dado cuenta que las bibliotecas digitales son muy importantes para el desarrollo educativo y tecnolgico del pas, as como la plusvala que el propio crecimiento, prestigio y vanguardia que significa para una institucin la aplicar de esta tecnologa. Por eso, es necesario profundizar en la importancia general que tiene el desarrollo e implementacin de estos sistemas en la vida del estudiante, investigador y en general, de todas las personas que deseen tener a su alcance informacin integral.
http://biblio.udlap.mx/ Direccin de Bibliotecas Universidad de las Amricas, Puebla, Direccin de Bibliotecas, UDLAP.
Diseo e implementacin de un sistema de biblioteca digital La portabilidad de enormes cantidades de informacin, esto ayuda a que la investigacin cientfica y tecnolgica se realice de manera dinmica e interactiva. Los investigadores tienen al alcance de sus computadoras, acervos de informacin de todas partes del mundo por medio de la Internet, que les permite tener informacin actual de una inmensa variedad de temas.
La reduccin de espacio fsico, donde se encontraba el acervo de informacin en libros y papel. Evitar la no disponibilidad del material fsico en la biblioteca. Optimizacin del tiempo de bsqueda de informacin, el cual se reduce sustancialmente y se incrementa la calidad de resultados obtenidos. Las bibliotecas universitarias, ms que acumular materiales fsicos, deben contar con capacidades humanas y tecnolgicas para facilitar el acceso a la informacin. Se requiere promover una cultura de acceso, uso y difusin de informacin actualizada y de calidad, as como el desarrollo de servicios y ambientes que promuevan esta cultura y propicien la generacin de conocimiento [1] [40] . Los nuevos problemas provocados por la diseminacin de informacin por la popularizacin de la World Wide Web y la cada de los costos en los dispositivos de almacenamiento digitales, han propiciado que la publicacin y multiplicacin de documentos multimedia hayan provocado un inmenso crecimiento en la cantidad de informacin almacenada, que no solo ha rebasado la capacidad de recuperacin de las bases de datos comerciales, sino que se ha vuelto al desorden que supona evitar ese tipo de software. El cambio cultural necesario para adoptar el medio digital se esta dando aceleradamente entre los propios acadmicos, de modo que puede esperarse tambin una mayor demanda de mecanismos para construir y explotar colecciones digitales. La colaboracin global entre instituciones interesadas y entidades de fomento es vital para satisfacer significativamente las necesidades de informacin y para incrementar la presencia de nuestras comunidades de docencia e investigacin en el medio digital [39] . En resumen, en este punto se concluye que desarrollar e implementar aplicaciones que fomenten la cultura y la educacin, puede ayudar en gran medida al desarrollo tecnolgico y cultural de Mxico. En el siguiente Captulo, se muestra una retrospectiva histrica para conocer como la ingeniera de software permite crear aplicaciones de este nivel, cuando anteriormente desarrollar una biblioteca digital hubiese llevado mucho tiempo y esfuerzo para lograrse.
Aunque asociados a datos estructurados que los describen (metadatos), los documentos no estructurados de una coleccin plantean problemas para hacer consultas acerca de su contenido. Por lo tanto, es necesaria la realizacin de ndices a texto completo de los documentos, donde se apliquen modelos de recuperacin de informacin clsicos, tales como booleano, vectorial y probabilstica [6] . Por tal motivo, los servicios digitales deben utilizar los siguientes puntos: El sistema de recuperacin de datos, una capa que interacta directamente con el manejador del lenguaje (en este caso PHP) para el manejador de base de datos relacional[28] . Una metodologa que implementa el modelo de recuperacin (booleano, vectorial, semntica, entre otros), dependiendo de la abstraccin de los datos a utilizar [6] [24] . Interfaces de usuario, plataforma de visualizacin: Navegadores Web y/o aplicaciones locales para la consulta, carga y descarga de los documentos [38] . Aunque una biblioteca digital puede tener otros servicios y caractersticas, los puntos anteriormente descritos son la base para lograr una biblioteca digital funcional y que cumpla con los objetivos de este tipo de sistemas. A continuacin se describe la metodologa para el desarrollo de la biblioteca digital y en especfico de los puntos anteriores.
provoca menos frustracin en el ingeniero del software y en el cliente. Adicionalmente, los sistemas orientados a objetos son ms fciles de adaptar y escalar (por ejemplo, pueden crearse grandes sistemas ensamblando subsistemas reutilizables)[35] . Como en la vida, en la tecnologa nada puede ser del todo perfecto y la orientacin al objeto no es la excepcin, en esta tecnologa tambin existen problemas que se convierten en obstculos para el desarrollo orientado a objetos. Aksit y Bergmans [3] concluyen que los orgenes de estos problemas pueden ser reconocidos. En primer lugar, algunos problemas, por ejemplo, el de las estructuras del dominio del problema, excesivos objetos del dominio, la descomposicin temprana, la concordancia contra repartir y la identificacin del subsistema son inherentes a los mtodos orientados al objeto para el desarrollo de software. Se presentan debido al tamao y a la complejidad del dominio del problema, y a la manera en que se realiza el modelado. En segundo lugar, algunos problemas son debido al proceso del desarrollo orientado al objeto. A pesar de los problemas encontrados se puede ser optimista sobre el uso de los mtodos de desarrollo orientados al objeto [53] . Con la experiencia en el uso de los mtodos orientados al objeto y con la expectativa de que la mayora de los problemas identificados puedan ser solucionados, por lo menos parcialmente, dan como resultado que las tecnologas orientadas al objeto tengan ms ventajas que desventajas para el desarrollo de software. Para el desarrollo de software OO, es necesario aplicar mtodos orientados a objetos, que faciliten el diseo y el anlisis del sistema. Uno de los ms completos y robustos MOO es UML, que es la ms reciente y poderosa notacin o metodologa orientada a objetos para el modelado integral de sistemas de software, por esta razn, UML ser utilizado para el desarrollo de la biblioteca digital, pero antes, se presentan algunos fundamentos de este lenguaje [URL7] .
1 0
11
les para diagnstico, simulaciones en tiempo real, entre otras. Actualmente las complicaciones en cuanto a estructura se reducen cuando nuestro medio de distribucin es la Internet. Para la realizacin de sistemas basados en Arquitecturas Web, bsicamente se utilizan combinaciones de diferentes arquitecturas de desarrollo de software, dependiendo de lo que se desea que el sistema realice, o dicho de mejor manera, dependiendo de cmo se visualice el diseo del sistema a desarrollar.
1 2
13
Caracterizacin Creacional Jurisdiccin Clase Mtodo de fabrica Fabrica abstracta Prototipo Solitaire Estructural Adaptador (clase) Puente (clase) Adaptador (objeto) Puente (objeto) Peso ligero Pegamento Proxy Comportamiento Mtodo de plantilla
Cadena de responsabilidades Comando Iterador (objeto) Mediador Momento Observador Estado Estrategia Compuesto Interprete Compuesto Constructor Envoltura Iterador (compuesto) Caminador Tabla 2.1. Catlogo de patrones de diseo[20] Tambin existen patrones arquitectnicos, los cuales son patrones de alto nivel que marcan una serie de principios estructurales para la construccin de arquitecturas de software, haciendo uso de subsistemas, incluyendo reglas y guas para organizar las relaciones. Algunos patrones arquitectnicos son: Layers, Pipes and Filters, Blackboard, Broker, MVC, PAC, Microkernel y Reflection [4] . En el diseo de esta biblioteca digital se aplicar una combinacin de patrones de diseo, ya que siendo un sistema basado en una arquitectura Web, tendr un alto nivel de interactividad con el usuario. Por ejemplo, algunos de los patrones que se han identificado a usar en el sistema son: Los patrones arquitectnicos (Layers) para descomponer el sistema en grupos de tareas, que facilite su nivel de abstraccin, los patrones de estructura (UML) que nos permitirn definir los componentes (clases y los objetos) para cada grupo de tareas que conformarn el sistema, los patrones de Comportamiento (Comando y Observador) que ayudarn a definir los cambios de estado en la interfaz provista para la aplicacin Web. Objeto
1 4
Por otra parte, un marco de trabajo tambin es una coleccin de clases que pueden usar varias aplicaciones. La interfaz de programacin de aplicaciones (API, Application Programming Interface, lase Anexo 1. ), es un ejemplo de paquetes de marcos de trabajo tiles los cuales han obtenido el entusiasmo de la comunidad de desarrollo de marcos de trabajo por ser enriquecedores [10] [50] [URL9] . Vallecillo [51] menciona que los marcos de trabajo tienen ventajas y desventajas que siempre hay que tener contemplados. Las principales ventajas que ofrecen los marcos de trabajo son la reduccin del costo de los procesos de desarrollo de aplicaciones para dominios especficos, y la mejora de la calidad del producto final. Las desventajas en la utilizacin de marcos de trabajo, es que presentan ciertas dificultades, aunque se suelen englobar en lo que comnmente se denomina el problema de la documentacin de un marco de trabajo. Gamma et al [20] listan las siguientes diferencias entre los patrones de diseo (vistos anteriormente) y los marcos de trabajo: Los patrones de diseo son ms abstractos y menos especializados que los marcos de trabajo. Los marcos de trabajo son implementaciones parciales de subsistemas, mientras que los patrones no tienen una implementacin inmediata al todo; solo ejemplos de patrones pueden ser encontrados en las implementaciones. Los patrones de diseo son elementos ms pequeos estructuralmente que los marcos de trabajo, algunos patrones viven sobre la granulidad de mtodos individuales ejemplos son los patrones del mtodo de Plantilla y el mtodo de Fabrica; la mayora de los marcos de trabajo utilizan varios patrones. En UML, un marco de trabajo se modela como un paquete estereotipado. Cuando se mira dentro del paquete se pueden ver mecanismos existentes en cualquiera de las diferentes vistas de la arquitectura de un sistema. Por ejemplo, no slo se pueden encontrar colaboraciones parametrizadas, sino que tambin se pueden encontrar casos de uso (que explican como utilizar el framework), as como sus colaboraciones simples (que proporcionan conjunto de abstracciones sobre las que se puede construir; por ejemplo, creando subclases)[9] . Finalmente, el uso de herramientas visuales es uno de los enfoques de mayor aceptacin, ya que proporcionan notaciones visuales que permiten representar tanto a los componentes, como a los conectores, y definir sus enlaces. Asimismo, permiten agregar nuevos componentes y definir nuevas relaciones entre ellos. Las principales ventajas de estas propuestas se basan en su facilidad de uso y la rapidez con la que permiten identificar la adecuacin de un marco de trabajo, a una aplicacin concreta, as como los trabajos necesarios para extenderlo y adaptarlo. Por otro lado las principales desventajas que poseen estas herramientas provienen del hecho, de que no suelen permitir ningn tipo de verificacin sobre el diseo realizado, puesto que no suelen poseer ningn tipo de lenguaje que sirva de soporte a la notacin grfica, y que permita especificar ms formalmente la arquitectura de la aplicacin y verificar sus propiedades.
15
arrastrar hacia delante a la era de la Informacin, es el mismo que lanz a la Era de la Fabricacin hace ahora dos siglos. Es un paradigma basado en el producto, en el cual el progreso se mide principalmente por la agregacin de componentes estndar, intercambiables y reutilizables, y solo secundariamente por el avance de los procesos que se emplean para construirlos. El desarrollo del software no ha alcanzado la madurez de otras disciplinas de la ingeniera; sigue siendo un desafo producir software que trabaje confiablemente, que sea fcil de utilizar, mantener, que se encuentre dentro del presupuesto y en el tiempo esperado. Adems, la demanda de los sistemas de software relativamente pequeos para usos altamente especficos est en aumento. Esta necesidad requiere de un mtodo significativamente diferente de desarrollo de software, de aquellos mtodos utilizados por sus enormes y monolticas contrapartes de propsito general, como Microsoft Word [36] . La programacin orientada a componentes (COP) aparece como una variante natural de la programacin orientada a objetos, para los sistemas abiertos, en donde la programacin orientada a objetos presenta algunas limitaciones; por ejemplo, no permite expresar claramente la distincin entre los aspectos computacionales y meramente composicionales de la aplicacin, no define una unidad concreta de composicin independiente de las aplicaciones (los objetos no lo son claramente) y define interfaces de muy bajo nivel como para que sirvan de contratos entre las distintas partes que deseen utilizar los objetos [26] [51] . La programacin orientada al componente, ofrece mayores ventajas a la orientada al objeto [49] [31] como son: mejor apoyo a las etapas de anlisis, diseo e implementacin del desarrollo del software; reutilizacin de componentes en lugar de reutilizacin de cdigo; as como permitir la construccin de sistemas verdaderamente extensibles. El mtodo de desarrollo de software basado en componentes parece ser el paradigma idneo para el desarrollo de sistemas de hoy en da y tiene un atractivo excepcional en el desarrollo de software distribuido. Una cada de la demanda en el desarrollo tradicional de software distribuido es que los proyectos de software a menudo estn escasamente descompuestos. Esto da lugar al traslapo o a responsabilidades mal entendidas, que pueden conducir a las interrupciones significativas de la comunicacin y completa falla del proyecto. La naturaleza de los componentes hace que los diseadores y desarrolladores encapsulen mejor la funcionalidad en secciones cohesivas de software, relativamente bien documentados [36] .
1 6
sistema ha implementar utilizar, ya que el funcionamiento adecuado de un sistema de informacin depende de la integridad de la informacin que le brinda la base de datos. Existen varios modelos de base de datos, estos modelos ocultan algunos detalles de cmo se almacenan los datos, pero pueden implementarse de manera directa en una computadora. Entre los ms comunes se encuentran los siguientes: Modelo de Red, un inconveniente importante es que ste modelo tiene un carcter totalmente general. En este modelo no se tiene ningn tipo de restriccin especfica en lo que respecta a las interrelaciones. Esto quiz haga del modelo en red un modelo tremendamente sencillo de utilizar, pero no deja de tener un carcter general y provoca que en la prctica su instrumentacin no resulte nada fcil. Es por esto que los DBMS que se basan en el modelo en red, deben aadir una serie de restricciones a fin de poder implementar la base de datos fsicamente y obtener un mayor rendimiento del sistema [37] . Modelo Jerrquico, este modelo es el pionero de las bases de datos, all por los aos 60. En este modelo solo se puede modelar relaciones 1:N. al igual que el modelo de red, es la poca independencia de los programas respecto a como estn almacenados los datos, lo que dificulta adems la programacin de software de acceso a estos datos[32] . Modelo Orientado a Objetos, este modelo de base de datos orientado a objetos es una adaptacin a los sistemas de bases de datos. Se basa en el concepto de encapsulamiento de datos y cdigo que opera sobre estos en un objeto. Los objetos estructurados se agrupan en clases. Puesto que el valor de un dato en un objeto tambin es un objeto, es posible representar el contenido del objeto dando como resultado un objeto compuesto[URL13] . Modelo Relacional, este modelo de base de datos es ampliamente utilizado en la prctica. Este modelo presenta a la base de datos como una coleccin de relaciones. En trminos informales, cada relacin semeja una tabla, cada fila de la tabla representa una coleccin de valores de datos relacionados entre s. Dichos datos interpretan hechos que describen una entidad o un vnculo entre entidades del mundo real [15] [27] [29] . Para el nivel de complejidad de los datos que manejar el sistema, el modelo relacional cumplir perfectamente con el requerimiento de base de datos del sistema.
2.7.1. PostgreSQL
PostgreSQL, es un manejador de bases de datos relacional, de cdigo abierto, y libre para usar, es uno de los ms exitosos productos de software de tiempos recientes [48] . Este software manejador de base de datos servir perfectamente para crear y manipular la informacin con la que trabajar el sistema. A continuacin se describen algunas de las ventajas de PostgreSQL. 2.7.1.1. PostgreSQL contra otros manejadores de base de datos Una de las principales ventajas de PostgreSQL, es el hecho de que no hay costo asociado a la licencia del software, caracterstica primordial en el desarrollo de cualquier sistema. Adems otras ventajas importantes son las siguientes [52] [URL5] :
17
Licencia simple, permite cualquier uso mientras una copia de la licencia de Berkley se incluya con ella. Esto significa que usted puede lanzar un producto comercial que utilice PostgreSQL o sea un derivado de PostgreSQL sin incluir cdigo fuente. Multiplataforma, soporta diferentas plataformas, incluyendo Windows, Linux, FreeBSD, y MacOS X. Compatibilidad con diferentes lenguajes de programacin de alto nivel, tales como: C, C++, Perl, Python, Java, Tlc y PHP. Sigue de cerca la industria estndar para Lenguaje Query, SQL92, el cual gan en el 2000 el premio del Linux Journal Editors Choice Award por la mejor base de datos [48] . Poder instalar un nmero ilimitado de veces, sin temor de sobrepasar la cantidad de licencias, la principal preocupacin de muchos proveedores de bases de datos comerciales. Velocidad y rendimiento excepcionales, con su Control de Concurrencia MultiVersin evita bloqueos innecesarios, ya que un lector nunca es bloqueado por un escritor. Adems posee un proceso cliente-servidor maestro que se ramifica para proporcionar conexiones adicionales para cada cliente que intente conectarse. Confiabilidad, la integridad de los datos es atmica, consistente, aislada, y durable. Seguridad de primera clase, va Kerberos y/o SSL. Flexibilidad para extenderse segn se requiera. Diseo altamente escalable. Red mundial de Proveedores Independientes de Software (ISV). Muchas opciones de soporte. Mnimos requerimientos de administracin. Bajo Costo Total de Propiedad (TCO 7 ) Conformancia a Estndares ANSI
PostgreSQL tiene ms caractersticas avanzadas, que lo hacen similar a los mejores manejadores de base de datos libres y comerciales. La Tabla 2.2 muestra una comparacin de PostgreSQL con otros manejadores.
TCO (Total Cost Ownership): Representa cual es el costo actual de poseer una computadora, incluye: Costo original del hardware y el software, Mantenimiento, Soporte tcnico y Entrenamiento[URL3] .
1 8
PostgreSQL Integridad de datos Conformidad ACID Fijacin fila-nivel Restauraciones parciales Caractersticas avanzadas Procedimiento de almacenaje Vistas Disparadores (Triggers) Secuencias Cursores Tipos de datos definidos por el usuario Indexes Columna simple Multicolumna Clave primaria Texto completo Replicacin Maestro simple Multimaestro Mtodos de interfase ODBC/JDBC C/C++, Java X X X X X X X X X X X X X X** X*** X X
X X
* Comerciales: ORACLE, SQL Server y DB2 ** Cdigo abierto, pero viene de otro vendedor. *** Soluciones existentes, pero todas ellas comerciales.
Tabla 2.2. Comparacin de caractersticas de base de datos [URL18] PostgreSQL tiene ms caractersticas tecnolgicas que lo vuelven altamente viable y efectiva. Adems por todas las ventajas y caractersticas presentadas anteriormente, esta herramienta es la opcin ms acertada [52] [URL18] para el desarrollo del sistema.
19
PHP
Aplicacin
Solicitud
Cliente
Figura 2.1. Esquema del funcionamiento de PHP[16]
En la Figura 2.1 se puede apreciar el esquema de funcionamiento de un programa en PHP: el cliente realiza una peticin de un programa a un servidor Web como si se tratara de cualquier otra pgina; el cliente no sabr distinguirlo. El servidor Web, por la extensin de la pgina (.php), se enva al intrprete PHP y ste una vez ejecutado el programa, le devuelve los resultados al navegador cliente [16] . El lenguaje de programacin PHP dispone de instrucciones para realizar las funciones habituales de los lenguajes de programacin, manejo de archivos, tratamiento de cadenas de texto, arreglos, clases, etc. Una de las caractersticas ms interesantes que incorpora PHP, es la facilidad para consultar bases de datos y generar pginas en funcin de los resultados en la correspondiente consulta. Las consultas se pueden realizar, bien en modo nativo o, bien, mediante ODBC. En modo nativo, es compatible con PostgreSQL, Oracle, Informix, MySQL, y muchas ms. Adems en este lenguaje podemos definir clases y usar ciertas caractersticas de la programacin orientada a objetos[16] [URL4] [URL6] . 2.8.1.1. Ventajas de PHP PHP presenta mltiples ventajas frente a otros lenguajes de programacin que necesariamente harn que ste lenguaje se imponga como una alternativa viable para el desarrollo de aplicaciones, estas ventajas se listan a continuacin [16] : Interfaz, Se ejecuta a travs de una interfaz que le resulta familiar al usuario: el cliente Web. No es necesario instalar ningn software adicional en la estacin cliente para usar un programa PHP, aparte del propio navegador Web. La ejecucin de un programa PHP se puede realizar desde un cliente Web de cual-
2 0
quier plataforma: el usuario puede escoger su sistema operativo y su cliente Web preferido. Acceso a red, El propio diseo de PHP lleva incorporada esta virtud. El programa se ejecuta en un servidor al cual se puede acceder desde cualquier puesto de una red. El servidor siempre podra limitar el acceso a solo determinados puestos y adems obligar la autentificacin de un usuario para acceder a ciertas partes de un programa. Proteccin del cdigo, Al tener el cdigo almacenado en el servidor Web, este permanecer inalterable por parte de cualquier usuario cliente y libre de virus. Aunque un cliente descargue la pgina PHP, slo vera el cdigo de la pgina Web correspondiente. Facilidad de aprendizaje, Cualquier persona que sepa algn lenguaje de programacin puede aprender los fundamentos de PHP en un breve espacio de tiempo. Para el desarrollo de este sistema, tambin se tom en cuenta que en el futuro sta biblioteca digital forme parte del sistema de reservacin de libros de la UTM, el cual est realizado en PHP, adems de las ventajas en cuanto a uso de recursos existentes, que reducen el TCO, tanto de la Universidad, como del propio desarrollo. Algunas otras ventajas de implementacin son las siguientes: Es gratuito Disponibilidad de bibliografa. La Universidad Tecnolgica de la Mixteca cuenta con este lenguaje instalado en sus servidores. Evitar gastos en recursos tcnicos y de cmputo en el proceso de instalacin. Facilidad de conexin con el manejador de base de datos PostgreSQL. Por todas las ventajas descritas, PHP es una opcin confiable y rentable para el desarrollo de la biblioteca digital.
21
Figura 2.2.
ASP es una tecnologa que pertenece a la parte servidor, por esto no es necesario que el cliente o navegador la soporte ya que se ejecuta en el servidor, s que se debe buscar un servidor que soporte este tipo de tecnologa para que las pginas corran correctamente. Hay que destacar que ASP es una tecnologa propietaria de Microsoft, y que el uso de esta tecnologa implica el uso de los productos de Microsoft: MS Internet Information System y MS Windows en el servidor [URL5] . 2.8.2.2. Java Server Pages (JSP) [URL8] JSP es un acrnimo de Java Server Pages. Es una tecnologa orientada a crear pginas Web con programacin en Java. Con JSP se pueden crear aplicaciones Web que se ejecuten en varios servidores Web, de mltiples plataformas, ya que Java es en esencia un lenguaje multiplataforma. Las pginas JSP estn compuestas de cdigo HTML/XML mezclado con etiquetas especiales para programar scripts de servidor en sintaxis Java. Por tanto, las JSP se pueden escribir con el editor HTML/XML habitual. El motor de las pginas JSP est basado en los servlets de Java (Lase Anexo 1. ) programas en Java destinados a ejecutarse en el servidor-, aunque el nmero de desarrolladores que pueden afrontar la programacin de JSP es mucho mayor, dado que resulta mucho ms sencillo aprender que los servlets. En JSP se crean pginas de manera parecida a como se crean en ASP o PHP. Se generan archivos con extensin .jsp que incluyen, dentro de la estructura de etiquetas HTML, las sentencias Java a ejecutar en el servidor. Antes de que sean funcionales los archivos, el motor JSP lleva a cabo una fase de traduccin de esa pgina en un servlet, implementado en un archivo class (Byte codes de Java). Esta fase de traduccin se lleva a cabo habitualmente cuando se recibe la primera solicitud de la pgina .jsp, aunque existe la opcin de precompilar en cdigo para evitar ese tiempo de espera la primera vez que un cliente solicita la pgina. 2.8.2.3. Javascript [URL8] Javascript es un lenguaje de programacin utilizado para crear pequeos programas encargados de realizar acciones dentro del mbito de una pgina Web. Se trata de un lenguaje de programacin del lado del cliente, porque es el navegador el que soporta la carga de procesamiento. Gracias a su compatibilidad con la mayora de los navegadores modernos, es el lenguaje de programacin del lado del cliente ms utilizado.
2 2
Con Javascript se pueden crear efectos especiales en las pginas y definir interactividades con el usuario. El navegador del cliente es el encargado de interpretar las instrucciones Javascript y ejecutarlas, de modo que el mayor recurso, y tal vez el nico, con que cuenta este lenguaje es el propio navegador. Javascript se utilizar en el Sistema Web de Biblioteca Digital como lenguaje de apoyo, realizando procesos que con PHP no se pueden realizar con facilidad, requieren cambios de estado innecesario e interactividades propias del sistema Web. Finalmente, el marco conceptual muestra la base que se debe seguir para el desarrollo de este sistema de biblioteca digital, facilitando el anlisis y diseo que se plantear en el siguiente captulo.
24
final. Incluso se pueden construir modelos matemticos para analizar los efectos de vientos o terremotos sobre nuestros edificios [9] . El modelado no es slo parte de la industria de la construccin. Sera inconcebible crear una nueva aeronave o automvil sin construir previamente modelos, que van desde modelos informticos a modelos fsicos para el tnel de viento y prototipos a escala real. Los nuevos dispositivos elctricos, desde los microprocesadores a las centralitas telefnicas, requieren algn grado de modelado para comprender mejor el sistema y comunicar las ideas a otros [9] . De la misma forma las bibliotecas digitales no excluyen el modelado como metodologa para un mejor desarrollo.
La Universidad Tecnolgica de la Mixteca es una Institucin pblica dedicada primordialmente a la enseanza de nivel superior e investigacin cientfica, por lo cual se cuenta con los recursos humanos, materiales y tcnicos para el cumplimiento de dicho propsito. La Universidad se encuentra ubicada en la Ciudad de Huajuapan de Len, en el estado de Oaxaca, y su domicilio es Carretera Acatlima Km. 2.5. Actualmente la Institucin cuenta con 7 licenciaturas y 3 posgrados, albergados en 3 centros y 5 institutos. Estos centros e institutos, se encargan de dar apoyo acadmico, a realizar labores de enseanza acadmica, investigacin, asesora a tesistas, etc. Dentro de los institutos se encuentra el Instituto de Electrnica y Computacin (IEC), instituto que se encarga de la enseanza de las licenciaturas y posgrados relacionados con el rea de electrnica y computacin, as como de la realizacin de otras actividades anteriormente citadas. Para la labor de investigacin, el IEC cuenta con cuerpos acadmicos, divididos en especialidades de investigacin, entre los cuales se encuentra el Cuerpo Acadmico de Ingenie-
25
ra de Software (CASI), cuerpo acadmico hacia el cual va dirigido este proyecto de tesis y cuya pgina Web es la siguiente: http://mixtli.utm.mx/~casi. 1.1. Organizacin del CASI El CASI tiene como objetivo primordial, la investigacin y desarrollo de las diversas disciplinas que conforman la Ingeniera del Software. La bsqueda en la realizacin de estos objetivos se hace a travs de investigaciones realizadas en tres lneas de investigacin: Metodologas Orientadas a Objetos (MOO). Interaccin Humano-Computadora (HCI). Desarrollo de Software Educativo (SE). Los investigadores estn organizados dentro de estas lneas y desarrollan proyectos de investigacin, direccin de tesis y publicacin de resultados. El sistema de biblioteca digital, como proyecto de tesis se encuentra dentro de las tres lneas de investigacin en mayor o menor medida y tiene como fin inicial proporcionar informacin a los integrantes del CASI para su desarrollo profesional y en general para cualquier persona que lo desee.
2. Gestin de la Biblioteca Digital 2.1. Situacin actual
Los cuerpos acadmicos de la Universidad, y tomando como ejemplo al CASI, los profesores-investigadores realizan labores de docencia, investigacin, direccin de tesis y la publicacin de resultados, por lo cual necesitan informacin bibliogrfica, de artculos, reportes tcnicos y de tesis que les ayuden a sustentar sus propios trabajos bajo referencias bibliogrficas de calidad. Para este propsito el CASI cuenta con las siguientes herramientas: 1. Base de Datos de documentos digitales, con documentos de calidad, lo cual ya es una base para entrar al mundo de la investigacin, pero que igual tiene las siguientes desventajas: La base de datos funciona localmente. Por consiguiente tiene ms puntos en su contra: la base de datos puede crecer en diferente proporcin por cada miembro del cuerpo acadmico. Por tal motivo, puede llegar el momento en que dicha base de datos puede tener redundancia de informacin en todos los aspectos: autores, artculos, etc. Cada uno de los miembros tiene su propio acervo de documentos digitales, los cuales generalmente solo son utilizados por ellos mismos y desconocidos para los dems miembros, tesistas y alumnos. Los profesores investigadores poseen material digital actual adquirido a travs del Internet, otras bibliotecas digitales, quizs dado un costo de suscripcin u otras fuentes, para realizar sus labores de investigacin, expedicin de artculos, etc. Pero debido al mismo costo, trabajo o el desconocimiento de las necesidades de investigacin del cuerpo acadmico, el alumnado y dems profesores investigadores, mucha de esa informacin solo se queda con ellos. 2. Biblioteca tradicional con un sistema de reservacin de libros en lnea, donde se puede consultar informacin bsica de los libros que se encuentran en existencia. Este sistema tambin cuenta con un apartado de biblioteca digital donde se han digitalizado algunas de
26
las tesis de los egresados de la Universidad. Pero que no estn disponibles en lnea, adems de tener otras desventajas como se muestra a continuacin: Principalmente, la biblioteca no cuenta con las existencias de libros para satisfacer cabalmente el creciente ndice de estudiantes, investigadores y tesistas, que por lo general obliga a los mismos a adquirirlos por propia cuenta. Los libros con el paso de los aos se deterioran y/o pierden la actualidad en sus contenidos, lo cual en algunas ocasiones, provoca que en las tareas de investigacin no cumplan con las pretensiones que los profesores le exigen a sus alumnos. Situaciones similares pueden suceder tanto a tesistas, como a los profesores-investigadores a la hora de realizar labores de investigacin y recopilacin de informacin. El sistema de Biblioteca cumple con su cometido especfico, pero se desperdician otras capacidades que se podran agregar al mismo. En la biblioteca digital se manejan tesis que solo pueden ser consultadas, pero no permite la descarga del documento digital y tampoco se puede realizar una reservacin en lnea. 3. Bibliografa propia o perteneciente al cuerpo acadmico, esta tiene como ventaja que los investigadores y/o el cuerpo acadmico compra los libros que necesita, pero con los siguientes inconvenientes: La adquisicin por medio del cuerpo acadmico se realiza segn el presupuesto que el cuerpo acadmico disponga. Adquirirlos por cuenta propia, les producen un gasto a los investigadores y al igual que en la biblioteca, con el tiempo se deterioran. Solo un investigador puede utilizar un libro a la vez, y en el caso de que los libros pertenezcan al cuerpo acadmico, tendr en algn momento dado ser prestado para que otro miembro del cuerpo lo utilice. 4. Internet las 24 horas del da. La mayora de las bsquedas realizadas por medio de buscadores en Internet son comnmente insuficientes, con muchos resultados confusos, fuentes dudosas o de mala calidad. La mayora de las bibliotecas digitales tienen un costo de suscripcin o en su defecto el usuario tiene que formar parte de la institucin donde reside dicha biblioteca. En este momento se cuenta con la infraestructura tcnica y los recursos humanos para desarrollar aplicaciones de cmputo que revistan a la Universidad de capacidades tecnolgicas de alto nivel, que ayuden a resolver este tipo de problemas. 2.2. Requisitos Con el desarrollo de un sistema de biblioteca digital se pretende cubrir todos los puntos descritos anteriormente para unificar y resolver todos los problemas existentes y adems brindar lo siguiente: 1. Realizar bsquedas que ayuden a los usuarios a elegir que documentos logran satisfacer sus necesidades de informacin.
27
2. Realizar descargas de documentos en formato digital que le ayuden a los usuarios a leer la informacin desde casi cualquier computadora o llevar a casa la informacin, aun cuando ellos no cuenten con conexin a la Internet. 3. Realizar cargas de documentos de literatura cientfica para que alumnos y profesores investigadores agreguen y compartan sus documentos digitales, para lograr un acervo extenso y de calidad. Esto con las debidas restricciones para conservar y lograr la eficiencia esperada. 4. Registro y control de usuarios para garantizar la calidad del contenido del acervo de la biblioteca digital.
El objeto de la especificacin es definir de manera clara y precisa todas las funcionalidades y restricciones del sistema que se desea construir. Tambin se espera que el documento sea la base para la creacin del diseo del software y definir un conjunto de requisitos que se puedan validar una vez se tenga el software. El documento va dirigido al desarrollador, al cuerpo acadmico de ingeniera de software y a los usuarios finales. Este documento ser el canal de comunicacin entre las partes implicadas, contribuyendo en su confeccin miembros de cada parte.
2. mbito del sistema
El motor que impulsa el desarrollo del sistema es la evidencia de una creciente complicacin y dificultad en la obtencin de informacin de literatura cientfica de calidad, necesaria para las labores de investigacin propias de los profesores, alumnos y tesistas para el soporte de tesis, la escritura de artculos y bsquedas de informacin para investigaciones escolares especficas. La situacin de partida es una base de datos de documentos digitales de literatura cientfica no distribuida que es su principal desventaja, y que aunque existe una biblioteca digital como parte del actual sistema de Biblioteca para la reservacin de libros en la Universidad, no funciona como tal, no tiene la difusin, ni se le da un uso adecuado para ser llamada biblioteca digital, solo posee dentro de su acervo tesis profesionales en formato digital y que actualmente aun es desconocido por la mayora de los usuarios del mismo, adems de que slo puede consultarse la informacin de las tesis y no se pueden reservar en lnea. Un segundo punto de partida es el hecho de que al ser una Universidad que cuenta con profesores investigadores, muchos de los cuales tienen acervos de artculos que podrn, si as lo desean ser compartidos mediante el sistema de Biblioteca digital con las dems personas que necesitan informacin cientfica actual y de calidad, pudiendo crear finalmente un acervo unificado en lnea, para el beneficio de todos los miembros de la Universidad.
28
El futuro sistema de Biblioteca Digital se encargar de recopilar y distribuir documentos digitales 8 , con fines educativos e investigacin al alcance de todos. No tiene intencin de sustituir al actual sistema, ya que perfectamente podr trabajar independientemente del sistema de Biblioteca de reservacin en lnea. La carga del sistema se puede estimar teniendo en cuenta que la Universidad posee una infraestructura de red con acceso a Internet y que un gran porcentaje de usuarios finales tienen acceso a este recurso para realizar sus labores de investigacin. El sistema contar con una base de datos que se actualizar constantemente por los mismos usuarios del sistema, reduciendo en un mnimo el proceso de administracin de la misma.
3. Definiciones, Acrnimos y Abreviaturas. 3.1. Definiciones
Usuarios
Personas que harn uso del sistema de Biblioteca Digital, las cuales podrn buscar, descargar y/o cargar artculos y dems documentos digitales. Persona que vigilar el buen funcionamiento de la biblioteca digital, con la mnima participacin posible. Pero cuando sea requerida pueda resolver cualquier tipo de contrariedades. Tabla 3.1. Definiciones
Administrador
3.2.
Acrnimos
DL-CASI UTM
4. Referencias del documento
Sistema en Web de Biblioteca Digital de Documentos de Literatura Cientfica. Universidad Tecnolgica de la Mixteca Tabla 3.2. Abreviaturas
o IEEE Recommended Practice for Software Requirements Specification. ANSI/IEEE std. 830, 1998 o Sommerville, Ian. Ingeniera de software. 6a. edicin. Addison Wesley
5. Visin general del documento
Este ERS consta de tres secciones. Esta seccin es la introduccin y proporciona una visin general de la ERS. En la seccin siguiente se da una descripcin general del sistema,
8
Documentos digitales: En esta tesis definimos este trmino, como los documentos cientficos en formato digital PDF.
29
con el fin de conocer las principales funciones que debe realizar, los datos asociados y los factores, restricciones, supuestos y dependencias que afectan al desarrollo sin entrar en excesivos detalles. En Requisitos Especficos se definen detalladamente los requisitos que debe satisfacer el sistema. Descripcin General En esta seccin se presenta una descripcin de alto nivel del sistema. Se presentarn las principales funciones que el sistema debe realizar, la informacin utilizada, las restricciones y otros factores que afecten el desarrollo del mismo.
6. Perspectiva del producto
El sistema en esta primera versin, no interactuar con ningn otro sistema informtico. Se espera que en futuras versiones interacte con el sistema de biblioteca existente.
7. Funciones del sistema
En trminos generales, el sistema deber permitir a los usuarios realizar las mismas funciones que realizaran en una biblioteca tradicional tales como: Registro de usuarios. Bsqueda de documentos digitales Descarga de documentos digitales. Carga de documentos digitales. Ingresar al sistema. A continuacin se describir con ms detalle estas tareas y cmo sern soportadas por el sistema. 7.1. Gestin de Registro de Usuarios Para que un usuario pueda agregar un documento digital, deber estar registrado en el sitio de la Biblioteca Digital, esta opcin permitir reducir en la mayor de las posibilidades que los documentos digitales que los usuarios agreguen sean falsos, de psima calidad o simple basura. Para las dems funciones el usuario no tendr la necesidad de registrarse.
7.2.
Gestin de Bsquedas de documentos digitales
Una vez que el usuario haya abierto el Sitio de la Biblioteca Digital, podr realizar bsquedas con diferentes criterios: por autor, por ttulo, por abstract 9 o por referencia, esto le permitir localizar documentos digitales de la manera que mejor considere para lograr su objetivo.
7.3.
Gestin de Descargas de documentos digitales
Una vez localizado el documento con la informacin deseada, el usuario podr conocer informacin til a travs del abstract del documento. De esta forma podr decidir en descargar o no el documento digital, reducindole as el tiempo de su bsqueda.
7.4.
Gestin de Cargas de documentos digitales
Los usuarios podrn realizar esta funcin slo si estn registrados y habiendo realizado el proceso de ingresar al sistema, es decir, haber proporcionado un login y password. As, el
9
Abstract (resumen), es comn el los artculos y documentos cientficos indistintamente en ingles o espaol.
30
usuario podr cargar documentos digitales a la Biblioteca Digital, introduciendo los datos pertinentes que ayuden a los dems usuarios a localizarlos de forma ms rpida y efectiva.
7.5.
Gestin de Ingreso al sistema
Este proceso permitir al sistema identificar al usuario, antes de que este pueda cargar un documento digital.
8. Caractersticas de los usuarios
El sistema de informacin deber ofrecer una interfaz de usuario intuitiva, fcil de aprender y sencillo de manejar. El sistema deber presentar un alto grado de usabilidad. Lo deseable es que un usuario nuevo se familiarice con el sistema en un lapso mximo de cinco minutos a media hora.
9. Restricciones
Debido a que se intenta realizar un sistema auto administrable, el buen funcionamiento de la Biblioteca Digital depender casi al 100% del buen uso que los usuarios hagan del mismo. Solo el administrador podr realizar labores de depuracin (eliminar) documentos que provoquen problemas con el funcionamiento del sistema. En cuanto a las restricciones del sistema, por cuestiones de reducir en lo posible que usuarios mal intencionados carguen documentos digitales falsos, o documentos basura, el Sitio exige que slo los usuarios registrados puedan realizar alguna carga de documentos.
10. Suposiciones y Dependencias 10.1. Suposiciones
Se asume que los requisitos descritos en este documento son estables una vez que es aprobado como tema de tesis. Cualquier peticin de cambios en la especificacin ser propuesta como trabajo futuro.
10.2.
Dependencias
El sistema de Biblioteca Digital funciona autnomamente, sin necesidad de un administrador de Sitio fijo, y sin necesidad de comunicarse con otros sistemas externos, por lo que no hay dependencias respecto a una persona encargada de su administracin y de otros sistemas. Requisitos Especficos En este apartado se presentan los requisitos funcionales que debern ser satisfechos por el sistema. Todos los requisitos aqu expuestos son esenciales, es decir, no sera aceptable un sistema que no satisfaga alguno de los requisitos aqu presentados. Estos requisitos se han especificado teniendo en cuenta, entre otros, el criterio de necesidades: dado un requisito, debera ser fcilmente demostrable si es satisfecho o no por el sistema.
11. Requisitos funcionales 11.1. Gestin del Registro de Usuarios
Req (1) Cada vez que un nuevo usuario se registre, deber proporcionar los siguientes datos: Nombre completo del usuario, e-mail, rea de desarrollo, login, password y confirmacin del mismo. Esto con el fin de que el usuario pueda cargar algn documento digital. Ver apndice 18
31
Solicitar de datos de usuario. Req 1.2 Introducir datos. Req 1.3 Validacin de datos. Req 1.4 Almacenamiento de datos. Req 1.5 Se guardan los datos y muestra el mensaje exitoso. Req (2) El sistema deber proporcionar una opcin de recuperacin de password en el caso de que el usuario lo olvide. Por lo cual el usuario deber proporcionar los siguientes datos: login y email con el cual se registr. Req 2.1 Solicitar datos. Req 2.2 Introducir datos. Req 2.3 Validacin de datos. Si los datos no son validos ir a Req 2.1 Req 2.4 Se recuperan los datos.
11.2.
Gestin de Bsqueda de Documentos
Req (3) Para realizar alguna bsqueda el usuario deber escribir un criterio de bsqueda y un contenido a buscar. Entre ms especifico sea el contenido mejor sern los resultados encontrados que el sistema mostrar. Req 3.1 Elige criterio e introduce un contenido a buscar. Req 3.2 Muestra de resultados. Req 3.3 Si el criterio fue autor, muestra los autores que coinciden con la bsqueda. Req 3.4 Si el criterio fue ttulo, muestra los documentos con ttulo que coinciden con la bsqueda. Req 3.5 Si el criterio fue abstract, muestra los documentos que coinciden con la bsqueda. Req 3.6 Si el criterio fue referencia, muestra los documentos que coinciden con la bsqueda. Req (4) El sistema proporcionar informacin (en pantalla) acerca de los documentos existentes en la biblioteca. Esta informacin ser accedida por alguno de los siguientes criterios: por autor, por ttulo, por abstract o por referencia del documento. Por cada documento individual, se mostrar su autor, el ttulo del documento, su referencia y liga sobre el ttulo para ver ms informacin del mismo y/o descargarlo.
11.3.
Gestin de la Descarga de Documentos
Req (5) Antes de realizar una descarga, el usuario deber realizar la bsqueda del mismo. Ver requisitos punto 11.2 Req 5.1 Visualizacin de resultados. Req (6) El usuario deber pinchar el enlace del documento y finalmente en descargar en la pgina del abstract. Req 6.1 Obtencin de la informacin del documento. Req 6.2 Visualizacin de la informacin del documento. Req 6.3 Si es el documento que busca, lo descarga.
32
11.4.
Req (7) Para realizar la subida de algn documento, el usuario deber estar previamente registrado y haber accedido al sistema. Ver Req (10) Req (8) Una vez que el usuario ha ingresado al sistema, deber introducir los datos del documento que desea cargar, los cuales son los siguientes: ttulo del documento, autor(es), referencia, abstract, rea de investigacin en la que fue escrito, ao de escritura del documento, idioma y finalmente localizar en su mquina local el documento que desea agregar en el formato digital correspondiente. Req 8.1 Ingresa los datos del documento al formulario. Req 8.2 Validacin de los datos. Req 8.3 Si no hay errores, guardar los datos en la base y el documento. Req 8.4 El sistema muestra mensaje exitoso. Req 8.5 Si falla, el sistema muestra mensaje de error. Req (9) Para el requisito anterior, el sistema mostrar ayuda de cmo debe ser el formato de los datos a introducir. Ver Apndices 17
11.5.
Gestin de Ingreso al sistema
Req (10) Para ingresar el usuario deber introducir su login y password, los cuales dio durante el registro. Req 10.1 El sistema le solicitar el login y el password Req 10.2 Ingresa el login y el password Req 10.3 Valida login y password Req 10.4 Login y password validos
12. Interfaces Externos 12.1. Interfaces de usuario
La interfaz de usuario debe ser orientada a un ambiente de pginas Web, y el manejo del programa se realizar a travs de teclado y ratn. La interfaz se realizar en un navegador Web.
12.2. 12.3. 12.4.
Interfaces Hardware Interfaces Software Interfaces de comunicacin
No se han definido. De momento, no habr ninguna interfaz software con sistemas externos. La conexin a la red se establecer por medio de una conexin a la red Ethernet de la Universidad Tecnolgica de la Mixteca, donde se encuentra el servidor. Esto ser transparente para el sistema, el cual, considerar que se encuentra en la misma red que el servidor. Para el acceso por Internet a la biblioteca digital se utilizar un nombre que lo identifique DL-CASI y que residir en algn servidor del Cuerpo Acadmico de Ingeniera de Software (CASI).
33
El nmero de usuarios a los que se espera dar servicio simultneamente es de unos 100 y el tiempo de respuesta en las operaciones debe ser de menos de 20 segundos aproximadamente, aunque esto depender en gran medida de la velocidad de acceso a la Internet con que se cuente.
14. Requisitos de desarrollo
El ciclo de vida elegido para desarrollar el producto ser el espiral y el modelo de ensamblaje de objetos y componentes. Este ltimo se usar bsicamente para disear la interfaz grfica del sistema.
15. Requisitos Tecnolgicos
La aplicacin cliente se ejecutar sobre una PC con una configuracin de hardware mnima de: Procesador: Pentium III 500 Mhz Memoria: 64 Mb. Espacio libre en disco: 10 Mb. Tarjeta Ethernet o Mdem Todas las PCs debern tener acceso a Internet. El sistema operativo sobre el cual se debe ejecutar el sistema ser cualquiera que soporte un navegador Web. El navegador deber soportar los scripts del sistema, por lo tanto se recomienda: Internet Explorer 6.0, Netscape 7.0 y Safari 1.2.4 El sistema necesita un servidor con la siguiente configuracin hardware: Procesador: Pentium III 600 Mhz Memoria: 1 GB. Espacio libre en disco: 5 GB, aunque depender del nmero de documentos que se estime que sern almacenados. El software necesario para la aplicacin es: Sistema Operativo: Red Hat 9, PostgreSQL y Apache Estas caractersticas son con las que se cuenta actualmente en la UTM, por lo que se pueden considerar como configuraciones ptimas.
16. Atributos 16.1.
Seguridad
Cuando un usuario desee realizar la subida de algn documento deber introducir su identificacin (login) y clave de acceso (password), y el sistema deber comprobar que se trata de un usuario autorizado. Si el identificador introducido no corresponde a un usuario autorizado o la clave no coincide con la almacenada, el sistema presentar una indicacin de error. Durante el proceso de subida de documentos, el sistema comprobar en lo posible que los datos requeridos se proporcionen correctamente, adems ofrecer ayuda para asegurar que ciertos datos como: ttulo y autores del documento, hayan sido bien introducidos, y despus podr continuar, en caso contrario, deber verificar los datos ingresados.
34 Apndices
17. Formato que el usuario deber rellenar para subir 10 algn artculo
Figura 3.1.
Campo que contendr el nombre completo, preferentemente como viene dentro del documento. Campo que contendr el nombre de cada uno de los autores. Campo que contendr la informacin de la referencia del documento. Campo que contendr el resumen que viene dentro del documento. Campo que contiene la rama de investigacin a la que pertenece el documento. Campo que contiene el ao en que fue escrito el documento. Campo que contendr el idioma en que se encuentra escrito el documento. Campo que contendr la ruta del documento digital a subir en la mquina local. Tabla 3.3. Definicin de campos de carga de documentos.
10
En las pantallas se utiliz la palabra subir por cargar por ser una palabra coloquial, por lo tanto, en este trabajo se usar como sinnimo.
35
Figura 3.2.
Nombre completo
Campo que contendr el nombre completo de la persona que se desea registrar como usuario del sistema de Biblioteca digital. Campo que la direccin de correo electrnico de la persona que se desea registrar. Campo que contendr la informacin del rea en la que se desenvuelve el usuario que se desea registrar. Campo que contendr el login o identificador con el cual el usuario desee ser identificado dentro del sistema. Campo que contiene el password para acceder al sistema. Campo que ayuda al usuario a confirmar su contrasea previniendo cualquier error de escritura del password.
36
Figura 3.3.
Una vez que se tiene planteado un bosquejo del funcionamiento general del sistema se tiene que descomponer cada una de las partes en niveles plenamente identificables. En este caso utilizaremos la arquitectura de capas como patrn de diseo para descomponer en niveles (mdulos) que conforman al sistema. (Ver Figura 3.4).
37
Figura 3.4.
Al descomponer el sistema en capas se simplifica el proceso de diseo, y un poco ms tarde el de implementacin, ya que una capa usa cuando mucho otra capa y es usada a lo mucho por otra capa. Esta es una de las posibles divisiones en capas, podran existir otras un poco ms completas e incluso una que defina mayor cantidad de capas. Dado que este es un modelo de diseo, cabe destacar que sta es una divisin lgica, no se especifican detalles de la distribucin de los paquetes. Esto se muestra en la vista de fsica, la cual ilustra la distribucin del procesamiento entre los distintos equipos que conforman la solucin, incluyendo los servicios y procesos de base. Los elementos definidos en la vista lgica se mapean a componentes de software (servicios, procesos, etc.) o de hardware, que definen de forma ms precisa cmo se ejecutar la solucin. La Figura 3.5 es un ejemplo que muestra una vista fsica, en esta figura se muestra una solucin Web con tres nodos procesadores, Clientes, Servidor Web y Servidor de Base de Datos. Dentro de los nodos se ejecutan procesos, servicios y/o componentes y sus relaciones de dependencia, por ejemplo, el Navegador Web muestra la pgina HTML que corresponde a la presentacin o Interfaz del Usuario de la aplicacin.
38
Figura 3.5.
39
Figura 3.6.
Este diagrama ilustra que la biblioteca digital ser completamente independiente a cualquier otra aplicacin, aunque se planea que en un futuro este sistema tenga conexin directa con el sistema de biblioteca de la UTM, debido al propio rol de la biblioteca digital. La relacin con el sistema de biblioteca de reservacin en lnea de la UTM ser necesaria para disminuir el nmero de sitios Web independientes que ya existen dentro de la universidad, evitando causar confusin entre los usuarios con la existencia de dos sitios (sistema de la UTM y la Biblioteca Digital) que a grandes rasgos tienen relacin y/o son complementarios. Con la incorporacin de la Biblioteca Digital al sistema de reservacin en lnea de la UTM se planea tener un sitio Web ms eficiente y poderoso que cubra mayores expectativas, ofreciendo a los usuarios ms servicios mediante el acceso a un solo sitio Web. Los modelos de utilizacin en UML son representados por medio del diagrama de casos de uso, para ver las interacciones del sistema con su entorno, el cual se muestra en la Figura 3.7
40
Subir documentos
Recuperar password
Figura 3.7.
Este modelo muestra que el sistema tiene muchos casos, pero los ms importantes son: Ingresar al sistema, Registrar Usuarios, Subir Documentos, Buscar Documentos y Descargar Documentos. Ms adelante se describen a detalle algunos de los casos de uso que forman el sistema. Como se mencion anteriormente, para profundizar en detalles se sigue la metodologa RUP, para ello se utiliz la herramienta de Rational Rose para la Especificacin de Casos de Uso (ECU). Debido a la extensin de dichos documentos, en el siguiente punto slo se mostrarn los documentos de algunos casos de uso. Para ver la totalidad de documentos vea la extensin de ECU, (lase Anexo 3. )
3.2.1.1.1. Especificacin de Casos de Uso (ECU) A continuacin se describen dos casos de uso siguiendo la metodologa RUP, la cual entra en todas las etapas del mtodo general.
41
Breve descripcin
Los usuarios podrn acceder al sistema, con la finalidad de poder subir documentos.
Actores
Usuario
42
Flujo de eventos
Flujo bsico
Actor Req (10) Este caso de uso comienza cuando el usuario ejecuta el sistema y selecciona la opcin Ingresar al sistema Sistema
Req 10.1 Req 10.2El sistema solicita un nombre de usuario (login) y su clave de acceso (password). Req 10.2 El usuario ingresa su nombre de usuario (login) y su clave de acceso (password). Req 10.3 El sistema busca en la base de datos el nombre de usuario y compara su clave de acceso. Req 10.4 El sistema identifica al usuario y cambia de estado habilitando la opcin de subir documentos. Si los datos no coinciden, el sistema enva el mensaje Datos incorrectos e ira a Req 10.1 Si existe error el usuario debe introducir nuevamente su login y password Req 10.2 Finaliza el caso de uso.
Precondiciones
El usuario deber haber ejecutado el sistema.
43
Diagrama de actividades
Usuario
Ingresar al sistema
Datos correctos? No Si
Diagrama de secuencia
: Interfaz
: Usuario
: Sistema
: BasedeDat os
datosusuario ()
iniciodesesion( )
iniciodesesion( )
44
Diagrama de colaboracin
1: ingresaralsistema( ) : Interfaz 7: iniciodesesion( ) : Usuario del Sistema 5: verificar( ) 4: conexion( ) 2: datosusuario () : Usuario 6: iniciodesesion( ) 3: datosusuario( ) : Sistema
: BasedeDat os
Diagrama de estados
Validando( login, password ) Ingresar al sistema Accesando entry/ Validacin de datos Ingresando datos( login, password )
Acces
45
Diagrama de clases
Usuario (fa ro idusu rm io Use Case View) nombre email desarrollo password SESSION[autentificado] SESSION[login]
<<realize>> +1 Interfaz Usuario del Sistema Forma +1 introducirdatos() operacionexitosa() iniciodesesion() findesesion() ingresaralsistema() documentosubido() despliegainfo() documentoexiste()
<<uses>> +1
<<muestra>> <<uses>>
Sistema
(from Use Case View)
+1 <<process>> BasedeDatos
(from Use Case Vi ew)
<<communicate>>
alta() verificar() existe_usuario() existe_articulo() autores() link_descarga() articulosxautor() articulos_totales() id_usuario() datos_subidos() abstract() visitas() lista_autores() datosusuario() datosdocumento() existe_autor()
46
Introduccin de primeros Jos Damin Cadiagramas brera Palacio Documento completado Jos Damin Cabrera Palacio
Breve descripcin
Los usuarios registrados podrn realizar la carga de documentos digitales al servidor, con la finalidad de contribuir al crecimiento del acervo de la Biblioteca Digital.
Actores
Usuario
47
Flujo de eventos
Flujo bsico
Actor Este caso de uso comienza cuando el usuario ha ejecutado el sistema, y elige la opcin Ingresar al sistema Req (10) Sistema
Req (7) El sistema muestra la interfaz de ingreso al sistema pidiendo login y password, adems se visualizan las opciones para registrar un usuario y recuperar password. Si el usuario elige la opcin registrar usuario. El sistema realiza el caso de uso registrar usuarios. Ir a Req (1) Si el usuario elige la opcin recuperar password. El sistema realiza el caso de uso recuperar password. Ir a Req (2). Req 10.2 El usuario introduce sus datos de login y password en los campos de la interfaz. Req 10.3 El sistema realiza la validacin de los datos de usuario que han sido introducidos consultando con la Base de Datos. Req (8) El sistema proporciona formato para subir un documento Req (9) pidiendo los datos: ttulo, autor(es), origen de referencia, abstract, rea, ao y ruta. Req 8.1 El usuario introduce los datos al formulario y presiona clic en Subir documento Req 8.2 El sistema valida los datos. Si existen errores, el usuario deber corregirlos y despus dar clic en el botn Subir documento. Ir al Req 8.1 Req 8.3 Si no existen errores por los datos introducidos, el sistema almacena en la base de datos la informacin de los datos del documento digital: ttulo, autor(es), origen de referencia, abstract, rea, ao, e idioma. Req 8.4 Si no existen errores en el proceso de almacenamiento, el sistema muestra mensaje de Documento subido exitosa-
48
Diseo e implementacin de un sistema de biblioteca digital mente, y la opcin de pgina anterior y la pgina principal. Req 8.5 Si existen errores en el proceso de almacenamiento, el sistema muestra mensaje de No se subi el documento y el error. Adems, muestra la opcin de pagina anterior y pagina principal.
El usuario lee el mensaje y si elige pgina anterior vuelve a Req 8.1. Si elige pagina principal finaliza el caso de uso.
Precondiciones
El usuario deber haber ejecutado el sistema. El usuario deber haber ingresado al sistema.
Diagrama de actividades
Usuario
Subir documentos
Elegir opcin Ingresar al sistema
Corregir errores
Pgina anterior
No
Elegir liga
Pgina principal
49
Diagrama de secuencia
: Interfaz ingresaralsistema( )
: Documento
: Sistema
: BasedeDatos
datosdocumento( )
aadirrelacion( )
50
Diagrama de colaboracin
15: despliegainfo( )
1: ingresaralsistema( ) : Interfaz 16: operacionexitosa( ) : Usuario del Sistema 6: documentoexiste( ) 14: documentosubido( ) 3: datosdocumento( ) : Sistema 4: conexion( ) 7: aadirarticulo( ) 8: aadirsubida( ) 9: aadirlink( ) 10: extraeautor( ) 12: aadirautor( ) 13: aadirrelacion( )
: Documento
: BasedeDatos
Diagrama de estado
Subir documento Se identifica como usuario Ingreso al sistema entry/ Usuario identificado Introduciendo datos de documento( titulo, autores, referencia, abstract, etc. ) Validando datos de documento entry/ Datos correctos Validacin correcta
Aceptar
51
Diagrama de clases
Documento
(from Use Case Vi ew)
Sistema
(from Use Case Vi ew)
<<realize>>
<<uses>> +1 +1 Interfaz
+1
Usuario del Sistema Forma introducirdatos() operacionexitosa() iniciodesesion() findesesion() ingresaralsistema() documentosubido() despliegainfo() +1 documentoexiste()
<<uses>>
alta() verificar() existe_usuario() existe_articulo() autores() link_descarga() articulosxautor() articulos_totales() id_usuario() datos_subidos() abstract() visitas() lista_autores() datosusuario() datosdocumento() existe_autor()
<<uses>> +1 Usuario
(f ro m Use Case Vi ew) idusu a rio nombre email desarroll o password SESSION[autentificado] SESSION[login]
En los siguientes puntos solo se mencionar de manera general las fases restantes del diseo del sistema.
52
3.2.1.2. Diseo Arquitectnico En base a la teora de arquitectura de software [47] y a la estructura que deseamos implementar en nuestro sistema de biblioteca digital, se utiliz como base el modelo arquitectnico de capas (ver Figura 3.4), y dentro de cada una de las capas se utiliz una arquitectura orientado a objetos (implementada con RUP ver apartado anterior). Donde se mostraron algunas interacciones entre los objetos del sistema. 3.2.1.3. Identificacin de objetos En esta etapa del proceso de diseo ya se tienen bien identificados los objetos que intervendrn en el sistema de biblioteca digital, la tcnica utilizada para la identificacin de los objetos fue la de anlisis gramatical (en los documentos ECU, ver Flujo de Eventos). A continuacin se describen de forma general los objetos ms importantes que intervienen en el sistema. La clase Interfaz es dependiente de la tecnologa de interfaz especfica que se utilice. En este caso, implicaran clases del diseo de esteriotipos como Forms, dadas por la pgina Web. La clase Usuario provee la interfaz necesaria para llevar un control de los usuarios del sistema (registrados), en ella se pueden visualizar los datos necesarios para identificar a cada usuario de la biblioteca digital. La clase Documento provee la interfaz necesaria para llevar un control de los documentos digitales (artculos, tesis y reportes tcnicos) y poder identificar a cada uno de dichos documentos. La clase Sistema provee la interfaz y las operaciones necesarias para controlar el flujo de Usuarios y Documentos dentro del mismo sistema. La clase Basededatos es provisto por el manejador de base de datos utilizado.
3.2.1.4. Modelos de diseo Estos modelos muestran los objetos y clases del sistema. Para tal efecto, como se mencion anteriormente se ha empleado el Lenguaje Unificado de Modelado [9] en base al RUP, mediante la herramienta de Rational Rose para disear los modelos estticos y dinmicos del sistema de biblioteca digital. Estos modelos incluyen varios tipos de diagramas (Casos de uso, Colaboracin, Secuencia, Actividades, y Clases) ver 3.2.1.1.1.
53
Figura 3.8.
No tendr relacin con ninguna otra entidad, ya que no se contemplan lmites de descargas, ni datos estadsticos, ni histricos de movimientos que los usuarios registrados realicen en el sistema. Vase la Figura 3.8 A continuacin se debe tomar en cuenta el elemento ms importante de una biblioteca que son los artculos, necesitamos un registro de todos los artculos con los que cuenta la biblioteca. As se necesita una entidad ARTICULOS que contenga la informacin necesaria para el manejo de las descargas y subidas de documentos que realiza el sistema. En principio, hay que definir la relacin que hay entre los AUTORES y los ARTICULOS, un autor puede escribir muchos documentos, pero a su vez, un documento puede haber sido escrito por muchos autores. Por lo tanto la relacin que existe entre estas dos entidades es de muchos a muchos (Vase Figura 3.9).
AUTORES N Escribe M ARTICULOS
Figura 3.9.
A continuacin, otra relacin importante son las RUTAS con los ARTICULOS, ya que esta relacin denotar donde esta almacenado el documento en el servidor. La relacin se puede definir de la siguiente manera, un documento solo se puede localizar en una ruta determinada en el servidor, as mismo, la ruta solo debe dirigirse a un documento, en este caso el archivo PDF. La relacin existente debe de ser de uno a uno (Vase la Figura 3.10).
1 Localiza 1
ARTICULOS
RUTAS
Figura 3.10.
54
A continuacin se define la tabla que contendr la informacin de todos los usuarios registrados en el sistema de biblioteca digital. USUARIOS idusuario nombre email desarrollo login password Identificador nico de usuario en la base de datos. Nombre completo del usuario que se ha registrado. E-mail del usuario que se ha registrado, para comunicarse con l. rea de desarrollo e inters de literatura cientfica. Identificador de usuario en el sistema de la biblioteca digital. Contrasea para poder acceder al sistema de la biblioteca digital. Tabla 3.5. Definicin de tabla USUARIOS A toca definir los campos que contendr el elemento ms importante en la biblioteca, que son los documentos, as que se har una breve descripcin que facilite la inclusin de los campos de esta tabla: 1. Primeramente algo que se debe contemplar es que un documento puede tener varios autores. Por lo tanto es mejor que se realice una tabla Autores para evitar redundancias innecesarias, y adems evitar que nuestra base de datos se vuelva excesivamente grande y poco manejable, ya que de la misma forma, un solo autor puede tener n nmero de documentos relacionados con l. ARTICULOS idarticulo titulo referencia abstract Ao rea Identificador nico del documento en la base de datos. Nombre completo del documento. Lugar de donde procede el documento para mayores referencias de informacin. Contendr el "abstract" o parte del "abstract" para que el usuario conozca acerca del contenido del documento. Ao en que el documento fue publicado. En que rea de investigacin fue desarrollado dicho documento Tabla 3.6. Definicin de tabla ARTICULOS 2. Los autores estarn en una tabla con los datos correspondientes, y para evitar redundancia solo se registrar como un nuevo autor cuando ste no exista en la tabla. La creacin de esta tabla facilitar la bsqueda por autor.
55
AUTORES idautor nombre Identificador nico del autor en la base de datos. Nombre completo del autor. Tabla 3.7. Definicin de tabla AUTORES 3. La tabla de relacin ayudar a localizar los documentos de una forma ms fcil y har que las redundancias sean mnimas, la tabla ocupar menos espacio fsico en el servidor. REL_ART_AUTO idautor idarticulo Identificador nico del autor en la base de datos. Identificador de documento. Tabla 3.8. Definicin de tabla REL_ART_AUTO Finalmente la ltima definicin es la relacin que tiene el documento con la ruta donde se guarda el archivo PDF en el servidor. RUTAS idruta link idarticulo Identificador nico de la ruta en la base de datos. Ruta a la que apuntar la liga (link) antes mencionado para descarga. Identificador nico de documento relacionado con la ruta. Tabla 3.9. Definicin de tabla RUTAS La definicin de las tablas de la manera anteriormente planteada, tiene como ventajas principales: Facilitar la bsqueda de artculos por el sistema. Reducir enormemente la redundancia de datos. Tener la informacin mejor organizada. Hacer que el espacio de almacenamiento necesario sea el ptimo.
56
4. Implementacin y pruebas
Escribir programas con prisa produce resultados inmediatos, pero dudosos; un enfoque disciplinado, por otra parte, produce una calidad superior en menos tiempo. Esta etapa del desarrollo es muy importante en el ciclo de vida del software, ya que definir una forma correcta de implementacin, nos permitir plasmar de la mejor manera lo que se describi en el anlisis y el diseo del sistema, tal como se cit en el captulo anterior. De esta manera se obtienen mejores resultados a la hora de realizar las pruebas del software, redituando en menos correcciones, lo que a la par significa menores retrocesos por posibles cambios en el diseo y finalmente en la implementacin final.
4.1. Implementacin
El propsito de la implementacin es satisfacer los requerimientos de la manera que especifica el diseo detallado. Aunque el diseo detallado debe ser suficiente como documento contra el que se programa [10] . La implementacin se refiere a programacin. Como se mencion en el captulo dos el lenguaje de programacin que se utilizar para la implementacin del Sistema en Web de Biblioteca Digital de Literatura Cientfica es PHP. Para dicho proceso se utiliz Dreamweaver como editor de las pginas Web que conformarn el sistema. Dreamweaver permite construir pginas Web tanto en tiempo de diseo, como de cdigo.
58
En la Figura 4.1 el diseo contempla todas las pginas necesarias para el funcionamiento del sistema. Ahora es necesario explicar cada una de las pginas a implementar. Cada pgina Web se describe en la Tabla 4.1 mostrada a continuacin: Index Esta pgina es la primera que ver el usuario. El cual desde el principio tendr la opcin de buscar documentos en el sistema. Pero adems la pgina debe tener ligas hacia la opcin de subir documentos, pero antes deber ingresar al sistema. Obviamente las opciones de ayuda y condiciones de uso son necesarias, As como informacin estadstica del nmero actual de documentos que contiene la biblioteca y los cinco ltimos documentos dados de alta recientemente. Esta pgina debe solicitar al usuario su login y contrasea (password) para poder acceder al sistema y as permitirle al usuario subir documentos. Pero en el caso que el usuario an no est registrado, el sistema proporcionar la opcin de registrarse como usuario del sistema, as como tambin una opcin para recordarle su contrasea cuando la haya olvidado. Esta pgina presenta la ayuda de todos los procesos de la biblioteca digital. Cuando el usuario realice una bsqueda por autor, deber aparecer una lista de autores que coincidan con el nombre que ha sido introducido, esto para agilizar la bsqueda y localizacin de un documento. Pero una vez seleccionado un autor deber aparecer la lista de documentos relacionados con l.
Ingresar al sistema
Esta pgina debe mostrarse cuando el usuario ha realizado una bsqueda por Resultados Documentos los dems criterios de bsquedas o anteriormente ha seleccionado un autor. Aqu se muestran los documentos en forma de referencias bibliogrficas. Condiciones de uso Registrarse Recuperar Esta pgina muestra las condiciones que el usuario debe seguir para el buen uso y funcionamiento del sistema. Esta pgina contiene el formulario para capturar los datos del usuario cuando desee registrarse para subir documentos. Esta pgina debe darle la opcin al usuario de recuperar su contrasea (pass-
Implementacin y pruebas contrasea Subir documento Abstract word) cuando la haya olvidado.
59
Esta pgina se cargar cuando el usuario haya introducido su login y password en los campos de la opcin ingresar al sistema. La pgina contendr los campos para introducir los datos del documento a subir a la biblioteca digital. Esta pgina proporciona un resumen del documento seleccionado y adems le ofrece la opcin de descargar el documento. Previamente debe haber realizado una bsqueda y seleccionado un documento.
Tabla 4.1. Descripcin de pginas Web del sistema de biblioteca digital Las pginas Web descritas son las ms importantes en la interaccin del sistema, pero conforme se vaya complementando la implementacin sern necesarias ms pginas, que proporcionen retroalimentacin al usuario facilitndole el uso del sistema. El sistema est disponible en la siguiente direccin electrnica: http://nuyoo.utm.mx/~damiancp/silidi/acceso.php. Y muy prximamente la direccin definitiva ser http://mixtli.utm.mx/~dl_casi
A continuacin se describirn cada una de las interfaces que conforman el Sistema en Web de la biblioteca digital.
Esta interfaz que se muestra en la Figura 4.3 contiene en el marco principal los ltimos cinco documentos digitales subidos por tal usuario del sistema y en tal fecha respectivamente. En el siguiente punto se muestra la cantidad de documentos que se encuentran almacenados en la biblioteca digital. Tambin se muestra una liga (link) al sitio Web de adobe para que cualquier usuario que as lo requiera descargue el software de acrobat reader para leer los documentos de la biblioteca digital. En la parte inferior del marco principal se muestran ligas a otras bibliotecas digitales. Adems de un contador de visitas. Como se puede ver en la interfaz, todo el contenido de esta pgina es informativo para el usuario con la finalidad de que sea de inters, entendible y fcil de usar. 4.1.2.2. Ingresar al sistema Para ingresar a esta interfaz, se tiene que dar clic en la liga Ingresar al sistema en el men principal que se encuentra en el marco superior (encabezado), Ver Figura 4.4
Implementacin y pruebas
61
Una vez que se ha dado clic en Ingresar al sistema. En la Figura 4.5 se muestra el marco, donde aparecen los campos para ingresar al sistema (cabe recordar que se debe ingresar al sistema para que un usuario pueda subir un documento a la biblioteca), solicitndole al usuario su login (identificador de usuario) y su password. Slo se podr ingresar al sistema si el usuario se ha registrado anteriormente, en caso contrario sta interfaz muestra una liga para que un usuario pueda registrarse (Aun no soy un usuario registrado, deseo hacerlo ahora!). Esta interfaz tambin muestra una liga donde el usuario puede recuperar su password cuando lo haya olvidado o extraviado. (Ha olvidado su password?) Finalmente la interfaz tiene una liga para regresar a la pgina de bienvenida en este caso designada pgina principal (home page).
La interfaz para registro de usuarios consta de un formulario que el usuario debe llenar con los datos que se le solicitan (nombre, e-mail, login, password, etc.) y a continuacin presionar el botn Registrarse para continuar con el registro o en su defecto, presionar el botn Limpiar para poner en blanco el formulario. De igual manera la interfaz consta de una liga para regresar a la pgina principal. Todo lo descrito anteriormente se muestra en la Figura 4.6. 4.1.2.4. Recuperar password de usuario
Implementacin y pruebas
63
La interfaz para recuperar el password consta de dos campos que el usuario debe llenar con la informacin solicitada, una vez hecho esto, tiene que presionar el botn Recuperar password para iniciar el proceso. Tal como se muestra en la Figura 4.7. Una vez ms esta interfaz tiene una liga para regresar a la pgina principal, o tambin presionando la liga inicio en el marco superior regresar a la pgina principal. 4.1.2.5. Resultado de autores Una bsqueda puede realizarse casi desde cualquier punto del sistema, pero dependiendo del criterio que se elija, el sistema mostrar uno de dos caminos posibles, por ejemplo si la bsqueda es por autor, el sistema despliega la lista de autores que concuerden con el contenido introducido en el campo de bsqueda y el nmero de documentos relacionados con el respectivo autor. En la Figura 4.8 se muestran los resultados cuando se buscan todos los autores que contienen en su nombre David.
4.1.2.6. Resultados de Documentos Esta interfaz es como resultado de la bsqueda por Ttulo, Abstract o Referencia o cuando se ha elegido el nombre de un autor en una bsqueda por el respectivo criterio. Ver Figura 4.9
64
Cada uno de los resultados que se muestran en la figura anterior tiene el siguiente formato: Autor(es), ao del documento, ttulo del documento, referencia del documento e idioma en el que est escrito el documento. Como se observa, es un estndar similar a una referencia bibliogrfica comnmente conocida. 4.1.2.7. Abstract (descarga de documento) En sta interfaz es donde se encuentra la liga de descarga del documento. Aqu se muestra el abstract (resumen) del documento que sirve como informacin de apoyo al usuario para tener ms detalles sobre el contenido del documento y saber as, si el documento le ser de utilidad y si debe proceder a descargarlo. De lo contrario el usuario podr ahorrar tiempo evitando descargar un documento que no contenga la informacin que el usuario requiere.
Implementacin y pruebas
65
Describiendo la Figura 4.10, la interfaz muestra (de arriba hacia abajo) los siguientes datos: Ttulo del documento, es el ttulo completo del documento, tal y como viene dentro del documento. Autor(es), es la persona o personas que escribieron el documento. Origen de referencia, indica el lugar o lugares donde fue publicado tal documento. Abstract, es el resumen del contenido general del documento. Liga para descargar el Acrobat Reader, es la liga al sitio donde se encuentra el software lector de documentos PDF. Liga para regresar a la pgina anterior, sta liga sirve para regresar a la pgina donde se encuentran los resultados de la bsqueda. 4.1.2.8. Subir (Carga) de documento Esta interfaz solo se muestra cuando el usuario ha ingresado al sistema (Ver 4.1.2.2) y el usuario desea subir un documento a la biblioteca. Despus de haber ingresado se muestra la interfaz para subir un documento, donde se encuentra un formulario solicitando los datos del documento a subir. Lo anterior se puede visualizar en la Figura 4.11.
66
El formulario de la interfaz, solicita al usuario los datos del documento que desea subir, as como el archivo en formato PDF respectivo. Los datos que se piden son los siguientes: Ttulo, en este campo el usuario deber introducir preferentemente el ttulo completo que tiene el documento. Los usuarios podrn comprobar la existencia del documento antes de continuar con el proceso de subir documento. Esto presionando la tecla Intro o dando un clic en pantalla sobre el botn Comprobar ttulo. Si el ttulo del documento a subir no existe, el sistema mostrar un mensaje positivo. Ver Figura 4.12.
Implementacin y pruebas
67
Si por el contrario, ya existe un documento con ttulo similar el sistema mostrar un mensaje negativo (Ver Figura 4.13), mostrando el nombre o los nombres de los autores y solicitando al usuario comprobar si el documento es el mismo que el existente.
Figura 4.13. Mensaje negativo, cuando ya existe un documento con ese ttulo
Autor(es), este campo puede ingresarse de forma manual siguiente la sintaxis que se muestra en el siguiente prrafo o de forma automtica utilizando el botn de Lista de Autores que le permite a los usuarios capturar ms fcilmente los nombres de los autores del documentos (Ver Figura 4.14), siempre y cuando ya se encuentren registrados en la biblioteca digital. En caso de que algn autor no se encuentre registrado, necesariamente tendr que ingresarse de forma manual, con el formato que se muestra en el siguiente ejemplo: Apellido A, Nombre A; Apellido B, Nombre B (el ; es el separador de cada autor).
Origen de referencia, en este campo se introduce la informacin respecto al lugar o lugares donde fue publicado tal documento. Abstract, campo en donde el usuario introduce el abstract (resumen) del documento. rea, aqu se elige el tema o la rama principal del documento. Ao, este campo contiene el ao en que el documento fue escrito.
68
Idioma, este campo espera el idioma en que est escrito el documento. Ruta, en este campo se introduce la ruta donde el usuario tiene el documento a subir en su computadora personal. Las bases de las interfaces de usuario fueron tomadas del documento de especificacin de requerimientos del software (ERS), el cual fue descrito en el captulo tres. Finalmente, despus de disear e implementar cada una de las pginas Web que representan cada una de las interfaces, es necesario probarlas, pero este proceso del ciclo de vida se tratar en el siguiente punto.
Implementacin y pruebas
69
Reduccin de los costos de uso: los sistemas que mejor se ajustan a las necesidades del usuario mejoran la productividad y la calidad de las acciones y las decisiones. Los sistemas ms fciles de utilizar reducen el esfuerzo (estrs) y permiten a los trabajadores manejar una variedad ms amplia de tareas. Los sistemas difciles de usar disminuyen la salud, bienestar y motivacin y pueden incrementar el absentismo. Reduccin de los costos de produccin: los costos y tiempos de desarrollo totales son reducidos, evitndose modificaciones en el diseo inicial y reduciendo cambios posteriores en el producto. Reduccin de los costos de mantenimiento y apoyo: los sistemas que son fciles de usar requieren menos entrenamiento, menos soporte para el usuario y menos mantenimiento.
70
Implementacin y pruebas
71
5. Hay mucho ms que se puede hacer. Aunque los estudios rpidos ayudan, siempre existe ms que se puede y se debe hacer para mejorar la usabilidad del sitio. Los mtodos variarn basndose en los datos que se recopilen y los recursos de los que se dispone. Para el diseo de la interfaz, hay que recordar a las personas que lo ms importante es lo que tienen que decir sobre el trabajo y dar informacin ms fidedigna a las encuestas sobre el sitio. Existen muchas razones, por las cuales no es probable conseguir informes totalmente exactos. Los exmenes y los grupos de trabajo tienen ventajas, pero son tpicamente menos informativos y pueden ser engaosos cuando estn analizando el diseo. Muchos usuarios del sitio todava utilizan la puesta en marcha como su primera prueba de usuario. Desafortunadamente, deshacer un mal justo sobre la puesta en marcha es imposible, e incluso los problemas pequeos de usabilidad pueden conducir a los visitantes a alejarse del sitio. Cuanto antes se integre la retroalimentacin del usuario en el proceso de desarrollo, mayor sern las ocasiones de xito. Incluso un nmero pequeo de usuarios, como por ejemplo cinco usuarios, pueden ser una gran diferencia para hacer el sitio exitoso.
72
El cuestionario para el observador (Ver Anexo 5. )consta de preguntas abiertas concernientes a la interaccin entre el usuario y el sistema durante cada una de las pruebas descritas en el punto anterior. El observador no est limitado a cada una de las pruebas y si considera pertinente puede evaluar el impacto del facilitador dentro de la prueba completa.
Implementacin y pruebas
73
Usuario 5. Para este usuario le fue muy fcil realizar este proceso. Ya que la explicacin de la interfaz le fue muy buena, comprensible, muy clara y muy sencilla. Nunca se confundi con lo que deba hacer para registrarse, lo cual lo hizo sentir muy satisfecho con la forma general de realizar el proceso. Sus comentarios fueron los siguientes: o No le quedaba claro que era visitante o registrado. o Esperaba que despus de registrase iniciara sesin y ser identificado por el sistema. o Las opciones del men principal no se vean bien. Recomend poner iconos o letras ms grandes y visibles en el men principal. o Recomend poner Registrar al mismo nivel que Ingresar al sistema en el men o Es bueno que el proceso sea muy fcil. Como resultado del anlisis de la primera prueba a cada uno de los usuarios, se puede concluir lo siguiente: Es prioritario poner en la pantalla principal (inicio) una opcin que lleve al usuario directamente a la opcin registrase. En necesario explicar a la hora de registrase, el objetivo de hacer dicho proceso. Para no tener problemas con la @, es mejor evitarle al usuario el tener que teclearla.
74
muy sencilla, por lo que nunca le caus confusin algn de los pasos para cumplir con el objetivo. Por tal razn, la forma en que se realiza este proceso le result completamente satisfactorio. Sus comentarios fueron los siguientes: o El proceso general fue sencillo y claro. o Como recomendacin mencion que no era bueno mezclar ingles y espaol tanto en la bsqueda como en los resultados. Ya que los usuarios podran confundirse al dar los datos en ingls o espaol al realizar una bsqueda. Usuario 4. El usuario estuvo totalmente de acuerdo con la facilidad del proceso. La explicacin de la interfaz le fue muy buena, muy comprensible, muy clara y muy sencilla, por lo que nunca tuvo problemas con los pasos para cumplir su cometido. Se sinti completamente satisfecho con la forma en que se realiza este proceso. Sus comentarios fueron los siguientes: o Para el usuario fue bueno que el proceso fuera claro, fcil y sencillo. o No encontr nada malo en la forma de realizar este proceso y que para el, est todo muy bien. Usuario 5. Este usuario estuvo de acuerdo en gran parte con la facilidad de ste proceso. La explicacin de la interfaz le fue regularmente buena y comprensible, clara y muy sencilla. Muy raramente se confundi con el siguiente paso que deba realizar para cumplir con el objetivo, lo cual, lo hizo sentir bien con la forma general de realizar el proceso. Sus comentarios fueron los siguientes: o En la bsqueda por el criterio de autor, recomend eliminar la lista de autores y pasar directamente a los resultados. o Sera bueno mostrar el tamao de cada archivo PDF. o El proceso cumple la finalidad del sistema. o Est muy bien ordenada la informacin del proceso. Como conclusin de los resultados del anlisis de la segunda prueba, se puede mencionar lo siguiente: Se debe aadir la opcin de preguntarle al usuario si desea descargar el documento o abrirlo al dar clic en la liga Descargar documento. Como informacin adicional, mostrar el tamao del documento al usuario.
Implementacin y pruebas
75
o Lo bueno es que, con realizar el proceso una vez, la siguiente ocasin ser ms sencillo. o Se debe relacionar ms los botones de ayuda a los campos correspondientes, adems de incluirles etiquetas que reflejen mejor el significado de lo que hacen. o No utiliza comnmente el Acrobat Reader. Usuario 2. Tuvo algunas dificultades para realizar el proceso. Si bien, la interfaz muy raramente fue confusa, la explicacin del sistema para llegar al objetivo fue muy buena, clara, y regularmente comprensible. Fue difcil de hacer por que no es una actividad que realice comnmente, pero al final el proceso le resulto satisfactorio. Como conclusiones dijo lo siguiente: o Como no es una actividad que haya realizado antes le fue complicado, pero con conocimiento previo no habr mayor problema. o No alcanz a visualizar todos los botones que facilitan el proceso. Pero los considera buena ayuda. o Recomienda que todos los campos sean obligatorios para exigir al usuario a utilizarlos. Usuario 3. Este usuario tuvo tambin algunas dificultades en el proceso de carga documentos, aunque la explicacin de la interfaz del sistema fue muy buena, muy comprensible, clara y sencilla. Algunas veces se sinti confundido con el paso siguiente que tena que hacer para cumplir con su objetivo, pero finalmente el proceso le resulto satisfactorio. Sus comentarios fueron los siguientes: o La organizacin del formulario no le pareci adecuado. Recomienda buscar una manera de evitar el manejo de dos ventanas para capturar los datos. o Los botones que facilitan el proceso, no muestran el mensaje adecuado de lo que hacen. o Es bueno utilizar el botn examinar para una carga tradicional de archivos. o En la lista de autores, indicar que los datos estn ordenados alfabticamente por apellido. o Tuvo la duda para que pedir formato de autores, si la bsqueda la realiza por contenido. Usuario 4. El usuario muchas facilidades en el proceso. La explicacin de la interfaz le fue muy buena, muy comprensible, muy clara y muy sencilla, por lo cual nunca le caus confusin el prximo paso a ejecutar dentro del proceso. Sinti que el proceso era muy bueno y por lo tanto cumpla satisfactoriamente sus expectativas. Sus comentarios fueron los siguientes: o Le fue bueno que no pidiera tanta informacin para cargar un documento. o Fue muy buena la facilidad de llenar el campo de autores con el botn que facilita este paso. o Para l fue entendible como realizar el proceso.
76
Diseo e implementacin de un sistema de biblioteca digital o Especificar ms a que se refieren ciertos datos, por ejemplo el abstract no indica como se debe introducir. Usuario 5. Este usuario tuvo algunas dificultades con el proceso, ya que para l la explicacin de la interfaz fue mala, incomprensible, muy confusa y regularmente sencilla. Esto provoc que frecuentemente se confundiera con el paso siguiente que deba hacer para cargar el documento, lo cual finalmente lo hizo sentir muy inconforme con la forma general de realizar el proceso. Sus comentarios fueron los siguientes: o Por el modelo conceptual que el tiene, recomienda que primero se cargue el documento y despus se introduzcan los datos. Si no es mejor dividir el proceso en pasos bien definidos. o Considera bueno que tenga retroalimentacin adecuada y que el botn facilitador de autores ayude a llenar los datos de una forma ms fcil. o Recomienda una opcin de autocompletar en el campo de ttulo del documento. o Dividir en diferentes campos cada autor.
Como conclusin, se reconoce que ste proceso es el ms complicado para los nuevos usuarios del sistema. Sobre todo si no cuentan con conocimiento previo de como utilizar la herramienta Acrobat Reader para capturar ms fcilmente copiando y pegando del documento. Los datos de la tercera prueba revelan las siguientes necesidades prioritarias: Es conveniente ser ms especfico con la informacin que se solicita del documento, por lo cual ser conveniente dividir el formulario en pasos muy definidos. Los botones facilitadores debern estar ms cercanos al campo al que apoyan, adems de que su etiqueta debe indicar el significado de la tarea que realiza cada uno de ellos de manera concreta. Todos los campos sern obligatorios para hacer que el usuario los tenga que llenar. La forma de captura de los autores se puede modificar deshabilitando el campo de escritura respectivo, obligando al usuario a utilizar el botn facilitador para llenar este campo. Pero para que funcione correctamente esta solucin, tambin se tiene que agregar un nuevo botn en el formulario de carga documento para dar de alta algn autor que no se encuentre en la base de datos y finalmente poder realizar tal actividad. Por especificaciones del sistema, preferentemente no se deber omitir ningn autor del documento, ya que algunos usuarios podran realizar una bsqueda por el autor omitido y no encontraran el documento. Adems la captura se facilitara con la ayuda de la lista de autores.
Implementacin y pruebas
77
El men principal deber ser ms visible a los ojos de los usuarios. Por lo cual se le crear un rea distintiva o en su defecto se le agregarn iconos. Cuando el usuario se encuentre dentro de una opcin del men principal, la liga respectiva deber deshabilitarse. En la pgina de inicio deber redistribuirse uniformemente la informacin para no saturar reas de dicha pgina, ni la vista de los usuarios. A los ltimos documentos subidos se le agregarn ligas para acceder a ellos directamente. Se corregir la cantidad de caracteres del campo de bsqueda de 50 a 80 caracteres. Se realizar una correccin ortogrfica y lxica del contenido del sitio. Se ajustar el logotipo del sistema, para que sea visible correctamente aun siendo pequeo. Se validar de forma ms eficiente cada formulario del sistema (registro de nuevo usuario y cargar un documento) A la funcin de lista de autores se le agregar un botn para borrar el ltimo autor aadido y otro botn para limpiar completamente la lista de autores. En la bsqueda por autor, cuando esta tenga como resultado un solo nombre, deber mostrar directamente los documentos relacionados. Cambiar el subir por cargar en las interfaces del sistema. Todos los cambios mencionados anteriormente y los obtenidos de la prueba de usabilidad sern incluidos en la versin 1.1 del sistema. La cual ser la versin final, hasta mejoras futuras muy importantes. Para ver algunas de las correcciones ms significativas ir al Anexo 6.
78
5. Conclusiones y expectativas
El espectacular auge de los sistemas Web, junto con el creciente nmero de personas que utilizan la Internet para bsquedas y recopilacin de informacin, hacen preciso la creacin de aplicaciones que ayuden a satisfacer la bsqueda y recopilacin de informacin de forma ms sencilla. Conceptos como biblioteca digital y los documentos digitales, fundamentales en estos entornos, obligan a una clara disposicin a desarrollar mecanismos computacionales que satisfagan y faciliten la labor del investigador. As mismo, contando con las herramientas, los recursos y la tecnologa, debe ser posible construir y disponer de aplicaciones que apoyen a la formacin acadmica en las instituciones educativas, como lo es la UTM, la cual desea demostrar que se encuentran en un excelente nivel de desarrollo acadmico y tecnolgico. Por lo anterior, una de las motivaciones iniciales de este trabajo fue la de ofrecer una aplicacin que no solo resultara til al CASI, sino en realidad a toda la comunidad acadmica de la UTM. Finalmente en ste captulo se presentan las conclusiones, contribuciones y limitaciones que se encontraron durante el desarrollo de sta tesis.
80
Con el desarrollo de esta biblioteca digital se demuestra que se cuentan con los procesos suficientes para cumplir con su propsito especfico, el cual, es proveer una aplicacin que sirva de apoyo y facilite la labor de investigacin realizada por el CASI, y dado que en el campus predomina la necesidad de documentos de literatura cientfica para informacin referenciada, se espera que en un futuro esta biblioteca digital se torne en una herramienta altamente utilizada para satisfacer a cada uno de los usuarios, por lo que se puede precisar que se ha cumplido con el objetivo planteado inicialmente.
Conclusiones y expectativas
81
5.3.1. Limitaciones
Esta biblioteca digital aunque completa y funcional, cuenta con limitaciones propias de la primera implementacin, pero que se encuentran debidamente delimitadas y ubicadas, y ms adelante, ya desde esta misma investigacin se ofrece una introduccin para la resolucin de cada una de las limitaciones. Pero primeramente dichas limitaciones se describirn a continuacin: El motor de bsqueda, es eficiente y cumple perfectamente con su cometido, cuenta con limitaciones al introducir un criterio de bsqueda especfico, es decir, si se desean obtener buenos resultados al realizar una bsqueda, el usuario deber introducir informacin muy definida y especfica en el campo buscar. Por tal motivo, indudablemente ste proceso puede ser mejorado, implementndose algoritmos de bsqueda, agentes, u otros mtodos. Desarrollar o implementar un motor de bsqueda externo que sea ms eficiente significa por si mismo, en el caso de crear un motor de bsqueda propio eficiente un tema de tesis independiente y en el caso de implementar un motor de bsqueda ya existente requerira investigacin de fondo para conocer que motor de bsqueda es el ms adecuado para esta biblioteca digital, adems de otros aspectos tcnicos y hasta legales, que finalmente rebasan los lmites de los objetivos definidos para este trabajo. Carga de documentos, este proceso funciona correctamente, aunque una limitacin importante es que depende altamente de la veracidad de los datos introducidos por el usuario. Adems existen documentos PDF con proteccin que impide copiar el contenido, es decir, en algunos casos los documentos PDF tienen deshabilitado el comn Copiar y Pegar y en otros casos aunque este proceso est habilitado, el tipo de letra no es reconocido, por lo tanto, el proceso de captura de informacin como el abstract se tendra que realizar manualmente, lo cual, podra resultar tedioso para el usuario.
82
Pginas Web investigables. Buscar sitios Web. Buscar contenido. Control de versin y administracin de contenido. Noticias y servicio de noticias por cable. Tambin se encuentra Egothor [URL15] , el cual es un motor de bsqueda de texto altamente equipado de alto rendimiento en cdigo abierto, enteramente escrito en Java. Esta tecnologa es conveniente para casi cualquier uso que requiera una bsqueda con texto completo, especialmente en plataforma cruzada. Puede ser configurado como motor independiente, metabuscador, concentrador par-a-par, y, por otra parte, puede ser utilizado como biblioteca para una aplicacin que necesite bsquedas de texto completo. Adems Egothor tiene las siguientes caractersticas claves: 1. Escrito en JAVA para compatibilidad con plataformas cruzadas. 2. Permite reconocer muchos de los formatos de archivos ms estndares (HTML, PDF, PS, y DOC de Microsoft, y XLS). Adems de permitir agregar otros formatos muy fcilmente. 3. Puede indexar 50 pginas HTML por segundo. 4. Robot de alta capacidad, el cual soporta recomendaciones de robots.txt 11 . 5. Usa los mejores mtodos de compresin (Golomb, Elias-Gamma, Block coding). 6. Basado en el modelo Boleando extendido. 7. Preparador universal que puede procesar casi cualquier lengua. 8. Usa un nuevo algoritmo de dinamizacin con arquitectura abierta, es decir, la arquitectura abierta del algoritmo puede fcilmente ser extendida y soportado por casi cualquier lenguaje. Aunque existen ms motores de bsqueda que pueden ayudar a implementar un motor de bsqueda ms eficiente dentro de la biblioteca digital, con los ejemplos mencionados anteriormente, se puede tener una pauta importante para implementarlos o de otra manera tomarlos como base para crear un motor de bsqueda propio, ms acorde y especficamente para el uso en la biblioteca digital. Por esta necesidad se abre una lnea de investigacin en la UTM (mejor decir si es en el CASI, si es que ya se abri como tal, porque en la UTM no queda tan claro), ya que el estudio e implementacin de estos motores de bsqueda puede redituar en artculos o simplemente en otras tesis que complementen la presente. Para ms informacin consultar http://www.manageability.org/blog/stuff/full-text-lucene-jxta-search-engine-javaxml/view. Para la segunda limitacin mencionada, es necesario buscar mtodos que faciliten la captura de los datos del documento para el proceso cargar un documento a la biblioteca digital o por lo menos tener en cuenta esta situacin para investigar y desarrollar soluciones que sim-
El estndar de robots de exclusin o protocolo de robots.txt es una convencin para prevenir el buen comportamiento de las araas Web (Web spiders) y otros robots Web de todo o parte del acceso de un sitio Web. La informacin especifica las partes que no deben ser accedidas se especifica en un archivo llamado robots.txt en el directorio de nivel superior del sitio Web.[URL17]
11
Conclusiones y expectativas
83
plifiquen ste proceso. En sta limitacin existen dos casos importantes, el primero de estos casos como se mencion anteriormente, es que algunos documentos PDF estn protegidos contra copias, lo cual implica que los usuarios tengan que teclear los datos del documento que el proceso cargar un documento le solicita, previa consideracin de los derechos reservados del autor. Por lo tanto, una solucin sera la utilizacin de ms formatos digitales. En el segundo caso, se toma en cuenta cuando el documento a cargar se encuentra en papel, de igual manera que en el caso anterior introducir manualmente los datos podra provocar que no realizasen tal proceso. Para ste caso la mejor solucin sera utilizar mtodos para digitalizar los documentos por medio de un escner (OCR, lase Anexo 1. ), y as convertir el documento a un formato digital y capturar ms fcilmente los datos requeridos, tambin tomando en cuenta las consideraciones de los derechos reservados del autor. [33]
Sistemas P2P: Sistemas de Comparticin de Archivos, permiten el intercambio de cualquier tipo archivos entre sus usuarios, sin la necesidad de un servidor central. No hay una clara distincin entre servidor, cliente y ruteador. Forman el backbone de otras aplicaciones P2P como las de trabajo en grupo y distribucin de contenidos.
84
Bibliografa
[1] Ackerman, M. & Fielding, R. (1995) Collection Maintenance in the Digital Library Article, Information and Computer Science, University of California, Irvine Irvine, California, USA. Artculo disponible en el sitio Web: http://csdl.tamu.edu/DL95/papers/ackerman/ackerman.html Ackerman, Mark (1994) Providing Social Interaction in the Digital Library Article, Information and Computer Science, University of California, Irvine, Computer Science 444, Irvine, California, USA. Artculo disponible en el sitio Web: http://www.csdl.tamu.edu/DL94/position/ackerman.html Aksit, M. & Bergmans, L.(1992) Obstacles in Object-Oriented Software Development, Proceedings of the Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA'92), Vancouver, British Columbia, Canada, Special Issue of SIGPLAN Notices, ed. Andreas Paepcke, Vol. 27, pp. 341 - 358, Oct. 1992. Aquilino, Juan (2001) Patrones de Diseo y Arquitectnicos Artculo, Universidad de Oviedo, Espaa. Arms, William Y. (1995) Key Concepts in the Architecture of the Digital Library Article, Corporation for National Research Initiatives, Reston, Virginia, D-Lib Magazine, July 1995. Disponible en el sitio Web: http://www.dlib.org/dlib/July95/07arms.html Baeza-Yates, R. & Ribeiro-Neto, B. (1999) Modern Information Retrieval, ACM Press, Ed. Addison -Wesley, United States of America.
[2]
[3]
[4] [5]
[6]
86 [7] [8]
Diseo e implementacin de un sistema de biblioteca digital Bass, L., Clements, P. & Kazman, R. (2003) Software Architecture in Practice ed. Second, Ed. Addison Wesley, United States of America. Benavides M., Carlos (1998) Arquitectura de Cmputo Distribuido Basada en Objetos Componente: Anlisis e Implementacin Tesis profesional, Universidad Tecnolgica de la Mixteca, Acatlima, Huajuapan de Len, Oaxaca, Invierno de 1998.Pgs. 4, 27 Booch, Grady, Rumbaugh, James & Jacobson, Ivar (2000) El Lenguaje Unificado de Modelado Ed. Addison Wesley Iberoamericana, Madrid, Espaa. Pgs. 5 Braude, Eric (2003) INGENIERA DE SOFTWARE Una perspectiva orientada a objetos, Ed. Alfaomega, Mxico. Pg. 21, 257, 260 Bredemeyer, Dana & Malan, Ruth (2001) Architecture Definitions. Artculo, Bredemeyer Consulting Pgs. 3, 4 Buschmann, Frank, Meunier, Regine, Rohnert, Hans, Sommerlad, Peter & Stal, Michael (1996) Pattern-Oriented Software Architecture: A System of Patterns.Wiley, May 1996. Cox Brad & Novobilsk A. (1993) Programacin Orientada a Objetos: Un enfoque evolutivo Ed. Eddison Wesley/Daz de Santos, Estados Unidos de Amrica. Pgs. 6, 7, 17, 39, 64 Deri, Luca (1997) A Component based Architecture for Open, Independently Extensible Distributed Systems, Tesis doctoral, Universidad de Bern, Suiza, 17 de Junio de 1997. Pg. 22 Elmasri R. & Navathe S. (1997) Sistemas de bases de datos, Conceptos fundamentales ed. Segunda, Ed. Pearson Educacin, Addison Wesley Iberoamericana, Mxico. Pgs. 1, 2, 3, 140, 189 Fbrega, Pedro P. (2000) PHP 4 Serie prctica Ed. Pearson Educacin Prentice-Hall, Madrid, Espaa. Feria, L., Carvajal, M. G. & Juregui, M. A. (1997) La biblioteca electrnica en Colima Mxico Artculo, Universidad de Colima, Coordinacin General de Tecnologas de Informacin, Direccin General de Servicios Bibliotecarios, Colima, Mxico. Gacek C., Abd-Allah A., Clark B., Boehm B. (1995) On the Definition of Software System Architecture. In David Garlan, editor, Proceeding of ICSE 95 Workshop on Architectures for Software Systems, pages 85-95, Seattle, April 1995 Galn Morillo, F. J. & Caete Valden, J. M. (n. d.) Mtodos Formales Orientados a Objetos, Artculo, Departamento de Lenguajes y Sistemas Informticos, ETSI Informtica, Sevilla, Espaa. Gamma, E., Helm, R., Johnson, R. & Vlissides, John (1993) Design Patterns: Abstraction and Reuse Object-Oriented Design Article, Proceedings of ECOOP'93, volume 707 of Lecture Notes in Computer Science. Springer-Verlag, July 1993 Pg. 1, 3 Garlan, David & Shaw, Mary (1994) An Introduction to Software Architecture, Article, School of Computer Science, Carnegie Mellon University, U.S.A. Enero de 1994.
[13]
[14]
[15]
[16] [17]
[18]
[19]
[20]
[21]
Bibliografa [22]
87
Gonzlez D., J. (2002). Integracin de un modelo de proceso sistemtico en el desarrollo de Software Educativo. Tesis de Doctorado, Universidad de Vigo, Vigo, Espaa Pg. 11 Grimn, A., Prez, M. & Mendoza, L. (2001) Meta-Modelo Para La Evaluacin De Arquitecturas De Software LISI, Universidad Simn Bolvar, Dpto. de Procesos y Sistemas, Maracaibo, Venezuela. Hiemstra, Djoerd & de Vries, Arjen (2000). Relating the new language models of information retrieval to the traditional retrieval models. Technical Report TR-CTIT00-09, Centre for Telematics and Information Technology, 2000. Jacobson, Ivar, Booch, Grady & Rumbaugh, James (2000) El Proceso Unificado de Desarrollo de Software Ed. Addison Wesley Iberoamericana, Madrid, Espaa. Pgs. 165 Jazayeri, Mehdi (1995) Component Programming: a fresh look at software components. Article, Technical Institute of Vienna, Information Systems Institute Distributed Systems Department. Pg., 2 Kroenke, David M. (1996) Procesamiento de base de datos, fundamentos, diseo e implementacin ed. Quinta, Ed. Prentice Hall, Mxico. Pgs. 14, 17, 18 Lawrence, S., Giles, C. L. & Bollacker, K. (1999) Digital libraries and Autonomous Citation Indexing, IEEE Computer, 32(6):67--71, 1999 Long, Larry (1990) Introduccin a las computadoras y al procesamiento de informacin ed. Segunda, Ed. Prentice Hall, Mxico. Pgs. 167, 180, 184, 187 Luckham, D. C. & Vera, J. (1995) An Event Based Architecture Definition Language. IEEE Transactions on Software Engineering Vol. 21, No 9, September 1995. Meijler, Theo Dirk and Nierstrasz, Oscar (1997) Beyond Objects: Components. In Cooperative Information Systems: Current Trends and Directions, M.P.Papazoglou, G.Schlageter (Ed.), Academic Press, Nov.1997, pp 49-78. Moraga de la Rubia, ngeles & Ruiz, Francisco (2001) Modelo de Datos Jerrquico, Presentacin, Universidad de Castilla-La Mancha, Escuela Superior de Informtica, Ciudad Real, 26 de abril de 2001. Disponible en: http://alarcos.infcr.uclm.es/doc/bda/doc/trab/T0001_MAMoraga.pdf Myka, A. Gntzer U. (1995). Fuzzy full-text searches in OCR databases, Digital Libraries, Research and Technology Advances, Nabil R. Adam, Bharat K. Bharava, Milton Halem, Yelena Yesha, Eds. Springer, USA. 130-145. Perry D.E., Wolf A. L. (1992) Foundations for the Study of Software Architecture. Software Engineering Notes, ACM SIGSOFT, vol. 17, no. 4, October 1992, pp. 40-52. Pressman, Roger (1998) Ingeniera del Software un enfoque prctico, ed. Cuarta, Ed. McGraw Hill, Mxico. Pgs. 3, 4, 5, 12, 157, 420 - 421 Repenning, A., Ioannidou, A., Payton, M., Ye, W., & Roschelle, J. (2001) Using Component for Rapid Distributed Software Development Article, IEEE Software, April 2001. Pg. 1
[23]
[24]
[25]
[26]
[32]
[33]
88 [37]
Diseo e implementacin de un sistema de biblioteca digital Rodrguez de Guzmn, I. (2001) Base de Datos Modelo en Red General, Presentacin, Universidad de Castilla-La Mancha, Escuela Superior de Informtica, Ciudad Real, Curso 2000 - 2001. Royo, J.A. & Mena, E. (2002) Gestin de bibliotecas digitales de publicaciones de investigacin. In III Jornadas de Bibliotecas Digitales (JBIDI'2002), Madrid, Spain, November 2002. Snchez, Alfredo (2002) Colecciones digitales universitarias en Mxico, Articulo, Biblioteca Universitaria, Revista de la Direccin Nacional de Bibliotecas de la UNAM, Nueva poca, Vol. 5, no. 2, Julio Diciembre de 2002, Pgs. 130 143, disponible en: http://dgb.unam.mx/servicios/dgb/publicdgb/bole/fulltext/ne-2-2002/130-143.pdf Snchez, Alfredo (2003) Bibliotecas y Bibliotecas Digitales de la universidad de las Amricas, Puebla , Presentacin, Universidad de las Amricas, Puebla, Mxico Febrero 2003, disponible en: http://ict2.udlap.mx/people/alfredo/presentaciones/feb03.pdf Snchez, Alfredo (2003)Bibliotecas digitales, mucho ms que bibliotecas digitalizadas Presentacin, 4o. Simposium Internacional de Sistemas Computacionales e Informtica, Instituto Tecnolgico de Zacatecas, Zacatecas, Mxico, 9 de Noviembre de 2000. Disponible en: http://ict2.udlap.mx/people/alfredo/presentaciones/castellano/generica/ Schneider, J. & Nierstrasz, O. (1999) Components, Scripts and Glue Article, Software Composition Group, University of Berne, Institute for Computer Science and Applied Mathematics (IAM) August 5. Pg. 2 Schneider, Jean-Guy (1999) Component, Scripts and Glue: A conceptual framework for software composition, Tesis Doctoral, Universidad de Bern, Suiza, 18 de Octubre de 1999. Pages. 38 - 41 Senn, James (1990) Anlisis y Diseo de Sistemas de Informacin McGrawHill/Interamericana de Mxico, Colombia, Junio de 1990. Pgs. 15 17 Shaw, M. & Garlan, D. (1996), Software Architecture: Perspectives on an Emerging Discipline, Prentice-Hall, 1996 Shaw, Mary (1996) Some Patterns for Software Architectures Article, Carnegie Mellon University Pg. 3 Sommerville, Ian (2002) Ingeniera de Software, ed. Sexta, Ed. Pearson Educacin, Mxico. Pg. 4 Stones, R. & Matthew, N. (2001) Beginning Databases with PostgreSQL Ed. Wrox Press, Estados Unidos de Amrica. Pgs. 7, 13 18 Szyperski, Clemens (1995) Component Oriented Programming a Refined Variation on Object Oriented Programming. Article, The Oberon Tribune Vol. 1, No. 2. December 1995. Pages. 1, 4 Szyperski, Clements (1998) Component Software Beyond Object-Oriented Programming, Ed. Addison Wesley, ACM Press, New York, United Stated of America, Pg. 31
[38]
[39]
[40]
[41]
[42]
[43]
[50]
Bibliografa [51]
89
Vallecillo M., A. (1999) Un modelo de componentes para el desarrollo de aplicaciones distribuidas. Tesis de Doctorado, Universidad del rea de Lenguajes y Sistemas informticos, Mlaga, Espaa Pg.13, 16, 17. Vasudevan, Alavoor (2001) DatabaseSQLRDBMS HOWTO document for Linux (PostgreSQL Object Relational Database System) Reporte Tcnico de PostgreSQL, v45.0, 27 de enero de 2001. Wieringa, Roel (1999) A Survey of Structured and Object-Oriented Software Specification Methods and Techniques, Article, Universidad de Twente 1999 ACM 03600300/99/1200-0459
[52]
[53]
90
Sitios de Internet [URL1] [URL2] [URL3] www.elaleph.com Portal literario de libros digitales, libros gratis, leph.com Copyright 1999-2004. ela-
http://diccionarios.elmundo.es/diccionarios Diccionarios de elmundo.es elmundo.es 2004. http://www.webopedia.com Webopedia: Online Computer Dictionary for Computer and Internet Terms and Definitions Internet.com, Jupitermedia Corporation 2004. http://mx.php.net/history Historia de PHP y PHP.NET 2004. proyectos relacionados,
http://advocacy.postgresql.org/?lang=es PostgreSQL: la base de datos ms avanzada del mundo The PostgreSQL Global Development Group 2002. http://www.webestilo.com WebEstilo. Usabilidad. Consejos para crear pginas Web. Gua de estilo de pginas Web., Autor Joaqun Gracia, Espaa, 2002. http://es.tldp.org/Tutoriales/doc-modelado-sistemas-UML/multiplehtml/index.html Modelado de sistemas con UML Popkin Software and Systems, 2004. http://www.desarrolloweb.com Desarrollo Web, Tu mejor ayuda para aprender a hacer webs, Miguel ngel lvarez Director de DesarrolloWeb.com, 2004 http://www.creangel.com/nuke/html/modules.php?name=Content&pa=showpa ge&pid=1 CREANGEL.COM, Derechos reservados CREANGEL.COM, Publicado el 18 de Octubre de 2003 http://www.dcc.uchile.cl/~rbaeza/inf/usabilidad.html Ubicuidad y Usabilidad en la Web, Autores Baeza Y., R. & Rivera L., C. Depto. de Ciencias de la Computacin, Universidad de Chile, Santiago, Chile, Diciembre de 2002. http://www.pcmag.com/article2/0,4149,33821,00.asp Make It Usable Web site Usability. Autores Jakob Nielsen, Kara Pernice Coyne, y Marie Tahir, PC MAGAZINE 2 de Junio de 2001. http://www.google.com.mx/intl/es/why_use.html Por qu usar Google?, Google Inc., 2004. http://www3.uji.es/~mmarques/f47/apun/node32.html Modelos de datos. Autor Mara Mercedes Marqus Andrs, Universitat Jaume I, Valencia, Espaa, 2 de Diciembre de 2001 http://www.javaworld.com/javaworld/jw-09-2000/jw-0915-lucene.html The Lucene search engine: Powerful, flexible, and free Artculo por Brian Goetz, JavaWorld, Septiembre el 2000.
[URL8]
[URL9]
[URL10]
[URL11]
[URL12] [URL13]
[URL14]
91
http://www.egothor.org/ Egothor The Revolutionary Cross-platform Search Engine, Egothor Developers 2004. http://mixtli.utm.mx/~usalab/usalab/quees_archivos/concepto.htm Este es el concepto de usabilidad y sus ventajas, UsaLab, 2002. http://en.wikipedia.org/wiki/Robots.txt Robots Exclusion Standard - Wikipedia, the free encyclopedia, Wikipedia, 24 de Diciembre de 2004. http://www.devx.com/dbzone/Article/20743/0/page/1 PostgreSQL vs. MySQL vs. Commercial Databases: It's All About What You Need, Conrad T. April 12, 2004.
92
94
Diseo e implementacin de un sistema de biblioteca digital como letras por separado, MIS se refiere ampliamente a un sistema computarizado que provee un manejador con herramientas para organizar, evaluar y llevar eficientemente los departamentos [URL3] . OCR, es la abreviacin de reconocimiento ptico de caracteres, se refiere a la rama de la informtica que implica la lectura de texto sobre papel y de traducir las imgenes en una forma que la computadora pueda manipular (por ejemplo, en cdigos del ASCII) [URL3] . PDF, es un formato de archivo desarrollado por Adobe Systems. El PDF captura la informacin del formato de una gran variedad de aplicaciones de publicacin de escritorio, haciendo posible enviar documentos formateados y haciendo que aparezcan en el monitor o la impresora tal y como fueron pensados [URL3] . Protocolos, son formatos acordado para la transmisin de datos entre dos dispositivos. El protocolo determina lo siguiente: el tipo de chequeo de error a ser usado, el mtodo usado para la compresin de datos, si existe, cmo el dispositivo que enva indicar que ha acabado de enviar un mensaje, cmo el dispositivo de recepcin indicar que ha recibido un mensaje [URL3] . Servlet, es un pequeo programa que corre sobre un servidor. Este trmino usualmente se refiere a un applet de Java que trabaja sin un ambiente de servidor Web. Este es anlogo a un applet de Java que trabaja sin un ambiente de navegador Web [URL3] .
Anexos
95
Anexo 2. Acrnimos
Acrnimo ACM API ASP CASI CGI CONACYR COP CSCW DBMS ERS GUI HCI HTML IEC IEEE IPN ITESM JSP MIS MOO MVC OCR OMG OMT OO Definicin Association for Computing Machinery Application Program Interface (Interfaz del Programa de Aplicacin) Active Server Pages Cuerpo Acadmico de Ingeniera de Software Common Gateway Interface (Interfaz de Entrada Comn) Consejo Nacional de Ciencia y Tecnologa Component Oriented Programming (Programacin Orientada al Componente) Computer-Supported Coorperative Work (Trabajo cooperativo apoyado en computadoras. Database Management System (Sistema Manejador de Base de Datos). Especificacin de Requerimientos de Software Graphical User Interface Human-Computer Interaction HyperText Markup Language Instituto de Electrnica y Computacin Institute of Electrical and Electronics Engineers Instituto Politcnico Nacional Instituto Tecnolgico y de Estudios Superiores de Monterrey Java Server Pages Sistema o Servicio Gerencial de Informacin (Management Information System) Mtodos Orientados a Objetos Modelo Vista Controlador Optical Character Recognition (Reconocimiento ptico de Caracteres) Object Management Group Object Modeling Technique (Tcnica de Modelado de Objetos) Orientacin a Objetos (Object-Oriented)
96 OOSE PDF PHP REDII RUP SI SQL UML UNAM URD UTM WWW XML
Diseo e implementacin de un sistema de biblioteca digital Object-Oriented Software Engineering Portable Document Format (Formato de Documento Portable) Hypertext Preprocessador Red de Desarrollo e Investigacin en Informtica Rational Unified Process Sistema de Informacin (Information System) Structured Query Language Unified Modeling Software (Lenguaje de Modelado Unificado) Universidad Nacional Autnoma de Mxico Documento de Requerimientos de Usuario Universidad Tecnolgica de la Mixteca World Wide Web Extensible Markup Language
Anexos
97
Sistema de Web de Biblioteca Digital de Artculos de Literatura Cientfica Especificacin de caso de uso: Buscar documentos Versin 1.2
98
Historial de revisiones
Fecha 30/Abril/2004 01/Julio/2004 07/Diciembre/2004 Versin 1.0 1.1 1.2 Descripcin Creacin del Documento Introduccin de primeros diagramas Documento completado Autor Jos Damin Cabrera Palacio Jos Damin Cabrera Palacio Jos Damin Cabrera Palacio
Anexos
99
Breve descripcin
Permite a todo usuario del sistema realizar la bsqueda de un documento digital por medio de un criterio de bsqueda especfico y el contenido por el cual se desea buscar.
Actores
Usuario
Flujo de eventos
Flujo bsico
Actor Este caso de uso comienza cuando el usuario ejecuta el sistema. Sistema
Req (3) El sistema muestra en la parte superior de la pantalla el formulario para realizar bsquedas. Req 3.1 El usuario elige un criterio de bsqueda (autor, ttulo, referencia y/o abstract), y escribe un contenido en el campo para definir el contenido y a continuacin presiona la tecla Intro o da clic en Buscar Req 3.2 El sistema mostrar los resultados en la parte inferior de la pantalla. Req 3.3 Si el criterio es por Autor, el sistema muestra una pantalla con la lista de nombre de autores que coincidan con el contenido de bsqueda (Ver caso de uso Bsqueda por autor) Req 3.4 Si el criterio es por Ttulo, el sistema muestra una lista ordenada por nombre de cada uno de los documentos que coincidan con el contenido de bsqueda. (Ver caso de uso Bsqueda por Ttulo) Req 3.5 Si el criterio es por Abstract, el sistema muestra una lista con documentos que en el abstract contengan el contenido de bsqueda introducido. (Ver caso de uso
10 0
Diseo e implementacin de un sistema de biblioteca digital Bsqueda por Abstract) Req 3.6 Si el criterio es por Referencia, el sistema muestra una lista con documentos que en su referencia coincida con el contenido de bsqueda introducido. (Ver caso de uso Bsqueda por Referencia)
Req (4) El usuario seguir el caso de uso respectivo. Finaliza el caso de uso.
Precondiciones
El usuario deber haber ejecutado el sistema.
Diagrama de actividades
Usuari o
Descargar documentos
Abstract
Criterio
Autor
Ttulo Referencia Realiza bsqueda por "Referencia" Realiza bsqueda por "Ttulo"
Anexos
101
Diagrama de secuencia
: Interfaz
: Documento
: Sistema
: BasedeDatos
buscardocumento( )
datosdocumento( )
datosdocumento( )
recuperar_datos( ) articulos_totales( )
documentoexiste( )
despliegainfo( )
Diagrama de colaboracin
7: despliegainfo( )
1: buscardocumento( ) : Interfaz
102
Diagrama de estados
Descargar documentos Documento a buscar Se muestra la pantalla de bsqueda entry/ ^Datosdocumentos(criterio, contenido) do/ Presionar Intro o clic en Buscar Esperando resultados Se muetran los resultados event Lista de resultados( autores o nombres de documentos )/
Seleccionar
Anexos
103
Sistema de Web de Biblioteca Digital de Artculos de Literatura Cientfica Especificacin de caso de uso: Buscar por abstract Versin 1.2
104
Historial de revisiones
Fecha 30/Abril/2004 01/Julio/2004 07/Diciembre/2004 Versin 1.0 1.1 1.2 Descripcin Creacin del Documento Introduccin de primeros diagramas Documento completado Autor Jos Damin Cabrera Palacio Jos Damin Cabrera Palacio Jos Damin Cabrera Palacio
Anexos
105
Breve descripcin
Permite a todo usuario del sistema realizar la bsqueda de un documento digital por abstract, para facilitar la localizacin de documento deseado.
Actores
Usuario
Flujo de eventos
Flujo bsico
Actor Este caso de uso comienza cuando el usuario ha realizado una bsqueda con el criterio de abstract. Sistema
El sistema muestra en la parte inferior de la pantalla la lista de los documentos que contienen dentro de su abstract el contenido introducido por el usuario, los resultados sern segmentados por pginas dependiendo de la cantidad de resultados obtenidos. Estos resultados aparecern en la misma pantalla de la siguiente forma Autor(es), Ao, Ttulo, Referencia e Idioma. Si el usuario no encuentra el documento que desea en dicha pgina, deber desplazarse a otra pgina dando clic en el nmero deseado. El sistema mostrar los documentos pertinentes a dicha pgina. Si le interesa algn documento el usuario deber dar clic en el Titulo del documento para proceder a descargarlo El sistema mostrar la pgina donde se puede descargar el documento (Ver caso de uso Descargar documento) Finaliza el caso de uso.
106
Precondiciones
El usuario deber haber realizado una bsqueda por el criterio de Abstract.
Diagrama de actividades
Usuari o
No
Anexos
107
Diagrama de secuencia
: Interfaz
: Sistema
: BasedeDatos
documentosxabstract( ) despliegainfo( )
seleccionardocumento( )
datosdocumento( )
recuperar_datos( ) datosdocumento( )
108
Diagrama de colaboracin
2: despliegainfo( )
3: seleccionardocumento( ) : Interfaz
Diagrama de estados
Busqueda por abstract Se realizo una busqueda por abstract( contenido ) Se muestra la lista de documentos que contienen dicho abtract entry/ Lista de documentos Se muestran los datos de cada documento Se elige por el titulo el documento deseado entry/ ^Clic sobre titulo(titulo, idarticulo, abstract, referencia)
Anexos
109
Sistema de Web de Biblioteca Digital de Artculos de Literatura Cientfica Especificacin de caso de uso: Buscar por ttulo Versin 1.2
110
Historial de revisiones
Fecha 30/Abril/2004 01/Julio/2004 07/Diciembre/2004 Versin 1.0 1.1 1.2 Descripcin Creacin del Documento Introduccin de primeros diagramas Documento completado Autor Jos Damin Cabrera Palacio Jos Damin Cabrera Palacio Jos Damin Cabrera Palacio
Anexos
111
Breve descripcin
Permite a todo usuario del sistema realizar la bsqueda de un documento digital por ttulo, para facilitar la localizacin de documento deseado.
Actores
Usuario
Flujo de eventos
Flujo bsico
Actor Este caso de uso comienza cuando el usuario ha realizado una bsqueda con el criterio de ttulo. Sistema
El sistema muestra en la parte inferior de la pantalla la lista de los documentos que coinciden con el contenido introducido, los resultados sern segmentados por pginas dependiendo de la cantidad de resultados obtenidos. Estos resultados aparecern en la misma pantalla de la siguiente forma Autor(es), Ao, Ttulo, Referencia e Idioma. Si el usuario no encuentra el titulo que desea en dicha pgina, deber desplazarse a otra pgina dando clic en el nmero deseado. El sistema mostrar los documentos pertinentes a dicha pgina. Si le interesa algn documento el usuario deber dar clic en el Titulo del documento para proceder a descargarlo El sistema mostrar la pgina donde se puede descargar el documento (Ver caso de uso Descargar documento) Finaliza el caso de uso.
Precondiciones
El usuario deber haber realizado una bsqueda por el criterio de Ttulo.
112
Diagrama de actividades
Usuari o
No
Anexos
113
Diagrama de secuencia
: Interfaz
: Sistema
: BasedeDatos
documentosxtitulo( ) despliegainfo( )
seleccionardocumento( )
datosdocumento( )
recuperar_datos( ) datosdocumento( )
114
Diagrama de colaboracin
2: despliegainfo( )
3: seleccionardocumento( ) : Interfaz
4: datosdocumento( ) : Sistema
1: documentosxtitulo( )
6: datosdocumento( )
5: recuperar_datos( )
: BasedeDatos
Diagrama de estados
Buscar por ttulo Se realizo una bsqueda por titulo( contenido ) Se muestran el listados de documentos por titulo entry/ Lista de documentos Se elige el documento Clic sobre el titulo entry/ ^Datos del documento(titulo, idarticulo, abstract, link)
Anexos
115
Sistema de Web de Biblioteca Digital de Artculos de Literatura Cientfica Especificacin de caso de uso: Buscar por referencia Versin 1.2
116
Historial de revisiones
Fecha 30/Abril/2004 01/Julio/2004 07/Diciembre/2004 Versin 1.0 1.1 1.2 Descripcin Creacin del Documento Introduccin de primeros diagramas Documento completado Autor Jos Damin Cabrera Palacio Jos Damin Cabrera Palacio Jos Damin Cabrera Palacio
Anexos
117
Breve descripcin
Permite a todo usuario del sistema realizar la bsqueda de un documento digital por referencia, para facilitar la localizacin de documento deseado.
Actores
Usuario
Flujo de eventos
Flujo bsico
Actor Este caso de uso comienza cuando el usuario ha realizado una bsqueda con el criterio de referencia. Sistema
El sistema muestra en la parte inferior de la pantalla la lista de los documentos que su referencia coinciden con el contenido introducido por el usuario, los resultados sern segmentados por pginas dependiendo de la cantidad de resultados obtenidos. Estos resultados aparecern en la misma pantalla de la siguiente forma Autor(es), Ao, Ttulo, Referencia e Idioma. Si el usuario no encuentra el documento que desea en dicha pgina, deber desplazarse a otra pgina dando clic en el nmero deseado. El sistema mostrar los documentos pertinentes a dicha pgina. Si le interesa algn documento el usuario deber dar clic en el Titulo del documento para proceder a descargarlo El sistema mostrar la pgina donde se puede descargar el documento (Ver caso de uso Descargar documento) Finaliza el caso de uso.
Precondiciones
El usuario deber haber realizado una bsqueda por el criterio de Referencia.
118
Diagrama de actividades
Usuari o
No Si
Anexos
119
Diagrama de secuencia
: Interfaz
: Sistema
: BasedeDatos
documentosxreferencia( )
despliegainfo( )
120
Diagrama de colaboracin
2: despliegainfo( )
3: seleccionardocumento( ) : Interfaz
Diagrama de estados
Busqueda por referencia Se realizo una busqueda por referencia( contenido ) Se muestra la lista de documentos que contienen dicho datos de referencia entry/ Lista de documentos Se muestran los datos de cada documento Se elige por el titulo el documento deseado entry/ ^Clic sobre titulo(titulo, idarticulo, abstract, referencia)
Anexos
121
Sistema de Web de Biblioteca Digital de Artculos de Literatura Cientfica Especificacin de caso de uso: Buscar por autor Versin 1.2
122
Historial de revisiones
Fecha 30/Abril/2004 01/Julio/2004 07/Diciembre/2004 Versin 1.0 1.1 1.2 Descripcin Creacin del Documento Introduccin de primeros diagramas Documento completado Autor Jos Damin Cabrera Palacio Jos Damin Cabrera Palacio Jos Damin Cabrera Palacio
Anexos
123
Breve descripcin
Permite a todo usuario del sistema realizar la bsqueda de un documento digital por autor, para facilitar la localizacin de documento deseado.
Actores
Usuario
Flujo de eventos
Flujo bsico
Actor Este caso de uso comienza cuando el usuario ha realizado una bsqueda con el criterio de autor. Sistema
El sistema muestra en la parte inferior de la pantalla la lista de los autores que coinciden con el contenido introducido, los resultados sern segmentados por pginas dependiendo de la cantidad de resultados obtenidos. Si el usuario no encuentra el nombre que desea en dicha pgina, deber desplazarse dando clic en la pgina deseada. El sistema mostrar los resultados pertinentes a dicha pgina. El usuario da clic en el nombre del autor del que desea ver sus documentos. El sistema mostrar por pginas los documentos relacionados, esto dependiendo de la cantidad de documentos relacionados con el autor. Estos resultados aparecern en la misma pantalla de la siguiente forma Autor(es), Ao, Ttulo, Referencia e Idioma. Si al usuario no le interesan los documentos que se muestran en la pgina deber desplazarse dando clic en el nmero de la pgina deseada.
124
Diseo e implementacin de un sistema de biblioteca digital El sistema mostrar los documentos pertinentes a dicha pgina.
Si le interesa algn documento el usuario deber dar clic en el Titulo del documento para proceder a descargarlo El sistema mostrar la pgina donde se puede descargar el documento (Ver caso de uso Descargar documento) Finaliza el caso de uso.
Precondiciones
El usuario deber haber realizado una bsqueda por el criterio de Autor.
Diagrama de actividades
Usuari o
No Si
Encontro el nombre
No
Anexos
125
Diagrama de secuencia
: Documento
: Sistema
: BasedeDat os
datos_autor( )
recuperar_datos( ) articulosxautor( )
lista_autores( )
despliegainfo( )
seleccionaautor( )
seleccionardocumento( )
datosdocumento( )
datosdocumento( )
recuperar_datos( ) existe_articulo( )
documentoexiste( )
despliegainfo( )
126
Diagrama de colaboracin
6: despliegainfo( ) 10: despliegainfo( ) 17: despliegainfo( ) 1: buscardocumento( ) 7: seleccionaautor( ) 11: seleccionardocumento( )
13: datosdocumento( ) 5: lista_autores( ) 9: documentoexiste( ) 16: documentoexiste( ) 3: recuperar_datos( ) 14: recuperar_datos( ) : Sistema 4: articulosxautor( ) 15: existe_articulo( ) : BasedeDatos
Diagrama de estados
Buscar documento por autor Buscando cambio de pgina( nmero ) Cambio de pgina( nmero )
Anexos
127
Sistema de Web de Biblioteca Digital de Artculos de Literatura Cientfica Especificacin de caso de uso: Descargar documentos Versin 1.2
128
Historial de revisiones
Fecha 30/Abril/2004 01/Julio/2004 07/Diciembre/2004 Versin 1.0 1.1 1.2 Descripcin Creacin del Documento Introduccin de primeros diagramas Documento completado Autor Jos Damin Cabrera Palacio Jos Damin Cabrera Palacio Jos Damin Cabrera Palacio
Anexos
129
Breve descripcin
Todo usuario podr realizar la descarga de un documento digital del servidor.
Actores
Usuario
Flujo de eventos
Flujo bsico
Actor Req (5) Este caso de uso comienza cuando el usuario ha ejecutado el sistema y ha realizado un proceso de bsqueda de documentos. (ver Caso de uso Bsqueda de documentos) Sistema
Req 5.1 El sistema muestra en una pantalla, la informacin de todos los documentos digitales resultantes de la bsqueda, en una forma que al usuario le sea familiar. Req (6) El usuario selecciona el documento a descargar y da clic sobre el hipervnculo en el ttulo del documento digital. Req 6.1 El sistema obtiene de la base de datos de la Biblioteca la informacin que complemente el detalle del documento digital elegido. Req 6.2 El sistema muestra en una pantalla informacin ms detallada del documento digital. Req 6.3 El usuario selecciona Descargar documento. Finaliza el caso de uso.
Precondiciones
El usuario deber haber ejecutado el sistema. El usuario deber haber realizado una bsqueda de documentos.
130
Diagrama de actividades
Usuari o
Descargar documento
Selecciona un documento
No
Anexos
131
Diagrama de secuencia
: Sistema
: BasedeDat os
datosdocumento( )
recuperar_datos( ) existe_articulo( )
documentoexiste( ) despliegainfo( )
descargardoc( )
link_descarga( )
descargardocumento( )
Diagrama de colaboracin
7: despliegainfo( ) 1: realizardescarga( ) 8: descargardoc( ) 10: descargardocumento( )
9: link_descarga( ) : Sistema
6: documentoexiste( )
3: datosdocumento( )
: Documento
132
Diagrama de estados
Descargar documento Despues de una bsqueda Pgina de resultados entry/ Mostrando lista de documentos Seleccionando documento
Cerrar
Anexos
133
Sistema en Web de Biblioteca Digital de Documentos de Literatura Cientfica Especificacin de caso de uso: Registrar usuarios Versin 1.2
134
Historial de revisiones
Fecha 30/Abril/2004 01/Julio/2004 07/Diciembre/2004 Versin 1.0 1.1 1.2 Descripcin Creacin del Documento Introduccin de primeros diagramas Documento completado Autor Jos Damin Cabrera Palacio Jos Damin Cabrera Palacio Jos Damin Cabrera Palacio
Anexos
135
Breve descripcin
Permite a una persona registrarse como usuario del sistema, con la finalidad de que pueda realizar subidas de documentos.
Actores
Usuario
Flujo de eventos
Flujo bsico
Actor Req (1) Este caso de uso comienza cuando el usuario ha ejecutado el sistema y da clic en Registrarse o en la pantalla de Ingresar al sistema a elegido la opcin de registrarse ahora en la pantalla de acceso al sistema. Sistema
Req 1.1 El sistema solcita datos al usuario como: nombre completo, email, rea de desarrollo, login, password y la confirmacin de password. Req 1.2 El usuario introduce los datos que se le solicitan como: nombre completo, email, rea de desarrollo, login, password y la confirmacin de password. El usuario deber dar clic sobre el botn Registrarse Si el usuario da clic sobre el botn Limpiar entonces deber reiniciar el llenado del formulario. Ir a Req 1.2 Req 1.3 El sistema verifica los datos introducidos. Si existen errores, el usuario deber corregirlos Req 1.2) y despus deber dar clic sobre el botn Registrarse. Req 1.4 Si no existen errores en los datos introducidos, el sistema almacena en la base de datos de la Biblioteca la informacin de los datos introducidos.
136
Diseo e implementacin de un sistema de biblioteca digital Req 1.5 Si no existen problemas con la base de datos, el sistema muestra el mensaje EL REGISTRO SE REALIZO SATISFACTORIAMENTE Si por el contrario existen problemas con la base de datos, el sistema muestra el mensaje ERROR, NO SE PUDO REALIZAR EL REGISTRO. Ir a Req 1.2
Precondiciones
El usuario deber haber ejecutado el sistema. El usuario deber haber intentado ingresar al sistema.
Diagrama de actividades
Usuario
Registrar usuarios
Desea ingresar al sistema, pero no esta registrado
Corregir errores
No
Anexos
137
Diagrama de secuencia
: Interfaz
: Usuario
: Sistema
: BasedeDatos
despliegainfo( )
corregirdatos( )
datosusuario( )
datosusuario( )
usuarioregistrado( )
despliegainfo( )
138
Diagrama de colaboracin
7: despliegainfo( ) 16: despliegainfo( ) 1: registrarse( ) 8: corregirdatos( ) : Interfaz
: Usuario del Sistema 6: usuarioexistente( ) 15: usuarioregistrado( ) 3: datosusuario( ) 10: datosusuario( ) 4: existe_usuario( ) 11: existe_usuario( ) 13: alta( ) : Sistema 5: usuarioexistente( ) 12: No 14: registroexitoso() : BasedeDatos
Diagrama de estados
Registrar usuario Datoscorrectos Clic en "Registrarse ahora"
Formulario de registro de usuario do/ ^Introduciendo datos (nombre, email, desarrollo, etc)
Enviandodatos
Anexos
139
Diagrama de clases
Usuario
(from Use Case Vi ew)
<<uses>> +1
idusuario nombre email desarrollo password SESSION[autentificado] SESSION[login] datosusuario() iniciodesesion() findesesion()
<<process>> BasedeDatos
(from Use Case Vi ew)
Forma iniciodesesion() findesesion() ingresaralsistema() documentosubido() despliegainfo() documentoexiste() registrarse() usuarioexistente() corregirdatos() usuarioregistrado() +1
introducirdatos() operacionexitosa()
<<muestra>>
<<uses>>
<<communicate>> Sistema +1
(from Use Case Vi ew)
verificar() existe_articulo() autores() link_descarga() articulosxautor() articulos_totales() id_usuario() datos_subidos() abstract() visitas() lista_autores() datosusuario() datosdocumento() existe_autor() usuarioexistente()
140
Sistema en Web de Biblioteca Digital de Documentos de Literatura Cientfica Especificacin de caso de uso: Recuperar password Versin 1.2
Anexos
141
Historial de revisiones
Fecha 30/Abril/2004 01/Julio/2004 07/Diciembre/2004 Versin 1.0 1.1 1.2 Descripcin Creacin del Documento Introduccin de primeros diagramas Documento completado Autor Jos Damin Cabrera Palacio Jos Damin Cabrera Palacio Jos Damin Cabrera Palacio
142
Breve descripcin
Los usuarios podrn recuperar su clave de acceso (password) si este ha sido olvidado.
Actores
Usuario
Flujo de eventos
Flujo bsico
Actor Req (2) Este caso de uso comienza cuando el usuario desea ingresar al sistema, pero ha olvidado su password y para recuperarlo selecciona la opcin ha olvidado su password? Sistema
Req 2.1 El sistema solicita sus datos para recuperar password: nombre de usuario (login) y su correo electrnico (email). Req 2.2 El usuario ingresa su nombre de usuario (login) y su correo electrnico (email). Req 2.3 El sistema busca y compara en la base de datos el nombre de usuario y correo electrnico. Req 2.4 Si los datos introducidos existen, el sistema muestra el mensaje Recuperacin de password exitosa Si por el contrario los datos no existen, el sistema enva el mensaje Los datos introducidos no existen. Ir a Req 2.1 Si los datos introducidos existen, el usuario lee el mensaje y puede regresar a la pgina principal. Si por el contrario los datos no existen, el usuario lee el mensaje y puede regresar a la pgina anterior y volver a intentar ingresando los datos. Finaliza el caso de uso.
Anexos
143
Precondiciones
El usuario deber haber ejecutado el sistema. El usuario deber haber intentado ingresar al sistema.
Diagrama de actividades
Usuario
Recuperar password
Desea ingresar al sistema pero a olvidado su password
Ingresar nombre de usuario y correo electronico Leer mensaje y regresar a pgina anterior Datos existen? Si No
144
Diagrama de secuencia
: Interfaz
: Usuario
: Sistema
: BasedeDat os
operacionexitosa( )
Diagrama de colaboracin
7: despliegainfo( )
1: recuperarpassword( ) : Sistema 8: operacionexitosa( ) : Usuario del Sistema 4: recuperar_psd( ) 2: datosusuario( ) 3: datosusuario( ) 5: usuarioexistente( ) : Us uario : BasedeDatos : Interfaz 6: usuarioexistente( )
Anexos
145
Diagrama de estados
Resultado Mostrando mensaje entry/ Ver mensaje event Undefined/ ^Envio de datos por correo
146
Anexos
147
Prueba de Usabilidad DL-CASI Sistema en Web de Biblioteca Digital de Documentos de Literatura Cientfica
148
En caso de que no tenga ms preguntas, por favor comunqueselo al facilitador para que podemos empezar con la prueba. Esperamos que haya pasado un momento divertido y satisfactorio experimentando con el sistema
Anexos
149
Prueba 1
Regstrese como usuario Elija la opcin Ingresar al sistema Elija la opcin Desea Registrase ahora Ingrese sus datos Concluya el proceso de registro. Si tiene una duda consulte la Ayuda del sistema
150
2)
3)
4)
Qu tan satisfecho estuvo despus de terminar la tarea? Qu cara corresponde a su estado de nimo?
Anexos
151
5)
Has tenido problemas con la tarea? Qu fue particularmente bueno y malo? Tienes alguna propuesta para mejorar el proceso de esta tarea?
152
Preguntas finales
Una vez puesto en marcha el sistema Hara uso de l? Existen casos en que los documentos PDF no permiten ser copiados. En ese caso Qu piensa de tener que teclear todos los datos manualmente cuando suba un documento?
Anexos
153
154
Prueba de Usabilidad DL-CASI Sistema en Web de Biblioteca Digital de Documentos de Literatura Cientfica
Anexos
155
156
Observaciones generales
Anexos
157
Observaciones de Prueba 1
Registro de Usuario
158
Figura A6.1.
Interfaz de Inicio
Como se puede observar en la Figura A6.1 se realiz una redistribucin del contenido de la pgina de Inicio. Adems el men principal ha sido resaltado en una forma ms distintiva. Se colocaron ligas en los ttulos de los ltimos documentos subidos.
Figura A6.2.
En el encabezado Figura A6.2, se cambio el contenido del botn Buscar documento, adems de que se incluyo la opcin Registrarse. Y cada vez que se da clic en una opcin del men principal, esta se desactiva haciendo que el usuario identifique de forma ms sencilla en que parte del sistema se encuentra. La palabra subir se cambio por cargar, tal como se ve en la opcin Cargar documentos, al igual que en todo el contenido del sistema.
Anexos
159
Figura A6.3.
En la Figura A6.3 se pueden visualizar las modificaciones realizadas a la interfaz de registro de nuevo usuario. Entre las ms importantes estn: Se dividi el campo de Nombre en dos campos, para facilitar la captura de los nombres de los usuarios. El E-mail tambin fue dividido en dos campos para evitarle a los usuarios teclear la @. Se incluy un mensaje explicndole al usuario, la razn por la que deber registrarse. En la Figura A6.4 se muestra la interfaz para cargar documento, en la cual se pueden observar las siguientes modificaciones: El formulario ha sido dividido en cinco pasos bien definidos. El campo de Ttulo del documento es multilnea. En el Paso 2, se ha agregado el botn Nuevo autor, as como al botn de Lista de autores se le ha cambiado la etiqueta a Seleccin de autores. Se cambiaron algunas de las etiquetas de los campos. Tambin los campos rea de investigacin e Idioma del documento no tienen opcin predefinida y el usuario tendr que elegir una opcin.
160
Figura A6.4.
Al dar clic en el botn Seleccionar autores se abre la subventana con la lista de autores, a la cual se le cambi al siguiente formato. (Vase Figura A6.5)
Anexos
161
Figura A6.5.
Los cambios fueron los siguientes: Ttulo de subventana visible Se aadieron instrucciones para informarle al usuario como funciona dicha subventana. Se incluyo el botn Quitar ltimo, el cual permite eliminar el ltimo nombre de autor seleccionado. Se incluyo el botn Quitar todo, el cual permite eliminar a todos los autores seleccionados.