Está en la página 1de 10

AUTOMATIZACIÓN DE PROCESOS DE INVESTIGACIÓN,

VINCULACIÓN Y PRÁCTICAS/PASANTÍAS PREPROFESIONALES


PARA UNIVERSIDADES ECUATORIANAS
AUTOMATION OF RESEARCH PROCESSES, COMMUNITY LINKAGE
AND PRE-PROFESSIONAL INTERNSHIPS FOR ECUADORIAN
UNIVERSITIES

ERIKA VACACELA1, JEFFERSON TENECOTA2, JORGE TORRES3, JENIFFER CELLERI-PACHECO4


1 Universidad Técnica de Machala, Ecuador. evacacela_est@utmachala.edu.ec
2 Universidad Técnica de Machala, Ecuador. jtenecota_est@utmachala.edu.ec
3 Universidad Técnica de Machala, Ecuador. jvtorres_est@utmachala.edu.ec
4 Universidad Técnica de Machala, Ecuador. jcelleri@utmachala.edu.ec

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.

INTRODUCCIÓN de los grupos de investigación en el sistema,


En los últimos años se considera al conocimiento y sería otro usuario con el rol de director de
generado por las organizaciones como un activo investigación quien aprobaría las creaciones.
más, el cual puede generar ventaja competitiva Un sistema permitiría la interacción entre
ante otras instituciones (Valle, Puerta, y Núñez, grupos, semilleros y el Centro de Investigacio-
2017). La gestión de información es necesaria, nes, acelerando en gran medida los procesos
sobre todo en las IES, debido al proceso de acredi- actuales y la gestión de información. Según el
tación por el que deben pasar estas instituciones Centro de Investigaciones de la UTMACH (2017)
para seguir funcionando. En Ecuador, la acredi- los semilleros son comunidades de aprendizaje
tación está a cargo del CEAACES. conformadas por estudiantes y profesores de la
El CEAACES utiliza su modelo de evaluación UTMACH, vinculados por objetivos comunes y
institucional con el fin de controlar la calidad operado mediante un plan de acción vertebrado
en la educación universitaria de Ecuador. Entre en dirección al fomento del desarrollo de un
los elementos que forman parte de la evalua- profesional integral, emergente y competitivo.
ción, comúnmente se solicitan evidencias y La generación del conocimiento es uno de
estas deben cargarse al sistema de gestión de los pilares fundamentales en el Centro de In-
información correspondiente (CEAACES, 2016). vestigaciones y los proyectos son los resultados
Los sistemas de información que se utilizan tangibles de las actividades de grupos y semi-
en las universidades forman parte de los indi- lleros. La implementación de una herramienta
cadores del modelo antes mencionado. Además, de software facilitaría las tareas de gestión de
estos sistemas deben garantizar que la informa- los proyectos entre las cuales figuran la planea-
ción sea disponible, oportuna y asequible para los ción, evaluación y control.
usuarios. De igual forma, el modelo menciona Por otra parte, se considera necesario que la
como indicador de tipo cualitativo a los sistemas información de grupos, semilleros y proyectos
de información, los cuales deben garantizar la estén siempre disponibles a través de la web
disponibilidad de información, constituyéndose para toda la comunidad. De este modo, los
como un elemento fundamental de la planifica- usuarios internos o externos de la UTMACH
ción institucional y de la toma de decisiones. podrán conocer en tiempo real el trabajo de in-
vestigación que se lleva a cabo en la institución.
INVESTIGACIÓN Actualmente, la UTMACH siente la necesidad
La investigación es uno de los criterios que de implementar un sistema de gestión y con-
evalúa el CEAACES. El modelo de evaluación trol de procesos de investigación puesto que lo
(CEAACES, 2016) especifica que en el criterio de realiza utilizando herramientas ofimáticas que
investigación se considera la institucionaliza- no automatizan en gran medida los procesos y
ción de los objetivos, proyectos y actividades de en muchos casos resultan tediosos y repetitivos
investigación, así como los resultados obteni- para los usuarios.
dos por los investigadores de la institución. Los
procesos de investigación deben ejecutarse de VINCULACIÓN CON LA SOCIEDAD
acuerdo a los objetivos institucionales, y están Desde la década de los setenta del pasado siglo,
divididos en dos subcriterios: (i) institucionali- la cooperación interinstitucional dada entre las
zación y (ii) resultados. IES y las compañías (sean estas públicas, priva-
La institucionalización se compone por la das, de sociedad civil organizada, etc.), como
planificación de la investigación y de la gestión modalidad con inicio consolidado en Alemania
de recursos para la investigación. Los resultados con su Sistema de Educación Vocacional y Pro-
ISSN: 13T90-1915 • VOL. 19 • N.O 1 • 2018 • 35-44

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

