Diseño e Implementación de una Aplicación Web para la...

8
Diseño e Implementación de una Aplicación Web para la Administración de Conferencias Académicas para Venezuela Antonio Alarcon Escuela de Computación Universidad Central de Venezuela Caracas, Venezuela [email protected] Gabriel Espinel Escuela de Computación Universidad Central de Venezuela Caracas, Venezuela [email protected] Eric Gamess MCIS Department Jacksonville State University Jacksonville, AL, USA [email protected] Resumen—Este artículo presenta el diseño y la implementación de una aplicación web orientada a apoyar la administración de conferencias académicas en Venezuela, como lo son el Simposio Científico y Tecnológico en Computación (SCTC) y la Conferencia Nacional de Computación, Informática y Sistemas (CoNCISa). La aplicación automatiza varios procesos tediosos y repetitivos como la reservación de asistencia, la gestión de pagos, y la generación de documentos digitales (distintivos de identificación, certificados de asistencia y recibos de pago). El sistema fue realizado con software libre, usando herramientas modernas de desarrollo y de fácil acceso. Es de aclarar que tanto el SCTC como CoNCISa tienen requerimientos muy específicos y ningún software existente de administración de conferencias se pudo configurar para cubrir las necesidades de estas conferencias nacionales. Por ende, los organizadores de estos eventos científicos se vieron en la obligación de llevar a cabo los procesos de administración en forma manual, por años, resultando en un número significativo de horas trabajadas. Con este nuevo sistema, la administración del SCTC y de CoNCISa se ve mejorada significativamente, resultando en un significante ahorro de tiempo, en una reducción de costos al utilizar software de dominio público y al eliminar el uso de papel, y adicionalmente en una minimización de errores. Palabras Clave—Aplicación Web, Desarrollo de Software, Conferencias Académicas, Sistemas de Administración de Conferencias, SCTC, CoNCISa. I. INTRODUCCIÓN Las tecnologías de información y comunicación se han abierto camino en nuestra sociedad, permitiendo nuevas formas de colaboración, de automatización y optimización de procesos, de recopilación y compartición de información, e incluso nuevas formas de pensar y analizar la información para tomar mejores decisiones. La automatización de procesos mediante computadores intenta dejar la intervención del hombre en segundo plano, con el fin de facilitar los procesos repetitivos, liberando así a las personas de funciones rutinarias, obteniendo ahorro significativo de tiempo, dinero y esfuerzo, reduciendo el margen de error y ofreciendo un esquema de trabajo más controlado. Internet, específicamente la World Wide Web (WWW), dio un gran auge a las tecnologías de información, ya que, al mantener un gran número de nodos interconectados, hizo posible el acceso a recursos remotos de una manera simple a través de la red. Este hecho hizo que las aplicaciones web hayan aumentado en popularidad de manera exponencial, logrando que muchas organizaciones prefieran apalancarse en estas tecnologías. Desde hace algunos años, existen dos conferencias nacionales en computación muy renombradas: (1) el Simposio Científico y Tecnológico en Computación (SCTC) [1] y (2) la Conferencia Nacional de Computación, Informática y Sistemas (CoNCISa) [2]. El SCTC ha sido organizado por la Escuela de Computación de la Universidad Central de Venezuela desde el año 2006. CoNCISa existe desde el año 2013, y es uno de los eventos respaldado por la Sociedad Venezolana de Computación (SVC) [3]. Para ambos organizadores, estos eventos siempre se han caracterizados por un gran esfuerzo administrativo. Por ende, surgió la necesidad de automatizar la organización y administración de estos, basándose en las tecnologías de información y comunicación, para hacerlos más accesibles desde un punto de vista comunicacional, y más rentable desde un punto de vista organizacional. El Simposio Científico y Tecnológico en Computación (SCTC) [1] es una conferencia académica que cubre las áreas afines a la computación y se lleva a cabo de manera bienal, con la finalidad de dar a conocer el trabajo investigativo de alta calidad que se lleva a cabo al nivel nacional e internacional. Adicionalmente, el SCTC promueve el encuentro de investigadores en computación y áreas afines, para permitir el intercambio de ideas, experiencias y conocimiento, que estimularán colaboraciones futuras y la creación de redes de conocimiento. El SCTC [1] se ha caracterizado por una filosofía de gratuidad para el público, donde todas sus actividades se ofrecen sin costo alguno. Esta filosofía está motivada por el pensamiento de que es primordial que la transferencia del conocimiento sea libre y se haga sin cargo. Este beneficio no es sólo para el público en general que asiste a las presentaciones y a los tutoriales, sino que también se extiende a los autores de las contribuciones aceptadas donde no hay costo de registro. Sexta Conferencia Nacional de Computación, Informática y Sistemas / CoNCISa 2018 / ISBN: 978-980-7683-04-3 Universidad de Los Andes, Mérida, Venezuela - 28 al 30 de noviembre de 2018 56

Transcript of Diseño e Implementación de una Aplicación Web para la...

Page 1: Diseño e Implementación de una Aplicación Web para la ...concisa.net.ve/memorias/CoNCISa2018/CoNCISa2018-p056-063.pdf · conferencias nacionales. Por ende, los organizadores de

Diseño e Implementación de una Aplicación Web para la Administración de Conferencias Académicas

