• No se han encontrado resultados

2. Diseño del sistema

2.4. Infraestructura y ambiente de la aplicación

2.4.2. Herramientas utilizadas

En el diseño visual de la aplicación se utilizó el paquete de Macromedia para las interfaces graficas, específicamente el editor gráfico Firework 8 para la elaboración de logotipos, imágenes e iconos y el editor Dreamweaver 8 para la conformación de las diferentes páginas.

2.4.3. Estrategia utilizada

La arquitectura general de una aplicación Web es similar a un sistema cliente-servidor, aunque con algunas diferencias. Una de las principales es la distribución, donde los aspectos fundamentales a la configuración de la aplicación se encuentran en componentes del lado del servidor, ningún software en específico, ni opciones adicionales se necesita de parte del cliente. Además, el principal protocolo de comunicación para las aplicaciones Web es HTTP, el cual esta diseñado para soportar conexiones no permanentes, haciendo robusto y sin fallas a múltiples instancias. También permite que no exista comunicación directa de los objetos clientes con los objetos de parte del servidor.

Basado en lo anterior, se decide que la aplicación se realizará con tecnología Web, empleando una arquitectura de tres capas que se describe a continuación.

Arquitectura de tres niveles:

Los diferentes componentes de la aplicación pueden estar ubicados en cualquiera de estas capas:

• Lógica de presentación: Interfaz de usuario, interacción con el usuario final, presentación de la información, entrada de datos.

• Lógica de negocio: Reglas de negocio, validación de datos y tareas específicas de la aplicación.

Capítulo II

• Lógica de acceso a datos: Comunicación con la base de datos, construcción de sentencias SQL y su ejecución a través de los objetos creados.

Esta arquitectura posibilita:

• La comunicación con la base de datos se hace solo a través de la capa de acceso a datos.

• Todas las reglas de negocio son procesadas y manipuladas por los objetos de la capa de negocio.

• Las interfaces de los usuarios finales son formadas por los objetos de la capa de presentación.

• No existe comunicación directa entre la capa de presentación y la de acceso a datos, toda la comunicación es manipulada por la capa de negocio.

Figura 2.3: Arquitectura de tres capas.

2.4.4. Implementación de la infraestructura

De forma general, la implementación de la aplicación, se basa en la selección de software libre, tanto en el soporte técnico como en los lenguajes de desarrollo. Las razones de esta selección se argumentan a continuación.

Software libre

El software libre permite a los usuarios ejecutar, copiar, distribuir, estudiar, cambiar y mejorar el software, esto incluye:

• Libertad de usar el programa, con cualquier propósito.

• Libertad de estudiar como funciona el programa y adaptarlo a sus necesidades. • Acceso al código fuente.

• Libertad de distribuir copias.

• Libertad de mejorar el programa y hacer públicas las mejoras a los demás, de modo que toda la comunidad se beneficie.

Entre las ventajas en el uso del software libre, podemos enunciar: • Beneficios sociales y tecnológicos para la universidad. • Ahorros en la adquisición de licencias.

• Combate efectivo a la copia ilícita de software. • Eliminación de barreras presupuestarias. • Beneficio social para el país.

• Tiempos de desarrollo menores por la amplia disponibilidad de herramientas y bibliotecas.

Lenguajes de desarrollo:

PHP (Hypertext Preprocessor): Lenguaje interpretado de alto nivel y ejecutado en el servidor.

SQL (Structure Query Language): Para encuestar al servidor base de datos MySQL. JavaScript: Lenguaje interpretado orientado a las páginas Web. Se utiliza para realizar tareas y operaciones en el marco de la aplicación cliente.

AJAX (Asynchronous JavaScript And XML): Técnica de desarrollo Web para crear aplicaciones interactivas. Éstas se ejecutan en el cliente (navegador del usuario), y mantiene comunicación asíncrona con el servidor en segundo plano.

XHTML (eXtensible Hyper Text Markup Language): Formato estándar de las aplicaciones