presupuesto, cronograma, viabilidad técnica,


estrategia de ejecución, sostenibilidad y anexos ▪▪ Agile Unified Process (AUP). Esta me-
(Secretaría General UTMACH, 2017). Todo ello todología describe una versión simpli-
es cargado dentro del sistema de vinculación en ficada para desarrollar aplicaciones de
el tiempo establecido por la convocatoria de vin- software usando técnicas ágiles y con-
culación que es lanzada por el departamento de ceptos que se apegan a la metodología
VINCOPP. Dentro de ese período se receptan las de Proceso Unificado Racional del inglés
ALTERNATIVAS

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.

Agile Modeling (AM) (Christou, Ponis, La metodología XP se basa en 5 principios


& Palaiologou, 2010). Una desventaja fundamentales: Simplicidad, Coraje,
de esta metodología es que su creador Retroalimentación, Comunicación y
la descontinuó en el año 2006; pero aún Respeto (Haryono, 2015). Además, esta
sigue siendo una gran alternativa. metodología posee 12 prácticas que son
▪▪ Extreme Programming (XP). Esta presentadas en la Figura 1.
metodología ágil de desarrollo está en- ▪▪ Open Unified Process (OpenUP). Es
focada en satisfacer los requerimientos una metodología ágil de desarrollo que
del usuario a través de la interacción aplica controles iterativos e incrementa-
completa de los stakeholders en todo les a lo largo del ciclo de vida del proyecto
el proceso de desarrollo. XP promueve de software. Se centra en una filosofía
la alta interacción entre el equipo de ágil tomando en cuenta la naturaleza
trabajo, que incluyen administradores, colaborativa del desarrollo de software.
desarrolladores, testers e interesados OpenUP al igual que XP se centra en
(Sharma & Hasteer, 2016). Además, es micro incrementos, estos representan
una metodología que apoya los proce- unidades de trabajo que muestran una
dimientos incrementales, en donde en parte medible del proyecto (Eclipse
lugar de darle todo al usuario en una Foundation, 2017).
sola vez, se enfoca en entregar peque- Para el desarrollo de este software se
ños avances según lo se puede dividir optó por la metodología XP ya que ésta
desde los requerimientos de los usuarios
(Wells, 2017). La práctica de XP es una
metodología que recomienda el uso de Sistema WEB
Test-driven development (TDD), que
es un enfoque que tiene las siguientes Metodología Herramientas CASE
características (Doshi &Patil, 2016):

●● Primero se realizan las pruebas, XP Toad Data Modeler


donde se presenta un caso de prueba
sin código y se enfoca en validar el
proceso del caso. Balsamiq Mockups
Requerimientos de
●● Luego se escribe el código suficiente programación
para aprobar el caso de prueba y todos Pycharm
los casos previos.
●● Luego el diseño del sistema es implí- Python
citamente generado. Enterprise Architect

Django
Pequeños entregables
Base de datos
JavaScript

Propiedad Estándares de Postgres


colectiva TDD codificación HTML
ISSN: 13T90-1915 • VOL. 19 • N.O 1 • 2018 • 35-44

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

favorece a la simplicidad. Según Cobos, ▪▪ Pycharm. Es el Entorno de Desarrollo