para Venezuela

Antonio Alarcon Escuela de Computación

Universidad Central de Venezuela Caracas, Venezuela

[email protected]

Gabriel Espinel Escuela de Computación

Universidad Central de Venezuela Caracas, Venezuela

[email protected]

Eric Gamess MCIS Department

Jacksonville State University Jacksonville, AL, USA

[email protected]

Resumen—Este artículo presenta el diseño y la

implementación de una aplicación web orientada a apoyar la administración de conferencias académicas en Venezuela, como lo son el Simposio Científico y Tecnológico en Computación (SCTC) y la Conferencia Nacional de Computación, Informática y Sistemas (CoNCISa). La aplicación automatiza varios procesos tediosos y repetitivos como la reservación de asistencia, la gestión de pagos, y la generación de documentos digitales (distintivos de identificación, certificados de asistencia y recibos de pago). El sistema fue realizado con software libre, usando herramientas modernas de desarrollo y de fácil acceso. Es de aclarar que tanto el SCTC como CoNCISa tienen requerimientos muy específicos y ningún software existente de administración de conferencias se pudo configurar para cubrir las necesidades de estas conferencias nacionales. Por ende, los organizadores de estos eventos científicos se vieron en la obligación de llevar a cabo los procesos de administración en forma manual, por años, resultando en un número significativo de horas trabajadas. Con este nuevo sistema, la administración del SCTC y de CoNCISa se ve mejorada significativamente, resultando en un significante ahorro de tiempo, en una reducción de costos al utilizar software de dominio público y al eliminar el uso de papel, y adicionalmente en una minimización de errores.

Palabras Clave—Aplicación Web, Desarrollo de Software, Conferencias Académicas, Sistemas de Administración de Conferencias, SCTC, CoNCISa.

I. INTRODUCCIÓN

Las tecnologías de información y comunicación se han abierto camino en nuestra sociedad, permitiendo nuevas formas de colaboración, de automatización y optimización de procesos, de recopilación y compartición de información, e incluso nuevas formas de pensar y analizar la información para tomar mejores decisiones.

La automatización de procesos mediante computadores intenta dejar la intervención del hombre en segundo plano, con el fin de facilitar los procesos repetitivos, liberando así a las personas de funciones rutinarias, obteniendo ahorro significativo de tiempo, dinero y esfuerzo, reduciendo el margen de error y ofreciendo un esquema de trabajo más controlado.

Internet, específicamente la World Wide Web (WWW), dio un gran auge a las tecnologías de información, ya que, al mantener un gran número de nodos interconectados, hizo posible el acceso a recursos remotos de una manera simple a través de la red. Este hecho hizo que las aplicaciones web hayan aumentado en popularidad de manera exponencial, logrando que muchas organizaciones prefieran apalancarse en estas tecnologías.

Desde hace algunos años, existen dos conferencias nacionales en computación muy renombradas: (1) el Simposio Científico y Tecnológico en Computación (SCTC) [1] y (2) la Conferencia Nacional de Computación, Informática y Sistemas (CoNCISa) [2]. El SCTC ha sido organizado por la Escuela de Computación de la Universidad Central de Venezuela desde el año 2006. CoNCISa existe desde el año 2013, y es uno de los eventos respaldado por la Sociedad Venezolana de Computación (SVC) [3]. Para ambos organizadores, estos eventos siempre se han caracterizados por un gran esfuerzo administrativo. Por ende, surgió la necesidad de automatizar la organización y administración de estos, basándose en las tecnologías de información y comunicación, para hacerlos más accesibles desde un punto de vista comunicacional, y más rentable desde un punto de vista organizacional.

El Simposio Científico y Tecnológico en Computación (SCTC) [1] es una conferencia académica que cubre las áreas afines a la computación y se lleva a cabo de manera bienal, con la finalidad de dar a conocer el trabajo investigativo de alta calidad que se lleva a cabo al nivel nacional e internacional. Adicionalmente, el SCTC promueve el encuentro de investigadores en computación y áreas afines, para permitir el intercambio de ideas, experiencias y conocimiento, que estimularán colaboraciones futuras y la creación de redes de conocimiento.

El SCTC [1] se ha caracterizado por una filosofía de gratuidad para el público, donde todas sus actividades se ofrecen sin costo alguno. Esta filosofía está motivada por el pensamiento de que es primordial que la transferencia del conocimiento sea libre y se haga sin cargo. Este beneficio no es sólo para el público en general que asiste a las presentaciones y a los tutoriales, sino que también se extiende a los autores de las contribuciones aceptadas donde no hay costo de registro.

Sexta Conferencia Nacional de Computación, Informática y Sistemas / CoNCISa 2018 / ISBN: 978-980-7683-04-3 Universidad de Los Andes, Mérida, Venezuela - 28 al 30 de noviembre de 2018

56

Page 2: Diseño e Implementación de una Aplicación Web para la ...concisa.net.ve/memorias/CoNCISa2018/CoNCISa2018-p056-063.pdf · conferencias nacionales. Por ende, los organizadores de