Web.

CSS (Cascading Style Sheets): Lenguaje formal usado para definir la presentación de los documentos estructurados en HTML o XML.

XML (eXtensible Markup Language): Estándar usado como metalenguaje para estructuración y transferencia de datos.

Para aplicaciones como Cronos, la combinación PHP y MySQL, es muy eficiente, de ahí su elección en el desarrollo del sistema. A pesar de ser utilizada una versión de PHP no definida esencialmente para la programación orientada a objetos, tiene la capacidad de poder crearlos, con el propósito de una mejor abstracción del problema en cuestión, encapsulación del código y la posibilidad de su reutilización. Las clases se comparten

Capítulo II

mediante ficheros include, posibilitando la actuación de los diferentes módulos automáticamente, ante cualquier cambio realizado.

A continuación, se describen los principales componentes del sistema, así como sus funciones más importantes (ver Figura 2.4).

1. Páginas servidoras solicitadas por la aplicación cliente, se ejecutan y devuelven el contenido en formato XHTML.

2. Formularios Web, cuadros de diálogos, y paneles de resultado de búsqueda, en formato XHTML.

3. Clase de autentificación, LDAP: Gestiona la conexión con el servidor de dominio y la autentificación de las credenciales a través de funciones apropiadas para estos fines.

4. Clase de sesión de usuario, UserSession: Contiene funciones que manejan los datos personales de los usuarios y crea una sesión en el servidor.

5. Clases de búsqueda, Search y aSearch: Clases destinadas a construir las peticiones de búsquedas y recuperar las respuestas para procesarlas.

6. Clases de configuración, ManageConfiguration, y ManageLog: Son clases destinadas a introducir y extraer de archivos los parámetros de configuración y líneas de logs respectivamente.

7. Ficheros XML y LOG: Contienen parámetros de configuración y rutas respectivamente.

8. Lógica de validación: Grupo de archivos que contienen códigos de validación de datos y otras tareas específicas.

9. Clase para examinar datos resultantes de una consulta, RecordSet: Su constructor recibe como parámetro el arreglo de datos y mediante funciones se puede acceder a los mismos estando desconectado del servidor.

10. Clase de conexión con el servidor de base de datos, SQL: Cuenta con métodos capaces de establecer una conexión, hacer consultas y hacer un procesado primario de la información resultante.

11. Hojas de estilos, CSS: Usadas para definir la presentación de los resultados.

12. Datos en formato XHTML, devueltos a la aplicación cliente para que puedan ser visualizados por el usuario final.

Figura 2.4: Vista general de la infraestructura.

Extensiones y bibliotecas usadas

Como el principal lenguaje de desarrollo ejecutado en el servidor es PHP, se necesitaron algunas extensiones y bibliotecas adicionales, para poder realizar las operaciones que exigía la aplicación, entre estas:

• php_domxml: Para el trabajo con ficheros XML.

• php_ldap: Funciones de conexión y gestión con los servidores de dominios. 2.5. Valoración Económica

Desde el punto de vista cualitativo, la implementación en la organización de la herramienta diseñada, presupone una serie de beneficios entre ellos:

• Elevación de la calidad de las ofertas que dicha organización ofrece. • Disminución de barreras geográficas y temporales.

• Aumento de la visibilidad de la institución. • Mejora en la accesibilidad a información puntual.

Cuantitativamente la herramienta diseñada permite a la organización el ahorro por concepto de compra de una herramienta similar de $ 3000.00 CUC.

Capítulo III

3. Manual de usuario

3.1. Introducción

Cronos es un sistema enfocado fundamentalmente a la comunidad académica y científica, que recopila, describe y ofrece el enlace a recursos de información disponibles en Internet, organizados en grupos temáticos que se subdividen, a su vez, por tipología de fuentes de información.