Zuñiga, Guarin, León y Mendoza (2010) Integrado (IDE) que se ha convertido
en un estudio realizado por el French en uno de los favoritos de los desarro-
Scrum User Group se condujo una en- lladores en Python. Anteriormente,
cuesta de uso donde participaron más de este IDE estaba disponible en modo de
230 profesionales de más de 150 países. paga (Professional Edition), pero en los
Se concluyó que de entre las metodolo- últimos meses se liberó una versión
gías ágiles el 52% de compañías prefieren gratuita (Community Edition). Cuenta
el uso de XP sobre otras. con un gran soporte para aplicaciones
Luego de seleccionado el tipo de meto- escritas en Python e integración con el
dología de desarrollo del software, se framework Django para la creación de
seleccionaron las mejores herramientas proyectos web, además de ser multipla-
de desarrollo web. Estas tecnologías taforma (JetBrains s.r.o., 2017).
seleccionadas se ilustran en la Figura 2. ▪▪ Enterprise Architect. Es una herra-
mienta que facilita el análisis y diseño
Para el desarrollo de la plataforma se llevaron a en el Lenguaje Unificado de Modelado
cabo varias entrevistas a los directivos de cada (UML), lo que permite tener un control
departamento (Personal del Centro de Investi- en el desarrollo de sistemas desde
gaciones y del Departamento de VINCOPP), con el establecimiento de requisitos, el
el objetivo de obtener los requerimientos. Así análisis, modelos de diseño, pruebas y
mismo, se desarrollaron reuniones con el De- mantenimiento. Ayuda en gran medida
partamento de Tecnologías de Información de a desarrollar sistemas robustos y de fácil
la Universidad, en donde se obtuvo información mantenimiento (Sparx Systems Pty
sobre las normas y estándares de programación Ltd., 2017).
y documentación.
REQUERIMIENTOS DE PROGRAMACIÓN
HERRAMIENTAS CASE Han sido denominadas así aquellas herramien-
Herramientas Case es un término acuñado en tas que se utilizan durante el desarrollo del
la Ingeniería de Software asistida por computa- software. Este grupo comprende el entorno de
dor. Las Herramientas Case hacen posible que trabajo, lenguaje de programación en el desa-
el tiempo de desarrollo de un sistema sea más rrollo del back-end y lenguaje de programación
corto y eficaz, permitiendo además realizar del front-ed. Para el desarrollo del prototipo se
los procesos de documentación y modelado de ha seleccionado el lenguaje de programación
requerimientos, diseño, implementación y Python con su Framework mayormente conoci-
prueba de dichos sistemas (Cobos et. al, 2010). do Django, así mismo han sido seleccionados los
A continuación, se presentan algunas de las lenguajes del lado del cliente como son HTML y
herramientas que pueden ser usadas en el desa- Javascript.
rrollo de software:
▪▪ Python es un lenguaje orientado a ob-
▪▪ Toad Data Modeler. Es una herra- jetos, potente y flexible. En los últimos
mienta que permite crear modelos de años ha conseguido una gran populari-
datos de manera sencilla y fácil, lo que dad (Trautsch & Grabowski, 2017); tanto
simplifica el diseño y mantenimiento que es empleado dentro de la educación
de la base de datos. Además, genera el y en el entorno laboral (Peña, 2015)
ISSN: 13T90-1915 • VOL. 19 • N.O 1 • 2018 • 35-44

código de Lenguaje de Consulta Estruc- gracias a la simplicidad de su sintaxis


turada (SQL) de nuestro modelo para su y es además limpia y fácil de entender
posterior importación al gestor de base (Marowka, 2017). Posee una variedad de
de datos (Quest Software Inc., 2017). librerías que facilita el desarrollo.
▪▪ Balsamiq Mockups. Es una herramien- ▪▪ Django es uno de los frameworks de
ta que ayuda en el diseño de interfaces aplicaciones web ligero pero potente,
de usuario. Su interfaz simple, amiga- más maduros y con variedad de fun-
ALTERNATIVAS

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

Los procesos que abarcan la concepción de Vin- tigación.