CoNCISa [2] es uno de los principales eventos anuales de la Sociedad Venezolana de Computación (SVC) [3]. En ciertos años, esta conferencia cuenta con el respaldo académico del Centro Latinoamericano de Estudios en Informática (CLEI) [4] y tiene como finalidad consolidar el intercambio de experiencias investigativas, académicas, y tecnológicas, para impulsar el desarrollo del área de computación y crear lazos estrechos de cooperación a nivel nacional.

El propósito de este artículo es detallar el proceso de diseño y desarrollo de confVen, un sistema computacional para la administración de conferencias nacionales en los campos afines a la computación. En su actual versión, confVen cubre tanto las necesidades particulares del SCTC como las de CoNCISa. Fue utilizado en la organización de CoNCISa 2017 [2], automatizando con éxito la mayoría de los procesos que se realizaban de forma totalmente manual, ahorrando así un significante número de horas de trabajo tedioso.

El resto del presente documento está organizado como especificado a continuación. Los trabajos relacionados son revisados en la Sección II. En la Sección III, se presentan las funcionalidades del sistema. Las herramientas tecnológicas utilizadas en el desarrollo de la aplicación son descritas en la Sección IV. El desarrollo de la aplicación está detallado en la Sección V. Se presenta un balance del trabajo en la Sección VI a través de las conclusiones. Finalmente, se dan direcciones para trabajos futuros en la Sección VII.

II. TRABAJOS RELACIONADOS

En la literatura especializada, se encuentran trabajos que comparan varios sistemas de administración de conferencias o “Conference Managment Systems” (CMSs). Por ejemplo, Jain, Tewari y Singh [5] compararon EDAS [6], Confious [7][8], OpenConf [9], ConfTool [10] y PaperDyne. Parra, Sendra, Ficarelli y Lloret [11] optaron por contrastar EasyChair [12][13], EDAS [6], OCS [14], START V2 [15], ConfTool [10], CMT [16] y CyberChair [17]. En su tesis de maestría, Groot [18] enfocó más su trabajo hacia la generación automática de memorias de conferencia (proceedings).

EasyChair [12][13] es una aplicación web para la sumisión y la evaluación de artículos de investigación, que es flexible, fácil de usar, y tiene muchas características que lo hacen un buen complemento para la administración de conferencias. Se ofrece bajo el modelo “Software as a Service” (SaaS) con características dependientes de la licencia escogida. Actualmente, EasyChair soporta tres licencias: (1) Free, (2) Professional y (3) Executive. En EasyChair, el proceso común de evaluación, soportado por las tres licencias, es el siguiente. Los autores someten sus contribuciones para evaluación. Una vez cerrado el llamado a trabajos, los revisores apuestan para especificar las contribuciones que quisieran revisar. Los presidentes del comité de programa hacen la asignación definitiva. Los revisores evalúan sus contribuciones asignadas y hacen recomendaciones sobre la aceptación. De acuerdo a las evaluaciones, los presidentes del comité de programa aceptan o no las contribuciones. Los autores de las contribuciones aceptadas someten la versión final que será publicada en las memorias de la conferencia (proceedings). Según la licencia escogida, EasyChair ofrece un soporte más amplío. En la

versión Free, los autores son limitados a un único archivo de 20 MB como tamaño máximo. La versión Executive permite el sometimiento de varios archivos de hasta 100 MB cada uno. En lo que se trata de exportar la información en formato Excel o Comma-Separeted Value (CSV), está permitido solamente con las licencias Professional y Executive. Las tres licencias permiten la generación de las memorias de la conferencia, basada en la versión final de las contribuciones aceptadas. El manejo de salones es soportado con las licencias Professional y Executive, mientras que las multiconferencias (tener varios tracks en una conferencia grande como en el CLEI [4]) están disponibles únicamente en la licencia Executive. Ninguna de las licencias de EasyChair permite manejar tutoriales (donde hay un cupo máximo), hacer cobros, o generar documentos digitales como lo son los distintivos de identificación, los certificados de asistencia, o los recibos de pago. Por estas razones, EasyChair es usada para cubrir parcialmente la actividad relacionada con la organización de una conferencia.

HotCRP [19] es similar a EasyChair y permite que los autores sometan a evaluación sus trabajos, además de facilitar el proceso de revisión. HotCRP en muy bueno en cuanto se trata de navegar entre contribuciones, hacer búsqueda en éstas, y marcarlas para su clasificación. HotCRP es de código abierto y requiere que los organizadores de conferencias corran el sistema en sus propios servidores. Al igual que EasyChair, no cubre la parte administrativa relacionada con tutoriales, cobros, emisión de distintivos de identificación y certificados de asistencia.

Open Conference Systems (OCS) [14] es una aplicación de código abierto que permite administrar conferencias y artículos a través de la web. Fue desarrollada por el proyecto Public Knowledge Project (PKP). Se distribuye de manera gratuita para ser usada en instalaciones locales. También ofrecen la aplicación bajo el modelo SaaS, alojada directamente en los servidores del proyecto. OCS permite: (1) la generación de un sitio web para la conferencia, (2) la composición y envío de CFPs (Call For Papers), (3) la recepción, evaluación, y aceptación de artículos, y (4) el registro de participantes.

ConfTool [10] es una herramienta multi-idioma basada en la web para la administración de eventos enfocados a conferencias académicas, talleres, congresos, y seminarios. Esta herramienta se presenta en dos versiones para suplir diferentes necesidades:

