Documentos de Académico
Documentos de Profesional
Documentos de Cultura
RESUMEN ABSTRACT
Entre las dimensiones que el Consejo de Evaluación, Acreditación y Asegu- Among the dimensions that the Council for Evaluation, Accreditation
ramiento de la Calidad de la Educación Superior (CEAACES) evalúa en las and Quality Assurance of Higher Education (CEAACES) evaluates in the
Instituciones de Educación Superior (IES) están las dimensiones de Inves- Higher Education Institutions (HEIs), there are the dimensions of Academic
tigación, Vinculación y Prácticas/Pasantías Preprofesionales. Actualmente, Research, Community Linkage and Pre-Professional Internships. Currently,
como muchas otras IES, la Universidad Técnica de Machala (UTMACH) no like many other HEIs, the Technical University of Machala (UTMACH) does
cuenta con un sistema que permita controlar y gestionar dichos procesos. not have a system to control and manage these processes. Therefore, it is
Por lo expuesto, es necesario desarrollar un sistema que satisfaga los necessary to develop a system that meets the requirements of these three
requerimientos de estos tres pilares de la universidad ecuatoriana. Este pillars of the Ecuadorian university. This work starts with the collection of
trabajo inicia con la recolección de información a través de entrevistas con information through interviews with users and managers of the UTMACH,
usuarios y directivos de la UTMACH, luego se seleccionaron las mejores then it was selected the best tools for web development, such as Python
herramientas para desarrollo web, como Python (framework Django), Ja- (Django framework), Javascript, HTML and others such as node.js, django-
vascript, HTML y otras como node.js, django-celery, redis y sockets.io para celery , Redis and Socket.io for notifications implementation and tasks mo-
la implementación del módulo de notificaciones y tareas en segundo plano. dule in the background. For the software development methodology, it was
Para la metodología de desarrollo del software se consideró utilizar eXtre- considered to use eXtreme Programming (XP), as it bases its framework
me Programming (XP) ya que basa su marco de trabajo en cuatro valores on four values, which are: communication, simplicity, feedback and
como lo son la comunicación, simplicidad, retroalimentación y coraje. El courage. The system was evaluated by users and managers, implementing
sistema fue evaluado por usuarios y directivos, implementando un plan a functional level evaluation plan. Additionally, it was submitted to a web
de evaluación de nivel funcional. Además, fue sometido a un proceso de quality assessment process in accordance with the ECSW methodology.
evaluación de calidad web acorde a la metodología Evaluación de Calidad The system managed to satisfy the requirements of the users and those of
de Sitios Web (ECSW). El sistema logró satisfacer los requerimientos de los the Technology Department, so it will be implemented by UTMACH and be
usuarios y los del departamento de Tecnologías de la UTMACH por lo que
ISSN: 13T90-1915 • VOL. 19 • N.O 1 • 2018 • 35-44
available to any other higher education institution in our country, since it has
será implementado por la universidad y está disponible para cualquier otra a configurable structure.
IES de nuestro país, puesto que tiene una estructura parametrizable.
PALABRAS CLAVE: automatización, software, sistema web. KEYWORDS: automation, software, web system.
ALTERNATIVAS
DOI: http://dx.doi.org/10.23878/alternativas.v19i1.186
RECIBIDO: 17/9/2017
ACEPTADO: 31/1/2018 35
VACACELA, E. | TENECOTA, J. | TORRES, J. | CELLERI-PACHECO, J.
están divididos en la producción científica, pro- fesional o Vocational Education and Training
ducción regional y libros o capítulos revisados (VTE) (Protsch & Solga, 2015), se ha convertido
por partes. en una alternativa viable en pro del desarrollo
La gestión de grupos, semilleros y proyectos intelectual y competitivo en los estudiantes.
de investigación implica la adquisición de datos Esta iniciativa ayuda a generar y explorar el
a través de un sistema que permita automatizar conocimiento adquirido por los estudiantes
todos sus procesos. La información debería durante su período estudiantil universitario,
ALTERNATIVAS
ser visualizada por los usuarios de acuerdo a dando lugar a nuevos escenarios donde puedan
sus roles con los permisos para la realización poner en práctica lo aprendido en las IES.
de acciones dentro del sistema. Los docentes En Ecuador, esta modalidad ha sido esta-
36 deberían encargarse de ingresar la información blecida según requisitos del propio sistema de
AUTOMATIZACIÓN DE PROCESOS DE INVESTIGACIÓN, VINCULACIÓN Y PRÁCTICAS/PASANTÍAS PREPROFESIONALES PARA UNIVERSIDADES ECUATORIANAS
educación. La mayoría de las IES poseen orga- por medio de una resolución (Secretaría General
nismos internos que dan paso a relacionar la UTMACH, 2017). Luego de la aprobación de un
vinculación con la colectividad. Además, dentro proyecto de vinculación, este pasa a la fase de
del estado se cuenta con organismos tales como Seguimiento e Informes de Avance, en donde se
la Red Ecuatoriana Universitaria de Vinculación valida que el docente - gestor del proyecto, car-
con la Sociedad (REUVIC) (REUVIC, 2017) que es gue el porcentaje de las actividades realizadas
la que promueve fuertemente el vínculo entre las según el cronograma y suba archivos que vali-
IES y el entorno laboral de las empresas. Esta red den el cumplimiento de dichas actividades; ac-
sirve como referente para influir en las políticas ción que vuelve a ser validada dentro del mismo
del estado y ofrece grandes experiencias propias departamento de VINCOPP. En esta instancia,
de la vinculación con la sociedad. se dará seguimiento de cumplimiento de cada
Si bien es cierto que existen otras opciones actividad del proyecto y se generarán informes
como la de Schmal y Rivero (2016) implemen- referentes al estado del proyecto; los cuales ser-
tada en la Universidad de Talca, siguiendo el virán para tomar acciones correctivas.
enfoque del Modelo de Trabajo con Empresas
(MTE), este no se adecúa a los procesos usados PRÁCTICAS/PASANTÍAS PREPROFESIONALES
dentro de la UTMACH. Por lo tanto, se asegura Actualmente, los coordinadores de cada carrera
que ninguna de las opciones ha sido viable y deben enviar a la dirección de VINCOPP el pro-
se ha optado por la concepción de realizar un grama de Prácticas/ Pasantías Preprofesionales
sistema informático propio. en donde consta la planificación para el período
El Departamento de Vinculación, Coopera- en curso. Cada coordinador de carrera es respon-
ción, Prácticas y Pasantías (VINCOPP) gestiona sable de las Prácticas/ Pasantías Preprofesionales
entre otros aspectos, la cooperatividad y los de sus estudiantes. Por su parte, los estudiantes
proyectos de vinculación con la sociedad. Estos son los encargados de presentar la solicitud de
últimos están orientados a conectar la UTMACH Pasantías/Prácticas Preprofesionales al coordi-
con la comunidad mediante acciones que vin- nador de su respectiva carrera. Posteriormente,
culan el conocimiento de los estudiantes para el coordinador de carrera aprueba o niega la
el bien de la colectividad. El departamento de solicitud. En caso de aprobar, se le asigna un
VINCOPP usa una combinación de herramien- docente tutor para que supervise el proceso. Hoy
tas ofimáticas i.e. Excel, Word y el envío de co- en día, todo este proceso se realiza utilizando
rreos electrónicos para comunicar los aspectos herramientas ofimáticas y la información se
relevantes del proceso que sigue un proyecto de almacena en ordenadores del Analista de Pasan-
vinculación con la sociedad. tías/ Prácticas Preprofesionales.
El software que se propone deberá estar
enfocado en administrar dichos proyectos de MATERIALES Y MÉTODOS
vinculación con la sociedad y debe estar diseña- METODOLOGÍA DE DESARROLLO
do para contener en su base de datos todos los Para el desarrollo del sistema web se escogió
parámetros de un proyecto de vinculación, tales una metodología de desarrollo que se ajustara
como: datos informativos, diagnóstico situacio- mayoritariamente al modelo de desarrollo de
nal e identificación del problema, dominios y lí- software ágil, y se acoplara al modelo de sistema
neas base de investigación, población objetivo, web desarrollado con un lenguaje orientado a
articulación con el Plan Nacional del Buen Vivir objetos y tecnologías open source.
y la planificación local, objetivos, resultados- Se analizaron tres metodologías que pudie-
objetivos dentro de la matriz de marco lógico, ran ser útiles en el modelo de trabajo:
ISSN: 13T90-1915 • VOL. 19 • N.O 1 • 2018 • 35-44
propuestas de proyectos, las cuales son revisa- Rational Unified Process (RUP) (Ambler,
das por el colectivo de Vinculación del Departa- 2005-2014). La descripción es simple y
mento y se proceden a aprobar o rechazar, según sencilla, este modelo aplica tecnologías
previa valoración por el Consejo Universitario, como Test Driven Development (TDD) y 37
VACACELA, E. | TENECOTA, J. | TORRES, J. | CELLERI-PACHECO, J.
Django
Pequeños entregables
Base de datos
JavaScript
Programación Mejoras
Pruebas de en pares de diseño Reuniones del Redis
aceptación de usuario Diseño equipo completo
Sistema de notificaciones
simple
Integración Avances y tareas en segundo plano
continua sostenibles
Metáfora
Django Celery
Juego de
ALTERNATIVAS
planeación
Node y Socket IO
Figura 1. Prácticas de la metodología XP
38 Nota Fuente: Haryono, 2015. Figura 2. Tecnologías utilizadas para el desarrollo de la propuesta.
AUTOMATIZACIÓN DE PROCESOS DE INVESTIGACIÓN, VINCULACIÓN Y PRÁCTICAS/PASANTÍAS PREPROFESIONALES PARA UNIVERSIDADES ECUATORIANAS
ble y diversidad de elementos permite ciones para Python (Weigel, Preuss, &
plasmar los requerimientos del cliente Brüstel, 2010); (Schutt & Balci, 2016).
en bocetos que se asemejen a la realidad Django sigue el patrón Model - View -
(Balsamiq Studios, LLC, 2008-2017). Controller (MVC). 39
VACACELA, E. | TENECOTA, J. | TORRES, J. | CELLERI-PACHECO, J.
Django es muy recomendable para propósitos accesibilidad de los datos, mejora en los servicios
de desarrollo y pruebas en su propio servidor de copias de seguridad, entre otros.
web. En cambio, para entornos de producción Entre las bases de datos existentes, se han
se debe utilizar Apache o nginx con extensión seleccionado las siguientes:
de Python. Una vez que se recibe una petición,
se envía al despachador de URL de Django; ▪▪ PostgreSQL es un sistema de gestión
este distribuidor llama a la función en la vista de base de datos relacional de objetos
asociada a dicha URL. La vista es la encargada (ORDBMS). Fue pionero en muchos
de enviar la respuesta a la petición (Facchinetti, conceptos que sólo se hicieron dispo-
Benetti, Koledoye y Roveda, 2016), dependiendo nibles en algunos sistemas de bases de
de la función de la vista puede aprovechar cual- datos comerciales mucho más tarde.
quier módulo Python o acceder a los modelos de PostgreSQL es un software de licencia
Django. Los modelos se asignan a un DataBase libre, es decir, no tiene costo y cualquier
Management System (DBMS) (Tang, Bagheri, persona podría utilizarlo de forma gra-
Paisarnsrisomsuk, & Sullivan, 2017), al finali- tuita con propósitos ya sea educativos,
zar la lógica de la función, el control vuelve a la comerciales o privados (Iszaevich, 2011).
vista lo que a su vez llama al código de template ▪▪ Redis. Es un motor de base de datos en
que se definen en los Templates de Django, estos memoria cuyo almacenamiento se basa
templates generan HTML, JavaScript y CSS que en clave y valor (Chen, Tang, Wang,
se visualiza al usuario. Zhao, & Guo, 2016), siendo también
usada como una base de datos (Kusuma
▪▪ JavaScript. Es un lenguaje de progra- y Ferdiana, 2017). La administración de
mación utilizado del lado del cliente, lo sesiones, publicador/ subscriptor, alma-
que permite construir páginas dinámi- cenamiento en caché son las principales
cas (Quintana, 2015). Una de las princi- razones para la utilización de Redis. Su
pales ventajas de JavaScript al estar en el velocidad y sencillez ha hecho de Redis
cliente, es que los efectos son rápidos y una alternativa para aplicaciones web,
permiten interacción con el usuario. En móvil y juegos.
relación a su sintaxis es parecida a Java.
Puede ser usado de dos formas ya sea Actualmente es el almacén de clave-valor más
incrustado directamente en la página popular. Al estar en memoria su rendimiento
web o definir toda la sintaxis en un ar- es mayor (EnqingTang, 2016) en comparación
chivo externo, el cual se guarda con una con los motores de base de datos cuyo almace-
extensión .js y luego se debe instanciar namiento se encuentra en disco. Al hallarse
desde la página web. en memoria evita los retrasos; de esta forma
▪▪ HTML. Es un lenguaje de etiquetado las operaciones sencillas tardan menos de un
utilizado para el desarrollo de páginas milisegundo en ejecutarse.
web. Está formado por un conjunto de Redis incluye diversas herramientas que
etiquetas que los navegadores interpre- ayudan a acelerar el desarrollo y las operaciones,
tan y dan forma en la pantalla. A través dentro de las cuales podemos destacar Publica-
de esas etiquetas se puede dar orden y ción/Suscripción, que permite la publicación
forma a nuestra página web. Actual- de mensajes en canales que son escuchados
mente existen varias herramientas que por los suscriptores (Liu & Pan, 2014); siendo
permiten la generación de código HTML este último utilizado para sistemas de chat.
ISSN: 13T90-1915 • VOL. 19 • N.O 1 • 2018 • 35-44
de manera gráfica (González, 2017). Otra herramienta a destacar son los contadores
atómicos que garantizan que el estado de la
BASE DE DATOS carrera no establezca resultados incoherentes.
Las bases de datos son sistemas que almacenan Posee compatibilidad con más de 100 clientes de
datos que están relacionados. Permiten guardar código abierto, entre los que se destacan, Java,
grandes cantidades de información de forma PHP, Python, Nodejs, entre otros.
organizada para luego encontrar la información
ALTERNATIVAS
fácilmente. Estas ofrecen una serie de ventajas SISTEMA DE NOTIFICACIONES Y TAREAS EN SEGUNDO PLANO
como: control de redundancia de datos, consis- Un sistema de notificaciones es un conjunto
tencia de datos, mejora de la integridad, mejora de herramientas programadas para generar
40 en la seguridad, compartir datos, mejora en la alertas y correos electrónicos (notificaciones)
AUTOMATIZACIÓN DE PROCESOS DE INVESTIGACIÓN, VINCULACIÓN Y PRÁCTICAS/PASANTÍAS PREPROFESIONALES PARA UNIVERSIDADES ECUATORIANAS
a los usuarios del sistema. Esto permitirá (ii) Pruebas de calidad del sistema. Las pruebas
contar con una comunicación constante con de funcionalidad tienen como principal objetivo
los usuarios con respecto a los procesos que se asegurar que el producto esté acorde con los
estén ejecutando en el sistema i.e.; cuando un requisitos del cliente (Verona, Pérez, Torres, Del-
proyecto es aprobado en el sistema por el Direc- gado y Yáñez, 2016), de esta forma se logra que
tor del Centro de Investigaciones los usuarios el producto funcione como se espera. También
involucrados conocerán este cambio en tiempo se las conoce como pruebas de comportamiento,
real. Las tareas en segundo plano se ejecutan debido a que los testers realizan estas pruebas
simultáneamente con los demás procesos, pero en base a los datos de entradas y los datos que se
con un nivel de prioridad más bajo. generan a la salida (Franco, 2010).
En el área tecnológica, la calidad se puede
▪▪ Node y Socket IO. Es un entorno de eje- medir a través de estándares de un producto. La
cución JavaScript por lo que ofrece el uso calidad dentro de un sistema web proporciona
del mismo lenguaje y tecnología tanto muchas ventajas y beneficios a los usuarios
en el servidor como en los clientes web que harán uso de ella. El desarrollo de sistemas
(Matijevic y Cvjetkovic, 2016). Según web cada vez más complejos y que conllevan
Duque, Cando, Aguinaga, Llulluna, la integración de varias tecnologías exigen la
Jara, & Moreno (2016) Node.js utiliza el aplicación de procesos que garanticen la calidad
motor V8 del Google Chrome, lo que le del producto (Núñez, Suárez y Delgado, 2014).
permite servir más de 64000 conexiones Existen diferentes herramientas que permi-
en un mismo tiempo, superando a Java ten evaluar la calidad de los sitios web. De ellas,
y PHP que permiten un número de 4000 para la evaluación de la calidad del prototipo
conexiones concurrentes. Node es un propuesto, se consideraron las herramientas
modelo de programación asíncrona propuestas por Vega, Celleri, Maza y Sarmiento
orientada a eventos y diseñada para ser- (2017). Estas, permiten evaluar los parámetros
vicios de red (Liang, Zhu, Shang, Feng, de: Accesibilidad, Funcionalidad, Eficiencia,
& Xiao, 2017). En este sentido, en Node Usabilidad, Portabilidad y Posicionamiento.
el lado del cliente no es tan diferente del
lado del servidor. DISCUSIÓN DE RESULTADOS
▪▪ Socket.io es una librería javascript que En primera instancia y como resultados de las en-
permite el uso de websockets, permitiendo trevistas realizadas a los diferentes departamen-
el manejo de eventos en real. Esta librería tos (Centro de Investigaciones y Departamento de
permite enviar y recibir eventos personali- VINCOPP) se obtuvo un listado de requerimien-
zados (Community Sockets.io, 2017). tos. A continuación, se listan los requerimientos
▪▪ Django Celery. Es una librería de generales de acuerdo a cada módulo.
Python, compatible con django que
permite el manejo de tareas en segundo MÓDULO DE INVESTIGACIÓN
plano y programación de tareas. Celery ▪▪ Gestión de grupos de investigación.
es una cola de tareas asíncronas, basada ▪▪ Gestión de semilleros de investigación.
en el diseño productor/consumidor (Ask ▪▪ Gestión de proyectos de investigación.
Solem & contributors, 2009-2016), donde ▪▪ Evaluación de proyectos de investigación.
el productor envía trabajos (tasks) a eje- ▪▪ Gestión de planeaciones de grupos y
cutar al consumidor celery. semilleros.
▪▪ Gestión de avances de proyecto de inves-
ISSN: 13T90-1915 • VOL. 19 • N.O 1 • 2018 • 35-44
Clientes web
Navegador Navegador Navegador
Socket io Socket io Socket io
Servidor Node.js
HTTP POST
HTTP GET
Socket io
Suscribe
ISSN: 13T90-1915 • VOL. 19 • N.O 1 • 2018 • 35-44
Servidor
web Tareas en segundo plano
Gestor de base de datos
SQL Tareas Agente de mensajes
Aplicación web
Postgres REDIS
Tareas a
Celery workers ejecutar
Correo electrónico Eventos C C C
ALTERNATIVAS
ADVERTENCIAS
ENCONTRADOS
HERRAMIENTA
PUNTUACIÓN
TrustCom.2016.0255
PARÁMETRO
APROBADOS
EVALUADO
ERRORES
Christou, I., Ponis, S., & Palaiologou, E. (2010). Using the
Agile Unified Process in Banking. IEEE Software, 27(3),
Validator HTML Funcionalidad 3 3 - - 72-79. doi:10.1109/ms.2009.156
Validator CSS Funcionalidad 73 454 - - Cobos, C., Zuñiga, J., Guarin, J., León, E., y Mendoza, M.
Funcional (2010). CMIN - herramienta case basada en CRISP-DM
1 para el soporte de proyectos de minería de datos. Inge-
Accesibility Accesibilidad 7 20 -
31
Evaluator 2.0 niería e Investigación, 30(10), 45-56. Recuperado de http://
GtMetrix Eficiencia 3 2 - www.redalyc.org/articulo.oa?id=64316140004
Moz Bar Posicionamiento - - - 22/100% Community Sockets.io. (2017). Socket.io. Recuperado de
Posicionamiento https://socket.io/docs/
Metricspot - - - 47.5/100%
Usabilidad
Doshi, V. P., & Patil, V. (2016). Competitor driven develo-
Websitte – grader Portabilidad - - - 73/100%
pment: Hybrid of extreme programming and feature
ReadyMobi Portabilidad 6 9 23 -
driven reuse development. International Conference on
Emerging Trends in Engineering, Technology and Science (ICE-
CONCLUSIONES TETS), 1-6. doi:10.1109/ICETETS.2016.7602985
En el desarrollo de este sistema web la comuni- Duque, M., Cando, E., Aguinaga, A., Llulluna, F., Jara,
cación con los usuarios fue fundamental; así N., & Moreno, T. (2016). Micro-grid platform based
como el uso de prototipos para el cumplimiento on NODE.JS architecture, implemented in electrical
de requisitos. Por lo que la mejor opción al network instrumentation. IOP Conference Series: Mate-
seleccionar la metodología de desarrollo fue eX- rials Science and Engineering, 129(1), 1-8. doi:10.1088/1757-
treme Programming. 899X/129/1/012045.,
El sistema permite que la comunidad univer- Eclipse Foundation. (2017). OpenUP. Recuperado de http://
sitaria reporte sus avances al Centro de Investi- epf.eclipse.org/wikis/openup/
gaciones y al Departamento de Vinculación de EnqingTang, Y. F. (2016). Performance Comparison
forma automatizada y los usuarios internos y between Five NoSQL Databases. 7th International Con-
externos de las universidades tendrán acceso a ference on Cloud Computing and Big Data (CCBD), 105-109.
esa información en tiempo real. doi:10.1109/CCBD.2016.030
La propuesta se ajusta a las necesidades del Facchinetti, T., Benetti, G., Koledoye, M. A., & Roveda,
Centro de Tecnologías de la UTMACH y obtuvo G. (2016). Design and implementation of a web-
resultados satisfactorios en las pruebas a las centric remote data acquisition system. 2016 IEEE 21st
que fue sometido; por lo que la UTMACH lo International Conference on Emerging Technologies and Factory
implementará en los meses venideros y está a Automation (ETFA). doi:10.1109/ETFA.2016.7733698
disposición para cualquier otra IES. Franco, J. C. (2010). Metodología para testing de software basado
en componentes. Universidad EAFIT, Ingeniería de Sis-
REFERENCIAS BIBLIOGRÁFICAS temas, Medellín. Recuperado de https://core.ac.uk/
download/pdf/47237302.pdf
Ambler, S. (2005-2014). The Agile Unified Process (AUP). Recu- González, V. (2017). Editor web visual para HTML, CSS y
ISSN: 13T90-1915 • VOL. 19 • N.O 1 • 2018 • 35-44