culación, Investigación y Prácticas/Pasantías ▪▪ Gestión de avances de grupos de inves-
Preprofesionales fueron sometidos a un análisis tigación.
de requerimientos mediante entrevistas a los
usuarios involucrados dentro del proceso, deno- MÓDULO DE VINCULACIÓN CON LA SOCIEDAD
minados Historias de Usuario en conformidad ▪▪ Gestión de Convocatorias de Proyectos
como sugiere la metodología XP. de Vinculación
ALTERNATIVAS

▪▪ Gestión de Proyectos de Vinculación


EVALUACIÓN ▪▪ Gestión de Colectivo de Vinculación
Para evaluar el software se consideraron dos ▪▪ Gestión de Avances de Proyectos de Vin-
tipos de pruebas: (i) Pruebas de funcionalidad y culación 41
VACACELA, E. | TENECOTA, J. | TORRES, J. | CELLERI-PACHECO, J.

▪▪ Seguimiento de Actividades de Proyec- Actualmente, el sistema está alojado en el


tos de Vinculación servidor de la UTMACH y se encuentra disponi-
ble a través del enlace: giv.utmachala.edu.ec.
MÓDULO DE PRÁCTICAS/PASANTÍAS PREPROFESIONALES El inicio de sesión al sistema se puede realizar
▪▪ Gestión de programas de pasantías/ de dos formas: ingresando credenciales per-
prácticas preprofesionales tenecientes al sistema, en caso de ser usuario
▪▪ Gestión de solicitudes de pasantías/ externo, o mediante la autenticación con la
prácticas preprofesionales cuenta institucional de la universidad.
▪▪ Asignación de docentes tutores
▪▪ Gestión de tutorías de estudiantes EVALUACIÓN DEL SISTEMA
▪▪ Gestión de Supervisión in-situ Las pruebas de funcionalidad de los procesos
▪▪ Control de actividades y registro diario principales fueron realizadas por usuarios fina-
les. De los 204 parámetros de 18 procesos, solo
El prototipo tecnológico que se ha desarrollado 11 parámetros no se cumplieron y fueron reco-
está dividido en 4 capas: la base de datos, el mendaciones brindadas por los usuarios para
servidor node.js, el servidor y los clientes web, mejorar la usabilidad del sistema. De acuerdo a
según se muestra en la Figura 3. cada proceso, los usuarios con roles de Director
La base de datos es la encargada de almace- de Investigación, Docente y Estudiante proce-
nar la información que los usuarios ingresen en dieron a iniciar sesión en el sistema y realizaron
el sistema. El servidor node.js es utilizado para las actividades para evaluar el funcionamiento
enviar notificaciones a los clientes web de mane- de cada proceso.
ra asíncrona a través de la librería de socket IO. Con respecto a la evaluación de calidad, las
Además, se comunica con la base de datos redis herramientas utilizadas demuestran resulta-
con la cual intercambia información basada en dos favorables del sitio web, sobresaliendo los
publicaciones y suscripciones. El cliente web ac- parámetros de Portabilidad, Funcionalidad y
túa como intermediario entre el sistema web y el Accesibilidad, como lo muestra la Tabla 1.
usuario. Finalmente, el sistema web posee toda En cuanto a los resultados del parámetro
la lógica de negocio; es allí donde se automati- Posicionamiento, a pesar de tener una pun-
zan los procesos de Investigación, Vinculación y tuación negativa, no es un dato preocupante
Pasantías/ Prácticas Preprofesionales. puesto que este factor evalúa el posicionamien-

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

42 Figura 3. Arquitectura del sistema.


AUTOMATIZACIÓN DE PROCESOS DE INVESTIGACIÓN, VINCULACIÓN Y PRÁCTICAS/PASANTÍAS PREPROFESIONALES PARA UNIVERSIDADES ECUATORIANAS

to en los motores de búsqueda y el sistema aún evaluacio%CC%81n-preliminar-de-Universidades-y-