VSIS ConfTool: Es la versión gratuita con funciones básicas o limitadas, orientada a eventos pequeños, no comerciales, como los eventos académicos. Esta se distribuye sin ningún soporte y para instalación local con el uso de un servidor web.

ConfTool Pro: Viene con funcionalidades adicionales y sin limitaciones. Se ofrece bajo modalidad alojada directamente en los servidores de la compañía, bajo un modelo SaaS.

Independientemente de la versión, las características más destacadas de ConfTool son: (1) interfaz multi-idioma, (2) registro en línea de participantes, (3) foros en línea, (4) envío y revisión de artículos, (5) múltiples métodos de pago, e (6) integración con pasarelas de pago como PayPal.

Sesión de Investigación - Artículos Largos

57

Page 3: Diseño e Implementación de una Aplicación Web para la ...concisa.net.ve/memorias/CoNCISa2018/CoNCISa2018-p056-063.pdf · conferencias nacionales. Por ende, los organizadores de

OpenConf [9] es una aplicación web que ofrece tres ediciones diferentes para cubrir diferentes necesidades:

OpenConf Community Edition: Esta edición ofrece de manera gratuita las funcionalidades más básicas: envío online, revisiones, aceptaciones, notificaciones, exportación de datos a formatos CSV, XML, Excel, SQL, entre otros. Esta edición se descarga libre de costo y se instala en los servidores propios de los organizadores de la conferencia, mientras no se generen o reciban pagos relacionados con la aplicación.

OpenConf Plus Edition: Incluye todas las funcionalidades de la edición Community más otras adicionales como: soporte técnico, apuestas por parte de los revisores, subida de archivos de evaluación por parte de los revisores, memorias en línea, entre otros. Esta edición se ofrece bajo previa compra de licencia y se instala en los servidores propios de los organizadores de la conferencia. Se permite una única instalación. Eso es, cada instalación adicional requiere de la compra de una nueva licencia.

OpenConf Professional Edition: Es la versión más avanzada y completa, donde se ofrecen docenas de módulos que extienden las funcionalidades. Además de incluir las funcionalidades de la edición Plus, la edición Professional tiene: alojamiento en servidores bajo modalidad SaaS, personalización de formularios, chequeo de plagio, aceptación de pagos por envíos de artículos, entre otros.

Como se pudo apreciar en esta revisión de los CMSs actuales, la mayoría de ellos son comerciales. Pocos ofrecen soporte para la generación de documentos digitales (distintivos de identificación, certificados de asistencia y recibos de pago). Más aún, ninguno soporta la administración de tutoriales que se desarrollan en forma paralela a la conferencia. Por estas razones, se decidió desarrollar confVen. Es de aclarar que en el 2015, se implementó un prototipo de sistema [20] para la administración de la membresía de los asociados a la Sociedad Venezolana de Computación (SVC). Además de renovar su membresía, este sistema permitía a los asociados registrar eventos independientes organizados por la SVC. No era específicamente orientado a la administración de conferencias tipo SCTC o CoNCISa.

III. FUNCIONALIDADES DE LA APLICACIÓN

La implementación de las funcionalidades fue dividida en dos fases. teniendo como objetivo la entrega de la primera fase para CoNCISa 2017 (octubre 2017), y de la segunda fase para mayo 2018.

Durante la primera fase, se realizó el diseño general del sistema, que fue mejorándose iterativamente, siguiendo una metodología de desarrollo ágil (ver Sección V). Por restricciones de tiempo y disponibilidad de recursos, fue necesario priorizar aquellas funcionalidades necesarias para desarrollar un Producto Mínimo Viable (versión de un producto no completa, pero con suficientes características para satisfacer las necesidades de los primeros usuarios [21]) para una ejecución exitosa de una conferencia tipo CoNCISa. Una

vez finalizada la primera fase, y después de realizar pruebas básicas de depuración, la aplicación fue utilizada exitosamente en un ambiente de producción en CoNCISa 2017.

En la segunda fase, se implementaron aquellas funcionalidades que no fueron incluidas en la primera fase porque se consideraron de menor prioridad. Adicionalmente, se agregaron todas las funcionalidades específicas para la administración de una conferencia tipo SCTC.

En esta sección, se describen cada uno de los módulos que conforman confVen, el sistema de administración de conferencias académicas.

A. Registro de Usuario

El sistema no tiene ningún módulo expuesto a usuarios anónimos o no autenticados. Todos los usuarios deben registrarse y autenticarse en el sistema para poder acceder a las funcionalidades de asistencia a conferencias o administración.

Durante el registro de una nueva cuenta de usuario, se solicita al usuario sus datos de cuenta como el nombre de usuario, correo electrónico, y contraseña, como se puede observar en la Figura 1.

Figura 1. Datos de Cuenta durante el Registro de Usuario

De igual forma, se recolectan datos claves del usuario como

sus ocupaciones y afiliaciones a instituciones académicas (ver Figura 2), datos de contacto, entre otros. Estos datos son esenciales para el módulo de reserva, ya que de estos depende los costos y descuentos a los cuales aplica el usuario cuando realiza una reserva a alguna conferencia.

Figura 2. Datos de Afiliación durante el Registro de Usuario