El sistema contempla cuatro niveles de acceso o privilegios para sus usuarios: Usuario anónimo, Usuario autentificado, Operador y Administrador. El primero hace uso de las funcionalidades básicas del sistema, el segundo tiene la posibilidad de utilizar opciones más avanzadas además de las destinadas al Usuario anónimo. El Operador es el encargado de la actualización de los recursos en un área de trabajo y el Administrador

tiene privilegios globales sobre el sistema, puede actualizar y dar mantenimiento a toda la base de datos, cambiar las configuraciones, dar altas y bajas a los usuarios, etc.

3.2. Servicios de Cronos

Los Directorios Temáticos Especializados tienen una serie de servicios de los cuales no pueden prescindir, en la actualidad contemplan servicios adicionales que favorecen la interacción con el usuario y el trabajo colaborativo de toda la comunidad que hace uso del sistema, todo esto converge a enriquecerlo y lograr un mejor funcionamiento del mismo. A continuación se da una explicación detallada de los servicios desarrollados en Cronos.

3.2.1. Servicio de Autentificación

El sistema cuenta con un formulario de Autentificación para que el Usuario anónimo

introduzca sus datos: nombre, contraseña y dominio (ver Figura 3.1a). Al pulsar el botón

Ingresar, los datos se validan y se autentifican, lo cual permite utilizar los servicios que brinda el sistema a los Usuarios autentificados. Cronos ofrece dos tipos de autentificación.

1. Para los usuarios que hagan uso del sistema en el entorno universitario, se utilizará autentificación por servicio LDAP y, por lo tanto, los datos que deben introducir los usuarios serán los mismos que utilizaría si fuera a iniciar una sesión en un dominio de

Microsoft Windows. De ser válida la autentificación, el sistema intentará obtener sus datos personales, como nombre completo y dirección de correo electrónico, con los

cuales crea su sesión. La autentificación concluye guardando su perfil en la base de datos.

2. Para los usuarios que hagan uso del sistema fuera del entorno universitario se incorpora un tipo de autentificación por base de datos. En este caso, los usuarios tendrán un perfil creado en la base de datos y al introducir sus credenciales, se compararan con los de este perfil. Este tipo de autentificación está dirigida fundamentalmente a las personas que se encuentran fuera de los dominios universitarios, por tanto el dominio que utilizaran será db.

Figura 3.1: (a) Formulario para la Autentificación, (b): Cuadro de Usuario autentificado.

3.2.2. Servicio de búsqueda

Todos los usuarios, independientemente de los privilegios que posean, pueden hacer uso del Servicio de búsqueda, sin embargo este no se presenta de igual forma para todos. Los

Usuarios anónimos y autentificados hacen uso de este servicio con el fin de obtener información que necesitan, mientras que los Operadores y Administradores lo utilizan para buscar recursos que necesitan editar o eliminar.

El panel de búsquedas consta de dos secciones, una para introducir las palabras clave y otra (avanzada) para seleccionar el campo de la base de datos en el que se desea buscar y el formato e idioma para filtrar los resultados (ver Figura 3.2). Para los Usuarios anónimos y autentificados este panel aparece en las páginas de Inicio y Directorio y para los Operadores y Administradores solo en la página de Inicio.

Formulario de autentificación

Información del perfil y menú de navegación de usuario

Capítulo III

Figura 3.2: Panel de búsqueda.

Tipos de búsqueda

Cronos tiene amplias opciones que ayudan a depurar la búsqueda y reducirla a lo esencial que se desea. Para ello están implementadas cuatro tipos de búsquedas que el usuario podrá utilizar de acuerdo al criterio que estime más conveniente.

1. Búsqueda por palabras clave: el usuario realiza la búsqueda introduciendo palabras clave relacionadas separadas por espacio (ver Figura 3.2), al pulsar el botón Buscar

el sistema le devolverá los resultados, con información de los recursos encontrados, esta búsqueda se realiza en los campos Título, Palabras Clave y Resumen a la vez. 2. Búsqueda por palabras clave en campos específicos: el usuario realiza la búsqueda