no está en completo funcionamiento para poder Escuelas-Polite%CC%81cnicas.pdf
posicionarse. Chen, S., Tang, X., Wang, H., Zhao, H., & Guo, M.
(2016). Towards Scalable and Reliable In-Memory
TABLA 1. RESULTADOS DE LA PRUEBA DE CALIDAD Storage System: A Case Study with Redis. 2016
IEEE Trustcom/BigDataSE/ISPA,1660-1667. doi:10.1109/

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

perado de http://www.ambysoft.com/unifiedprocess/ JavaScript de apoyo a la docencia. Revistas UNC - Virtua-


agileUP.html lidad, Educación y Ciencia, 8(14), 136-152. Recuperado de
Ask Solem & contributors. (2009-2016). Celery User Manual. https://revistas.unc.edu.ar/index.php/vesc/article/
Recuperado de http://docs.celeryproject.org/en/ view/17341
latest/django/first-steps-with-django.html Haryono, K. (2015). The extreme programming approach
Balsamiq Studios, LLC. (2008-2017). Balsamiq. Recuperado for financial management system on local govern-
de https://balsamiq.com/products/mockups/ ment. International Conference on Science and Technology
ALTERNATIVAS

CEAACES. (2016). Modelo de evaluación Institucional (TICST), 29-34.


de Universidades y Escuelas Politécnicas 2018 [PDF Iszaevich, G. E. (2011). Monitoreo de PostgreSQL con Munin
file]. Recuperado de http://www.ceaaces.gob. PostgreSQL monitoring with Munin. Recuperado de https://
ec/sitio/wp-content/uploads/2017/09/Modelo-de- www.researchgate.net/publication/268271896_Mo- 43
VACACELA, E. | TENECOTA, J. | TORRES, J. | CELLERI-PACHECO, J.

nitoreo_de_PostgreSQL _con_ Munin_PostgreS- International Conference on Software Engineering Research,