B. Reservación de Asistencia a Conferencia

Una vez que el usuario esté registrado y que haya sido autenticado exitosamente a través del inicio de sesión, se le presentan todas las conferencias habilitadas para hacer reservas. El usuario tiene la opción de ingresar a cualquiera de

Sexta Conferencia Nacional de Computación, Informática y Sistemas / CoNCISa 2018 / ISBN: 978-980-7683-04-3 Universidad de Los Andes, Mérida, Venezuela - 28 al 30 de noviembre de 2018

58

Page 4: Diseño e Implementación de una Aplicación Web para la ...concisa.net.ve/memorias/CoNCISa2018/CoNCISa2018-p056-063.pdf · conferencias nacionales. Por ende, los organizadores de

ellas para realizar la reservación a la misma, seleccionando la modalidad de participación: “Autor” o “Asistente”.

Dependiendo de las ocupaciones y afiliaciones del usuario, los costos asociados a eventos de la conferencia pueden variar. Si el usuario selecciona su asistencia como Autor, una lista adicional se le presenta para seleccionar el o los artículos que presentará en la conferencia, y el costo asociado a la selección.

Finalmente, la conferencia puede ofrecer eventos adicionales con capacidad limitada, como cursos cortos o tutoriales. Estos eventos son listados en la misma página de manera opcional para que el usuario seleccione si desea asistir a alguno de estos tutoriales, calculando los costos y disponibilidad de estos automáticamente como se aprecia en la Figura 3.

Figura 3. Listado de Tutoriales Ofrecidos para Reserva

C. Registro de Pago

Las conferencias en modalidad paga, como CoNCISa, esperan recibir los datos de pago de la reservación de los usuarios. Una vez creada la reserva por el usuario, esta entra en estado “Esperando Pago”, que habilita un formulario de captación de los datos del pago.

En la Figura 4, se puede apreciar el formulario para tal fin, donde se recibe el pago realizado a través de depósito bancario o transferencia electrónica. En caso que el usuario sea exonerado del pago, puede enviar la razón de su exoneración para su revisión por los organizadores de la conferencia.

  Figura 4. Formulario de Información de Pago

D. Administración de Reservaciones

Una vez autenticado por el sistema, un usuario con privilegios de administrador cuenta con un menú “Administración”. Al seleccionar la opción de administrar reservas, este usuario podrá visualizar toda la información de las reservas de cada conferencia. La Figura 5 muestra la interfaz del sistema con la que interactúa un usuario administrador.

Figura 5. Listado de Reservaciones de una Conferencia

Un usuario con privilegios de administrador puede filtrar

las reservas de acuerdo a su estado. También, tiene la opción de exportar aquellas reservas que requieren factura legal a un archivo con formato CSV, para que sean procesadas adecuadamente.

Cada reserva tiene la opción “Ver Detalles” para visualizar información más amplia de esta, como por ejemplo los tutoriales seleccionados durante la reserva, y la opción de descargar el documento digital del recibo de pago en formato PDF. De igual forma, existe la opción de enviar el recibo de pago a través de correo electrónico, con el fin de ahorrar papel.

Esta funcionalidad permite gestionar el estado de las reservas, actualizando el estado de una o varias para aceptarlas o rechazarlas, según el criterio de un usuario administrador. El cambio de estado de las reservas es notificado al usuario a través de un correo electrónico, para que este pueda finalizar su petición.

E. Administración de Distintivos de Identificación

Esta opción permite a un usuario administrador gestionar la generación automática de distintivos para los asistentes a una conferencia. Puede filtrar el listado de reservaciones de acuerdo a los tutoriales seleccionados, como también filtrar por “Asistentes” o “Autores” de la conferencia.

Los distintivos son generados al accionar el botón “Generar Distintivos”, cuando haya uno o más ítems seleccionado en la lista. Esta acción inicia la descarga de un archivo PDF con todos los distintivos seleccionados para la conferencia. La Figura 6 muestra un ejemplo de un distintivo generado automáticamente por la aplicación, de un cursante de un tutorial.

Sesión de Investigación - Artículos Largos

59

Page 5: Diseño e Implementación de una Aplicación Web para la ...concisa.net.ve/memorias/CoNCISa2018/CoNCISa2018-p056-063.pdf · conferencias nacionales. Por ende, los organizadores de

Figura 6. Ejemplo de Distintivo de Cursante de Tutorial

F. Administración de Certificados de Asistencia

Esta funcionalidad tiene una interfaz de usuario similar a la de la Sección III.E. Presenta una lista de las reservaciones confirmadas a un usuario administrador para seleccionar aquellas a las que se desea generar el certificado de asistencia, como se aprecia en la Figura 7.

Figura 7. Listado de Asistentes para Generar Certificados

Se puede filtrar el listado de acuerdo al tipo de asistencia de

la reservación (“Asistente” o “Autor”).

En esta interfaz, un usuario administrador puede descargar los certificados de asistencia en formato PDF de manera individual, o puede seleccionar múltiples ítems de la lista para el envío del certificado por correo electrónico. Adicionalmente, un usuario administrador puede generar un listado con los ítems seleccionados y descargarlos en un archivo con formato CSV, que puede ser usado durante la conferencia para tomar asistencia. La Figura 8 muestra un ejemplo de un certificado de asistencia generado por esta funcionalidad.