introduciendo las palabras clave relacionadas y tiene, además, la posibilidad de seleccionar el campo de la base de datos en el cual se desea buscar (Título, Palabras Clave o Resumen), de no seleccionarse ninguno se estaría realizando la búsqueda que se ha descrito en el punto anterior.

3. Búsqueda por categorías: el usuario pulsa sobre una categoría desde la página de

Inicio o Directorio y le aparece primeramente una lista de las subcategorías que comparten recursos con la categoría seleccionada (ver Figura 3.3), desde allí se pulsa sobre la subcategoría que se desee y el sistema devolverá los resultados correspondientes la categoría y subcategoría seleccionada.

4. Búsqueda por subcategorías: el usuario pulsa sobre una subcategoría desde la página de Directorio y el sistema le devuelve como resultado todos los recursos que están relacionados con ella.

Los Usuarios anónimos y autentificados pueden utilizar los cuatro tipos de búsqueda mientras que los Operadores y Administradores pueden utilizar solo los dos primeros.

Selección de campo y opciones de filtrado

Cuadro de texto para la entrada de palabras clave

Opciones de Filtrado

1. Filtrado por formato, el usuario puede seleccionar el formato de recursos que desea buscar (ej. HTML, PDF, DOC).

2. Filtrado por idioma, el usuario puede seleccionar el lenguaje de recursos que desea buscar (ej. Español, Inglés).

Figura 3.3: Resultados parciales de una búsqueda por categorías.

Resultados de la búsqueda

Los resultados de la búsqueda que realiza el Usuario anónimo muestran una lista con el

título, resumen y url de los recursos (ver Figura 3.4). Cada elemento de la lista contiene en la parte derecha dos iconos que se describen a continuación:

1. Detalles: Haciendo clic sobre este icono se puede acceder a una nueva ventana que muestra todos los datos del recurso.

2. Inaccesible: Haciendo clic sobre este icono se puede reportar el recurso como inaccesible, antes el sistema muestra un mensaje de verificación para confirmar la operación.

Figura 3.4: Resultados de una búsqueda por palabras clave: Usuario anónimo.

Si se tratara de un Usuario autentificado, los resultados de la búsqueda muestran una lista con el título, resumen y url de los recursos y en la parte izquierda, una casilla de selección

Barra de menú

Detalles

Inaccesibl Lista de subcategorías que

comparte recursos con la categoría seleccionada

Capítulo III

que sirve para marcar varios recursos con vistas a guardarlos en su directorio personal (ver Figura 3.5). Cada elemento de la lista en la parte derecha contiene tres iconos que se describen a continuación:

1. Detalles: Haciendo clic sobre este icono el usuario puede acceder a una nueva ventana que muestra todos los datos del recurso.

2. Guardar: Haciendo clic sobre este icono el usuario puede guardar el recurso en su directorio personal, antes el sistema muestra un mensaje de verificación para confirmar la operación.

3. Inaccesible: Haciendo clic sobre este icono el usuario puede reportar el recurso como inaccesible, antes el sistema muestra un mensaje de verificación para confirmar la operación.

Figura 3.5: Resultados de una búsqueda por palabras clave: Usuario autentificado.

Si fuera un usuario con privilegios superiores, los resultados mostrarían una lista con el

título y url de los recursos, aparecería igualmente la casilla de selección y cada elemento contendría iconos apropiados para ver detalles del recurso, editarlo o eliminarlo. Más adelante se ofrecen más detalles de las opciones que Cronos ofrece a los Operadores y

Administradores.

Detalles del recurso

Al hacer clic sobre el icono de Detalles, se abre una nueva ventana que muestra todos los datos del recurso (ver Figura 3.6). Aquí se muestran también los comentarios que posee el recurso.

Casilla de selección

Figura 3.6: Página de Detalles del recurso.

En caso de que el usuario estuviera autentificado desde esta página podría contribuir con los especialistas emitiendo su Valoración y Comentarios acerca del recurso.

Documento similar