QL_monitoring_with_Munin Management and Applications (SERA). doi:10.1109/
JetBrains s.r.o. (2017). Jetbrains. Recuperado de https:// SERA.2016.7516122
www.jetbrains.com/pycharm/ Secretaría General UTMACH. (2017). Reglamento que
Kusuma, M., & Ferdiana, R. (2017). Performance Com- regulariza el sistema de vinculación con la sociedad de la
parison of Caching Strategy on Wordpress Multisite. Universidad Técnica de Machala. Recuperado de https://
2017 3rd International Conference on Science and Technology www.utmachala.edu.ec/archivos/vincopp/vincula-
- Computer (ICST). doi:10.1109/icstc.2017.8011874 cion/1.%20BASE%20LEGAL/1.%20REGLAMENTO%20
Liang, L., Zhu, L., Shang, W., Feng, D., & Xiao, Z. (2017). QUE%20REGULARIZA%20EL%20SISTEMA%20DE%20
Express supervision system based on NodeJS and VINCULACI%C3%93N%20CON%20LA%20SOCIEDAD.pdf
MongoDB. IEEE/ACIS 16th International Conference on Com- Sharma, P., & Hasteer, N. (2016). Analysis of linear
puter and Information Science (ICIS), 607-612. doi:10.1109/ sequential and extreme programming development
ICIS.2017.7960064 methodology for a gaming application. International
Liu, D., & Pan, D. (2014). Message transport system Conference on Communication and Signal Processing (ICCSP),
of distributed stream computing. (IEE, Ed.) 11th 1916–1920. doi:10.1109/iccsp.2016.7754505
International Computer Conference on Wavelet Actiev Media Te- Sparx Systems Pty Ltd. (2017). SPARX SYSTEMS. Recupera-
chnology and Information Processing(ICCWAMTIP), 483-486. do de http://sparxsystems.com/
doi:10.1109/ICCWAMTIP.2014.7073455 Tang, C., Bagheri, H., Paisarnsrisomsuk, S., & Sullivan,
Marowka, A. (2017). On parallel software engineering K. (2017). Towards Designing Effective Data Persis-
education using python. Education and Information Tech- tence through Tradeoff Space Analysis. IEEE/ACM 39th
nologies, 1-16. doi:10.1007/s10639-017-9607-0 International Conference on Software Engineering Companion
Matijevic, M., & Cvjetkovic, V. (2016). Overview of archi- (ICSE-C). doi:10.1109/ICSE-C.2017.106
tectures with Arduino boards as building blocks for Trautsch, F., & Grabowski, J. (2017). Are There Any Unit
data acquisition and control systems. 13th International Tests? An Empirical Study on Unit Testing in Open
Conference on Remote Engineering and Virtual Instrumentation Source Python Projects. IEEE International Conference on
(REV), 56-63. doi:10.1109/REV.2016.7444440 Software Testing, Verification and Validation (ICST), 207–218.
Núñez, J., Suárez, G., y Delgado, M. (2014). Proceso de doi:10.1109/icst.2017.26
pruebas para productos de software en un laboratorio UTMACH. Centro de Investigaciones.(2017). Ecuador:
de calidad. Ingeniería Industrial, 35(2), 131-145. Recupera- Semilleros de Investigación. Recuperado de http://
do de http://scielo.sld.cu/scielo.php?script=sci_arttex investigacion.utmachala.edu.ec/es/semilleros-de-
t&pid=S1815-59362014000200003 investigacion/
Peña, R. (2015). Paseo por la programación estructurada Valle, A., Puerta, A., y Núñez, R. (2017). Curso de Consultoría:
y modular con Python. (U. J. I, Ed.) Revista Hispanoame- TIC. Gestión, Software ERP y CRM (2a Edición). Estados Uni-
ricana de Educación Universitaria de la Informática, 8(1), 16-27. dos: Createspace Independent Publishing Platform.
Recuperado de http://www.aenui.net/ojs/index.php? Vega, C. X., Celleri, J. K., Maza, J. L., y Sarmiento, K. O.
journal=revision&page=article&op=view& (2017). Validación de herramientas online que miden
amp;path%5B%5D=184 la calidad de sitios web. Universidad Técnica de Machala -
Protsch, P., & Solga, H. (2015). The social stratification of Conference Proceedings, 1(1), 57-60. Recuperado de http://
the German VET system. Journal of Education and Work, investigacion.utmachala.edu.ec/proceedings/index.
29(6), 637-661. doi:10.1080/13639080.2015.1024643 php/utmach
Quest Software Inc. (2017). Quest. Recuperado de https:// Verona, S., Pérez, Y., Torres, L., Delgado, M., y Yáñez,
www.quest.com/mx-es/products/toad-data-modeler/ C. (2016). Pruebas de rendimiento a componentes
Quintana, H. A. (2015). Implementación de aplicaciones de software utilizando programación orientada a
isomórficas con Javascript. Interfases. Revista Digital de aspectos. Ingeniería Industrial, 37(3), 278-285. Recupe-
ISSN: 13T90-1915 • VOL. 19 • N.O 1 • 2018 • 35-44

la Carrera de Ingeniería de Sistemas (8), 143-161. Recupe- rado de http://scielo.sld.cu/scielo.php?script=sci_


rado de https://dialnet.unirioja.es/descarga/articu- arttext&pid=S1815-59362016000300006&lng=es&tln
lo/6043104.pdf g=es
REUVIC. (2017). Plan Estratégico 2017-2019. Recuperado de Weigel, M., Preuss, T., & Brüstel, J. (2010). Generating
http://reuvic.ec/reuvic/wp-content/uploads/2017/08/ Navigation Capable Maps from User Provided Data
PLAN-ESTRATEGICO-REUVIC-2017-2019.pdf with Woodtracker. International Conference on Complex,
Schmal, R., y Rivero, S. (2016). Construcción de un Siste- Intelligent and Software Intensive Systems., 544-548.
ALTERNATIVAS

ma para la Gestión de Proyectos. Formación universitaria, doi:10.1109/CISIS.2010.163


9(4), 23-32. doi:10.4067/s0718-50062016000400004 Wells. (2017). Extreme Programming. Recuperado de http://
Schutt, K., & Balci, O. (2016). Cloud Software Develop- www.extremeprogramming.org/
44 ment Platforms: A Comparative Overview. IEEE 14th

También podría gustarte