Figura 8. Ejemplo de Certificado de Asistencia a un Tutorial

G. Administración de Conferencias

Un usuario con privilegios de administrador tiene la posibilidad de crear y editar conferencias. Cuando se crea una nueva conferencia, se debe llenar un formulario con la información de la misma, como se puede observar en la Figura 9.

Figura 9. Formulario de Creación de Conferencia

Es importante que las conferencias tengan el nombre y la descripción clara, para que los usuarios puedan identificarlas con facilidad y no genere conflicto o confusión con alguna otra conferencia del sistema.

Una de las opciones de configuración más importantes de la creación de una conferencia es la modalidad de la conferencia. Esta define si la conferencia es “gratuita” (como el SCTC) o “paga” (como CoNCISa). Dependiendo de esta modalidad, si habilitan o no otras opciones o flujos del sistema.

Al crear una conferencia en modalidad paga, el sistema habilita una opción adicional para gestionar los costos de la conferencia, como se puede ver en la Figura 10.

Sexta Conferencia Nacional de Computación, Informática y Sistemas / CoNCISa 2018 / ISBN: 978-980-7683-04-3 Universidad de Los Andes, Mérida, Venezuela - 28 al 30 de noviembre de 2018

60

Page 6: Diseño e Implementación de una Aplicación Web para la ...concisa.net.ve/memorias/CoNCISa2018/CoNCISa2018-p056-063.pdf · conferencias nacionales. Por ende, los organizadores de

Figura 10. Formulario de Edición de Conferencia Paga

En la opción de “Costos”, un usuario con privilegios de administración puede modificar el costo de la conferencia y de los tutoriales para los “Asistentes” y “Autores”. Asimismo, el un usuario administrador puede definir los descuentos a los que aplican los usuarios por categorías, ocupaciones y afiliaciones.

IV. HERRAMIENTAS TECNOLÓGICAS

El desarrollo de la aplicación se realizó completamente con software libre. La aplicación fue desplegada con éxito en servidores con sistema operativo GNU Linux, pero puede ser desplegada en cualquier sistema operativo diferente que soporte Java 8 sin mayor dificultad.

Para el desarrollo del Front-End, se usó el framework de desarrollo Angular bajo el lenguaje de programación TypeScript [22]. Typescript es un lenguaje de programación de código abierto, basado en JavaScript, desarrollado y mantenido por Microsoft con la finalidad de facilitar la creación de aplicaciones JavaScript a gran escala.

Angular [23] es un framework de desarrollo Front-End que permite la creación de Single Page Application de una manera organizada, siguiendo el patrón de diseño Modelo-Vista-Controlador. Sobre Angular, se usan varios componentes de código abierto disponibles en la comunidad, gestionados por el gestor de paquetes NPM (Node Package Manager) [24].

Del lado del Back-End, los servicios web fueron desarrollados en el lenguaje Java, utilizando el framework Spring [25], más específicamente Spring MVC y Spring Boot. Además, se usó Hibernate [26] como framework ORM para interactuar con el repositorio de datos. Todas las dependencias del Back-End y el ciclo de vida de construcción de la aplicación fue gestionado por Maven [27].

Como sistema manejador de bases de datos se utilizó H2 [28], por su simplicidad en relación a su administración y despliegue. Este manejador ofrece su propia interfaz de administración, que puede ser accedida a través de un navegador web.

V. ARQUITECTURA Y DESARROLLO LA APLICACIÓN

El desarrollo de la aplicación web inició con la captación de los requerimientos de alto nivel para poder tener una visión clara de los objetivos de la aplicación, orientados a satisfacer las necesidades del usuario. Una vez obtenidos los requerimientos del usuario, se hizo un análisis general para evidenciar los elementos fundamentales que servirían de guía y

apoyo para la implementación de las funcionalidades. Uno de estos elementos resultantes del análisis fue la arquitectura general de la aplicación. Esta es representada en la Figura 11, usando el modelo de arquitectura de software C4 [29] para representar los actores, las interacciones de la aplicación al nivel de sus componentes internos, y las interacciones de sus componentes internos con sistemas externos.

Usuario Administrador

[Persona]

Usuario Registrado[Persona]

Servidor SMTP[Sistema de Software]

ConfVAplicación Front‐End

[Contenedor: HTML, CSS, Angular (TypeScript)]Provee una interfaz gráfica que permite a  los usuarios interactuar con la aplicación a través de un navegador 

web

Servicio Web REST[Contenedor: Spring Boot, Tomcat]Provee la lógica de negocio a través 

de una  interfaz web

SMBD[Contenedor: H2]

Actúa como repositorio principal de persistencia de datos

Generador de Documentos[Contenedor: iText, JasperReport]

Crea documentos digitales

Sol icitud REST JSON

Leer y Escribir datos Sol icita creación de documento a través de un API

Figura 11. Diagrama de Contenedores del Sistema

La arquitectura de la aplicación tiene claramente definida los componentes del sistema responsables de la interacción con el usuario, desde el lado del cliente, como es el Front-End de la aplicación. Este componente se comunica con el Back-End a través de solicitudes HTTP hacia un servicio web, que se encarga del procesamiento y la persistencia de los datos, haciendo uso del componente SMBD para delegar dicha tarea. La interacción entre la aplicación web y el componente de generación de documentos digitales está bien definida por el uso de Interfaces de Programas de Aplicación (API, por sus siglas en inglés) dentro de la aplicación. Finalmente, la arquitectura muestra la interacción con el sistema externo, en este caso, el servidor SMTP usado para el envío de los correos electrónicos generados por la aplicación.

Otro de los elementos claves generados en el análisis de los requerimientos fue el modelo de datos. Este modelo se creó a un alto nivel para servir como base para la implementación de las funcionalidades. Su definición fue revisada iterativamente a medida que se avanzaba en el desarrollo de la aplicación, para ajustarse a los requerimientos específicos de cada funcionalidad.

La metodología de desarrollo usada para el proyecto fue AgilUs [30]. Esta metodología ágil, creada en el Centro de Ingeniería de Software y Sistemas (ISYS) de la Escuela de Computación de la Universidad Central de Venezuela, se basa principalmente en el concepto de usabilidad y pone mayor peso en la construcción de interfaces de usuario, siendo estas, las que guíen las decisiones de la ingeniería de software del proyecto. AgilUs presenta un ciclo de vida bien definido: Requisitos, Análisis, Prototipaje, y Entrega. Este ciclo de vida es marcado por la usabilidad de la aplicación.

Sesión de Investigación - Artículos Largos

61

Page 7: Diseño e Implementación de una Aplicación Web para la ...concisa.net.ve/memorias/CoNCISa2018/CoNCISa2018-p056-063.pdf · conferencias nacionales. Por ende, los organizadores de

De acuerdo al ciclo de vida definido por la metodología AgilUs, los requerimientos fueron implementados de manera iterativa e incremental, recopilando los detalles particulares de cada funcionalidad, para luego ser analizados, estudiando el impacto sobre el modelo de datos existente e interfaces de usuario.

La etapa de prototipaje bosqueja la visión de la funcionalidad desde la perspectiva del usuario, orientada a la usabilidad. Este prototipo es el que guía la implementación, tanto del lado del Front-End con el diseño de la interfaz de usuario, como del lado del Back-End con su interacción con los distintos componentes y servicios.

Finalmente, la etapa de entrega verifica el correcto comportamiento de la funcionalidad y cumple con los principios de usabilidad. La aplicación ha sido probada y depurada, en su mayoría, usando un proceso manual y con el feed-back recibido de los organizadores de CoNCISa 2017, donde se usó plenamente. Sin embargo, para validar las funcionalidades críticas de la aplicación como el cálculo de los costos de las reservas, se crearon pruebas automatizadas.

VI. CONCLUSIONES

Las conferencias o eventos académicos se presentan como uno de los métodos de distribución de conocimientos más efectivos y usados a nivel mundial. La organización de estos eventos puede consumir mucho tiempo en tareas repetitivas que pueden ser automatizadas con las tecnologías de información y comunicación existentes en la actualidad.

En este artículo, se ha presentado una aplicación para la administración de conferencias académicas como el Simposio Científico y Tecnológico en Computación (SCTC) [1] y la Conferencia Nacional de Computación, Informática y Sistemas (CoNCISa) [2]. Se automatizaron procesos de administración de conferencias como el registro de usuarios, las reservaciones de las asistencias (a la conferencia como a los tutoriales), y la captación de los datos de pagos. Asimismo, procesos que consumían una alta cantidad de tiempo como la generación de distintivos de identificación, certificados de asistencia, recibos de pago y lista de facturas a preparar fueron automatizados, disminuyendo en gran parte la carga de administración de este tipo de eventos académicos. Aún más, el uso de papel fue completamente eliminado, ya que todos los documentos generados son digitales y enviados por correo electrónico, resultando en un ahorro monetario significativo para los organizadores.

Es de aclarar que la aplicación no fue concebida para cubrir todos los procesos de una conferencia. Por ejemplo, la gestión de los trabajos de investigación no está contemplada en confVen, sino que se utiliza paralelamente a un software de envío y revisión de trabajos como EasyChair, EDAS, o HotCRP.

La aplicación está basada en el uso de componentes y plataformas de software libre, como: Angular con TypeScript en el Front-End, y Java, Spring, Hibernate en el Back-End. Todas estas herramientas agilizaron el desarrollo de la aplicación por la alta disponibilidad de información referente a

su uso. Además, su naturaleza de software libre permitió mantener los costos de desarrollo del producto al mínimo.

Esta aplicación tuvo una salida a producción exitosa durante CoNCISa 2017 que se organizó en la Universidad Católica Andrés Bello de Ciudad Guayana, en octubre del 2017, y se estará usando también para CoNCISa 2018, que se celebrará en la Universidad de Los Andes de Mérida, en noviembre del 2018.

VII. TRABAJOS FUTUROS

Si bien la aplicación desarrollada cumple con los objetivos planteados, se puede pensar en una serie de extensiones que podrían mejorar su uso. Por ejemplo, los organizadores de conferencias nacionales se podrían beneficiar de nuevos módulos para la administración de recursos como salones o salas de conferencias. Adicionalmente, se podría automatizar la generación de reportes de participación, resumen de pagos y de montos recibidos y facturados por tipo de evento y categoría de participantes.

En lo que se trata de la interacción con los usuarios administradores, se considera que se puede hacer uso de componentes Front-End que aumenten las capacidades de la aplicación, facilitando la interacción al usar tablas interactivas que admitan paginación y filtros para todas las columnas.

Finalmente, se podría implementar la autenticación de usuarios contra sistemas externos como Google o Facebook. Una integración con estos populares sistemas facilitaría el uso de la aplicación al nivel de todos los usuarios, ya que no tendrían que crear una cuenta y contraseña exclusiva para la aplicación, sino que serían capaces de reusar las cuentas existentes de manera segura.

AGRADECIMIENTOS

Queremos agradecer a Rosseline Rodríguez de la Universidad Simón Bolívar por todo el apoyo que prestó durante el desarrollo de esta aplicación.

REFERENCIAS [1] SCTC, “Simposio Científico y Tecnológico en Computación”, http://

www.sctc.org.ve.

[2] CoNCISa, “Conferencia Nacional de Computación, Informática y Sistemas”, http://www.concisa.net.ve.

[3] SVC, “Sociedad Venezolana de Computación”, http://www.svc.net.ve.

[4] CLEI, “Centro Latinoamericano de Estudios en Informática”, http://www.clei.org.

[5] M. Jain, T. Tewari, and S. Singh, “Survey of Conference Management Systems”, International Journal of Computer Applications, Vol. 2, No. 2, pp. 14-20, May 2010.

[6] EDAS, “EDAS: Editor’s Assistant”, https://edas.info/doc.

[7] M. Papagelis, D. Plexousakis, and P. N. Nikolaou, “Confious: Managing the Electronic Submission and Reviewing Process of Scientific Conferences”, in Proceedings of the 6th Intenational Conference on Web Information System Engineering, New York City, NY, USA, November 2005.

[8] Confious, “Introducing Confious - The Conference Nous”, http://www.confious.com.

[9] OpenConf, “Peer-Review, Abstract and Conference Management”, https://www.openconf.com.

Sexta Conferencia Nacional de Computación, Informática y Sistemas / CoNCISa 2018 / ISBN: 978-980-7683-04-3 Universidad de Los Andes, Mérida, Venezuela - 28 al 30 de noviembre de 2018

62

Page 8: Diseño e Implementación de una Aplicación Web para la ...concisa.net.ve/memorias/CoNCISa2018/CoNCISa2018-p056-063.pdf · conferencias nacionales. Por ende, los organizadores de

[10] ConfTool, “ConfTool: Conference Management Software”, http://www.conftool.net.

[11] L. Parra, S. Sendra, S. Ficarelli, and J. Lloret, “Comparison of Online Platforms for the Review Process of Conference Papers”, in Proceedings of the Fifth International Conference on Creative Content Technologies (CONTENT 2013), Valencia, Spain, June 2013.

[12] EasyChair, “EasyChair Home Page”, http://www.easychair.org.

[13] A. Voronkov, The Design of EasyChair, in Proceedings of the 12th International Conference on Distributed Computing and Internet Technology (ICDCIT 2016), Bhubaneswar, India, January 2016.

[14] Public Knowledge Project, “Open Conference Systems (OCS)”, https://pkp.sfu.ca/ocs.

[15] START V2 Conference Manager, http://www.softconf.com.

[16] Microsoft, “Conference Management Toolkit (CMT)”, https://cmt3.research.microsoft.com/Content/CMT.html.

[17] CyberChair, “A Free Web-based Paper Submission and Reviewing System with PC Meeting and Proceedings Preparation Support”, http://www.borbala.com/cyberchair.

[18] J. de Groot, “Document Understanding for Automatic Proceedings Generation”, Master Thesis, University of Groningen, Groningen, the Netherlands, August 2013.

[19] HotCRP, https://hotcrp.com.

[20] R. Monascal, R. Rodríguez y L. Tineo, Sistema de Trámites y Comunidad de la SVC, en las Memorias de la Tercera Conferencia Nacional de Computación, Informática y Sistemas (CoNCISa 2015), Valencia, Venezuela, Octubre 2015.

[21] E. Maidana, ¿Qué es un Producto Mínimo Viable y Cómo lo Puedes Desarrollar? https://www.puromarketing.com/13/19295/producto-minimo-viable-como-puedes-desarrollar.html

[22] R. Jensen, “Learning TypeScript”, Packt Publishing, October 2015.

[23] A. Chandermani, “AngularJS by Example”, Packt Publishing, March 2015.

[24] npm, “What is npm?”, https://docs.npmjs.com/getting-started/what-is-npm.

[25] Spring, “Spring Framework”, https://spring.io.

[26] C. Bauer, G. King, and G. Gregory, “Java Persistence with Hibernate”, Manning Publications, Second Edition, November 2015.

[27] Apache Maven Project, “Welcome to Apache Maven Project”, https://maven.apache.org.

[28] H2, “H2 Database”, http://www.h2database.com/html/main.html.

[29] S. Brown, “The C4 Model for Software Architecture”, https://c4model.com.

[30] A. E. Acosta, “AgilUs: Construcción Ágil de la Usabilidad”, Caracas, Venezuela, 2011.

Sesión de Investigación - Artículos Largos

63