universidad tecnológica de la mixteca - utm.mxsimposio/ix/datos/librosoftwarelibre.pdf · d.r. c...

173

Upload: duonghanh

Post on 30-Jul-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,
Page 2: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,
Page 3: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

Universidad Tecnológica de la MixtecaHuajuapan de León, Oax.

Page 4: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

4

Directorio

Modesto Seara VázquezRector

Agustin Santiago AlvaradoVice-Rector Académico

Javier José Ruiz SantiagoVice-Rector de Administración

María de los Ángeles Peralta AriasVice-Rector de Relaciones y Recursos

Page 5: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

5

El uso del software libre en la academia

y la industria de México

Page 6: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

Primera Edición; Agosto del 2017ISBN:

D.R. c 2017 por U.T.M.Universidad Tecnológica de la Mixteca

Km. 2.5 Carretera a Acatlima, Huajuapan de León, Oaxaca.C.P. 69000 Tel. 9535320214 y 20399

http://www.utm.mx

Corrección Editorial:Reina Ortiz Escamilla Diseño y coordinación editorial: C. Jaqueline Estrada Bautista

Page 7: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

ÍndicePresentación ...........................................................................9

Prólogo ....................................................................................11

Cultura Mixteca ......................................................................151. Software Libre en Pro al Fortalecimiento de la Cultura Mixteca ........................................ 152. El open source y la difusión del patrimonio Vasijas polícromas Mixtecas ............................. 29

Aplicaciones y Proyectos Universitarios ..............................353. Impacto del Software Libre en la Universidad Tecnológica de la Mixteca ........................... 354. Implementación del Modelo de Restricciones del Problema de calendarización de Horarios

Universitarios con Python ............................................................................................... 415. Programa de Lecturas (ProLec versión 3.0) ..................................................................... 496. Modelado de la operatividad de un repositorio institucional con acceso abierto utilizando Protégé

...................................................................................................................................... 57

Mejora de la Industria/Empresa ...........................................637. Herramientas usadas en el desarrollo de un sistema de localización de interiores ................. 638. La Filosofía del Software Libre Aplicada a los Negocios .................................................. 719. Modelo de proceso como guía para la etapa de elicitación de requisitos, implementado en Software

Libre .............................................................................................................................. 85

Aplicaciones en diversas Áreas de Investigación ..............9710. Simulación de temperatura por elemento finito en dos dimensiones mediante software libre y su

comparación con software comercial ................................................................................. 9711. Paralelización de un algoritmo genético para el problema del agente viajero ........................ 10512. Explorando tres niveles de paralelismo empleando software libre y freeware en computadoras

personales multicore. El caso de Linux versus Windows .................................................... 119

Temas Diversos ......................................................................13113. Software Libre y Seguridad Nacional .............................................................................. 13114. Wit Sparks Una Suite Educativa de Apoyo a Educación Preescolar.................................. 137

Page 8: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,
Page 9: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

PresentaciónEl Software Libre parte de la filosofía del “compartir para mejorar”, no de la gratuidad del código exclusivamente como muchos podrían pensar.

La Universidad Tecnológica de la Mixteca, desde el año 2003, se ha dado a la tarea de dar a conocer esta filosofía entre sus estudiantes y profesores a través de conferencias impartidas por ponentes de reconocido prestigio nacional. También se ha dedicado a promoverla entre los bachilleres locales, los Institutos Tecnológicos vecinos y el resto de sus universidades hermanas pertenecientes al Sistema de Universidades Estatales del Estado de Oaxaca.

En esta ocasión se ha dado a la tarea de divulgar por medio de un libro, no solo la filosofía del uso del software libre en diversas áreas de interés público; sino también las aportaciones que durante los últimos años han realizado los profesores a los que este mensaje ha llegado y que, en conjunto con el arduo trabajo de sus estudiantes, han permitido generar productos de calidad que impactan directamente en el cumplimiento de los objetivos de nuestra casa de estudios. Principalmente considerando el impacto educativo, económico y social de los mismos.

A través de la lectura del presente libro, derivado de las ponencias compartidas por expertos y usuarios del software libre en el IX Simposium de Software Libre de la Mixteca, será posible conocer

las experiencias de profesores-investigadores y estudiantes de diversas universidades del centro y sur del país en el uso de herramientas de software libre para llevar a cabo diferentes proyectos de investigación, aplicación industrial y promoción al desarrollo, la educación pre-escolar y la cultura Mixteca. También podremos leer la voz de expertos de software libre que nos darán a conocer la correcta aplicación de esta filosofía en la mejora de la seguridad nacional y en los negocios.

Agradecemos su interés por esta publicación, esperando que sea la primera de muchas y que disfruten de su lectura que confiamos en que siente las bases para la posterior replicación de dicho conocimiento.

Dr. Carlos Alberto Fernández y FernándezDirector del Instituto de ComputaciónUniversidad Tecnológica de la Mixteca

Dra. Lluvia Carolina Morales ReynagaProfesora - Investigadora

Coordinadora del IX Simposium de Software Libre de la Mixteca

Page 10: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,
Page 11: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

Prólogo

Dr. Modesto Seára Vá[email protected]

Page 12: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,
Page 13: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,
Page 14: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

15

Sotware libre en pro al fortalecimiento

de la cultura mixteca

Sotware libre en pro al fortalecimiento

de la cultura mixtecaAllende Hernández Olivia* , Sosa Méndez Deira**

ResumenEl presente estudio se desarrolla bajo un enfoque educativo, parte de una investigación acción-participativa en el contexto del pueblo Mixteco, también llamado Ñuu Savi (Pueblo de la Lluvia). El acercamiento que tienen los niños del pueblo Ñuu Savi de la Región Mixteca Baja con la tecnología móvil se da de forma natural, por lo que conlleva a un aprendizaje más ameno e interactivo para los usuarios, por lo tanto el objetivo de la presente investigación es ayudar a los niños a mejorar su escritura del idioma Mixteco y fomentar sus competencias tecnológicas a través de una investigación aplicada mediante la Metodología para el Diseño de Objetos Digitales Educativos de la Lengua Indígena (MODELI) [1]. El análisis y diseño de la aplicación se desarrolla bajo una arquitectura de objetos digitales educativos soportada por una plataforma móvil con sistema operativo Android. Los resultados se presentan a través de una aplicación desarrollada con software libre para dispositivos móviles, que permite la difusión de la cultura Mixteca, buscando así preservar el patrimonio cultural de México, a través de fábulas y cuentos propios de comunidades de la cultura prehispánica de la región Mixteca Baja del estado de Oaxaca, acercando de manera directa a los usuarios nativos de la cultura mixteca y de forma indirecta al usuario deseoso de aprender el idioma mixteco, mediante el uso de dispositivos móviles con manejo de contenidos didácticos que se presentan mediante narraciones de cuentos mixtecos en tres idiomas: mixteco, castellano e inglés.

Palabras claves: Telefonía móvil, Tecnología educativa, Software libre.

1. IntroducciónEn América Latina la inclusión de las Tecnologías de la Información y Comunicación (TICs) en la educación, resultan una oportunidad para disminuir el rezago educativo en regiones * Instituto de Ciencias Sociales y Humanidades, 2División de Estudios de Posgrado, Universidad Tecnológica de

la Mixteca (MEXICO). [email protected],** Instituto de Ciencias Sociales y Humanidades, 2División de Estudios de Posgrado, Universidad Tecnológica de

la Mixteca (MEXICO), [email protected]

Page 15: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

16

Software libre

que presentan un alto índice de deserción escolar y bajo nivel de aprovechamiento académico, tal es el caso de las comunidades consideradas de alta marginación donde cohabitan la mayoría de las etnias prehispánicas. El pueblo Ñuu Savi, aún vive un fuerte rezago en materia de conectividad, sin embargo la reducción en los servicios y en el costo de la telefonía móvil, así como la entrada en vigor de la Ley Federal de Telecomunicaciones y Radiodifusión (2015), aunado con la apertura comercial que se da entre los diferentes proveedores del servicio telefónico, ha dado pauta al incremento del número de usuarios de telefonía móvil en la población joven del pueblo mixteco [2]. En concordancia con la agenda digital e-México del Plan Nacional de Desarrollo (2013-2018), se ha implementado una de las estrategias por el Gobierno Federal en coordinación con el Gobierno del Estado y Municipal para la reducción de la brecha digital, ésta se realiza a través de los Centros Comunitarios de Aprendizaje instalados en las cabeceras municipales, cuyo principal objetivo es otorgar libre acceso a las TICs a la población mixteca de las comunidades [2]. En este contexto la educación pasa a ser “el lugar" donde el acceso puede democratizarse, por lo tanto la inclusión digital a través de la tecnología móvil, aumentaría oportunidades para la participación, el conocimiento y la comunicación a los estudiantes de sectores de bajo nivel socioeconómico, así como a sus familias y comunidades, sin embargo además de la inclusión de las tecnologías es necesario contar con modelos sociales y pedagógicos en los cuales se utilicen [3].

Debido a que hoy en día los consumidores son cada vez más móviles, una forma de incluir las TICs en la educación es a través del uso de dispositivos móviles inteligentes (Smartphones, tablets), lo cual da como resultado que la penetración global de estos dispositivos aumente rápidamente año con año, logrando con ello cambios en las tendencias de visualización en relación con la escuela, los tiempos y los espacios en los procesos de aprendizaje [3,4].

Gracias a la movilidad, portabilidad y funcionalidad de los dispositivos móviles, así como al hecho de que permiten producir contenidos, conectar y generar contextos, el aprendizaje para los jóvenes se convirtió en una actividad sin barreras espaciales ni temporales [3]. Las tecnologías móviles son especialmente interesantes debido a su bajo costo (en comparación con una computadora de escritorio) y a su rica incorporación de recursos, lo cual hace que su potencial aumente su accesibilidad y efectividad en la educación básica, en particular para la alfabetización y aprendizaje de idiomas el desarrollo de estas tecnologías ha abierto numerosas posibilidades, ya que puede llegar a un público más amplio y transformar la educación de niños y jóvenes en condiciones aisladas o no atendidas [5]. En el caso de la comunidad Mixteca más del 80% de los niños y adolescentes de 10 a 18 años tienen un teléfono móvil, incluyendo en las comunidades rurales, esto significa que en cada núcleo de familia existe al menos un teléfono celular con capacidad para soportar la conexión a los servicios de Internet [2].

Para constituir políticas nacionales de TICs en la educación de un país, es necesario concebir políticas estratégicas y operativas. Como parte de la política operacional de algunos países europeos, se encuentra el desarrollo de contenidos digitales referentes a sus planes de estudio o a consideraciones especiales de su cultura e idioma, por lo tanto el aprendizaje digital y las recientes tendencias en materia de recursos educativos abiertos promueven cambios radicales en el mundo de la educación tradicional [3]. La UNESCO

Page 16: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

17

Sotware libre en pro al fortalecimiento

de la cultura mixteca

por su parte sostiene que los recursos educativos de acceso libre proporcionan una oportunidad estratégica para mejorar la calidad de la educación y para facilitar el dialogo sobre políticas, el intercambio de conocimiento y el aumento de capacidades, estos recursos son materiales de enseñanza, aprendizaje o investigación que se encuentran en el dominio público con una licencia de propiedad intelectual que permite su uso, adaptación y distribución gratuita [6].

En el reporte anual de 2017 que produce la NMC (The New Media Consortium, por sus siglas en inglés) sobre educación superior, se prevé que el mercado mundial de aprendizaje móvil crecerá un 36% anual, pasando de 7,98 mil millones de dólares en 2015 a 37,6 mil millones de dólares en 2020, lo cual hace que la universalidad de los dispositivos móviles sea aprovechada para mejorar la enseñanza y el aprendizaje [7].

El aprendizaje móvil se lleva a cabo a través de dispositivos móviles que corren bajo un sistema operativo determinado, entre estos sistema operativos destaca Android, el cual tiene licencia libre y esta basado en un kernel de Linux, lo cual lo hace un sistema de código abierto, la estructura de este sistema consiste en la ejecución de aplicaciones que responden a las exigencias de los usuarios (navegar por internet, reproducir datos multimedia, realizar transacciones bancarias, juegos, redes sociales, etc.).

Haciendo uso de las políticas operativas es factible el desarrollo de una aplicación móvil que fortalezca y fomente el aprendizaje del idioma Mixteco del pueblo “Ñuu Savi”, esta aplicación está basada en Android, el cual es el sistema operativo dominante en el mercado, lo cual la hace una aplicación fácil de crear y distribuir entre los consumidores.

2. Software libreLa necesidad de carecer de restricciones en la distribución y modificación de programas, se debe a que un software con restricciones presenta 3 niveles diferentes de daño material: (1) un menor número de personas usa el programa, (2) ninguno de los usuarios puede adaptar o arreglar el programa y (3) otros desarrolladores no pueden aprender del programa, o basar un trabajo nuevo en él, estos niveles de perjuicio desaprovechan parte del valor que el programa podría proporcionar, pero no lo pueden reducir a nada. Si se desaprovechará casi todo el valor del programa, entonces el hecho de escribir el programa perjudica a la sociedad en la medida en que se dedicó un esfuerzo en escribir dicho programa [8].

Teniendo en cuenta los daños que puede ocasionar un software restringido, nace la definición de software libre, el cual se refiere a la libertad de los usuarios para ejecutar, copiar, distribuir, estudiar, cambiar y mejorar el software, específicamente se refiere a 4 clases de libertad para los usuarios del mismo [8, 9]:

• Libertad 0: la libertad para ejecutar el programa sea cual sea nuestro propósito.• Libertad 1: la libertad para estudiar el funcionamiento del programa y adaptarlo a tus

necesidades —el acceso al código fuente es condición indispensable para esto.• Libertad 2: la libertad para redistribuir copias y ayudar así a tu vecino.• Libertad 3: la libertad para mejorar el programa y luego publicarlo para el bien de toda

la comunidad —el acceso al código fuente es condición indispensable para esto.

Page 17: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

18

Software libre

Cualquier software que goce de estas libertades es software libre y tiene la libertad de no tener que pedir permiso ni pagar para ello, sin embargo si el desarrollador del software pudiera revocar la licencia sin motivo, dejaría de ser libre, la forma de obtención de copias de software libre puede ser a través de pago (por ejemplo: grabarlo en un soporte físico o enviarlo), pero independientemente de la forma en que se obtenga, siempre se tiene la libertad de copiar, modificar e incluso vender estas copias, ya que software libre no significa que sea no comercial, y para proteger las libertades de software libre se usa “copyleft”, la cual es la norma que establece que, al redistribuir el programa, no pueden añadirse restricciones que nieguen a los demás sus libertades centrales, es decir esta norma protege las libertades [8, 9].

El software de código abierto se ha convertido en un activo estratégico debido a que su servicio y la entrega de sus productos es a corto plazo, además de la reducción de costos en su desarrollo, mantenimiento y a su capacidad de personalización. Para el 2016 se esperaba que el 95% de las tecnologías de código abierto estuvieran integradas en todos los paquetes de software comercial, sin embargo a pesar de las libertades que ofrece el software libre, se presentan algunos riesgos al momento de adoptar dicho software en los negocios, y están enfocados principalmente en la vida útil de las soluciones obtenidas y a su mantenimiento, ya que por lo general una organización mantiene dos versiones activas (actual y anterior) y una tercera en desarrollo, y cada una de estas puede requerir la adaptación para diferentes clientes, generando con ello más variantes, por eso es necesario identificar dependencias estratégicas relevantes (no solo de software) para controlar y mitigar los riesgos al momento de adoptar un software de código abierto, ya que se corre el riesgo de presentar perdidas económicas importantes [10].

La extensión de software libre ha alcanzado los sistemas operativos de los dispositivos móviles, debido a las libertades que ofrece, a continuación se describe el uno de los sistemas operativos de código abierto que se está empleando en los dispositivos móviles actuales.

2.1 Sistema Operativo AndroidEntre los principales sistemas operativos para dispositivos móviles que existen en el mercado destacan: Symbian (1997), BlackBerry OS (1999), iPhone OS (2007), Windows Phone (2008), Android (2008) y BlackBerry 10 (2013), en el Cuadro 1 se muestran una comparativa de algunas características importantes de cada sistema operativo:

De acuerdo al Cuadro 1, el sistema operativo Android está basado en un modelo de desarrollo de código abierto, además le otorga al público la libertad de usar el software para cualquier propósito, distribución, modificación y distribución de versiones modificadas del software, sin preocuparse de las regalías debido a los términos de la licencia de software libre Apache, otra ventaja destacable es que al ser Google la empresa que está desarrollando masivamente herramientas educativas, hace de Android el sistema operativo predominante en los dispositivos móviles.

Android es un sistema operativo de plataforma abierta para dispositivos móviles adquirido por Google y Open Handset Allience, su finalidad es satisfacer la necesidad de los operadores móviles y fabricantes de dispositivos, además de fomentar el desarrollo de

Page 18: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

19

Sotware libre en pro al fortalecimiento

de la cultura mixteca

aplicaciones, cualidad que ningún otro sistema operativo incluye en sus conceptos [11]. Entre sus características destacan [11]:

• Plataforma totalmente libre basada en Linux que permite desarrollar aplicaciones y/o modificar las ya existentes con lenguaje Java.

• Es multitarea permitiendo mantener distintas aplicaciones abiertas al mismo tiempo.• Compatible con una gran variedad de hardware en el mercado (tabletas y dispositivos

celulares) permitiendo al usuario elegir el dispositivo que mejor se ajuste a sus necesidades.

• Posee un portal llamado Android Market donde se tiene acceso a muchas aplicaciones que pueden ser utilizadas.

• Permite realizar actualizaciones del sistema operativo en línea siempre y cuando el dispositivo soporte los requerimientos del mismo.

• Puede operar soluciones tecnológicas referentes al uso de redes sociales, mensajería instantánea, correo electrónico, modificación y lectura de procesadores de palabras, hojas de cálculo, presentaciones, lectura de formatos pdf, etc.

• Cuenta con el apoyo y la capacidad tecnológica proporcionada por su principal socio Google.

Cuadro 1.- Comparativa de sistemas operativos.

Característica SymbianBlackBerry

iOS Windows Phone Android

OS 10

Núcleo EKA2 Máquina virtual Java QNX XNU Linux

Licencia EPL Propietaria PropietariaAPSL y Apple EULA

Microsoft (EULA)

Apache 2.0 y GNU GPL 2

Propietario Nokia BlackBerry OS BlackBerry 10 Apple Inc. Microsoft Google

Modelo de desarrollo

Software propietario Código cerrado Código

cerradoSoftware propietario

Software propietario

Código abierto

Tipo de mercado

Teléfonos móviles Empresarial Dispositivos

móviles

iPhone, iPod touch y iPad

Teléfonos inteligentes, tabletas y computadoras

Smartphones, tabletas, Android TV, Android Auto y Android Wear

Plataformas soportadas ARM, x86

Línea de teléfonos inteligentes de BlackBerry

BlackBerry Dev Alpha y la futura línea de teléfonos inteligentes BlackBerry

ARM

Teléfonos inteligentes con el sistema operativo

ARM, x86, MIPS, IBM POWER

Sistema de gestión

Symbian Nokia Packet Service

BlackBerry Desktop Manager

BlackBerry App World App Store

Desde: la computadora (WP7), el teléfono (WP8)

Google Play, APK

Estado actual Desconti-nuado Descontinuado En

desarrolloEn desarrollo

En constante desarrollo

En permanente desarrollo

Idiomas Multilingüe 26 idiomas Multilingüe 40 idiomas Multilingüe Multilingüe

Page 19: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

20

Software libre

2.2 Estadísticas del uso de Smartphones con Android La compañía Nielsen expuso en 2010 un análisis del uso de Smartphones los primeros 8 meses del año, donde se observó que Android presenta un crecimiento del 18%, mientras que BlackBerry y iPhone disminuyen un 8% y 7% respectivamente, lo que demuestra un claro crecimiento de Android [11]. La misma compañía muestra que en Estados Unidos la penetración de Smartphones para el 2013 fue del 69%, para el 2014 del 77%; de los cuales el 51.7% usa Android como lo muestra la Figura 1 [4], en la misma Figura se muestra que el 82.4% de los Hispanos posee un Smartphone, donde en 2014 la penetración de Android es del 53.8% y para iOS es del 40.2%, para el caso de Asiáticos/ Isleños del pacífico el 86.6% posee un Smartphone, donde la penetración de Android es de 46.7% y para iOS es de 47.6%, también se puede observar que el uso de Smartphones no tiene una división de genero ya que hombres y mujeres poseen Smartphones en porcentajes similares. Sin embargo, en la Figura 2 se observa que Apple siguió siendo el principal fabricante de Smartphones con un 43.6% de los suscriptores, BlackBerry fabrica el 1.2% y el resto los fabrican otras empresas que emplean Android como sistema operativo.

Figura 1. Cuota de mercado de Smartphones por raza, sistema

operativo y género (2014).

Figura 2. Fabricantes de Smartphones por sistema operativo (2014).

Page 20: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

21

Sotware libre en pro al fortalecimiento

de la cultura mixteca

De acuerdo a la edad los propietarios de un Smartphone son: el 98% de los jóvenes de 18 a 24 años de edad, el 97% de entre 25-34 años (millenials), 96% de entre 35-44 años (Gen Xers), el 89% de entre 45-54 años, el 80% de entre 55-64 años y el 68% para mayores de 65 años (ver Figura 3) [12]. Como se puede observar en la Figura 3, los principales grupos de propietarios de un Smartphone son las personas de 18 a 34 años, ya que son las personas que se encuentran más familiarizadas con los dispositivos digitales.

En septiembre de 2016 en Estados Unidos, la penetración de Smartphones creció hasta el 88% de los suscritores de telefonía móvil, en el primer trimestre del mismo año el 53% de los suscriptores utilizaron dispositivos Android y el 45% iOS para acceder a sus aplicaciones, 2% con Windows y 1% con BlackBerry (ver Figura 4) [13]

Figura 3. Smartphones en EE.UU. por edad, sistema

operativo y género (2016).

Figura 4. Principales sistemas operativos de Smartphones en EE. UU. por cuota de

mercado (2016).

Page 21: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

22

Software libre

En 2014 a nivel mundial, los sistemas operativos para Smartphones que dominan el mercado son Android con el 81.9%, iOS con el 12.1%. En América Latina, Android llega al 73.4% mientras iOS alcanza el 6.6%, aunque vale la pena resaltar que Windows Phone empieza a ganar terreno en varios países [14].

En cuanto a las aplicaciones, Gartner Inc [15] estima que las descargas aumentaran 2.6 veces de 2013 a 2017, sin embargo, pronostica que las descargas mensuales promedio por dispositivo iOS disminuyan de 4.9% en 2013 a 3.9% en 2017, mientras que para Android se reducirán de 6.2% en 2013 a 5.8% en 2017, lo cual da una diferencia de 0.6% menor que en el caso de iOS, estas cifras se debe a que los usuarios siguen usando las mismas aplicaciones en lugar de descargar nuevas, en 2017 se estima que el 94.5% de las aplicaciones descargadas sean gratuitas (ver Cuadro 2), y se prevé que combinadas las descargas de iOS y Android cubran el 90% de las descargas totales.

Cuadro 2.- Descarga de App Store para móviles, en todo el mundo, 2010-2016 (millones de descargas)

2014 2015 2016 2017

Descargas gratis 127,704 167,054 211,313 253,914

Pago para descargas 11,105 12,574 13,488 14,778Descargas totales 138,809 179,628 224,801 268,692

% descargas gratis 92.0 93.0 94.0 94.5

Aplicación Móvil: NarramixConsiderando 4 aspectos fundamentales: 1) las políticas operativas de las TICs en educación están dirigidas al desarrollo de recursos digitales que presenten un enfoque pedagógico en el aprendizaje, 2) el sistema operativo predominante a nivel mundial es Android con el 81.9%, 3) que las tendencias de uso de dispositivos móviles es mayoritariamente para las generaciones menores de 34 años, y 4) la población mixteca de niños y adolescentes adoptan de forma natural el uso de las tecnologías móviles, se desarrolló NarraMix un aplicación móvil para dispositivos móviles dirigida a niños de 6-14 años de edad. Sin que esta característica del perfil del usuario sea una limitante para cualquier otro usuario deseoso de aprender el idioma mixteco.

NarraMix se desarrolló tomando en cuenta el idioma Mixteco (segunda lengua indígena más hablada en México) como una fortaleza etnolingüística empleada en la vida diaria de los pueblos indígenas de la región de la mixteca baja, por ello dicha aplicación es una herramienta para dar presencia a tales grupos mediante su lengua natal [16]. Esta aplicación consiste en presentar narraciones del pueblo "Ñuu Savi" en 3 idiomas: mixteco (de la mixteca baja), castellano e inglés [17], diseñada para uso de la tecnología móvil (principalmente para telefonía celular y tablets) esta aplicación fomenta el aprendizaje móvil y es viable en comunidades como Santos Reyes Yucuná, considerado como municipio de muy alta marginación y alto índice de migración, donde el 100% de sus habitantes hablan el idioma mixteco cotidianamente y la población joven es bilingüe (idioma español y mixteco), sin embargo se desconoce la sintaxis de su escritura [2]. Dado que el factor de migración es alto se ha considerado a NarraMix una aplicación trilingüe a

Page 22: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

23

Sotware libre en pro al fortalecimiento

de la cultura mixteca

fin de dar conocimiento a los tres idiomas que tienen contacto la población mixteca. Con las estrategias implementadas para la disminución de la brecha digital la población tiene más oportunidades de contar con una laptop, computadora de escritorio, Tablet y telefonía celular [2]. Además la psicología de la gente "Nuu Savi" posee la capacidad de adaptarse a los cambios tecnológicos ya que han demostrado una aptitud y procesamiento autónomo en la adquisición de conocimientos a través de las TICs [16].

La aplicación móvil está desarrollada para la versión 4.1.2 de Android o posteriores, se implementó en una Tableta HP, en la Figura 5 se muestra el icono distintivo para la aplicación en el emulador Genymotion, en la Figura 6 se observa la pantalla principal de la aplicación con las narraciones en sus respectivos idiomas, y en los siguientes párrafos se muestra en los 3 idiomas, .un ejemplo de las narraciones implementadas en la aplicación NarraMix, como lo es el cuento del coyote y el conejo.

Cuèndú ñáñá ndɨhɨ iló (mixteco)Te ɨɨⁿ ñáñá xìní tnáhád ´ _ nd _hɨ ɨɨⁿ iló, te ɨɨⁿ xito ní naníhí tnáháguèdɨ, te ñáñá nì xáhaⁿdɨ xìi iló:-Váha ní cuu sá niˇ naníhí tnáhó, chi cuìníi cáháⁿ ñáhǐ xɨɨn _ɨⁿ vico cadaí, te ío vài ndɨ meeí quixi

cáháⁿ núú cádàí vico. Te càhàⁿndàhúí núún nǔu vá cúndèe inín quìxin cunu cuechin - cachídɨ xǎhaⁿdɨ xìi iló.Te iló ní xáhaⁿdɨ:-Dico càhnu vihi cada inín chi vǎ cúyǎchíi quixií, chi ñùhu vihi chiuⁿí - càchídɨ xǎhaⁿdɨ xìi ñáñá.Te ní xáhaⁿ tùcu ñáñá:- Dico ío càháⁿ ndàhúí núún sà cádá ndèe inín quìxin vico cadaí, chi dɨuni yòhó cúndèe iníí cunu

cuechin ndùuaⁿ - càchídɨ xǎhaⁿdɨ xìi iló.Te ní xàhaⁿ ìlóáⁿ:- Dico yúhú cútnùní iníí sá ñà túú sàni váha inín, chi dìcó caxihaⁿn xìí cuìnín nǔu ducaⁿ cùun, chi

ñá ndàá sá cádán vìco datná càchín chi ni sǎ cáxí mèen ñá nìhín. ¿Te ndèé níhín sà cáxí nchàa ñaní tnáh ´ _ n nǔu na càdan

vico i? – cachí ilóáⁿ xǎhaⁿdɨ.Te ñáñá nì xáhaⁿdɨ:

Figura 5. Icono de la aplicación en el escritorio de la Tablet.Figura 6. Página principal de la aplicación.

Page 23: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

24

Software libre

- Vitna te caxihaⁿǐ xiin chi ío cùte xínu càh ´ _ ⁿn - càchídɨ xǎhaⁿdɨ xìi iló.Te ilóáⁿ nì xáhaⁿdɨ:- Vá dúcáⁿ cǎh ´ _ ⁿn te núu ndáá sá vícó càdan - cachídɨ xǎhaⁿdɨ xìi ñáñá.Te ñáñá nì xáhaⁿdɨ:- Duha càhíⁿ chi ío cùte xínu càh ´ _ ⁿn, te vitna te caxihaⁿ ndìsaí xiin - càchídɨ xǎhaⁿdɨ xìi ilóáⁿ.Te ilóáⁿ nì xáhaⁿdɨ:- Cuu caxihaⁿn dico ña dɨú tnàvií chi cùhí, te càháⁿ ndàhúí núún sà dáñán ná nùhí vehí cutátnaí, te

na ndǔhaí te dǎtnùní caxihaⁿn - càchídɨ xǎhaⁿdɨ ñáñá.Te ñáñáǎⁿ nǐ sándáá inídɨ ní dáñád ´ _ cuǎnuhú iló vehedɨ. Te ducaⁿ nǐ xáhaⁿ ìlóáⁿ cuèndáni sá

cǎcudɨ.Te dìcóni ɨɨⁿ cuèndú cúúxí.

Cuento del coyote y el conejo (castellano)Había una vez un coyote que conocía a un conejo, un día se encontraron y el coyote

le dijo al conejo.-Qué bueno que nos encontramos, quiero invitarte a una fiesta que quiero realizar, y no

he podido venir a visitarte. Te suplico que vengas a ayudarme.El conejo respondió.-Me tendrás que disculpar porque no podré asistir, tengo mucho trabajo.El coyote le volvió a decir: pero te ruego que vengas a la fiesta que quiero realizar, eres

el único que quiero que me ayude.El conejo respondió: Pero yo presiento que tus intensiones no son buenas, tú quieres

comerme por eso me insistes en que yo valla, porque no es cierto que vas a hacer una fiesta como dices, tú me quieres comer. ¿Por qué donde vas a conseguir la comida para tus invitados?

El coyote respondió: Ahora si te voy a comer porque tú solo dices cosas incoherentes.El conejo dijo: Creo que es lo que piensas por eso dices esas cosas.El coyote le contesto: Te digo esto porque tú me dices cosas que no son, y ahora sí te

voy a comer.El conejo respondió: puedes comerme pero no ahorita porque estoy enfermo, por eso

te pido que me dejes ir a mi casa a curarme y después me comes.El coyote le creyó y lo dejo ir a su casa. Pero el conejo solo le dijo eso para escaparse.Colorín colorado este cuento se ha acabado!!!

The tale the coyote and the rabbit (inglés) Once upon a time, there was a coyote who knew a rabbit. One day they met and the

coyote said, “It’s so good to see you. I wanted to invite you to my party, but I wasn’t able to come and visit you. I beg you to come and help me.”

The rabbit answered, “Please forgive me, but I won’t be able to go. I have a lot of work to do.”

Page 24: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

25

Sotware libre en pro al fortalecimiento

de la cultura mixteca

The coyote said again, “But I’m begging you to come to my party. You’re the only one I want to help me.”

The rabbit replied, “I feel that your intentions are not good. You would like to eat me, and that’s why you’re insisting. It’s not true that you’re going to have a party. You want to eat me. Where will you find food for your guests?”

The coyote answered, “Now I am really going to eat you, because you only say silly things.”

The rabbit said, “I think that’s what you’re after, and that’s why you say such things.”The coyote said, “I’m only saying this, because you keep telling me things that aren’t

true. And now I’m going to eat you.”The rabbit replied, “You can eat me but not now, because I am sick. So let me go home

to recover, and you can eat me later.”The rabbit said that just to get away, but the coyote believed him and let him escape.

Al momento de presentar el prototipo de NarraMix a los niños de la comunidad, estos mostraron interés, asombro y alegría, ya que a través de una aplicación se da a conocer su lengua natal y ellos pueden aprender otros idiomas mediante narrativas propias de su región, lo cual facilita su comprensión y ayuda a que la inclusión digital en su comunidad sea más accesible y recurrente.

4 ConclusionesEl prototipo de la aplicación NarraMIx presentada al grupo de niños y adolescentes de la comunidad mixteca del caso de estudio, tuvo una reacción positiva en los usuarios, al identificarse con sus raíces culturales tanto en la imagen como en el sonido (canción mixteca) presentadas en la interfaz. Al interactuar con la aplicación NarraMix, el usuario intuitivamente aprendió a utilizar la aplicación. En sus palabras expresas: “es Fácil”, denota un aprendizaje significativo, que toman relevancia desde el primer contacto, dado que el niño no había hecho uso del sistema. Se espera que el trabajo a futuro se implemente a través de animación, es decir cuentos narrados y animados.

Hoy en día, es incuestionable el impacto que tiene los dispositivos móviles, debido a que los desarrolladores lanzan continuamente nuevos dispositivos con nuevas prestaciones y servicios, afectando especialmente en el sector educativo; ya que la aceptación de los jóvenes de estos dispositivos es masiva, lo cual hace que la integración de la tecnología con enfoques pedagógicos sea una entrada automática al aprendizaje de distintas disciplinas, niveles y modalidades. El uso de dispositivos móviles es prometedor en zonas rurales debido a que los recursos educativos son escasos y las conexiones de banda ancha han dado pauta al acceso a través del prepago del servicio de Teléfono móvil, aunado a la estrategia implementada de los Centros Comunitarios de Aprendizaje (CCA), así como el beneficio que trae consigo la baja de precios relativo al empaquetamiento de servicios, referido a la provisión de una combinación de dos o más servicios tales como: telefonía, televisión digital e Internet. Por lo tanto si profesores y alumnos tienen acceso a estos dispositivos móviles se tiene la oportunidad de aprovechar la infraestructura tecnológica

Page 25: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

26

Software libre

en el ámbito educativo. El pueblo mixteco vive la etapa coyuntural que se vislumbra en una completa adopción tecnológica a corto plazo.

En cuanto a la inversión de la industria en la integración de los dispositivos móviles convierte a Apple en la marca líder en la fabricación de portátiles y a Android en el sistema operativo predominante en dispositivos móviles gracias a que Google está desarrollando herramientas educativas masivamente. Una tendencia que empieza a surgir es el desarrollando de aplicaciones web adaptadas a móviles pero basadas en HTML 5.

Referencias[1] Allende-Hernández Olivia, Caballero-Morales Santiago-Omar (2015), MODELI: An

Emotion-Based Software Engineering Methodology for the Development of Digital Learning Objects for the Preservation of the Mixtec Language, DOI. 10.3390/su7079344, ISSN 2071-1050, Factor de Impacto: 1.343. Disponible en: http://www.mdpi.com/2071-1050/7/7/9344[2] Allende-Hernández Olivia, Salinas Jesús (2017) Usages and customs of the indige-

nous communities in pro to the reduction of the digital divide: A case study the Ñuu Savi People. Título del libro: “Indigenous People “, Book Editor: Purushothaman Venkatesan. ISBN 978-953-51-5376-4 cobertura en el ISI Web of Citation Index Libro de la Ciencia (BKCI)

[3] Argentina, U. N. I. C. E. F., & Vacchieri, A. (2013). Estado del arte sobre la gestión de las políticas de integración de computadoras y dispositivos móviles en los sistemas educa-tivos (Vol. 10). UNICEF Argentina

[4] Nielsen Company (2015). Smartphone owners are as diverse as their devices. Disponible en: http://www.nielsen.com/us/en/insights/news/2015/smartphone-owners-are-as-diverse-as-their-devices.html

[5] Peña-López, I. (2015). Rethinking Education. Towards a global common good?.[6] UNESCO (2017), Recursos Educativos Abiertos, Organización de las Naciones Uni-

das para la Educación, la Ciencia y la Cultura. Disponible en: http://www.unesco.org/new/es/communication-and-information/access-to-knowledge/open-educational-resources/

[7] Adams Becker, S., Cummins, M., Davis, A., Freeman, A., Hall Giesinger, C., and Ananthanarayanan, V. (2017). NMC Horizon Report: 2017 Higher Education Edition. Austin, Texas: The New Media Consortium. ISBN 978-0-9977215-7-7. URL: http://cdn.nmc.org/media/2017-nmc-horizon-report-he-EN.pdf

[8] Stallman, R. (2004). Software libre para una sociedad libre. Madrid: Traficantes de Sueños, 2004

[9] González Barahona, J., Seoane Pascual, J., & Robles, G. (2003). Introducción al soft-ware libre. Barcelona: Fundació per a la Universitat Oberta de Catalunya, 2003

[10] Franch Gutiérrez, J., Susi, A., Annosi, M. C., Ayala Martínez, C. P., Glott, R., Gross, D., & Ameller, D. (2013). Managing risk in open source software adoption. In ICSOFT 2013: Proceedings of the 8th International Joint Conference on Software Technologies (pp. 258-264)

[11] Polanco, K. M., & Taibo, J. L. B. (2011). “Android” El Sistema Operativo De Google Para Dispositivos Móviles. Revista Negotium, (19)

Page 26: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

27

Sotware libre en pro al fortalecimiento

de la cultura mixteca

[12] Nielsen Company (2016). Millennials Are Top Smartphone Users. Disponible en: http://www.nielsen.com/us/en/insights/news/2016/millennials-are-top-smartphone-users.html

[13] Nielsen Company (2016). Tops Of 2016: Digital. Disponible en: http://www.nielsen.com/us/en/insights/news/2016/tops-of-2016-digital.html

[14] ZINAPI (2014). Los Nuevos Sistemas Operativos para Móviles. Disponible en: http://zinapi.com/cms/2014/01/09/los-nuevos-sistemas-operativos-para-moviles/

[15] Janessa Rivera and Rob van der Meulen (2013). Gartner says mobile app sto-res will see annual downloads reach 102 billion in 2013. http://www.gartner.com/newsroom/id/2592315, September 2013

[16] Allende Hernández, O. y Sosa Méndez, D. (2013). Strengths cultural ethnolinguistic communities of the mixteca pro digital inclusion process. En EDULEARN13 Proceedings, 5th International Conference on Education and New Learning Technologies, páginas 1300—1308. IATED, Barcelona, Spain, 2013. ISBN: 978-84-616-3822-2. ISSN:2340-1117

[17] Allende Hernández, O., Salinas, J. y Sosa Méndez, D. (2015) M-Learning Using Android Platform For The Conservation Of The Mixtec Culture. En EDULEARN15 Proceedings, 7th International Conference on Education and New Learning Technologies Pp 2649-2659. IATED, Barcelona, Spain, 2015. ISBN: 978-84-606-8243-1. ISSN: 2340-1117

Page 27: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

29

La primera

El open source y la difusión del patrimonio: Vasijas polícromas

MixtecasIC Noé Coronel García, Mario A Moreno Rocha, MSc IT, Agustín E Andrade Cuautle, INAH

La presente investigación pretende mostrar el trabajo que puede realizarse para la preservación y difusión de la cultura de un pueblo, en este caso, artesanías, utilizando la tecnología a nuestro alcance, y en especial, herramientas de software libre. Es una interesante mezcla de conocimientos, en donde la Interacción Humano-Computadora, Experiencias de Usuario, Arqueología, Fotografía y Diseño en 3D juegan un papel predominante para la conservación cultural, tan necesaria en estos momentos.

1 IntroducciónLa Mixteca, una región que por años estuvo aislada cultural y geográficamente, abarca tres Estados de la República Mexicana (Oaxaca, Guerrero y Puebla), no cuenta, lamentablemente, con un gran acervo digital que vincule su historia de manera virtual en entornos 3D, así como tampoco cuenta con estudios etnográficos que aborden el desarrollo y las particularidades de los grupos etnolingüísticos que habitan el sureste del país, que puedan utilizarse en la divulgación del conocimiento apoyados en el uso de tecnologías actuales, como el modelado tridimensional y la realidad aumentada.

Para ello, es necesario recuperar, estructurar y analizar la información histórica, geográfica y arqueológica obtenida hasta el momento por personal del Instituto Nacional de Antropología e Historia (INAH), obtenida mediante levantamientos en los sitios.

Por patrimonio cultural se entienden: i) los monumentos: obras arquitectónicas, de escultura o de pintura monumentales, elementos o estructuras de carácter arqueológico, inscripciones, cavernas y grupos de elementos, que tengan un valor universal excepcional desde el punto de vista de la historia, del arte o de la ciencia; ii) los conjuntos: grupos de construcciones, aisladas o reunidas, cuya arquitectura, unidad e integración en el paisaje les dé un valor universal excepcional desde el punto de vista de la historia, del arte o de la ciencia; iii) los lugares: obras del hombre u obras conjuntas del hombre y la naturaleza, así como las zonas, incluidos los lugares arqueológicos, que tengan un valor universal excepcional desde el punto de vista histórico, estético, etnológico o antropológico [11].

Page 28: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

30

Software libre

Una de las primeras referencias que se tuvieron antes de iniciar con el desarrollo de nuestro proyecto, fue el de la Sociedad Española de Arqueología Virtual (SEAV) quienes tomaron a Blender como su aplicación base para crear su modelo virtual y desarrollar todas las fases que intervienen en este tipo de proyectos (modelado, aplicación de materiales y texturas, iluminación, renderizado, animación y edición de video) [4].

Blender es la suite de creación 3D gratuita y de código abierto, que gracias a sus características, herramientas y opciones de creación 3D y con una interfaz flexible, el usuario será capaz de realizar tareas de modelado, animación, simulación, renderizado, seguimiento de movimiento y editar video, o utilizar la plataforma para crear videojuegos. Soporta una gran variedad de formatos de imagen, archivos de video y compatible con archivos 3D generados con otro software como 3D Studio, Autodesk, Wavefront, DirectX, Lightwave, Motion Capture, SVG entre otros. Es un software multiplataforma y funciona sin problemas en Linux, Windows y Macintosh [12].

Figura 1. La combinación de una vista 2D y una 3D muestra la libertad del flujo de trabajo que proporciona Blender [13].

Blender tiene una interfaz flexible controlada por Python. Los colores, el tamaño y las fuentes uniformes se pueden ajustar o bien utilizar los cientos de complementos de la comunidad de software libre o crear su propia API de Python [12].

2 Trabajos relacionadosHaciendo énfasis en la Cultura Mixteca, principalmente la asentada en Oaxaca, cabe mencionar que es una de las regiones mesoamericanas de mayor profundidad histórica. A lo largo de aproximadamente 3,000 años, en ese territorio se desarrollaron dos de las más grandes tradiciones culturales, la Mixteca y la Zapoteca, las cuales se encuentran entre las más importantes de Mesoamérica por su longevidad y el alcance de sus aportaciones

Page 29: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

31

La primera

[5]. Hoy en día, esa extraordinaria diversidad cultural se refleja en los numerosos grupos étnicos que aún pueblan la entidad, en lo que de hecho constituye el conglomerado indígena más numeroso del país, con una notable variedad de lenguas, así como de costumbres y creencias con raíces prehispánicas [6].

Figura 2. Mapa de la región Mixteca, representando como punto sobresaliente a Nochixtlán, lugar donde fue encontrada una de las ollas ceremoniales

más representativas de la policromía mixteca en poder del INAH en México. MNA. Foto: Lind, Michael. 2008 Arqueología de la Mixteca.

Desde el año 2009 el INAH inició con un proyecto de modelado tridimensional denominado “Pon a México en el Mapa.” En dicha convocatoria se presentan modelados elaborados en tres dimensiones que corresponden a temas diversos. Los materiales son resultado de proyectos de investigación y de la convocatoria hecha entre estudiantes universitarios, para modelar estructuras prehispánicas y monumentos históricos bajo resguardo del Instituto [8]. La mayoría de los modelados corresponden a catedrales, templos, pirámides, zonas arqueológicas, y se debe de tener un alto grado de realismo para alcanzar los primeros lugares.

En cuestión de trabajos de reconstrucción o modelados virtuales, la Cultura Maya es de las más consultadas para dichos trabajos, los cuales se han realizado en ciudades de arquitectura e influencia maya. En este caso, la Cultura Mixteca se ha encontrado un poco alejada de dichas investigaciones y trabajos, a pesar de que existe una gran cantidad de información que ha sido obtenida por los arqueólogos del INAH y los diferentes museos

Page 30: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

32

Software libre

que se encuentran en dicha región, los cuales forman parte del objetivo del presente trabajo.

3 Objetivo de la investigación El objetivo general del presente trabajo se puede resumir como: “Crear un modelado tridimensional de vasijas polícromas y urnas mixtecas que permita comprender la impor-tancia de las artesanías prehispánicas de la Cultura Mixteca, ubicadas en nuestra región.” Cabe mencionar que otro de los objetivos importantes de este trabajo es desarrollarlo utilizando herramientas de software libre.

Para la realización del proyecto, se cuenta con el apoyo de personal del INAH, gestores ubicados en la ciudad de Huajuapan de León, arqueólogos de la ciudad de Oaxaca, Museo de las Culturas de Oaxaca y de un arqueólogo con sede en la Ciudad de México, quienes proporcionarán datos que se tienen de las excavaciones y los estudios que se han venido realizando en diferentes sitios de la mixteca, con vasijas policromas y urnas mixtecas.

Con la realización del el presente proyecto se pretende modelar en tres dimensiones específicamente urnas y vasijas polícromas, que son las que le dieron el reconocimiento de artesanos a los mixtecos que conquistaron con el arte los lugares que no pudieron con la guerra. Para tal fin, es necesario recuperar, analizar, estructurar y modelar la información obtenida por personal del INAH.

La Figura 3 muestra una vasija polícroma, la cual pertenece al grupo de ollas trípodes donde predominan los colores claros diseñando nubes, flores y cabezas de serpientes, todas formadas con volutas. La pieza muestra serpientes de perfil que van a repetirse muy a menudo en las vasijas mixtecas. En la misma pieza pueden observarse diseños de nubes en el cuello. Además, se considera posible que este diseño de nubes sea emblema de la nación y pueblos mixtecos, que se llaman a sí mismos “gente de las nubes”.

Es la importancia de esta Cultura y lo relevante que es para la preservación de la misma, es lo que motiva la realización de este proyecto, con el fin de generar material tridimensional que permita difundirla y preservarla a través de la educación.

Una aplicación que deba ser utilizada en un ambiente virtual requiere de un modelo de datos apropiado para manejar la información del mundo real, que sea flexible, extensible y con la capacidad para representar información del mundo real y virtual [1]. Modelos más apropiados impactarán positivamente en el tiempo de desarrollo y harán los sistemas más efectivos, prestando un mayor beneficio al usuario, y es parte de lo que se pretende.

Figura 3. Vasija trípode polícroma. Después de 950 d.C., en la Mixteca ocurrió una revolución cultural y artística que permitió a los mixtecos

crear la delicada cerámica polícroma. MNA. Foto: Marco Antonio Pacheco / Raíces

Page 31: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

33

La primera

4 Metodología de la investigación

El Diseño Centrado en el Usuario o UCD por sus siglas en Inglés (User-CenteredDesign) ha cobrado popularidad en los últimos años como proceso encaminado al diseño de productos, objetos o servicios, que respondan a las necesidades reales de sus usuarios finales [2]. UCD busca el desarrollo correcto y apropiado de aplicaciones centradas al usuario, por lo tanto, garantizando la usabilidad para usuarios específicos, en tareas específicas, y dentro de contexto de uso específicos.

La Figura 4, muestra lo que proponen en [7], mediante la adición de una nueva etapa, que implica el análisis conceptual. En esta nueva etapa se necesita saber más acerca de las experiencias de la gente, los usuarios finales, es aquí donde los estudios etnográficos, registros de interacción con el usuario y las encuestas se usan comúnmente. En dicha metodología estará basada la investigación que dará soporte a nuestro modelado.

Figura 4. Fases de la Metodología UCDe [7].

5 Resultados actuales Fase 1. Acopio de información y análisis de datos: Los objetos físicos de nuestro

estudio, conservan un estado diferente al que tuvieron cuando fueron hechas, por lo cual al realizar el análisis de manera conjunta con los arqueólogos se ha tratado de reproducir de la manera más fiel el modelo físico que permita apreciar el modelado en 3D. En esta fase ha sido fundamental el entendimiento entre el desarrollador y los arqueólogos.

Fase 2. Aplicación y desarrollo de la metodología UCDe: El presente proyecto de modelado tridimensional busca destacar las características físicas de las obras artesanales de dicha cultura. Por lo cual basados en UCDe se ha obtenido información con el grupo de usuarios que lo conforman, arqueólogos, visitantes a los museos y los guías del INAH, que servirá para el modelado tridimensional con un alto grado de aproximación a la realidad de los objetos.

6 Desarrollos alcanzados Aportaciones metodológicas: Los resultados obtenidos servirán de base para trabajos futuros en 3D, tanto en investigación como en trabajos de desarrollo que vinculen a la Cultura Mixteca.

Aportaciones prácticas: Los modelos se realizarán en base a la experiencia que viven los usuarios de los museos y el entendimiento que tienen con los guías y arqueólogos del INAH. Dichos modelos podrán ser utilizados por investigadores, educadores, estudiantes y público en general, para tener una concepción mejor del arte generado por la cultura mixteca.

Page 32: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

34

Software libre

AutoresNoé Coronel García: Tesista de la Maestría en Medios Interactivos de la Universidad Tecno-

lógica de la Mixteca. Colaborador del UsaLab, Experiencia y conocimiento en las áreas de Interacción Humano-Computadora, Fotografía, Software Libre, Diseño 3D.

Mario A. Moreno Rocha: Profesor investigador del área de Interacción Humano-Compu-tadora de la Universidad Tecnológica de la Mixteca. Tiene Maestría en Tecnología de Información. Actualmente se centra en las líneas de investigación Interacción Humano-Computadora (usuarios con discapacidades cognitivas). Es líder y fundador del Usa-Lab, adscrito al Instituto de Computación de la Universidad Tecnológica de la Mixteca en Huajuapan de León, Oaxaca, México. Cuenta con experiencia en el desarrollo de estudios de usabilidad, estudios contextuales y usabilidad transcultural desde el 2001. Amplia experiencia y conocimiento en HCI.

Agustín E. Andrade Cuautle: Arqueólogo por la Escuela Nacional de Antropología e His-toria, Catedrático de la Licenciatura en Antropología con especialidad en Arqueología de la Universidad Benito Juárez de Oaxaca. Coordinador de la sección de arqueología del Centro INAH Oaxaca y actualmente responsable de la zona arqueológica de Mitla.

ReferenciasB. Schilit, N. Adams, y R. Want, 1994. Context-aware computing applications. , 1st Interna-

tional Workshop on Mobile Computing Systems and Applications, pp. 85-90.D. Norman and S. Draper.1986. User Centered System Design; New Perspectives on Hu-

man-Computer Interaction. L. Erlbaum Associates Inc., Hillsdale, NJ, USA.D. Norman. 2002. The Design of Everyday Things. Basic Books, Inc.Fabregat Bolufer, Laia, Tejerina Antón, Daniel, Molina Vidal, Jaime, Frías Castillejo, Caro-

lina Anastilosis virtual con Blender: las termas del yacimiento Villa Romana de l’Albir (l’Alfàs del Pi, Alicante) Virtual Archaeology Review. 2012, 3(6): 45-48 URI: http://hdl.handle.net/10045/34363

M. Winter, Cerro de las minas, Oaxaca, Arqueología Mexicana.M. Winter. 1997. “La arqueología de los Valles Centrales de Oaxaca”, en Arqueología mexi-

cana, 26: 6-15, México.R. Harper, T. Rodden, Y. Rogers, and A. Sellen.2008.Being Human: Human-Computer Inte-

raction in the year 2020. Microsoft Research Ltd.Modelados 3D, http://www.inah.gob.mx/es/boletines/650-2o-concurso-nacional-del-inah-

pon-a-mexico-en-el-mapa junio, 2016.Autodesk | 3D Design, Engineering & Entertainment Software, http://www.autodesk.com/

junio, 2016.blender.org - Home of the Blender project - Free and Open 3D creation software, https://

www.blender.org/ mayo, 2016.Patrimonio http://es.unesco.org/creativity/sites/creativity/files/digital-library/cdis/Patrimo-

nio.pdf enero, 2017.blender.org - Home of the Blender project - Free and open 3D Creation Software https://

www.blender.org/ marzo, 2017.features_storyart_pepeland.jpg https://www.blender.org/wp-content/uploads/2013/05/fea-

tures_storyart_pepeland.jpg marzo, 2017.

Page 33: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

35

La primera

Impacto del sotfware libre en la Universidad

Tecnológica de la MixtecaCarlos Vázquez Cid de León, Erik Germán Ramos Pérez

Resumen En el 2017 hablar del uso del software libre es cada vez más común a nivel mundial y México no está exento, desde las pequeñas hasta las grandes empresas viven esta necesidad imperante, el dinamismo y eficiencia en un proceso globalizado responden a una exigencia mayor de los mercados, y como era de esperarse este tema impacta también a las universidades del país incluyendo a las ubicadas en el estado de Oaxaca, este trabajo es de tipo correlacional cuantitativo e identifica al (sujeto - objeto de estudio), y el impacto en la situación económica, los gastos que implican el uso de software propietario es bastante alto, y se busca como objetivo minimizarlo. A través de la SEP y otros fondos extraordinarios la Universidad Tecnológica de la Mixteca recibe recursos económicos por ejemplo de programas como (PIFI, PROFOCIE, PFCE y PRODEP) en dichos fondos se han obtenido recursos por más de $500,000.00 para la adquisición de licencias de software; los montos recibidos han beneficiado a la comunidad universitaria, alumnos, profesores y personal administrativo, sin embargo, si se hubiera utilizado software libre, el recurso antes mencionado pudo haber formado parte de una planeación para el fortalecimiento de la UTM, adquiriendo equipamiento de cómputo, impactando positivamente en las funciones sustantivas a realizar por académicos y en las funciones y tareas del personal administrativo. El presente trabajo muestra un análisis del impacto que ha tenido el software libre en los últimos siete años dentro de nuestra Universidad y cómo afecta también a la formación integral de los estudiantes.

1 IntroducciónEste trabajo pretende evaluar el impacto y la relación que existe entre el uso de software libre y el software propietario en la Universidad Tecnológica de la Mixteca (UTM) en el periodo 2010 – 2016, durante al menos estos últimos siete años, la compra de software se ha vuelto un patrón de comportamiento, generando una dependencia poco decorosa, por lo que es de suma importancia el proceso de planeación y formulación de proyectos en

Page 34: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

36

Software libre

la etapa de integración de requerimientos que responden a las necesidades de funciones sustantivas en el quehacer universitario. El problema radica en la solicitud de recursos ante la Secretaría de Educación Pública (SEP) y algunos otros programas que apoyan con recursos económicos a las universidades, en el caso de la UTM la asignación de recursos de fondos extraordinarios que recibe pueden o podrían ser canalizados para la adquisición de infraestructura en cómputo y son aplicados en la compra de software propietario, por lo que se requiere de estrategias que coadyuven en el uso de software propietario. El objetivo general es detectar si la falta de planeación para la adquisición de software libre ha causado un impacto negativo en la formación integral del estudiante al no adquirir más infraestructura que fortalezca laboratorios y salas de cómputo.

2 RecuRsos pRodep, pRofocie y pfceA continuación se muestra por año los recursos obtenidos por fondos extraordinarios como el programa para el desarrollo docente (PRODEP) [1], Programa de Fortalecimiento de la Calidad Educativa (PFCE) [2], Programa de Fortalecimiento de la Calidad en Instituciones Educativas (PROFOCIE) [3].

2.1 Ejercicio 2010En el cuadro 1 se puede ver que hubo recursos para la compra de licencias por la cantidad de $ 250,988.00

Cuadro 1. Adquisición de licencias en el 2010.Cant software Costo Monto asignado

1 Mathematica $ 10,000.00 $ 10,000.001 Pixelart $ 24,494.00 $ 24,494.007 Adobe CSS $ 16,000.00 $ 112,000.001 Software

especializado$ 70,000.00 $ 70,000.00

1 Mathematica $ 10,000.00 $ 10,000.001 Pixelart $ 24,494.00 $ 24,494.00

Sin embargo, se pudo evitar el pago de algunas licencias, haciendo uso de software libre.En lugar de comprar la licencia de Mathematica, se pudo utilizar: Maxima, Mathics,

Sage, GNU Octave o R.De la misma manera, se pudo también sustituir el uso de Pixelart por una herramienta

muy sólida como lo es Gimp.El más complicado de sustituir es Adobe CSS por todo lo que incluye, sin embargo, hay

muchas herramientas sin costo que lo pueden suplir: gimp Scribus Inkscape kdenlive KompoZer, Blender, Preview.

Sustituyendo estas herramientas se pudo tener un ahorro en el año 2010 de $ 180,988.00.

Page 35: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

37

La primera

2.2 Ejercicio 2011En el cuadro 2 se puede ver que hubo recursos para la compra de licencias por la

cantidad de $ 38,865.00

Cuadro 2. Adquisición de licencias en el 2011.Cant software Costo Monto asignado

1 maplesoft $ 13,000.00 $ 13,000.001 Scientific work place $ 16,865.00 $ 16,865.002 Poser $ 4,500.00 $ 9,000.00

Maplesotf puede ser sustituido por Maxima, Mathics, Sage, GNU Octave o R.Scientific work place puede ser sustituido por Latex.Finalmente Poser puede ser reemplazado por Blender.Sustituyendo estas herramientas se pudo tener un ahorro en el año 2011 de $ 38,865.00.

2.3 Ejercicio 2012En el cuadro 3 se puede ver que hubo recursos para la compra de licencias por la cantidad de $ 33,698.00

Cuadro 3. Adquisición de licencias en el 2012.Cant software Costo Monto asignado

1 Aspel SAE $ 15,377.00 $ 15,377.001 Aspel COI $ 8,919.00 $ 8,919.001 Aspel NOI $ 9,402.00 $ 9,402.00

Desafortunadamente no hay una versión libre para sustituir estas licencias, hay algunos intentos, pero aún no alcanzan una madurez.

2.4 Ejercicio 2013En el cuadro 4 se puede ver que hubo recursos para la compra de licencias por la cantidad de $ 190,000.00

Cuadro 4. Adquisición de licencias en el 2013.

Cant software Costo Monto asignado1 Autodesk Product Design

Suite For Education 2013$ 190,000.00 $ 190,000.00

Este software se pudo reemplazar por Blender y lograr un ahorro significativo de $ 190,000,00.

2.5 Ejercicio 2014En el cuadro 5 se puede ver que hubo recursos para la compra de licencias por la cantidad de $ 10,621.00

Page 36: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

38

Software libre

Cuadro 5. Adquisición de licencias en el 2014.Cant software Costo Monto asignado

1 Mecanalyst $ 8,621.00 $ 8,621.001 Software especializado $ 2,000.00 $ 2,000.00

En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como R o WEKA.

Sustituyendo estas herramientas se pudo tener un ahorro en el año 2014 de $ 8,621.00.

2.6 Ejercicio 2015En el cuadro 6 se puede ver que hubo recursos para la compra de licencias por la cantidad de $ 19,270.00

Cuadro 6. Adquisición de licencias en el 2015.Cant software Costo Monto asignado

2 Office $ 3,943.00 $ 7,886.002 Office $ 3,942.00 $ 7,884.001 Office $ 3,500.00 $ 3,500.00

La licencia de Microsoft office puede ser sustituido por libre office, además, esta herramienta ha mejorado mucho su interfaz.

Al utilizar esta herramienta se pudo tener un ahorro en el año 2015 de $ 19,270.00.

2.7 Ejercicio 2016En el cuadro 7 se puede ver que hubo recursos para la compra de licencias por la cantidad de $ 154,101.00

Cuadro 7. Adquisición de licencias en el 2015.Cant software Costo Monto asignado

2 Office home $ 4,450.00 $ 8,900.004 Office 365 $ 7,000.00 $ 14,000.0030 Office 2016 $ 4,000.00 $ 120,000.001 Office $ 2,401.00 $ 2,401.001 Rosetta Stone $ 8,800.00 $ 8,800.00

La licencia de Microsoft office puede ser sustituido por libre office, además, esta herramienta ha mejorado mucho su interfaz.

Al utilizar esta herramienta se pudo tener un ahorro en el año 2016 de $ 154,101.00.

2.8 Resumen de todos los ejerciciosA continuación, en el cuadro 8 se muestra el ahorro que se pudo haber tenido por año.

Cuadro 8. Ahorro por año.

Page 37: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

39

La primera

Año ahorro2010 $ 180,988.002011 $ 38,865.002012 $ 0.002013 $ 190,000.002014 $ 8,621.002015 $ 19,270.002016 $ 154,101.00

Después de haber analizado el software propietario que pudo haber sido sustituido por software libre, el ahorro sería de $ 591,845.00.

Este ahorro tan significativo, puede ser empleados en equipamiento que ayude a realizar otras funciones importantes para la universidad.

2.9 Impacto del uso de software libre

en la Universidad Tecnológica de la MixtecaSe pueden considerar algunos impactos del uso de software libre en la Universidad

Tecnológica de la Mixteca, para este trabajo como se pueden apreciar en el cuadro 9 por ejemplo:

Cuadro 9 Impacto del uso de software libre en la Universidad Tecnológica de la MixtecaConcepto Área Beneficiario Impacto

Compra de cómputo Salas de cómputo Estudiantes de todas las

carreras.

No poder usar el equipo de cómputo para realizar tareas, investigaciones o para efectos de estudio.

Uso de software libre

Diferentes áreas de la UTM

Comunidad universitaria de la UTM.

Limitar funciones sustantivas en cada uno de los casos particulares de los diferentes niveles jerárquicos de la UTM, al no tener la costumbre del uso de software libre se ve perjudicada la actividad y en algunos otros casos ya no se realiza.

Uso de software libre

Diferentes carreras de la UTM Estudiantes y profesores

No se modifican los planes y programas de estudio en el uso del software libre y solo en algunos casos la incorporación del aprendizaje del software propietario.

Uso de software libre Egresados Empleadores o sector

productivo

Al no tener la cultura de la sustitución del software propietario por el software libre no se elaboran proyectos de ahorro en la sustitución y aprendizaje en el uso del software libre, lo que implica la dependencia en el sector productivo o para los empleadores.

Page 38: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

40

Software libre

Estos son algunos de los ejemplos de los impactos que representa el uso del software libre y de posibles escenarios que pueden proyectar una opción de cambio decorosa para la comunidad universitaria e incluso hacia el exterior de la UTM.

3 ConclusionesAl término de este trabajo se puede apreciar que la falta de estrategias en el proceso de adquisiciones de bienes muebles o servicios (BMS) se ven disminuidas por productos perecederos como es el caso del software propietario, considerando su vigencia de corto plazo y el haber invertido ya montos que oscilan en aproximadamente $600,000.00 pesos y que sigue creciendo la inversión en nuestra universidad así como en el resto del mundo, en estos últimos 7 años se pudo haber equipado por mencionar algunos ejemplos a 50 profesores de la UTM con un equipo de cómputo personal con un valor promedio de $10,000.00 pesos, lo que equivale a 10 veces equipar a la carrera de ingeniería industrial , otro ejemplo es el haber equipado una sala de computo con 40 computadoras y el sistema de aire acondicionado. Es una realidad que el uso de software libre debe promoverse y aventurarnos en la búsqueda del cambio por un futuro más próspero para la UTM y para otras universidades e instituciones que dependen hoy en el 2017 de software propietario, el impacto en la formación integral del estudiante se ve afecta principalmente en la no actualización de equipos que forman parte de la infraestructura de la UTM y que los alumnos son los principales beneficiaros al usar dichos equipos, en otro escenario se ven afectados los estudiantes al no tener disponibles equipos nuevos y trabajar con equipos obsoletos al no ser sustituidos dentro de la propuesta de planeación al adquirir software propietario, lo que implica una sustitución o actualización de equipos en las salas de computo más lenta.

Referencias[1] programa para el desarrollo docente (PRODEP), 18 de Abril de 2017, http://dsa.sep.

gob.mx/[2] Programa de Fortalecimiento de la Calidad Educativa (PFCE), 18 de Abril de 2017,

http://www.dfi.ses.sep.gob.mx/PFCE/Introduccion_PFCE.html[3] Programa de Fortalecimiento de la Calidad en Instituciones Educativas (PROFOCIE),

18 de Abril de 2017, http://www.dgesu.ses.sep.gob.mx/PROFOCIE.htm

Carlos Vázquez Cid de León ([email protected]) Profesor Investigador de la carrera de ingeniería Industrial, Universidad Tecnológica de la Mixteca. Estudiante de doctorado en Ciencias de la administración por la Universidad Autónoma Benito Juárez de Oaxaca.

Erik Germán Ramos Pérez ([email protected]) Profesor Investigador del Instituto en Computación, Universidad Tecnológica de la Mixteca.

Page 39: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

41

La primera

Implementación del modelo de restricciones del problema de calendarización de horarios universitarios con PYTHON

Dra. Lluvia Carolina Morales Reynaga, Dr. José Figueroa Martínez, Lic. Juan Pablo Gómez Martínez

En este documento se describe el modelo de restricciones del problema de calendarización de horarios de clases de la Universidad Tecnológica de la Mixteca (UTM) que se ha desarrollado utilizando el lenguaje de programación Python, de tal manera que se pueda generar una función objetivo que permita medir la calidad de una solución del problema.

Al proceso de seleccionar y asignar recursos y tiempo al conjunto de actividades de una planificación, y teniendo en cuenta que la asignación debe cumplir con un conjunto de restricciones que reflejan la relación temporal entre las actividades y la capacidad limitada de los recursos compartidos se le llama Problema de Programación o Problema de Calendarización [1].

Las restricciones son los requerimientos del problema que pueden ser cuantificados para generar una medida de calidad de la solución/horario propuesto, por ejemplo, si tenemos las restricciones siguientes:

Un profesor no puede estar asignado a dos salones simultáneamente y Un lugar (salón de clases) no puede ser utilizado por dos grupos diferentes al mismo

tiempo (a la misma hora, el mismo día). Entonces si no se cumple con alguna de las restricciones, se deberá considerar una

penalización cuantificable por cada restricción no satisfecha.La función objetivo se utiliza en problemas de optimización. En este caso se utilizará

en la implementación de meta-heurísticas, específicamente se implementarán cuatro, las cuales son: Algoritmo Genético, Algoritmo de Búsqueda Tabú, Algoritmo de Búsqueda Armónica y Algoritmo de Recocido Simulado. Todo esto para comparar el desempeño de cada una de éstas y encontrar una solución factible y buena en términos de tiempo y función objetivo al problema de calendarización de la UTM.

Page 40: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

42

Software libre

1.RestriccionesLas restricciones se dividen en dos categorías:

Restricción fuerte: Son las que deben cumplirse de manera obligatoria. En la figura 1 se muestra un ejemplo de esta restricción; y

Restricción débil: Si no se puede cumplir, no afecta a la factibilidad de la solución. Esto significa que ésta restricción puede no satisfacerse [2].

Figura 1. Ejemplo de una restricción fuerte.

A continuación se listan las restricciones con las que se trabaja actualmente en la UTM.

Restricciones fuertes:1. Las clases de teoría y práctica no deben ser a la misma hora, el mismo día.2. Las clases no deben impartirse durante algún día y hora restringida para ellas.3. Un profesor no puede estar en dos lugares distintos a la misma hora, el mismo día.4. Dos o más profesores o grupos no pueden estar en el mismo lugar a la misma hora, el

mismo día; a menos que sea una multiasignación de grupos y/o profesores.5. Si un profesor da clases a las 8:00 a.m., no puede dar clases a las 1:00 p.m.6. Un espacio debe permitir solo 9 horas de clase al día ya sea del mismo o diferentes

grupos.7. Un grupo debe tener dos horas de clases libres al día para que en alguna de ellas se les

pueda asignar clases de inglés.8. Un grupo no debe tomar clases en la hora en que un alumno toma clases de

recursamiento junto a otro grupo.

Restricciones débiles:1. Que los profesores tengan un horario continuo de clases. A menos que el profesor

especifique lo contrario. Y que tengan su horario en las horas que ellos prefieran.2. Que los alumnos tengan un horario continuo de clases. Pero siempre con horas en la

tarde y en la mañana.

Page 41: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

43

La primera

3. Que no existan clases de práctica fuera del horario habitual de clases, a menos que se especifique directamente en los datos de entrada.

4. Que los profesores impartan las mismas materias que en semestres anteriores afines.5. Que los profesores tengan horarios muy similares, si no es que el mismo que en

semestres anteriores afines.6. Que los grupos no tomen clases continuas en lugares demasiado alejados.7. Que los grupos de diferentes carreras tomen clases en grupos de aulas

“interdisciplinarios”.

2. Python como lenguaje de programación para las

restriccionesSe utiliza Python para la evaluación de las restricciones y para la generación de soluciones. ¿Por qué? A continuación enumeramos algunas de las justificaciones:

Python es un lenguaje de programación orientado a objetos, interpretado e interactivo. Python combina un poder notable con una sintaxis muy clara. Tiene módulos, clases, excepciones, tipos de datos dinámicos de muy alto nivel y

escritura dinámica. Hay interfaces para muchas llamadas de sistema y bibliotecas, así como a varios

sistemas de ventanas. Los nuevos módulos integrados se escriben fácilmente en C o C ++ (u otros lenguajes,

dependiendo de la implementación elegida). Python también es útil como un lenguaje de extensión para aplicaciones escritas en

otros lenguajes que necesitan interfaces de scripting o automatización fáciles de utilizar [3].

Éstas son las principales ventajas que tiene Python, destacando su legibilidad, compatibilidad con otros lenguajes y su extensa comunidad en la red que crece constantemente, de donde podemos obtener información con respecto a las funciones o nuevos módulos durante el proceso de programación. También es necesario mencionar que los tipos de datos que se utilizan en la implementación son principalmente diccionarios, listas y conjuntos, ya que con éstas funciones se facilita la evaluación de las restricciones.

Para el intercambio de datos del lenguaje de programación y la base de datos se utiliza JavaScript Object Notation (JSON). La ventaja de este formato es que es simple de generar e interpretar, además de que es legible por parte del programador, de esta manera se puede acelerar el tiempo de programación y permitir una fácil corrección y/o modificación a futuro. Python cuenta con módulos de terceros para leer e interpretar JSON. En las figuras 2 y 3 se pueden apreciar la manera en que los datos están estructurados para que pueda ser utilizado por Python.

Page 42: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

44

Software libre

1.{“metabounds”:2. {“samehourtp”:false,3. “aid”:1887,4. “mid”:null,5. “gpid”:103,6. “gtid”:101,7. “assignments”:8. [{“assignment”:1887,9. “teacher”:211,10. “group”:399,11. “recursamientos”:[],12. “specialty”:null}],13. “size”:5,14. “recursamientos”:[],16. “lgs”:17. [{“lectures”:[{“t”:”t”, “n”:5, “d”:1}],18. “hours”:[9, 10, 11, 12, 13],19. “days”:[0, 1, 2, 3, 4],20. “daysinorder”:false,21. “hidx”:2,22. “pidx”:-1},23. {“lectures”:[{“t”:”p”, “n”:1, “d”:2}],24. “hours”:[8,9,10,11,12,13,16,17,18],25. “days”:[0, 1, 2, 3, 4],26. “daysinorder”:false,27. “hidx”:3,28. “pidx”:4}]}

Figura 2. Estructura en JSON de las restricciones y preferencias de los profesores que son utilizados para formular las restricciones.

1.{“bounds”:#Espacio de teoría (se elige Aleatorio)2. [2,25,15,30,33,19,6,40,12,9,44,11,18, 26,41,14,4,72,32,43,10,13,8,5,34,37, 16,7,2 9,3,2139,42,17],#Espacio de práctica (se elige Aleatorio)3. [64],#Hora de Teoría (se elige Aleatorio)4. [8, 9, 10, 11, 12, 13, 16, 17, 18],#Hora de Práctica (se elige Aleatorio)5. [8, 9, 10, 11, 12, 13, 16, 17, 18],#Día de Práctica (se hace una Permutación

y se elige el primero de la lista, véase en la figura 2 que “n” es el número de días)

6. [0, 1, 4, 3, 2]}Figura 3. Estructura en JSON de los espacios, horas y días que

pueden ser seleccionados para generar una solución.

Page 43: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

45

La primera

En la figura 4 se muestra una parte de código y cómo es utilizado la estructura JSON para obtener los datos.

Figura 4. Parte de código implementado en python donde se observa el uso de datos obtenidos con JSON.

Para la implementación de las restricciones en el código json de la figura 1 se describen los elementos implicados que hacen posible una asignación, los cuales son utilizados de manera implícita en cada restricción.

Espacios: Representan salones de clases o aulas especiales (cubículos, salas de cómputo) en la UTM que cuentan con los elementos necesarios para que sea posible impartir una clase dentro de ella. En la universidad hay 95 espacios.

Días: Son los días hábiles de la semana en las que es posible impartir clases. Se toma en cuenta 5 días de la semana (Lunes-Viernes).

Horas: Son el tiempo del día en las que es posible asignar una clase. Se utilizan 9 horas de trabajo, las cuales son de 8:00 horas hasta las 14:00 horas y de 16:00 horas hasta las 19:00 horas.

Profesores: Son los catedráticos de tiempo completo que laboran en la Universidad y que se les puede asignar alguna materia a impartir (de su línea de investigación). Se toman en cuenta 200 profesores.

Materias: Se refieren al plan de estudios que se dictan en la Universidad Tecnológica de la Mixteca (Ej. Cálculo Diferencial, Programación orientada a objetos, Comunicación Visual, etc.). En total hay 246 materias en la Universidad.

Grupos: Lo conforman un conjunto de alumnos que cursan una misma carrera. Actualmente se cuenta con 50 grupos.

También se especifican los elementos que definirán de qué manera es la asignación. Duración: Cuánto tiempo tendrá vigencia una clase. Puede ser de 1 hora hasta 5 horas.Hora de Inicio: Se refiere al tiempo en que se inicia la clase. El intervalo es de 8:00 a

13:00 y 16:00 a 18:00.Hora de Fin: Se refiere al tiempo en que culminará una clase. Está entre los intervalos

9:00 a 14:00 y 17:00 a 19:00.Clase de Teoría: Se refiere a si existe una clase teórica (puede ser de práctica si el

profesor lo requiere).Clase de Práctica: Se refiere a si existe una clase de práctica.Día restringido: Es un día de la semana laboral en la que no es posible tener una

asignación (por cargos u otros impedimentos por parte del profesor).

Page 44: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

46

Software libre

Hora restringida: Es una hora del día en la que no puede haber una asignación (por cargos u otros impedimentos por parte del profesor o los alumnos).

Hora Preferida: Es una hora en la que un profesor puede dar clases de acuerdo a su conveniencia.

A partir de las definiciones mencionadas anteriormente, se generan los datos que se utilizan en la lógica del código fuente en Python para evaluar cada una de las restricciones. Esto se lleva a cabo utilizando el intercambio de datos con JSON para facilitar la programación. Además, con estos datos se define una función de factibilidad y una función heurística; la función de factibilidad representa el conjunto de restricciones fuertes y la función heurística el conjunto de restricciones débiles que unidas permiten definir la función objetivo.

La función de factibilidad se puede representar como una suma de los costos de cada restricción fuerte i multiplicado por un peso i que se le da a cada restricción dependiendo de la importancia que tenga éste con respecto a la solución final; esto es:

f =

En donde el costo es calculado a partir del cumplimiento o incumplimiento de cada elemento de una solución, por ejemplo, contabilizando cada insatisfacción. Esta función definirá la factibilidad de la solución que se está evaluando de tal manera que pueda ser comparada con otras soluciones y de esa manera encontrar una solución factible al problema de horarios.

Por otra parte la función heurística se encarga de verificar la bondad de una solución, por consiguiente es necesario tener una solución factible para verificar si la solución es buena, ya que sólo de esta manera se puede asegurar que la solución sea factible y buena a la vez; esto no siempre es posible pero siempre se pretende obtener una solución lo más cercano al óptimo.

3 ConclusionesLa implementación en el lenguaje de programación Python facilita la comprensión del

código para futuras modificaciones, además de que es rápido y eficiente ya que dispone de diferentes módulos y funciones que ayudan en la implementación, y no es necesario preocuparse por el tipo de datos en casos donde no se utilizan.

Por el hecho de que el código en Python es legible y fácil de implementar, es preferible escribir en código las restricciones para después hacer una formalización, de esta manera se puede tener una idea de la estructura de ésta de manera más clara y concisa en caso de que se tenga problemas.

Por último, es importante mencionar que este modelo permite agregar restricciones evaluables por medio del código en python ya que cada una de ellas se ha implementado en un módulo independiente que permite agregarlas a la función de factibilidad o heurística sin necesidad de cambiar todo el código o, dependiendo de las circunstancias se puede modificar parte del código, pero se pretende que sean mínimas las modificaciones a realizar.

Page 45: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

47

La primera

Python es un buen lenguaje para los que empiezan a programar y se puede convertir en un lenguaje potente y robusto para los conocedores de mismo, implementando técnicas de programación más avanzadas como la programación funcional que ya incluyen las nuevas versiones de Python.

Referencias[1] D. de Werra. Some combinatorial models for course scheduling. Springer Berlin Hei-

delberg, Berlin, Heidelberg, 1996.[2] Hamed Babaei, Jaber Karimpour, and Amin Hadidi. A survey of approaches for univer-

sity course timetabling problem. Computers and Industrial Engineering, 86(April):43-59, 2014.

[3] https://www.python.org citado en Abril de 2017.

Juan Pablo Gómez Martínez ([email protected]) Alumno de Maestría en Tecnologías de Cómputo Aplicado.

Page 46: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

49

La primera

Programa de Lecturas (ProLec versión 3.0)

Lizbeth Yadira Colores Guzmán, Alma Rosa Ramírez Vega, Lluvia Morales, Mario Alberto Moreno Rocha, José Figueroa Martínez, Rebeca Renata Pérez Damián, David May Cuevas

En el presente trabajo se muestra la creación de una página web programada en lenguaje PHP, Javascript, HTML5 y CSS3, que permite a los alumnos de la Universidad Tecnológica de la Mixteca enviar su reporte de lectura mensualmente mediante la plataforma. Se utiliza el programa Wampserver para Windows 10, el cual ya contiene el lenguaje de la base de datos MySQL, PHP y apache para su uso. Con este programa de uso libre, es posible programar la base de datos utilizada. La base de datos está alojada en un servidor de la universidad y es por ello que se utiliza PuTTY, un programa de software libre que permite manipular la base de datos a distancia.

Cuadro 1. Software libre que se utilizó.Propósito Software libre y gratuito Sitio web oficial

Entorno de desarrollo web de Windows Wamp Server http://www.wampserver.es/Gestor de archivos Filezilla https://filezilla-project.org/cliente SSH, Telnet,rlogin, y TCP raw PuTTY http://www.putty.org/

Finalmente Filezilla, es un programa que permite subir la página ya programada al servidor, con este se pueden modificar los archivos para luego ver las modificaciones dentro de la página web.

En el Cuadro 1 es posible ver un resumen del software libre utilizado en el desarrollo del sistema, el propósito y el sitio Web en el que se puede acceder al mismo.

1 Experiencias con el uso de software librePara crear la página web asociada al sistema ProLect, previamente se llevó a cabo el registro de los módulos que debían programarse con el software de WampServer para el uso de HTML5, Javascript, Apache y MySQL.

Lizbeth Yadira Colores Guzmán. Estudiante del octavo semestre de la carrera de Ingeniería en Computación de la Universidad Tecnológica de la Mixteca. [email protected]

Alma Rosa Ramírez Vega. Estudiante del octavo semestre de la carrera de Ingeniería en Computación de la Universidad Tec-nológica de la Mixteca. [email protected]

Page 47: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

50

Software libre

El módulo general del sistema es el que corresponde al inicio de sesión (ver Figura 2). Los alumnos pueden acceder a ProLec 3.0 utilizando el usuario y contraseña institucionales que le fueron asignados durante el propedéutico en el área de red.

Los módulos a programar por parte del usuario alumno son:• Registro de los datos del alumno,• Página de inicio con mensajes del administrador e información general sobre las

entregas de los reportes la cual se puede ver en la Figura 3.• Gestor de redacción de su reporte de lectura (ver Figura 4),• Visualizador de los libros recientes y los libros anteriores, el cual se muestra en la Figura 6.• Control del envío de sus reportes de lecturas.

Por parte del administrador se tienen:• El control de las fechas de entregas de todos los alumnos.• Gestión de reportes de lecturas recibidos se puede ver en la Figura 5,• Visualizador de una biblioteca de libros y gestión de la misma,• Control de las listas de los grupos que envían sus reportes por un año y periodo

específicos y• Generador de reportes de las entregas.• Evaluador de reportes de lecturas que se puede ver en la Figura 7.

Ya que se han programado todos y cada uno de los módulos, los archivos relacionados, se suben al servidor con el programa filezilla, el cual permite ver las modificaciones realizadas en la página web.

2 Experiencias y resultadosEl software libre es una alternativa real que ha permitido la disminución importante de costos durante el desarrollo del Sistema de Lecturas, además de que hay una gran cantidad de personas y empresas que brindan soporte en caso de duda.

A continuación se muestra la experiencia que se tuvo durante el desarrollo de ProLec 3.0.

2.1 Diseño de la base de datos con MySQLMySQL es un sistema de gestión de bases de datos relacional desarrollado bajo licencia dual GPL/Licencia comercial por Oracle Corporation y está considerada como la base datos open source más popular del mundo, y una de las más populares en general junto a Oracle y Microsoft SQL Server, sobre todo para entornos de desarrollo web [1].

Con el uso de MySQL para almacenar la información del Sistema Web ProLec 3.0, se crea la base de datos que contiene los registros de los alumnos quienes hacen uso de la plataforma dentro de la universidad, así como la creación de todas y cada una de las tablas que permitirán almacenar la información que es utilizada dentro del servidor y que se pueden observar en el cuadro 2.

Cuadro 2. Tablas utilizadas dentro de la base de datos.

Nombre de la tabla Descripciónadministrador Guardar datos relacionados con el evaluador.alumno Guardar datos relacionados con los alumnos.carrera Datos relacionados a las 11 carreras existentes

Page 48: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

51

La primera

Entrega Guardar fechas de entrega para los periodos de entrega de reportes de lectura.grupo Colocar los grupos existentes.Libro Información relacionada a los libros subidos en el servidor de cada periodo.Revisión_usuario Guardar los reportes de lecturas entregados por parte de los alumnos.

2.2 Creación de los módulos utilizados.El uso de Wampserver para la programación de los módulos que contiene el Sistema Web, permitió tener una grata experiencia al ser un software fácil de utilizar. En las figuras 1 a 6 se presentan algunos de los módulos programados como páginas dinámicas con el leguaje PHP, Javascript, HTML5 y CSS3.

A continuación se muestra la página de inicio del sistema que puede visualizar el usuario alumno junto a su menú asociado.

Figura 1. Página de inicio de sesión.

Figura 2. Funcionalidades en la interfaz del alumno.

Page 49: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

52

Software libre

Recordemos que la función principal por la cual se hace uso del software libre en este caso, es el módulo que permite que el alumno pueda subir su reporte de lectura mensualmente utilizando la interfaz mostrada en la Figura 3.

Figura 3. Redactar reporte de lectura.

En esta interfaz también se hace uso de un servidor de correo electrónico proporcionado por la universidad.

Se envían mensajes al correo del alumno de los datos de sus reportes de lectura cuando estos ya han sido enviados para que el administrador los revise.

Por otro lado se tiene la interfaz del administrador como se muestra en la Figura 4.

Figura 4. Funcionalidades en la interfaz del evaluador/administrador.

Page 50: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

53

La primera

En la Figura 5 se muestra la interfaz en donde el evaluador puede subir libros, esto se programa en lenguaje PHP para que se puedan subir y descargar los archivos directo al servidor.

Figura 5. Lista de libros subidos al servidor.

Otra de las funcionalidades programadas es la evaluación de cada uno de los reportes de lecturas recibidos por parte de los alumnos.

Se ha diseñado la interfaz e la Figura 6 para este propósito.Para poder gestionar la información de la base de datos desde una página, se establece

una conexión del lenguaje PHP con MySQL.

Figura 6. Evaluación de los reportes mensuales.

Page 51: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

54

Software libre

2.3 Manipulación de la base de datos.Para la manipulación del servicio de la base de datos ya subida en el servidor, se ha utilizado el software llamado PuTTY (Figura 7) que como ya se había mencionado, sirve para almacenar el host del servidor y manipular la base de datos que pertenece a este.

Figura 7. Conexión con la base de datos de un servidor.

Es así como se realiza la conexión con la base de datos alojada en el servidor de la universidad. Se necesita colocar el host y posteriormente el usuario y contraseña para poder manipular la base de datos.

2.4 Manipulación de los archivos.Para la manipulación de las páginas o

archivos que pertenecen a la plataforma, se hace uso del programa de filezilla.

Figura 8. Cliente de FTP FileZilla

En la parte superior de la ventana del programa (ver Figura 11) se observan cuatro cuadros de texto en los que se deben colocar los siguientes datos:

Dirección FTP del dominio: es la IP que se te envía vía e-mail al recibir el alta del servicio de hosting. También puedes usar la URL (Ejemplo: lecturas.utm.mx).

Page 52: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

55

La primera

Nombre de usuario: es el nombre de usuario asignado desde el panel de configuración para la cuenta.

Contraseña: es la contraseña asignada desde el panel de configuración para la cuenta de FTP.

Puerto: en este caso se coloca el número 21.Al colocar los datos requeridos en los recuadros anteriores, se muestran los archivos

subidos en el servidor guardados en una carpeta de la página.

Figura 9. Conexión al servidor.

Después se seleccionan los archivos que se desean subir al servidor, presionando el botón derecho sobre los mismos y del menú que se despliega selecciona la opción Subir.

Una vez completado el proceso de subida de archivos, se abre el explorador de internet. Se coloca la dirección del sitio web y se debe ver la página que se acaba de subir para asegurarse de que se visualiza correctamente.

ConclusionesEn este trabajo se muestra el uso que se le ha dado a diversas herramientas de software

libre para generar un sistema Web titulado ProLect 3.0.En nuestra opinión el software libre permite a los usuarios las mismas posibilidades que

tienen otro tipo de programas que no son libres, con la gran ventaja de que el software libre es gratuito y está accesible en internet para poder ser utilizado y modificarlo para las necesidades de cada uno de los usuarios.

Page 53: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

56

Software libre

Por estas y muchas más razones a lo largo del tiempo han sido muchos usuarios que nos hemos unido al software libre.

Durante el desarrollo del Sistema de Lecturas de la UTM se ha investigado y probado software libre que antes no se conocía. Nos parece muy interesante y ha hecho que miremos de otra manera más crítica el software privativo.

Esta práctica ha sido muy satisfactoria porque se han estudiado herramientas y programas que anteriormente no se habían utilizado y gracias a esto se ha aprendido a utilizarlas, obteniendo un resultado satisfactorio para el uso de programas gratuitos para la gestión de una página web.

Figura 10. Subir carpeta con los archivos al servidor.

Referencias[1] RAAD, F. C. I. (2015). DESARROLLO DE UN PORTAL WEB CON TECNOLOGIA PHP/MYS-

QL (Doctoral dissertation).

Page 54: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

57

La primera

Modelado de la operatividad de un repositorio institucional con acceso

abierto utilizando ProtégéMaría Auxilio Medina, J. Alfredo Sánchez, Ofelia Cervantes V.

1 IntroducciónAlgunas Instituciones de Educación Superior almacenan parte su producción intelectual en un repositorio institucional (RI), el cual es una “plataforma digital centralizada que sigue estándares internacionales de interoperabilidad, mantiene, preserva y disemina la información científica, tecnológica y de innovación, la cual se deriva de las investigaciones, productos educativos, académicos y desarrollos tecnológicos [1]”. Para las IES, contar con un RI ofrece beneficios como preservación de la producción académica y científica, acceso a texto completo de documentos en formato digital del propio RI u otros, incremento en la visibilidad de la institución y de los autores, establecimiento de políticas de distribución de acceso abierto para los documentos y metadatos.

Este documento presenta el modelado de un RI y su operación utilizando el editor de ontologías Protégé, con el propósito de apoyar la adquisición de conocimiento de dominio a través del uso de un vocabulario controlado, una representación de conocimiento formal, no ambigua de los términos y sus relaciones que puede compartirse y reutilizarse entre usuarios y computadoras.

El documento está organizado como sigue. Los beneficios del modelado semántico para RIs se listan en la sección 2. La sección 3 describe el modelado semántico. Finalmente, la sección 4 presenta las conclusiones y el trabajo a futuro.

2 Beneficios del modelado semántico para RIsEl uso de un modelo semántico para RIs apoyará la apropiación del conocimiento operativo y de dominio, así como la implantación de RIs en IES, amplía la posibilidad de revisar de manera automática la integridad y consistencia de los datos, lo cual representa un aumento en su valor y veracidad. En comparación con un modelo de datos de tipo María Auxilio Medina Nieto. ([email protected]). Profesora / investigadora del Departamento de

Posgrado. Universidad Politécnica de Puebla.José Alfredo Sánchez Huitrón. ([email protected]). Profesor/investigador del Departamento de Com-

putación, Electrónica y Mecatrónica. Universidad de las Américas Puebla.Ofelia Delfina Cervantes Villagómez ([email protected]). Profesora/investigadora del Departamento

de Computación, Electrónica y Mecatrónica. Universidad de las Américas Puebla.

Page 55: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

58

Software libre

relacional en donde se definen entidades, relaciones y objetos como en el modelo entidad - relación, (ER), la expresividad de un modelo semántico es mayor por poseer características como las siguientes: • La representación de propiedades o relaciones entre clases incluye herencia,

composición o asociación• Las relaciones se definen a nivel de clases o instancias• Las propiedades de datos asocian un atributo o característica de una instancia con un

tipo de datos del esquema de nombres de XML• Las propiedades de objeto definen relaciones binarias entre cualesquiera dos instancias• Junto con restricciones de integridad, se modelan restricciones de cardinalidad a las

que se les asocia un valor máximo o mínimo o la propiedad exactamente igual, esto es, las relaciones no sólo son 1-1, 1-N o M-N, sino que la cardinalidad la adapta el desarrollador del modelo

• Las relaciones entre instancias y tipos de datos, o las relaciones entre clases, pueden tener asociado un dominio y rango, así como valores fijos o predeterminados

• Se pueden definir reglas que utilicen cuantificadores universales o existenciales, éstas se utilizan en la validación de consistencia y en la inferencia de conocimiento

• Es factible tener instancias que pertenezcan a una, ninguna o más clases si las últimas no son disjuntas

• Se obtiene conocimiento nuevo a partir de mecanismos de inferencia• La validación de la consistencia de un modelo utiliza razonadores lógicos

3 Modelado de la operatividad de un RI El modelado de la operatividad de un RI se divide en dos etapas: identificación de un RI y representación de componentes. El objetivo de la primer fase es identificar de manera unívoca a un RI, de forma que pueda distinguirse de cualquier otro en la Red Mexicana de Repositorios Institucionales (REMERI) o en redes de carácter internacional. En la segunda fase, se representan los usuarios, documentos y tipos de políticas de acceso abierto del RI. A diferencia de los atributos de la fase uno, los componentes de la segunda fase pueden modificarse y adaptarse a distintos contextos de acuerdo a las necesidades de los usuarios.

3.1 Fase 1 del modelado: identificación de un RI Las Tablas 1 y 2 contienen los atributos que describen a un RI. De acuerdo con [2] y [3], un atributo es mandatorio si es un requisito incluirlo, recomendado si aporta información deseable u opcional cuando puede o no aparecer.

Tabla 1. Atributos de un RI.

Atributo Descripción Tipo de atributo

fechaUltimaActualizacion Fecha de la última actualización de los datos Mandatorio

identificadorRepositorio Cadena que distingue a un RI de otro en la misma institución Mandatorio

Page 56: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

59

La primera

idiomaDeDocumentos Abreviación que indica los idiomas en los que están escritos los documentos, por ejemplo, español: es, inglés: en.

Recomendado

Tabla 2. Atributos de un RI.

Atributo Descripción Tipo de atributo

nombreRepositorio Cadena que contiene el nombre del repositorio, éste aparecerá en página de inicio. Mandatorio

numeroDocumentos Número de documentos almacenados. Recomendado

responsable Persona encargada del RI. Mandatorio

sitioWeb URL que contiene la dirección web de la página de inicio Mandatorio

tipoDeDocumentosEnumeración (lista) que indica el tipo de documentos que almacena el RI, por ejemplo, reportes técnicos, artículos, carteles o tesis.

Recomendado

La clase Repositorio es análoga a la clase RepositorioInstitucional o Repo-sitorioNacional, esto con el propósito de resaltar que en las IES cualquier repositorio deberá seguir los lineamientos técnicos establecidos en [2] y [3]. La Figura 1 muestra del lado izquierdo, los componentes de un RI, mismos que se modelan como clases en el editor Protégé; el lado derecho contiene los atributos de la Tabla 1 agrupados en la propiedad datosRepositorioInstitucional.

Figura 1. Sub-clases y atributos de RepositorioInstitucional

3.1 Fase 2 del modelado: representación de componentes La fase 2 sigue los pasos para construir un modelo semántico u ontología de la metodología 101, propuesta en [Noy y McGuinness 2001], los cuales son: 1. Determinar el dominio y alcance 2. Reutilizar ontologías existentes3. Enumerar términos importantes 4. Definir clases y su jerarquía

Page 57: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

60

Software libre

5. Definir las propiedades de las clases, es decir, describir la estructura interna de los conceptos

6. Definir las características (o facetas) de las propiedades 7. Crear instancias o individuos

La Figura 2 muestra la implementación del paso 4. El modelo está editado en la versión 5.1.0 de Protégé [5]. La implementación del paso 5 implica la definición de propiedades de datos y de objeto, en tanto, el paso 6, se refiere a seleccionar las facetas (características) de las propiedades, las cuales son: a) funcional, b) simétrica, c) inversa funcional, d) asimétrica, e) reflexiva e f) irreflexiva. El último paso, asigna instancias a las clases, en la literatura, esta tarea se conoce también como poblar el modelo. Una vez que se cuente con instancias, el usuario del modelo puede hacer uso de las interfaces de consulta del propio editor para recuperar información específica, así como de los razonadores para verificar la consistencia en los datos.

Figura 2. Componentes de un RI representados en Protégé en jerarquía de clases

4 Conclusiones Este documento presentó un modelo semántico de RIs para IES. El modelo integra conceptos del dominio relacionado con acceso abierto y RIs en un vocabulario común, no ambiguo, formal y consistente que puede ser compartido entre usuarios y computadoras. Los términos representados se agruparon en una jerarquía de clases y se relacionaron entre sí mediante propiedades de objeto y datos. Como trabajo a futuro, se propone la

Page 58: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

61

La primera

migración de la base de datos relaciona de un RI a instancias del modelo con el propósito de validar la consistencia de forma automática y así, permitir a los usuarios la explotación de los datos a través de la elaboración de consultas semánticas.

Referencias[1] Estrategia de acceso abierto a la información científica, tecnológica y de innovación

repositorios institucionales. Términos de referencia para desarrollar los repositorios institucionales de acceso abierto a la información científica, tecnológica y de innova-ción. Fecha de consulta: 30 de Abril del 2016. Disponible en: http://www.conacyt.mx/index.php/el-conacyt/convocatorias-y-resultados-conacyt/convocatorias-direccion-ad-junta-de-planeacion-y-evaluacion/convocatoria-2015-para-desarrollar-los-repositorios-institucionales-de-acceso-abierto-a-la-informacion-cientifica-tecnologica-y-de-innova-cion/10724-terminos-de-referencia-repositorios-institucionales-2015/file.

[2] Lineamientos generales para el repositorio nacional y los repositorios institucionales. Documento disponible desde el sitio web del Sistema Integrado de Información so-bre Investigación Científica, Desarrollo Tecnológico e Innovación (SIICYT). Fecha de consulta: 15 de Marzo del 2017. Dirección web: https://www.repositorionacionalcti.mx/docs/Lineamientos_generales.pdf.

[3] Lineamientos técnicos para el repositorio nacional y los repositorios institucionales. Documento disponible desde el sitio web del Sistema Integrado de Información so-bre Investigación Científica, Desarrollo Tecnológico e Innovación (SIICYT). Fecha de consulta: 15 de Marzo del 2017. Dirección web: http://www.siicyt.gob.mx/index.php/normatividad/2-conacyt/4-conacyt/1499-lineamientos-tecnicos-para-el-repostitorio-na-cional-y-los-reporsitorios-institucionales/file

[4] Noy N. F., McGuinness D. L. 2001. Ontology development 101: A guide to create your first ontology. Standford Knowledge Systems Laboratory Technical Report KSL-01-05, [en línea]. [Fecha de consulta: 16 de Enero del 2017). Disponible en: http://protege.stanford.edu/publications/ontology_development/ontology101.pdf

[5] Musen, M.A. The Protégé project: A look back and a look forward. AI Matters. Associa-tion of Computing Machinery Specific Interest Group in Artificial Intelligence, 1(4), June 2015. DOI: 10.1145/2557001.25757003.

Page 59: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

63

La primera

Herramientas usadas en el desarrollo de un sistemas de localización en

interioresErik Germán Ramos Pérez, Gil Hernández Ledezma, Moisés Emmanuel Ramírez

Guzmán

Resumen Durante los últimos años, los sistemas de posicionamiento y navegación en interiores han sido objeto de intenso estudio. Ninguna de las soluciones propuestas de localización en interiores ha sido tan exitosa como los sistemas al aire libre: Global Position System (GPS). En este trabajo se presentan las herramientas de software libre usadas para el desarrollo de una propuesta de localización en interiores que se llevó a cabo: el diseño e implementación en dispositivos móviles de un sistema de posicionamiento y navegación 3D para interiores basado en el uso de la tecnología WiFi e implementado con Android. Esta implementación es adaptable a cualquier entorno interior (como son: centros comerciales, oficinas, museos, etc.) previamente modelados y cargados, los cuales se han desarrollado con Blender.

1 IntroducciónMuchas aplicaciones requieren conocimiento acerca del ambiente para localizar e identificar la posición de una entidad, ya sea un usuario, un dispositivo, etcétera, algunas áreas en donde son necesarias van desde la industria [1], comercio electrónico [2], salud y servicios de emergencia [3,4], hasta la automatización de servicios [5][6].

Una parte importante de estos ambientes es el uso de sistemas de localización, y en la actualidad con el uso masivo de dispositivos móviles, los cuales tienen capacidades inalámbricas, se puede lograr esto sin necesidad de altos costos.

Para estimar la localización, en este trabajo se propone el uso de tecnología WiFi, ya que la mayoría de teléfonos inteligentes cuentan con este medio de comunicación. El

Erik Germán Ramos Pérez ([email protected]) Profesor Investigador del Instituto en Computación, Univer-sidad Tecnológica de la Mixetca.

Gil Hernández Ledezma ([email protected]) estudiante de Ingeniería en Computación, Universidad Tecnológica de la Mixetca.

Moisés Emmanuel Ramírez Guzmán ([email protected]) Profesor Investigador del Instituto en Computa-ción, Universidad Tecnológica de la Mixetca.

Page 60: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

64

Software libre

sistema propuesto se implementó para dispositivos móviles con Android, por ser software libre, y además, por ser uno de los sistemas operativos para teléfonos más ampliamente usados.

En este trabajo se presentan las herramientas utilizadas para el desarrollo de localización en interiores, dando énfasis en el software libre utilizado.

2 Herramientas usadasA continuación se mencionan las herramientas utilizadas en el desarrollo del sistema de localización en interiores.

2.1 Modelado 3DLa principal herramienta usada fue Blender, la cual permite hacer modelado 3D, aunque la interfaz de usuario no es tan intuitiva, con el paso de las versiones ha ido mejorando. Sin embargo, tienen toda la flexibilidad de una herramienta 3D propietaria. En el Cuadro 1, se muestra una comparativa con otras herramientas de modelado 3D.

Cuadro 1. Comparativa de herramientas para modelado 3D.

Software Facilidad de uso Sistemas operativos licencia

Blender No

Windows

Mac

Linux

No

3D studio

maxSi Windows Si

SketchUp Si Windows

Mac

No,

pero existe una versión pro

2.2 Sistema operativoAndroid fue el sistema operativo para dispositivos móviles elegido para el desarrollo del sistemas de localización en interiores. La elección se debe a que Android abarca el 74.8% (ver cuadro 2) del mercado de dispositivos móviles en México según ComScore.

Cuadro 2. Comparativa del mercado de los sistemas operativos para dispositivos móviles.S.O % de mercado

Android 74.8iOS 12

Windows Phone 5.6

Otros 7.7

2.3 Herramienta estadísticaPara poder medir el rendimiento del sistema de localización en interiores, se utilizó WEKA, es una herramienta para aprendizaje automático y de minería de datos. Existen

Page 61: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

65

La primera

otras herramientas como R y Matlab (ver cuadro 3); sin embargo, se eligió WEKA por su facilidad de uso y porque se puede incrustar en código JAVA.

Cuadro 3. Comparativa de herramientas estadísticas.Software Facilidad de uso Sistemas operativos licencia

WEKA Si Windows

Mac

Linux

No

R No Windows

Mac

Linux

No

Matlab Si Windows

Mac

Linux

Si

3 Modelado 3d

3.1 Pasos para el modeladoA continuación se presentan lo pasos más comunes al momento de modelar un elemeto tridimensionale:

Modelado: en este paso, se da forma a los objetos por separado, para después usarlos en la escena.

Sombreado: En esta parte se define mediante luces el comportamiento de las caras de los objetos modelados.

Texturizado: Para que el modelo se aprecie más realista, se añaden texturas mediante imágenes que se ponen en las caras del modelo.

Renderizado: Es la parte que requiere más procesamiento computacional, básicamente se convierte el modelo 3D en una imagen 2D.

3.2 Modelado del instituto de Computación.Se decidió probar con el Instituto de Computación (IC) de la Universidad Tecnológica

de la Mixteca. El modelo del pasillo y el contorno del edificio se llevó a cabo usando una estación total, un GPS y un prisma con el objetivo de obtener las medidas lo más precisas posibles (ver Figura 1).

Page 62: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

66

Software libre

Figura 1. Modelo del IC (wired) en Blender.

El modelado 3D fue hecho usando técnicas para polígonos de mallas, B-Rep, operaciones boolenas (figura 2), texturas y extrusiones (figura 3).

Figura 2. Operación booleana.

Page 63: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

67

La primera

Figura 3. Estrucción para crear la ventana

Después de aplicar las técnicas mencionadas anteriormente se obtiene el modelo de la figura 4.

Figura 4. Modelo 3D en Blender con texturas y luces.

Page 64: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

68

Software libre

3.3 Creación del radio mapa.Para poder realizar el sistema de localización en interiores, fue necesario crear un radio mapa, que consiste en ir tomando muestras del indicador de fuerza de la señal recibida (RSSI). En todo el Instituto de Computación se colocaron cuatro puntos de acceso, los cuales fueron localizados estratégicamente para poder cubrir todo el instituto.

Una vez colocados los puntos de accesos, se fue caminando cerca de cada uno de los cubículos de los profesores del instituto, y cada 30 cm de distancia, se obtenía el RSSI de los 6 puntos de acceso, se almacenaba la información en una base de datos (ver cuadro 4).

Cuadro 4. Datos almacenados.

DatosRSSI1

RSSI2

RSSI3

RSSI4

RSSI5

RSSI6

Número de cubículo

4 PruebasSe hicieron pruebas para medir el rendimiento de clasificación del sistema de localización en interiores. Se utilizó el algoritmo de los k-vecinos más cercanos (k-nn) y máquinas de soporte vectorial (SVM).

4.1 Árboles de decisiónComo se puede ver en el cuadro 5, los árboles de decisión obtienen un rendimientos bajo. Esto se puede deber a que no hay suficientes características para poder hacer una discriminación buena.

Cuadro 5. resultados de rendimiento usando árboles de decisiónConjunto de datos % de rendimiento

Captura 0 49.88Captura 1 48.79Captura 2 52.25Captura 3 49.83Captura 4 52.72

Todas 57.64

4.2 k-vecinos más cercanos

Page 65: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

69

La primera

Cuadro 6. resultados de rendimiento usando k-nnConjunto de datos Mejor k % de rendimiento

Captura 0 9 y 10 56.25

Captura 1 7 58.15

Captura 2 10 62.20

Captura 3 8 60.69Captura 4 8 56.30Todas 8 73.26

En el cuadro 6, se mejora el rendimiento, sin embargo, este método aumenta el costo computacional conforme el número de muestras aumenta.

4.3 Máquinas de soporte vectorialCuadro 7. resultados de rendimiento usando SVM

C Gamma % de rendimiento1 109 76.85

Las máquinas de soporte vectorial son las que mejor resultado obtuvieron, esto se debe a que antes de hacer el cálculo del rendimiento, los datos recibieron un preprocesamiento, el cual consistió en normalizar los datos (ver cuadro 7).

4.4 Resumen de modelos usadosCuadro 9. resumen de los modelos utilizados

Método % de rendimientoÁrboles de desición 57.64K nn 73.26SVM 76.85

Finalmente, aunque la diferencia entre k-nn y y las SVM no es mucha, es mejor elegir SVM debido a que aunque el número de datos aumente, no afecta de manera importante el costo computacional.

4 ConclusionesEl uso de un sistema de localización en interiores tiene muchas aplicaciones, desde centros comerciales hasta hospitales. Sin embargo, realizar el modelo 3D puede llegar a ser costoso, debido al elevado precio de las herramientas comerciales, en esta propuesta se utilizó software libre en el desarrollo de todo el sistema, desde la herramienta para el modelos 3D (BLENDER), hasta la herramienta para poder medir el rendimiento del sistema (WEKA). Esto ayudó a poder realizar el desarrollo de la investigación sin un costo adicional.

Referencias[1] M. V. Bueno D., A. S. Martínez S., E. Egea L., J. Vales A., and J. García H.. (2005). Siste-

mas globales de localización y trazabilidad mediante identificación por radio frecuen-cia (RFID). Telecoforum 2005.

Page 66: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

70

Software libre

[2] G. M. Giaglis, A. Pateli, K. Fouskas, P. Kourouthanassis, and A. Tsamakos. (2002). On the Potential Use of Mobile Positioning Technologies in Indoor Environments. 15th Bled Electronic Commerce Conference eReality: Constructing the eEconomy, 413-429.

[3] R. Togt, E. Beinat, S. Zlatanova, and H. J. Scholten. (2005). Location Interoperability Ser-vices for Medical Emergency Operations during Disasters. Geo-information for disaster management, 1127-1141.

[4] F. Herranz, M. Ocaa, L.M. Bergasa, M.A. Sotelo, R. Barea, E. López, and N. Hernández. (2008). Localización WiFi sobre PDA aplicada a un Sistema de Evacuación de Emergen-cia. Seminario Anual de Automática, Electrónica Industrial e Instrumentación.

[5] E. Cerezo, S. Baldassarri, E. Cuartero, F. Serón. (2007). Agentes virtuales3D para el control de entornos inteligentes domóticos. VIII Congreso Internacional de Interacción Persona-Ordenador.

[6] D. Saha, A. Mukherjee. (2003). Pervasive Computing: A Paradigm for the 21st Century. IEEE Computer Society Press, 36, 2531.

Page 67: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

71

La primera

La filosofía del software libre aplicada a los negocios

Jesus Manuel Hernandez Lezama

ResumenUna constante en los negocios hasta hace algunos años, ha sido la búsqueda por mantener entornos cerrados, donde todo tipo de información se mantuviera oculta de la vista del público y cualquier tipo de interacción con los clientes se realizara de forma privada. En la actualidad muchas ideas originalmente surgidas como parte del software libre y el movimiento Open Source han conseguido migrar hacia los negocios, creando culturas colaborativas donde la principal importancia es la apertura de la información y la generación de comunidades activas, cuyos objetivos se alinean con aquellos establecidos en una empresa. Pero también, esto ha permitido generar nuevos modelos de negocios con una marcada tendencia hacia la apertura y que modifican el mundo en nuestros días.

1 IntroducciónDurante la evolución en el desarrollo del software se han manifestado una diversidad de etapas en la forma como se integran a los desarrolladores dentro del ámbito de los negocios y la forma en que se ocupa su talento como un diferenciador claro al momento de generar competitividad en las empresas. En especial México y América Latina por encontrarse en vías de desarrollo, han adoptado la tecnología generada por la era de la información de manera diferente al resto del mundo. Culturalmente, diversas ideas generadas por modelos ultra capitalistas no han terminado de ser adoptadas del todo. Es ahí donde la utilización de las ideas nacidas del software libre plantean una fuerte alternativa, generando modelos de negocios sustentables y a la larga un mayor beneficio para la sociedad en general.

Para el presente articulo es necesario considerar a una empresa como un ente económico que reúne y coordina las voluntades de múltiples individuos generando riqueza de diversos tipos, para una región y para sí misma. De esta manera, es más fácil entender los fenómenos que se dan durante la adopción de la cultura del software libre, donde cada persona de forma independiente es el encargado de exteriorizar sus deseos por generar un beneficio mutuo entre la empresa, la sociedad y él como individuo.

Jesus Manuel Hernandez Lezama ([email protected]) Investigador y Gestor de proyectos de la Organización Aztli. Especialista en el análisis de entornos digitales, su impacto en el sector empresarial y educativo. Sus áreas centrales de especialización son el emprendimiento mediante el uso de soluciones tecnológicas abiertas y la educación, dentro de diversas instituciones públicas y privadas. Además ha impartido distintos talleres y conferencias en múltiples estados del país, sobre temas relacionados con el Software Libre y los medios digitales.

Page 68: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

72

Software libre

2 Contexto históricoAl comienzo de la era de la informática la computación al ser vista como una rama nueva del conocimiento estaba poco preparada para ser integrada fuertemente en todos los negocios, a tal punto que inclusive hoy en día es sorprendente recordar las declaraciones de Sir Charles Darwin nieto del famoso naturalista proponiendo que una sola maquina sería suficiente para solucionar todos los problemas que se le solicitaran de toda Gran Bretaña. En aquella época la experimentación e investigación entre diversos grupos multidisciplinarios eran vista como una necesidad, debido principalmente a la escasa existencia de conocimiento base, sobre el cual sustentar los avances que eran necesarios para hacer accesible a un mayor numero de organizaciones las ventajas de los sistemas informáticos. Es en esta época donde surgen en diversas partes del mundo, grupos de jóvenes entusiastas dispuestos a experimentar con kits de desarrollo y que de forma completamente natural son capaces de compartir la información y conocimiento generado durante los procesos de experimentación. Este tipo de procesos son los que mas tarde generan la creación de múltiples empresas como IBM, INTEL, Apple o MICROSOFT.

La etapa de creación y desarrollo de Microsoft sólo es una muestra popular que ejemplifica la visión de las grandes corporaciones para integrar los nacientes avances en el área de la computación, a los procesos administrativos existentes. El 3 de febrero de 1976 en una carta de Bill Gates dirigida a estos grupos de jóvenes entusiastas, que en esos momentos estudiaba y compartía el código base de BASIC para experimentaciones, los incita a no seguir compartiendo el código por considerarlo una practica abusiva hacia los desarrolladores originales y una forma de infracción de los derechos de autor y plantea que sin la existencia de un modelo adecuado de licenciamiento del software este nunca podrá alcanzar la calidad que se necesita para ser realmente útil en aplicaciones serias. Es aquí donde se muestra un primer intento por modificar el funcionamiento del en ese entonces, nuevo entorno de la informática, proyectando hacia él las mismas practicas realizadas durante décadas para proteger el desarrollo de productos en general. Sin embargo, los entornos digitales y la generación de valor en ellos no responden a las mismas reglas establecidas para los productos físicos que, limitados por los recursos naturales, poseen la incapacidad para ser reproducidos a gran escala o con la misma velocidad con que se reproducen las copias del software.

Estas mismas limitantes en las características de los desarrollos digitales contra los productos físicos, aunado a la necesidad por fomentar un entorno donde los avances científicos se generen a la velocidad necesaria para incrementar las posibilidades de llegar en primer lugar a mercados emergentes; hace preguntarse si los mismos modelos de negocios y las practicas de mercado que aplicaron para los bienes tangibles durante varios siglos podrían ser aplicables durante el transcurso del siglo XXI o sería necesario aceptar y fomentar nuevas practicas.

Page 69: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

73

La primera

Figura 1. Carta de Bill Gates a los Hobbysts

Gracias a estos planteamientos es donde surge el movimiento del Software Libre durante los años ochenta, impulsado por Richard Stallman como resultado de su enfrentamiento con Xerox. Al encontrar un error en la programación del equipo de impresión en el laboratorio donde trabajaba en ese entonces, se ve en la necesidad de mejorar el software conflictivo, desafortunadamente esta es la misma época donde XEROX como muchas otras empresas comienzan a aplicar políticas de no divulgación de información, como las aplicables a inventos de cualquier otro tipo hasta la época, en el intento de dotarse de protección legal y ventajas competitivas. Finalmente, dicho conflicto desencadena el Proyecto GNU, cuya misión sería generar alternativas de software que mantengan el objetivo de servir a los programadores como recursos valiosos, con documentación apropiada para su estudio y mejora continua, sin la intervención constante de la organización que lo desarrolla originalmente, de igual forma en la que se había desarrollado el software hasta

Page 70: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

74

Software libre

el momento anterior a la aparición de las clausulas de exclusividad y no divulgación de la información en el área de la informática.

Una vez establecida la necesidad de generar movimientos que aseguraran la libre difusión del conocimiento se desarrollaron una variedad de reglas para asegurar la continuación de los esfuerzos relacionados con estos. A raíz del proyecto GNU se establecen las 4 libertades básicas del software libre [1]:• La libertad de ejecutar el programa como se desea, con cualquier propósito (libertad 0).• La libertad de estudiar cómo funciona el programa, y cambiarlo para que haga lo que

usted quiera (libertad 1). El acceso al código fuente es una condición necesaria para ello.• La libertad de redistribuir copias para ayudar a su prójimo (libertad 2).• La libertad de distribuir copias de sus versiones modificadas a terceros (libertad 3).

Esto le permite ofrecer a toda la comunidad la oportunidad de beneficiarse de las modificaciones. El acceso al código fuente es una condición necesaria para ello.

Estas libertades reflejan el deseo de mantener entornos que propicien la generación de conocimiento de manera constante, a través de incentivos basados en el reconocimiento publico de los logros profesionales adquiridos y en la protección del reconocimiento al autor original. El principal problema con este esquema es que obvia de manera directa el entorno actual donde las empresas necesitan incentivos para generar riqueza y la capacidad para explotar las implementaciones tecnológicas que desarrollen para los diversos mercados en los que realizan sus actividades económicas. Este modelo de apertura total limita en cierto grado el desarrollo de las actividades comerciales, principalmente a causa de la incompatibilidad en el licenciamiento del software y su incompatibilidad con desarrollos realizados bajo otros esquemas de trabajo. De esta forma, realmente es la Iniciativa Open Source (OSI por sus siglas en ingles) fundada en 1998, quien finalmente refleja esfuerzos pragmáticos por crear entornos adecuados, donde tanto los desarrolladores como la sociedad en general sean capaces de aprovecharse del conocimiento generado bajo estándares abiertos y sin interferir en la generación de riqueza, lo cual es uno de los propósitos base de toda empresa.

3 Cultura nacida del softwareTanto el Software Libre como el Open Source tratan de realizar aproximaciones similares al mismo problema, que es el generar un modelo de desarrollo adecuado que permita la creación de soluciones informáticas y en el caso del Open Source, añadiendo una capa que facilite su uso con fines comerciales. Una propuesta de este tipo, necesita hacer ver que la propiedad intelectual es tan valiosa como el recurso humano que la genera, que la experimentación y reutilización de las implementaciones previamente generadas por otros grupos u organismos, es saludable para el desarrollo del ambiente de la informática, porque permite ahorrar recursos humanos y económicos, además de apoyar la constante generación de avances tecnológicos los cuales no necesariamente se presentan como amenazas directas, sino como aliados estratégicos para la generación del valor de mercado de la empresa. Siguiendo los patrones clásicos de administración de empresas donde todo proceso creativo debe de ser fuertemente custodiado, se limita la capacidad de los clientes de interactuar con el mismo y fomenta unicamente un modelo

Page 71: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

75

La primera

de consumo, sin comunicación bilateral con los clientes. Pero es en la implantación de culturas donde parte del conocimiento generado por las empresas es de libre uso, donde podemos ver modelos diferentes de interacción con el consumidor y su entorno.

3.1 Transformación de la cultura en los negociosPara que sea posible la adecuada generación de procesos que desencadenen en el uso y generación de tecnologías abiertas que respeten los fundamentos del Software Libre y el Open Source es necesario en primer lugar ver al recurso humano como la fuente primaria de dicho cambio. Ya que un conjunto adecuado de motivaciones subyacentes en los individuos, como lo establece Abraham Maslow en su pirámide [2], marca la diferencia principal para establecer la relación entre ellos y la estructura organizacional de la empresa, misma que se desea, aliente a los miembros a trabajar pensando en la apertura de su información y generar un ambiente de mutua colaboración, que luego se trasladará a la sociedad en general. A diferencia de los sistemas de negocios tradicionales donde las recompensas por el trabajo realizado son unicamente monetarias, existen nuevas corrientes como el Liderazgo Transformacional [3], que buscan implementar motivadores tales como el reconocimiento publico, sentimiento de autorealización personal y profesional o transcendencia de los individuos, además de un fuerte compromiso con su entorno social inmediato y que curiosamente se alinean con los principios de las tecnologías de fuente abierta [4].

3.2 Culturas colaborativasTodos estos comportamientos de los cuales se ha hablado anteriormente tienen como resultado la generación de una cultura organizacional que puede ser vista como proceso de comunicación donde cada individuo aporta a la empresa una parte de sí para fortalecerla pero a su vez también se nutre de la cultura preexistente, generada por los trabajadores más antiguos o los directivos, como principales interesados en generarla.

Las organizaciones que buscan incluir el software Open Source y en general una filosofía de innovación abierta deben, primeramente, comprender la importancia clave del recurso humano y ya que si bien es cierto que la principal utilidad de generar una cultura organizacional especifica es la implantación de ideas o formas de trabajo previamente inexistentes en los individuos. También se debe de contemplar los escenarios donde son los mismos trabajadores los encargados de generar la cultural organizacional. Una vez que se comprende esto, es necesario crear los incentivos adecuados para que los trabajadores participen en dinámicas sanas que fortalezcan una cultura enfocada a aceptar diversos puntos de vista y hacer flexible la colaboración de entes externos a la empresa en la mejora de ciertas tecnologías.

Las empresas tecnológicas así como aquellas que incluyen dentro de si los procesos de desarrollo de software o soluciones informáticas, poseen una tendencia natural a adoptar modelos donde el conocimiento fluye libremente entre la empresa y los involucrados con esta. Debido a que con el paso del tiempo, el aumento en la complejidad de los sistemas informáticos ha hecho inviable en la mayoría de los casos, plantear desarrollos que comiencen desde cero una implementación y en su lugar se opta por reutilizar componentes que previamente se ha generado por otras empresas, organizaciones o

Page 72: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

76

Software libre

individuos y pertenecen al dominio publico o bien, gracias al uso de licencias de fuente abierta, es posible su utilización dentro de nuevos desarrollos con fines de lucro y reducir así la carga de trabajo o gastos que de otra forma seria necesario afrontar.

A causa de la relación de la empresa con estos grupos que desarrollan las herramientas de libre uso. Se vuelve fundamental estudiar los procesos de especialización, en la búsqueda de fomentar los más adecuados para dirigir la generación de la cultura de la empresa, hacia una vía cuyo resultado natural sea la adopción de una filosofía que acepte el uso de dichas herramientas y contribuya a su mejora. A la par que se han logrado implantar en los individuos estas formas de trabajo, se buscan los elementos adecuados cuyas metas y motivadores estén alineados con los de la organización, o bien, que durante su desarrollo como profesionales han hecho como suya la practica de optar por soluciones libres y contribuir a crearlas, todo esto para facilitar la transición.

3.3 Apertura de la informaciónA raíz de la llegada de la era de la informática se ha comenzado a ver cómo la mayor riqueza de una empresa se traslada de la cantidad bienes materiales en posesión, a la calidad del recursos humanos y los procesos creativos generados por ellos. Ahora la administración del conocimiento [5], uno de los principales procesos que deben de ser mantenidos por toda empresa que desee ser competitiva, el know-how que poseen todos los involucrados con los procesos de la empresa representa el verdadero bien valioso tan complejo de conseguir y mantener.

Cada vez que una empresa desea diseñar un nuevo proceso o técnica innovadora, la investigación generada alrededor de dicho desarrollo funciona como un paso para la consecución de un objetivo definido, que se materializa a través de una implementación, la cual aporta un valor específico y tangible a la empresa. Es esta misma investigación inicial la que puede plantear según el modelo de Innovación Abierta [6], para que posteriormente sea liberada y pueda ser reutilizada por entes externos a la empresa o para generar nichos y mercados diferentes como lo vemos en la Figura 2. Cabe aclarar que aunque se trata incentivar a la liberación de tanta información como sea posible acerca de la forma como una empresa logra sus procesos innovadores, de ninguna manera se espera que todo sea divulgado.

Page 73: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

77

La primera

Figura 2. Paradigmas de Innovación Abierta y Cerrada Empresas de diferentes tamaños pueden ser un ejemplo de lo que se busca lograr

con una innovación abierta. Google, Apple y Microsoft han liberado durante los años pasados una variedad de librerías e implementaciones de su propiedad para que sean aprovechadas por diversos grupos de hackers o entusiastas de la computación con la finalidad de que su uso se generalice y facilite la tarea de la empresa por dominar ciertos mercados a través de su propuestas. Al mismo tiempo esto genera nichos específicos de usuarios de dichas tecnologías que se convierten en la mayoría de los casos por gusto en embajadores de la marca y ayudan tanto a difundir la tecnología como a mejorarla en la medida de sus capacidades.

Estos procesos de liberación de información y la posterior creación de nichos de colaboradores externos, como bien lo menciona Eric S. Raymond [7], no son fácilmente reproducibles en todos los escenarios o mercados, pero dependen en gran medida de la actitud de una empresa y su disposición a aceptar las contribuciones o los procesos de retroalimentación por parte de sus clientes.

Como un punto clave para la establecer estos sistemas de apertura hay que entender que en gran medida a causa de la democratización de la información y el conocimiento, las herramientas necesarias para llegar al desarrollo de una propuesta de valor para la empresa son ampliamente conocidas por un gran numero de personas. Aunque se busque frenar todo lo posible el acceso a las especificaciones de desarrollo de determinada tecnología, es un hecho que tarde o temprano si esta alcanza la masa critica de usuarios necesaria se conseguirán.

Lo importante para la generación de riqueza directa en una empresa, no es la investigación realizada por si misma, sino la implementación de las ideas y el correcto desempeño en ambientes reales. Con los constantes cambios y la entrada de cada vez

Page 74: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

78

Software libre

mas personas las áreas de STEM el problema de la escasez de la información está siendo remplazado por una falta de especialistas capaces de desarrollar implementaciones útiles en entornos reales que es donde radica el valor de las empresas actuales. Lo que una vez mas genera que en ambientes altamente competitivos el recurso humano sea tan valioso por su capacidad de traducir propuestas en bruto en soluciones practicas para las organizaciones.

3.4 Generación de comunidadesEs gracias a la apertura de la información se comienzan a gestar nuevos procesos inexistentes en empresas que no tienen un acercamiento con la cultura libre. Comunidades de desarrolladores se forman para estudiar la información generada como un proceso alterno de las áreas I+D de la empresa y reutilizarla para escenarios en los cuales originalmente no estaba prevista o como un sustento para generar nuevas ideas e implementaciones.

Tratar de la manera adecuada a las comunidades que se forman y nutrirlas constantemente de nueva información relevante para ellos, al mismo tiempo que se les otorga un apoyo oficial, comienza a ser una tarea básica de la empresas tecnológicas. Este es uno de los mejores logros que pueden alcanzar organizaciones que busca generar una cultura de apertura, debido a que una vez realizado el proceso de inclusión de divulgación de su información o durante la creación de soluciones de fuente abierta, la comunidad que toma esas soluciones es quien se encarga de generar mejoras en los productos existentes de la organización.

Paro para que todo esto funcione de la manera en que se desea se necesita generar propuestas que realmente aporten una ventaja por encima de las existentes además de que tengan un claro enfoque a solucionar problemas existentes dentro de los mercados a los que van dirigidos produciendo un bienestar en un conjunto de personas. Ya que así se incrementan las posibilidades de reunir a una mayor cantidad de voluntarios para aplicar procesos creativos que resulten en mejores productos o servicios.

Sin estas etapas de constante retroalimentación entre los clientes y el área de desarrollo difícilmente se podrán generar aplicaciones que atraigan al desarrollo de comunidades de apoyo a la empresa. Una vez contemplado esto, a la vez que se cuida de proporcionar una opción con un costo atractivo y la compatibilidad adecuada con las tareas que los clientes necesitan realizar es que es posible el avance mutuo de la sociedad y la empresa.

4 Modelos de negocios libresLa materialización de las ideas del software de fuente abierta y su integración con los sistemas económicos actuales no es tarea fácil. A pesar de que la principal tarea de la empresa sea el generar riqueza y bienestar para la mayor cantidad de individuos como sea posible, es cierto que no se ha realizado adecuadamente a lo largo de la historia. Las propuestas de la generación de una cultura enfocada a la apertura también requieren de un entendimiento adecuado de los posibles modelos de negocios existentes que son capaces de adaptarse con el uso del Open Source y el Software Libre [8].

Page 75: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

79

La primera

Entre los diferentes modelos que podemos encontrar en el mundo del Open Source Peter Groen y Roger A. Maduro definieron en el 2012 [9], 16 tipos de los cuales se han tomado los siguientes:

Soporte de softwareEn este modelo las compañías se encargan de proveer soluciones de software

open Source junto a un servicio de soporte profesional para atender a las necesidades específicas de la empresa y en caso de existir errores proveen los parches necesarios para solucionar los posibles errores existentes en el software.

Servicios de softwareA diferencia del modelo anterior en este caso las empresas unicamente se encargan

de proveer servicios alrededor de las soluciones existentes de software. Mantenimiento, documentación, capacitación o instalación son algunos de ellos.

Software como servicio (SaaS)SaaS es un modelo mediante el cual una empresa arrenda el software e infraestructura

necesaria para usarlo, a múltiples clientes. Con la mejora en el acceso a Internet este es uno de los modelos que mas han proliferado permitiendo generar computo en la nube a muy bajo costo debido a la escalabilidad de este modelo de negocios.

Modelo comercial de Ad WareEsta es una variante del modelo SaaS donde los usuarios no pagan por el uso del

software open Source, son los anunciantes quienes soportan la existencia del negocio al pagar para que sus anuncios se desplieguen en el momento, lugar y al cliente adecuado. Un ejemplo de este modelo es la propia Google con sus sistema de anuncios.

Servicios de consultoríaComo su nombre lo menciona bajo este modelo, se proveen a otras compañías una

variedad de servicios de consultoría, implementaciones, servicios de asesoría relacionados al uso de soluciones open Source para áreas de negocios especificas.

Software PremiumEste modelo permite a las empresas vender módulos añadidos al software existente en

conjunto con partes libres.

Licencia DualEs una variación de modelo de software propietario donde los usuarios son atraídos

primeramente a una versión Open Source sin costo del software para que posteriormente dependiendo de sus necesidades se trasladen a una versión comercial mas robusta o con funcionalidades profesionales añadidas.

Page 76: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

80

Software libre

Modelo híbridoSe refiere a aquel modelo donde el vendedor ha tomado una solución abierta de

software y ha agregado partes de código cerradas y licenciadas de una forma diferente. Después de un periodo especifico de tiempo aquellas partes licenciadas como cerradas son liberadas bajo la misma licencia Open Source del código base.

Servicios de integración de plataformasBajo este esquema las empresas no adquieren software de un único proveedor sino

que utilizan diferentes soluciones abiertas para integrarlas en una sola que puede ser licenciada acorde a sus necesidades. El mayor reto de este modelo es lidiar con los posibles errores en la integración de las múltiples fuentes.

Integración de hardwareEn este modelo las empresas utilizan software Open Source gratuito y se dedican

unicamente a proveer del hardware para lograr que sus productos sean útiles para el cliente desde el primer momento. Un ejemplo de este estilo muy popular son los fabricantes de smartphones que utilizan Android para reducir costos de desarrollo.

Servicios Indirectos y AccesoriosCon este modelo las empresas generan servicios y accesorios al rededor de soluciones

de software libre tales como venta de libros, mercancías publicitarias, materiales de entrenamiento, accesorios de hardware, etc.

Organizaciones sin fines de lucroEn ciertos casos este es uno de los modelos mas extendidos para el desarrollo open

Source. Organizaciones como la Linux Foundation o Mozilla Foundation proveen algún producto o servicio de código abierto con la finalidad de beneficiara a tantas personas como sea posible con software de calidad. Estas Organizaciones requieren del apoyo de empresas que se sirven de su software desarrollado para aplicarles algún modelo diferente.

En todos los anteriores modelos de negocio propuestos, al ser compatibles con el uso del software libre, es posible ver la oportunidad para liberar información que ha servido a la empresa para el logro de sus objetivos, como una forma de fomentar la utilización de nuevas tecnologías y preparar al mercado actual para generar nuevos avances.

5 ConclusiónLos procesos de apertura de la información en empresas y la utilización de modelos económicos que los fomenten, de ninguna manera es una tarea sencilla de realizar, existe un gran numero de obstáculos que es necesario franquear mucho antes de plantearlo. La generación de una cultura adecuada que fomente entre los miembros de la organización una colaboración adecuada y la autogestión del personal, es parte indispensable si se desean lograr grandes avances, de esta manera se entrega parte de la carga de la gestión y la generación de valor dentro de la empresa a sus propios miembros. Pero de ninguna

Page 77: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

81

La primera

manera, esto debe de ser entendido como una delegación de responsabilidades, ya que cada individuo por sí sólo unicamente se hará cargo de las tareas que le competen en la medida de sus capacidades. Sin embargo una vez que se logra interiorizar en los individuos un compromiso mutuo con la organización, se fomentan nuevas practicas que benefician en igual medida a todos.

Esto mismo puede ser trasladado a la sociedad en una mayor escala por medio de comunidades que no necesariamente están asociadas con las empresas pero que comparten sus mismos objetivos. Es en consecuencia de estos objetivos que se presenta como posible la retroalimentación de ambos organismos facilitando así sus tareas y generando nuevas oportunidades de mejora.

Los modelos de negocios planteados aquí solamente serán posibles con la participación activa de todos los miembros de la empresa y la conciencia social del beneficio mutuo. Tarea que de ninguna manera se espera que sea sencilla pero que en múltiples casos se ha demostrado que es viable y con un beneficio potencial mucho mayor a la simple explotación de recursos materiales o humanos.

Con el presente articulo no se trata de plantear escenarios utópicos, por el contrario se anima encarecidamente a tomar en cuenta las peculiaridades de la economía actual y adaptar los procesos de generación de valor, hacia vías sustentables que incluyan a la sociedad como generadora del éxito de una empresa y a esta misma como la encargada de aportar nuevas tecnologías y desarrollos que le proporcionen ventajas competitivas, al tiempo que fomenten la implantación de nuevos avances científicos o tecnológicos que faciliten las tareas de todas las personas.

Referencias[1] ¿Qué es el software libre? (n.d.). Retrieved April 10, 2017, from https://www.gnu.org/

philosophy/free-sw.es.html[2] Maslow, A. (1987). Teorías de la Motivación. Carlos López, 7.[3] Contreras Torres, F., & Barbosa Ramírez, D. (2013). Del liderazgo transaccional al lide-

razgo transformacional: implicaciones para el cambio organizacional. Revista virtual universidad católica del norte, 2(39), 152-164.

[4] Krishnamurthy, S., Ou, S., & Tripathi, A. K. (2014). Acceptance of monetary rewards in open source software development. Research Policy, 43(4), 632-644.

[5] Nieves Lahaba, Y., & León Santos, M. (2001). La gestión del conocimiento: una nueva perspectiva en la gerencia de las organizaciones. Acimed, 9(2).

[6] Chesbrough, H. W., & Appleyard, M. M. (2007). Open innovation and strategy. California management review, 50(1), 1-15.

[7] Raymond, E. (1997). La catedral y el bazar, versión en castellano.[8] Nissilä, J. (2004). Towards better understanding of open source business models.[9] Open Source Business Models (n.d.). Retrieved April 10, 2017, from http://www.open-

healthnews.com/articles/2012/open-source-business-models-more-depth-view

Page 78: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

83

La primera

Modelo de proceso como guía para la etapa de elicitación de requisitos,

implementado en software libreHugo Enrique Martínez Cortés,

Myriam Karenina Reyes Sánchez, Julio Cesar Cervantes Martínez

ResumenEl propósito de la Ingeniería de Requisitos (IR) es obtener, analizar, especificar, verificar y gestionar los requisitos de un proyecto de desarrollo de software, para que éste sea exitoso. La primera etapa de la IR es la elicitación, esta etapa tiene como objetivo principal determinar la lista de deseos y necesidades de los stakeholders (fuentes de los requisitos). El producto resultante permitirá definir los requisitos del producto software que se pretende construir, tomando en cuenta que estos deben ser completos, correctos, consistentes, no ambiguos, verificables, trazables, viables, relevantes y modificables. Para realizar la elicitación, es importante determinar en primer término quiénes serán los stakeholders, y a continuación las técnicas que serán utilizadas para elicitar sus deseos y necesidades. En este trabajo se construye un modelo de proceso para guiar a los analistas o ingenieros de requisitos, en la ejecución de las actividades de la etapa de elicitación, como parte del desarrollo de un proyecto software categorizado como pequeño. Este modelo cubre las principales actividades del proceso de elicitación: identificación de las fuentes de los requisitos, elección y aplicación de técnicas de elicitación, así como la integración de la lista de deseos y necesidades. Con el propósito de representar, controlar y analizar las actividades de la etapa de elicitación, se utiliza el software libre Activiti, que constituye un conjunto de herramientas para la gestión de procesos de negocios (BPMS, por sus siglas en inglés). El modelo de proceso para la elicitación, se crea en Activiti, utilizando una notación estándar para el modelado de procesos de negocio, denominada BPMN en su versión 2.0, promulgada por la Object Management Group (OMG). A continuación, el modelo de proceso especificado en esta notación, se ejecuta en el motor de Activiti, en donde se realizan las tareas de seguimiento y análisis de las actividades que integran el modelo.

Martínez Cortés Hugo Enrique ([email protected]). Profesor-Investigador adscrito al Instituto de Com-putación de la Universidad Tecnológica de la Mixteca. Sus intereses de investigación incluye Ingeniería de Software especialmente en modelos de calidad para el producto software y en la gestión de procesos de negocio.

Reyes Sánchez Myriam Karenina ([email protected]). Técnico adscrito a Laboratorios de Posgrado de la Universidad Tecnológica de la Mixteca. Sus intereses de investigación incluye Ingeniería de Software es-pecialmente en Ingeniería de Requisitos e interacción Humano Robot con interés específico en la aplicación de sistemas robóticos en rehabilitación, terapia y educación.

Cervantes Martínez Julio Cesar ([email protected]). Estudiante del décimo semestre de la carrera de Ingeniería en Computación de la Universidad Tecnológica de la Mixteca.

Page 79: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

84

Software libre

1 Elicitación de requisitosEn la actualidad el software juega un papel muy importante para apoyar diversas actividades cotidianas, por lo que la sociedad se vuelve cada vez más dependiente del software. Sin embargo el riesgo de fracaso en los proyectos software también aumenta. Un proyecto fracasado es aquel que es cancelado o no es utilizado, y uno cuestionable no cumple algunas de las 3 constantes: el plazo de tiempo, el presupuesto y el resultado satisfactorio del proyecto [1]. De acuerdo con el Standish Group*, en el 2015 el porcentaje de proyectos fracasados es de 19% y de proyectos cuestionables de un 52% (Véase Cuadro 1).

Anteriormente el éxito de un proyecto se determinaba por el cumplimiento del alcance, pero en el Chaos Report 2015 la definición de un proyecto exitoso ya no considera de forma estricta el logro del alcance sino el cumplimiento de las expectativas de los stakeholders**, es decir, que se obtenga un resultado satisfactorio [1]. Tomando en cuenta este último aspecto, se puede apreciar la importancia del proceso de Ingeniería de Requisitos (IR), ya que es dónde se definen las funcionalidades y limitaciones del software a desarrollar y además se gestionan estas expectativas a lo largo del proyecto.

Cuadro 1. Evaluación de los proyectos del 2011 al 2015 [1] Año 2011 2012 2013 2014 2015

Exitosos 29% 27% 31% 28% 29%

Cuestionables 49% 56% 50% 55% 52%Fallidos 22% 17% 19% 17% 19%

De acuerdo con Davis et al. [2]: “La incapacidad para producir requisitos completos, correctos y no ambiguos se sigue considerando la causa principal de la falla del software”. Por todo lo anterior, la etapa de requisitos es la parte más difícil del proceso software ya que es aquí donde debe decidirse y definir lo que se va a desarrollar [4,5]. La IR está formada por las siguientes etapas [6,7,8]: elicitación, análisis, especificación, validación y verificación y gestión. En la etapa de elicitación se descubren y obtienen los deseos y las necesidades de los stakeholders [6]. En esta etapa el Ingeniero de Requisitos identifica y colabora con los stakeholders para determinar y entender el problema a resolver, el dominio de aplicación, los objetivos de negocio, los servicios y restricciones que el software debe proporcionar [7].

El proceso de elicitación de requisitos implica tres actividades secuenciales [6,7,9]:

• Identificación de los stakeholders, quiénes proporcionan la información necesaria para conocer cuál es el problema a resolver, así como sus necesidades y restricciones.

• Obtención de la lista de deseos de cada stakeholder, a través de la aplicación de las técnicas de elicitación que permitan la extracción de dicha información o conocimiento para su análisis posterior.

* El Standish Group es una empresa consultora que elabora el Chaos Report, este estudio tiene como ob-jetivo documentar y examinar los éxitos y fracasos en el desarrollo y gestión de proyectos de Tecnologías de Información principalmente en Europa y Norteamérica

** Los stakeholders son las personas que se verán afectadas por el software y quienes tienen una influencia directa o indirecta en los requisitos del mismo [3].

Page 80: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

85

La primera

• Integración, refinamiento y organización de la información obtenida, para poder determinar cuáles son las funcionalidades y limitaciones del software a desarrollar.

Cada una de estas actividades, y las tareas que forman parte del proceso de elicitación para pequeños proyectos son descritas en [10] y se tomaron como referencia para la implementación del modelo en este trabajo.

Como se ha descrito, la elicitación es la primera actividad del proceso software y por lo tanto causa de muchos problemas posteriores. Kaur y Sengupta [11] analizaron las fallas del software con el propósito de identificar los factores más importantes que las originan, determinando como factor principal: la elicitación de requisitos. De la misma forma, el Chaos Report demuestra con los datos de sus estudios que se siguen construyendo productos que no cumplen con las expectativas de los stakeholders. Un buen proceso de elicitación puede ayudar a diferenciar qué es lo que los stakeholders quieren (deseos), y qué es lo que realmente necesitan (necesidades) [12]. Esta tarea puede parecer trivial por lo que no se le da la importancia que ésta amerita, sin embargo se pueden originar numerosos problemas en el desarrollo del software [9,13]. La elicitación de requisitos es catalogada como una actividad difícil de llevar a cabo ya que se pueden presentar los siguientes problemas:

• Identificación incorrecta e incompleta de los stakeholders.• Mala comunicación y relación entre los stakeholders.• Los stakeholders tienen dificultades para describir sus tareas.• Los stakeholders proporcionan información inestable, inconsistente o ambigua.• Los stakeholders no quieren cooperar voluntariamente.• Los analistas no eligen las técnicas de elicitación adecuadas para extraer correctamente

los requisitos.• Los analistas no extraen la información correcta.• Los analistas no llevan un adecuado registro de los deseos y necesidades u otra

información relevante del proceso de elicitación.

Algunos de estos problemas surgen además porque el analista no tiene bien definidas las actividades que llevaran a cabo durante el proceso de elicitación (quizá por su falta de experiencia o por el nivel de madurez de sus procesos), por lo tanto pueden realizarla de forma incorrecta y así acarrear problemas en las siguientes etapas del proceso de IR y a su vez al del proceso software. Por tal motivo en este estudio se propone la definición de un modelo de procesos para la etapa de elicitación implementado en Activiti que guíe a un analista o ingeniero de requisitos a ejecutar el proceso.

Este trabajo está organizado de la siguiente forma. En la sección 2 se describirá la gestión de procesos de negocios y las razones de la utilización del modelado de procesos de negocio. En la sección 3 se muestra el trabajo realizado aplicando la gestión de procesos de negocio al proceso de elicitación. Por último en la sección 4 se presentan las conclusiones obtenidas durante el desarrollo del presente trabajo y se menciona también el trabajo a futuro.

Page 81: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

86

Software libre

2 Gestión de Procesos de NegocioEn la actualidad las organizaciones operan en un entorno volátil e inestable, en el cual deben subsistir por medio de su adecuada adaptación a las nuevas circunstancias que se presentan en su ámbito, ante este desafío y para lograr el éxito planeado, las organizaciones aplican diferentes iniciativas de gestión con un enfoque de mejora continua, una de estas iniciativas es conocida con el nombre de Gestión de Procesos de Negocio (BPM, por sus siglas en inglés).

La gestión de procesos de negocio proporciona la agilidad necesaria para que las organizaciones tengan un control más directo de sus procesos. De esta forma, puede lograr un mejor uso de la tecnología y toda la organización es más responsiva, permitiéndole alcanzar sus metas. BPM permite crear valor para la organización a través de su crecimiento, mejora del desempeño, mejora de la productividad, mayor efectividad de los integrantes y un mejor servicio al cliente. Todas estas mejoras son el resultado directo de la mejora de los procesos [14]. En [15] Van der Aalst, Ter Hofstede y Weske, definen BPM como “soporte de procesos de negocio utilizando métodos, técnicas y soft-ware para diseñar, representar, controlar y analizar procesos operacionales involucran-do humanos, organizaciones, aplicaciones, documentos y otras fuentes de información”. White y Miers [16] mencionan que BPM constituye una manera de pensar, una filosofía de gestión centrada en mejorar los procesos operacionales de la organización. Cuanto más tiempo una organización haya estado recorriendo este camino, más maduros son sus procesos, más repetibles y escalables son sus operaciones y es mejor su desempeño en general.

2.1 Modelado de Procesos de NegocioLa gestión de procesos de negocio, describe como buena práctica la construcción de modelos de procesos. Estos modelos representan la estructura y comportamiento del proceso (tareas), así como los roles o actores involucrados en la realización del proceso, y los documentos o fuentes de información. Estos modelos permiten establecer un mecanismo de comunicación entre todos los involucrados (clientes, proveedores, socios e integrantes de la organización), mejora la comprensión del proceso, permite un mejor análisis, y establece la base para realizar acciones de diseño o rediseño, así como actividades de evaluación y seguimiento. El modelo de un proceso de negocio, describe las actividades clave de la organización y cómo se relacionan e interactúan con los recursos del negocio para lograr la meta establecida para el proceso [17].

A continuación se describen algunos de los beneficios que producen los modelos de negocio para una organización [18]:

• Permiten comprender mejor los mecanismos clave de un negocio existente.• Actúan como base para crear sistemas de información.• Facilitan la identificación de ideas para mejorar la estructura actual del negocio y su

operación. Para experimentar con un nuevo concepto de negocio.• Para identificar oportunidades de Outsourcing.• Para mostrar la estructura de un negocio innovado.

Page 82: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

87

La primera

2.2 Notación para el Modelado de Procesos de NegocioCon el propósito de construir los modelos de procesos, se han propuesto diferentes estándares, como son estándares de ejecución (BPEL, BPML), estándares de intercambio (XPLD, BPDM), estándares de diagnóstico (BPRI, BPQL) y estándares gráficos (BPMN, UML AD). Entre las cuatro categorías de estándares mencionados anteriormente, los gráficos son los más más fáciles de comprender para personas sin un entrenamiento técnico. Los estándares gráficos permiten a los usuarios expresar el flujo de información, los puntos de decisión y los roles de los procesos de negocios, en forma de diagrama. [19]. La Notación de Modelado para Procesos de Negocio (BPMN, por sus siglas en inglés) es un estándar gráfico definido por la Object Management Group (OMG). En [20] se describe que BPMN, es una herramienta gráfica estandarizada, para el modelado de procesos de negocio. Define un lenguaje sencillo, comprensible, que puede ser utilizado por personal no técnico, particularmente los analistas de negocios y por profesionales de múltiples disciplinas, es decir, no es para uso exclusivo del área de TI.

Con BPMN es posible construir modelos de procesos en forma de diagramas, que permiten crear una representación de alto nivel que es fácil de entender para todos los interesados en el proceso, adicionalmente permite la definición del proceso en una representación de bajo nivel (XML) para los entornos de software orientados a procesos. La versión actual de BMPN es la 2.

De acuerdo a White y Miers [16], el modelado en BPMN, se pueden realizar una abstracción en distintos niveles:

• Mapas de Procesos. Simples diagramas de flujo de las actividades; un diagrama de flujo sin más detalle que el nombre de las actividades y tal vez las condiciones de decisión más generales.

• Descripción de Proceso. Proporcionan información más extensa acerca del proceso, como las personas involucradas en llevarlo a cabo (roles), los datos, información, etc.

• Modelos de Proceso. Diagramas de flujo detallados, con suficiente información como para poder analizar el proceso y simularlo. Además, esta clase de modelo más detallado permite ejecutar directamente el modelo o bien importarlo a herramientas que puedan ejecutar ese proceso (con trabajo adicional).

BPMN cubre todas estas clases de modelos y soporta cada nivel de detalle. Como tal, BPMN es una notación basada en diagramas de flujo para definir procesos de negocio, desde los más simples hasta los más complejos y sofisticados para dar soporte a la ejecución de procesos.

2.3 Suite para la Gestión de Procesos de NegocioCon la ayuda de herramientas computacionales, los modelos de procesos pueden guiar

de forma automática o semiautomática la ejecución del proceso operacional, permiten realizar un seguimiento de su estado, y evaluar el grado de desempeño en la realización del proceso, así como orquestar de forma automática o semiautomática las actividades realizadas y controlar los roles involucrados. A este conjunto de herramientas se les

Page 83: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

88

Software libre

conoce como Suite de Gestión de Procesos de Negocio (BPMS, por sus siglas en inglés), las cuales permiten construir aplicaciones computaciones bajo la filosofía BPM.

Actualmente algunos BPMS relevantes dentro de la categoría de software libre son: Activiti, JBPM, Flowable y Cammunda. Todas estas herramientas ofrecen la funcionalidad para la construcción y ejecución de modelos de proceso construidos con la Notación BPMN v. 2.

Activiti se encuentra desarrollado en lenguaje Java y cuenta con una licencia Apache v. 2. Esta suite se encuentra bajo el soporte de la empresa Alfresco. Los principales componentes de Activiti son:• Modelador. Aplicación web para construir modelos de proceso en notación BPMN v. 2. • Diseñador. Extensión de Eclipse para construir modelos de proceso en notación BPMN

v. 2.• Motor. Motor de ejecución para los modelos de proceso. • Explorador. Herramienta web para realizar el despliegue (instalación) de los modelos

de proceso, la ejecución de los modelos de proceso (instancias de proceso), así como para realizar tareas de análisis y seguimiento de las instancias de proceso.

3 Implementación de un Modelo de Proceso para la Elicitación de RequisitosEn esta sección se describe la implementación de un modelo para el proceso de elicitación de requisitos en notación BPMN v. 2, con el software libre Activiti en su versión 5.22. El objetivo principal de este modelo consiste en establecer una guía para el analista, que se constituya en un apoyo para la ejecución exitosa de la importante y difícil tarea de obtener la lista de deseos y necesidades de los stakeholders. Al aplicar la filosofía BPM a este proceso, se obtiene el beneficio de operar bajo un enfoque de mejora continua, dentro de la cual es factible realizar el refinamiento del proceso de elicitación, y así obtener mejores resultados de manera consistente y creciente. Además, la implementación semiautomática del proceso de elicitación en Activiti, permite al analista realizar un seguimiento del estado de la ejecución del proceso de elicitación en cualquier instante de tiempo, y de esta manera tiene un panorama claro de las tareas ejecutadas hasta ese punto, así como de las tareas que faltan por realizar para obtener los productos de la elicitación.

El ciclo de vida de un modelo de proceso en Activiti, inicia con la creación del diagrama del modelo en notación BPMN utilizando el componente denominado Modelador, a continuación por medio del componente Explorador, se realiza el despliegue o instalación del modelo, posteriormente en este mismo componente se inicia la ejecución de la instancia del proceso, y finalmente se realizan tareas de seguimiento y análisis.

3.1 Construcción del modelo de proceso en ActivitiLa construcción del modelo se realizó con el componente web de Activiti denominado

Modelador, que ofrece un conjunto de componentes de la notación BMPN v. 2, los cuales constituyen los bloques de construcción para elaborar el diagrama del modelo. Para cada componente BPMN incluido en el modelo, se deben establecer los valores

Page 84: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

89

La primera

para sus propiedades. La interfaz del modelador se muestra en la figura 1. Es importante mencionar que Activiti posee características limitadas para el diseño de formularios, así como la gestión de documentos.

Figura 1. Interfaz del Modelador de Activiti.La figura 2 muestra el modelo del proceso general para la elicitación. En esta figura se

exponen los 3 subprocesos principales que forman parte de esta etapa (descritos en la sección 1) y además el subproceso para la evaluación de la lista de deseos y necesidades (con el objetivo de determinar si la lista está completa, correcta, consistente, no ambigua, entre otras). En este último subproceso, es donde se decide si se realiza una nueva iteración, o se finaliza la ejecución del proceso. De esta manera el analista puede realizar múltiples iteraciones hasta alcanzar los objetivos establecidos para los productos de la elicitación.

Las figuras 3,4,5,6 describen cada uno de los subprocesos que forman del proceso general de elicitación. La figura 3 representa el subproceso de “identificación de stake-holders” formada 3 tareas: identificar y obtener información de los stakeholders, analizar su tipo de conocimiento y seleccionar quienes participaran en el siguiente subproceso.

En la figura 4 muestra cómo llevar a cabo la “obtención de los deseos y necesidades”. Este subproceso está formado a su vez por otros 2 subprocesos: elección de las técnicas de elicitación y el de obtención de deseos y necesidades. La figura 5 describe como desarrollar el tercero por medio de 2 subprocesos: la integración y el refinamiento.

Page 85: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

90

Software libre

Figura 2. Proceso general de elicitación de requisitos.

Figura 3. Subproceso de identificación de stakeholders.

Page 86: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

91

La primera

Figura 4. Subproceso de obtención de deseos y necesidades.

Figura 5. Subproceso de refinamiento e integración de la información.

Page 87: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

92

Software libre

Por último, la figura 6 representa el subproceso de “evaluación de la lista de deseos y necesidades”, el cual está formado por 3 tareas: verificar la información obtenida de los stakeholders, determinar la calidad de la lista de deseos y necesidades, y completar la plantilla de control de deseos y necesidades.

Figura 6. Subproceso para evaluar la lista de deseos y necesidades.

3.2 Ejecución y seguimiento del modelo de proceso en ActivitiEl primer paso para la ejecución del modelo de proceso en Activiti, consiste en su despliegue utilizando el componente denominado Explorador, el cual valida en primer término la estructura del modelo para determinar la viabilidad de su ejecución. A continuación en el mismo Explorador, el analista inicia la ejecución del modelo validado, creando lo que se denomina: instancia del proceso. A partir de este momento, Activiti orquesta y guía

Page 88: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

93

La primera

la ejecución de cada una de las tareas que integran el proceso de elicitación, las cuales son llevadas a cabo por cualquier usuario de Activiti asignado al grupo de analistas de requisitos, de esta manera, múltiples usuarios-analistas pueden participar en la ejecución de las tareas del proceso de elicitación. En la figura 7 se muestra la interfaz que el Explorador presenta al analista, durante la ejecución de la tarea denominada selección de los stakeholders, en la cual se muestra información que incluye: el nombre de la tarea, la descripción del objetivo de la tarea, el nombre del analista responsable de su ejecución, documentos asociados, fecha de vencimiento de la tarea y su prioridad, entre otros.

Figura 7. Interfaz del Explorador de Activiti para la realización de una tarea.Como resultado de la realización de esta tarea, el analista adjunta documentos al

Explorador, los cuales son consultados en tareas posteriores durante la ejecución de la instancia del proceso. Es importante mencionar que el usuario que tiene asignada la responsabilidad de realizar una tarea, puede transferir esta responsabilidad a otro usuario.

El Explorador de Activiti incluye un módulo que permite al analista realizar el seguimiento del estado de la ejecución del proceso de elicitación, la interfaz se muestra en la Figura 8. En dicho módulo, el Explorador presenta un diagrama completo del modelo, y resalta las tareas que se encuentran en ejecución, con el borde en color rojo. De esta manera el analista verifica el avance de la ejecución y determina las tareas que no se han realizado.

Page 89: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

94

Software libre

Figura 8. Interfaz del Explorador de Activiti para el seguimiento de la ejecución del proceso.Adicionalmente, Activiti ofrece al analista, información histórica sobre la ejecución

de la instancia del proceso, que incluye: el listado de todas las actividades realizadas, la duración de cada actividad, el rol o persona que las realizó, así como la información generada durante la ejecución del proceso. Esta información es relevante para el analista, ya que al finalizar la ejecución del proceso de elicitación, se realiza una fase de introspección para determinar las oportunidades de mejora del modelo y de esta manera corregir los aspectos que son susceptibles de generar resultados con mayor calidad.

4 Conclusiones y trabajo futuroLa etapa de elicitación es la etapa más crítica de la IR, debido a que en ella se invierte el mayor tiempo para llevarla a cabo[6], además de que al ser una actividad fundamentalmente humana se pueden generar un gran número de problemas. Aunque no se le da la importancia que debiera, al ser la primera etapa del proceso los errores generados en esta son arrastrados a etapas posteriores del proceso de desarrollo de software, y por lo tanto el costo de repararlos aumenta de forma significativa al pasar a la siguiente etapa [21]. Por esta razón resulta muy importante contar un proceso de elicitación definido, no ambiguo y repetible. En este trabajo se implementó un modelo para el proceso de elicitación en proyectos pequeños, utilizando el software libre Activiti. Este modelo constituye una guía para el analista en la ejecución de las actividades del proceso de elicitación. Al incluir la filosofía de mejora continua de BPM, es factible incrementar continuamente la madurez del proceso y adaptar su estructura a las necesidades del proyecto y organización. Con el objetivo de refinar el modelo de proceso construido en Activiti, se requiere el refinamiento del modelo, a partir de su aplicación en diversos proyectos pequeños.

Activiti ofrece múltiples funcionalidades para la construcción y ejecución de modelos de proceso, sin embargo presenta algunas deficiencias, como la falta de una implementación robusta de formularios, gestión de documentos, así como de reportes para realizar tareas de análisis, entre otros. Sin embargo al utilizar software libre, es posible analizar el código fuente para implementar las funcionalidades adicionales requeridas.

En la definición del proceso de elicitación hay diversas propuestas, de tal manera que se requiere realizar un consenso para contar con un proceso de elicitación más general y que se pueda adaptar a cualquier tipo de proyecto.

ReferenciasStandish Group. (2015). The CHAOS report. Capturado em: http://www. standishgroup.

com Davis, A., Overmyer, S., Jordan, K., Dandashi, J. C., Dinh, A., Kincaid, G., Ledeboer, G.,

Reynolds, P., Sitaram, P., Ta, A. y Theofanos M. (1993). Identifying and Measuring Quality in a Software Requirements Specification. In Proceedings of 1st Software Metrics Sym-posium, 141-152.

Page 90: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

95

La primera

Sommerville, I. & Sawyer, P. (2006). Requirements Engineering. New York, US: John Wiley & Sons.

Brooks, F. R. (1987). No silver bullet: Essence and Accidents of Software Engineering. IEEE Computer Magazine, 20(4), 10-19.

Sommerville I. (2010). Software Engneering. New York, US: Addison-Wesley Christel, M. G. & Kang, K.C. (1992). Issues in Requirements Elicitation (Technical Report

CMU/SEI-92-TR-012 or ESC-TR-92-012) Software Engineering Institute, Carnegie Mellon University.

Kotonya, G. & Sommerville, I. (2000). Requirements Engineering: Processes and techni-ques. New York, US: Wiley.

Berenbach, B., Paulish, D. J., Kazmeier, J. & Rudorfer A. (2009). Software & Systems Requi-rements Engineering: In Practice. New York: McGraw-Hill Osborne Media.

Abran A., Moore J. W., Bourque P. & Dupuis R. (2004). SWEBOK: Guide to the Software Engineering Body of Knowledge v3.0, IEEE Computer Society.

Reyes M. (2015). Propuesta de métricas para los requisitos software en la etapa de eli-citación. Tesis presentada para la obtención del título de Maestría en Tecnologías de Cómputo Aplicado. Universidad Tecnológica de la Mixteca, México.

Kaur, R. & Sengupta, J. (2011). Software Process Models and Analysis on Failure of Soft-ware Development Projects. International Journal of Scientific & Engineering Research, 2(2), 2-3.

Raghavan, S., Zelesnik, G. & Ford, G. (1994). Lectures Notes in Requirements Elicitation (CMU/SEI-94-EM-10). Software Engineering Institute, Carnegie Mellon University.

Scott, A. C., Clayton, J. E. & Gibson, E. L. (1991). A practical guide to knowledge acquisition. Boston: Addison-Wesley Longman Publishing Company, Inc.

Underdahl, L (2015). Manipulative Monkeys: Research as Design.Van Der Aalst, W. M., Ter Hofstede, A. H., & Weske, M. (2003, June). Business process ma-

nagement: A survey. In International conference on business process management (pp. 1-12). Springer Berlin Heidelberg.

White, S.A., & Miers, D. (2009). guía de referencia y modelado BPMN. Documento están-dar.

Object Management Group (2008). Bussiness Process Model and Notation, V1.1. Identifi-cation: formal/2008-01-17.

León, O. M. L., & España, J. A. A. (2009). la importancia del Modelado de Procesos de Negocio como Herramienta para la Mejora e Innovación . Revista Raites, 4(7), 61-72.

Ko, R. K., Lee, S. S., & Wah Lee, E. (2009). Bussiness process management (BPM) stan-dards: a survey. Business Process Management Journal, 15(5), 744-791.

Gómez, E. J. (2014). Análisis de BPMN como herramienta integral para el Modelado de Procesos de Negocio. Universidad de Manizales, 25.

Boehm, B. W. (1981), Software Engineering Economics (Vol. 197), Englewood Cliffs (NJ): Prentice-Hall.

Page 91: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

97

La primera

Simulación de temperatura por elemento finito en dos dimensiones

mediante software libre y su comparación con software comercial

Reyes Pérez Emilio Rafael, Matías Astorga Manuel Alejandro, Flores Cano Leonardo, Jiménez Escamilla Maxvell Gustavo

ResumenFue modelada en dos dimensiones perfiles de temperatura de una placa rectangular, sometida a condiciones de convección de calor y temperaturas iniciales en sus caras, al ser proporcionados por el usuario, utilizando el software libre Octave para resolver las ecuaciones lineales mediante la técnica de elemento finito y la visualización de los perfiles de temperatura en cada punto de la superficie de la placa. Se destaca la elaboración de los algoritmos para el ensamble de matrices asociadas a los elementos finitos. Los resultados obtenidos fueron comparados con el software ANSYS ®, obteniendo errores en temperatura menores al 5% con respecto a ANSYS ®, para algunos nodos de forma arbitraria. El material anterior permite obtener calidad similar de los resultados que ofrece el software comercial.

IntroducciónEl modelado de fenómenos físicos en la industria en la actualidad se realiza mediante la técnica de Elemento Finito, la cual fue desarrollada en los años 40´s por Hrennikoff [1] en el análisis estructural de sólidos en la construcción. Años posteriores la técnica se hizo famosa y Zienkiewicz y colaboradores aplicaron la técnica en áreas de la física como en los esfuerzos mecánicos de torsión, flujo de fluidos y conducción de calor [2]. El método de elemento finito también fue aplicado para resolver campos magnéticos en 1977 por Lyness [3]. El método se utiliza para resolver ecuaciones diferenciales que

Page 92: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

98

Software libre

resultan de describir las leyes imperantes de la naturaleza. Al resolver dichas ecuaciones se desea conocer posición, velocidad, temperatura o cualquier otra variable dinámica del problema [4].

En la actualidad se llevan a cabo una gran variedad de simulaciones virtuales de fenómenos físicos sujetos a ciertas condiciones. Dichos fenómenos físicos son simulados mediante la técnica de elemento finito para posteriormente se pueda diseñar prototipos que innoven y solucionen dicho problema físico o de ingeniería. Por ejemplo en el área biomédica primero se simulan los diseños de prótesis y se someten virtualmente a todas las cargas mecánicas motrices del movimiento humano. Una vez analizada la funcionalidad y ergonomía del diseño mediante la técnica de elemento finito, se procede a realizar el prototipo y comparar con la simulación. El ejemplo anterior se encuentra en un trabajo de Phanphet y colaboradores al diseñar una rodilla [5]. La metodología anterior también se lleva a cabo en áreas como la teoría electromagnética [6, 7], mecánica de fluidos aplicada al flujo de sangre en la aorta [8], hasta modelación de corrosión química en rocas [9].

Debido a la eficiencia del método la mayoría de la empresas desarrollan su propio software de simulación numérica de elemento finito o bien utilizan software comercial como es el ANSYS ®, el cual es recurrentemente utilizado en el área automotriz, petroquímica y construcción [10].

Es por lo anterior que conocer los fundamentos y los desarrollos matemáticos explícitos en su aplicación, serviría de gran utilidad para valorar la técnica y desarrollar software que realice dichos cálculos numéricos.

En el presente trabajo se ilustra su aplicación en un problema en térmicos con condiciones de frontera establecidas.

Marco teóricoLa técnica del elemento finito consiste en tres etapas. En la primer etapa se discretiza el

dominio del problema en subdominios o mejor llamados “elementos”. A dicha colección de elementos se le denomina el “mallado”, cabe mencionar que cada elemento está formado por “nodos”, y depende del tipo de elemento elegido para realizar el mallado, que tendrá cierta cantidad de nodos. La segunda parte trata sobre elegir el tipo de funciones a aproximar la solución de la ecuación o ecuaciones diferenciales gobernantes de la naturaleza propia del fenómeno. Dichas funciones se llaman “funciones de forma” y estas funciones adquieren ciertos valores en los nodos. En la tercera etapa se procede a utilizar algún método de los residuos ponderados para discretizar las ecuaciones gobernantes a través de las funciones de forma. Una vez discretizado el dominio, se procede a resolver entonces el problema a nivel algebraico de ecuaciones lineales, cuyas incógnitas son los valores de las funciones en cada nodo [11]. En el caso del presente trabajo, la temperatura en el dominio de la placa.

Debido a que se modeló la temperatura de la placa dos dimensional, se utilizaron elementos triangulares, para lo cual se requieren de 3 puntos. Así entonces, en el plano cartesiano XY las coordenadas (x1,y1), (x2,y2) y (x3,y3), fueron cambiadas a un nuevo sistema coordenado local de la forma (η,ξ) por lo tanto: (x,y) → (η,ξ), (x1,y1) → (0,1), (x2,y2 ) → (1,0) y (x3,y3 ) → (0,0).

Page 93: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

99

La primera

Figura 1. Espacio coordenado de (η,ξ) y la relación de vínculo entre η y ξ.

De la figura 1 se construyó la expresión de η como función de ξ proporcionando la dependencia η(ξ)=1-ξ. Así mismo fueron construidas las funciones de forma en el sistema coordenado local de un elemento arbitrario con la propuesta Nι=aι+bι η+cιξ. Dichas funciones de forma cumplirán que en cada nodo tengan el valor de la unidad, y fuera de otro nodo adquieran el valor de cero, esto es: N1 (0,0)=0, N1 (1,0)=0, N1 (0,1)=1, N2 (0,0)=0, N2 (1,0)=1, N2 (0,1)=0, N3 (0,0)=1, N3 (1,0)=0, N1 (0,1)=1. Se resolvió para ai,bι,cι el sistema correspondiente para cada Nι obteniendo como resultado

Nι (η,ξ)=ξ (1) N2 (η,ξ)=ξ (2) N3 (η,ξ)=1-η-ξ (3)

En la técnica de elemento finito se propone la solución o cualquier función de interés como Ψ=∑η

ι=0 Nιuι, lo cual implica que para x e y expresados en términos de η y ξ se tiene:

x=N.xι=[ξ,η,1-η-ξ]{ } (4)

y=N.yι=[ξ,η,1-η-ξ]{}, (5)

de otra forma se tiene que

= , (6)

Donde se definió xι - xj = x

ιj . La ecuación 6 permite cambiar de coordenadas del sistema cartesiano XY global al sistema cartesiano local de η y ξ. Una vez escritas las funciones de forma en términos de η y ξ; y el cambio de coordenadas global a local, entonces se procedió a aplicar la técnica de elemento finito en dos dimensiones.

Page 94: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

100

Software libre

DesarrolloSe aplicó el método de Galerkin a la ecuación bidimensional de calor en estado

estacionario al multiplicar por una función de peso φ(x,y), e integrar en el espacio bidimensional como se muestra en la ecuación 7:

(7)

La ecuación anterior se reescribió como:

. (8) El teorema de Stokes establece esto convierte a la

ecuación 8 en:

, (9)

La ecuación de la ley de Fourier describe al flujo de calor como un gradiente de temperatura. Dicho flujo de calor se lleva a cabo sobre un área con un perímetro o contorno c, donde y lo cual lleva a la obtención de:

. (10)

Se recuerda que la función peso es una de las funciones de forma Nι, N1, N2, y N3 (y ) por

lo tanto, se obtuvieron 3 ecuaciones tipo la ecuación 10

(11)

(12)

, (13)

siendo temperaturas y las temperaturas del medio en los caminos respectivos dentro del perímetro del elemento triangular. Lo anterior siempre y cuando exista una temperatura en dicho camino l

ι, como se muestra en la figura 2.

Figura 2. Dirección de los recorridos l1, l2 y l3 y sobre el sistema coordenado local (η, ξ.

Page 95: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

101

La primera

Como se observa en las ecuaciones 11 a 13 se requirieron los productos de las derivadas en y , por lo cual se calculó dicho producto como:

(14)

Se realizó el mismo cálculo para . Sin embargo se observó que se requieren las derivadas parciales en el sistema local de η y ξ y , las cuales fueron calculadas mediante la ecuación 6. Al igual que la función de peso, la propuesta de la solución es de la forma

lo cual implica una transformación en la dependencia de las variables η y ξ como Realizando las sustituciones y cálculos respectivos se obtuvo la siguiente ecuación compacta del sistema de ecuaciones 11 a 13.

, (15)donde

, (16)

, (17)

Finalmente resolviendo la integral de superficie utilizando el jacobiano para integrar en función de η y ξ y reparametrizando las integrales de línea como se muestra en las figuras 2 y 3, se obtuvo el sistema matricial elemental o ecuación matricial de elemento finito para un elemento arbitrario etiquetado con los puntos x1, x2 y x3, dejando como incógnitas a las temperaturas y T1, T2 y T3.

, (18)

donde

, (19)

. (20)

Para el ensamble y mallado, se optó por a realizar elementos de la misma forma y dimensión para obtener un mallado como el que se muestra en la figura 3.

Page 96: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

102

Software libre

Figura 3Mallado de la placa sometida a distintas temperaturas y convecciones térmicas. En la

figura se muestra también los elementos que se encontraron a distintas temperaturas de contacto en sus contornos.

Este procedimiento facilitó el proceso ensamblaje. Debido a que la propuesta de sometimiento de temperaturas en las caras del rectángulo es arbitraria, entonces existen ciertos elementos que se encontraron sometidos a más de una temperatura en alguno de sus contornos. Los colores muestran la cantidad de y (convecciones) a las cuales están expuestos los elementos, los amarillos a dos, los rojos a uno y los blancos a ninguno eso hace que las adquieran el valor de cero. La figura 4 muestra el tipo de recorrido del triángulo, esto influirá en las entradas la ecuación 18, ya que los números indican las posiciones .

Figura 4.Descripción de la forma en la que se llevó a cabo el recorrido en las integrales de los

contornos para los elementos triangulares.

Por cada elemento se obtiene una sistema matricial elemental siendo las incógnitas las temperaturas en los nodos. Sin embargo debido a que los elementos tiene nodos en común y no necesariamente están ordenados, entonces se procedió a ordenar todas las matrices en la matriz de ensamble total.

Una vez recorrido todos los elementos se resolvió el sistema matricial de ensamble con el método numérico asociado a la función linsolve (MS,Ts) el cual proporcionó el vector

Page 97: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

103

La primera

de soluciones correspondientes a cada nodo, los cuales se ordenaron para obtener una representación visual de las temperaturas en los nodos.

Resultados y ConclusionesEn la figura 5 se muestra la superficie de temperaturas de la placa en las condiciones específicas, mostrando los resultados en software libre (Octave) y comercial (ANSYS® v17.1 estudiantil) en la figura 6.

Figura 5Simulación del t perfil de temperatura en la placa rectangular mediante la solución

numérica del sistema matricial mediante Octave.

Figura 6.Simulación del perfil de temperatura en la placa rectangular mediante el software

ANSYS ®.

De ambas figuras se observa que el mallado realizado con el software libre es de una calidad similar al software comercial. Y al realizar una observación burda sobre el perfil de temperatura de ambas simulaciones, éstas son similares. Por otro lado al comparar nodo a nodo (86 nodos al azar), la simulación del primer software con el segundo, se obtuvo un error promedio de 8.9% para una muestra de 7000 nodos para ambos software, por lo cual es un error aceptable y modesto considerando el costo de adquisición de un software como ANSYS ®. Sin embargo lo más importante es que se expone en este trabajo el fundamento matemático de cómo proceder a plantear y resolver problemas de ingeniería como el expuesto mediante la técnica de elemento finito. Si bien es un

Page 98: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

104

Software libre

problema didáctico, se tienen los cimientos para simular otros fenómenos físicos o para el diseño de prototipos previos a su elaboración, por lo tanto contar con una herramienta en la actualidad como la técnica de elemento finito propone nuevas estrategias en la implementación de nuevas tecnologías.

5 Referencias 1.- Hrennikoff, A., 1941. “Solution of problems in elasticity by the framework method.”

Journal of Applied Mechanics. Vol 8, No.4. 169 – 165.2.- Zienkiewicz, O. C, Cheung, Y. K., 1965. “Finite element in the Solution of Field pro-

blems.” The Engineer . 24. 507 – 510.3.- Lyness, J. F., Owen, D. R. J., Zienkiewicz, O. C. 1977. “Three Dimensional Magnetic Field

determination using a scalar potential. A finite element solution.” International Journal of numerical methods in engineering. Vol 2. No. 1. 61 – 71.

4.- Reddy, J. N., Gartling, D. K. 2010. “The finite element method in heat transfer and fluid dynamics.” CRC press.

5.- Phanphet, S., Dechjarern, S., Jomjanyong, S. 2017. “Above-knee prosthesis design ba-sed on fatigue life using finite element method and design of experiment.” Medical En-gineering & Physics. Vol 43. Pp 86 – 91.

6.-Nandy, A., Jog, C. S. 2016. “An amplitude finite element formulation for electromagne-tic radiation and scattering.” Computers & Mathematics with Applications, 71(7), 1364-1391.

7.- Otin, R., Verpoorte, J., Schippers, H., & Isanta, R. 2015. “A finite element tool for the electromagnetic analysis of braided cable shields.” Computer Physics Communica-tions, 191, 209-220.

8.- Laadhari, A., Székely, G. 2017. “Eulerian finite element method for the numerical mo-deling of fluid dynamics of natural and pathological aortic valves.” Journal of Computa-tional and Applied Mathematics, 319, 236-261.

9.- Mohtarami, E., Baghbanan, A., Eftekhari, M., Hashemolhosseini, H. 2017. “Investigating of chemical effects on rock fracturing using extended finite element method.” Theore-tical and Applied Fracture Mechanics. 89. 110 – 126.

10.- http://grupossc.com/recursos/exito.php11.- Logan, D. L. 2011. A first course in the finite element method. Cengage Learning.

Page 99: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

105

La primera

Paralelización de un algoritmo genético

para el problema del agente viajeroMoisés Emmanuel Ramírez Guzmán,

Gil Hernández Ledesma, Erik Germán Ramos Pérez

AbstractEn el presente trabajo se muestra el uso de software para la implementación secuencial, paralela y distribuida de un algoritmo genético para tratar el problema del agente viajero. La implementación está hecha usando software libre. Como resultados se muestra el uso de diferentes operadores genéticos y la generación de archivos de trazas para monitorear gráficamente la ejecución del algoritmo.

1. IntroducciónLa formulación y análisis del problema del agente viajero (TSP) tiene cerca de dos siglos de antigüedad. Diversas aplicaciones como la cristalografía de rayos X, el reacondicionamiento de motores de turbina de gas o la perforación de placas de circuitos impresos pueden ser modeladas y solucionadas como un TSP.

Un método que brinda una solución exacta del TSP, consiste en probar cada una de las posibles permutaciones para encontrar el camino de menor longitud, cuyo inconveniente es un alto costo computacional. El trabajo presenta una implementación paralela y distribuida de algoritmos genéticos (AG) para generar una buena aproximación al óptimo con un menor costo en tiempo y computacional.

El desarrollo del AG contempla la representación del problema, los operadores genéticos usados y la función objetivo. La implementación está hecha en C, usando en primer lugar la biblioteca abierta de multiprocesamiento (OpenMP) para paralelizar el cómputo en cada nodo, y por otro lado, la interfaz de paso de mensajes (MPI) para permitir la comunicación entre éstos.

Emmanuel Ramírez Guzmán ([email protected]) Profesor Investigador del Instituto en Computación, Uni-versidad Tecnológica de la Mixetca.

Gil Hernández Ledesma ([email protected]) estudiante de Ingeniería en Computación, Universidad Tecnológica de la Mixetca.

Erik Germán Ramos Pérez ([email protected]) Profesor Investigador del Instituto en Computación, Univer-sidad Tecnológica de la Mixetca.

Page 100: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

106

Software libre

La metodología usada es: implementación secuencial, después de un análisis de ejecución usando una herramienta de perfil de ejecución (gprof) se detectaron las partes que ocupan mayor cantidad de procesamiento. Se analizaron estas regiones y se procedió a paralelizarlas y distribuirlas en los diferentes nodos.

Para hacer un análisis de rendimiento y comunicación entre los nodos en tiempo de ejecución, se usa una herramienta de instrumentación para aplicaciones paralelas y distribuidas de Cómputo de Alto Rendimiento (HPC). Al final del documento, se presenta un análisis y una comparativa de mejora de velocidad entre las implementaciones secuencial, paralela y paralela-distribuida.

2. Marco teóricoEl origen de los AG está en el análisis de la naturaleza (genética y evolución) para ayudar a resolver problemas de optimización. Estos algoritmos utilizan 3 operadores: cruza, mutación y selección para modificar poblaciones iteradamente [1].

Un AG, en general contiene los siguientes pasos:• Generar una población con N individuos.• Evaluar función de aptitud para cada elemento de la población. • Repetir para un número de generaciones determinado o hasta cumplir alguna regla de

terminación: a. Aplicar un criterio de selección sobre los individuos de la población.b. Modificar los individuos seleccionados utilizando operadores de cruza y mutación.c. Crear una nueva generación a partir de elementos nuevos y/o anteriores.d. Evaluar la función de aptitud de los individuos nuevos o alterados.

4. Mostrar los mejores individuos.

2.1 Representación del problema y Operadores genéticos La representación del problema es uno de los aspectos más importantes y es crucial para la solución del mismo. El problema abordado en este documento es representado utilizando valores enteros. El algoritmo inicia generando una permutación que representa una solución factible, que es tratada en el AG con los siguientes operadores:

Operador de selección: Selecciona individuos de la población basándose en la aptitud. Uno de los más utilizados es el de ruleta (ver Figura 1), donde cada individuo tiene una probabilidad de ser seleccionado de acuerdo a su aptitud. Otros operadores de selección importantes son: torneo y ranking.

Operador de cruza: Combina a dos individuos de la población mediante uno o más puntos de cruza, los cuales dividen al individuo en partes para que se formen nuevos tras combinarlas (ver Figura 2). En esta implementación después de generar los descendientes, se deben detectar e intercambiar los elementos repetidos en los descendientes de tal forma que cumplan con el criterio del ciclo hamiltoniano.

Page 101: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

107

La primera

Figura 1: Selección por rueda de la ruleta

Figura 2: Cruza en un punto

Operador de mutación: Modifica el gen de un individuo, la mutación variará de acuerdo al problema y su representación (ver Figura 3). En problemas con representación binaria, es común invertir un bit seleccionado aleatoriamente. En esta implementación para el TSP se intercambian dos valores de posiciones seleccionadas aleatoriamente.

Figura 3: Mutación en un bitEn [2] se pueden ver otras implementaciones del operador de cruza y mutación.

Page 102: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

108

Software libre

2.2 Problema del agente viajeroEl TSP consiste en determinar el orden óptimo de visita de un conjunto prescrito de ciudades de tal forma que la distancia recorrida sea mínima, cada ciudad se visite exactamente una vez, y se inicie y termine en una misma ciudad [3] (ver Figura 4). La importancia del problema es que el espacio de búsqueda es (n-1)!/2, volviéndolo un problema NP-hard. Para problemas con un número grande de nodos es más práctico obtener una respuesta aproximada, siendo un nicho para la aplicación de metaheurísticas como los AG [1].

Otros problemas importantes tratados con AG son: la planificación de tareas (task scheduling problem) [4], el problema de empaquetado (bin packing problem) [1] y el problema de planificación de rutas (vehicle routing problem) [1].

Figura 4: Representación gráfica del problema del TSP, las líneas punteadas muestran un ciclo hamiltoniano, que visita todas las ciudades una sola vez.

2.3 Programación paralela y el HPCLas necesidades de HPC, se hacen notorias debido al incremento de operaciones que deben ser llevadas a cabo para resolver problemas modernos, además de mayores requerimientos de almacenamiento de datos tanto de manera permanente como durante el tiempo en que se procesan para generar información.

Page 103: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

109

La primera

El procesamiento de datos usando equipos de cómputo tuvo en sus inicios su mayor auge de desarrollo durante la Segunda Guerra Mundial. A partir de ese momento se empezaron a utilizar computadoras con diferentes tecnologías debido a las necesidades de procesamiento que fueron surgiendo. Después de la guerra, la industria y el gobierno, en convenio con diferentes instituciones académicas alrededor de todo el mundo siguieron haciendo uso y promoviendo el desarrollo de estas tecnologías, debido principalmente al incremento de sus necesidades de procesamiento para la solución de problemas complejos [5]. Algunos problemas tratados con HPC son: modelado del clima [6], procesos biológicos [7], químicos y físicos [8, 9], defensa y armamento, visualización de datos, modelos matemáticos [11], inteligencia artificial [12], entre otros.

OpenMP es una interfaz de programación para C, C++ y Fortran que permite la ejecución de múltiples procesos usando la arquitectura de memoria compartida a nivel de cada nodo o computadora. Usa el modelo de ejecución fork-join, que consiste en tener un nodo maestro que va ejecutando el flujo principal del programa, al tener instrucciones que pueden ser ejecutadas en paralelo se usa una directiva (#pragma) que crea hilos de ejecución (fork). Al terminar la ejecución de los procesos paralelos se devuelve el control al nodo maestro (join). La figura 5 ilustra gráficamente este modelo.

Figura 5: Modelo Fork-Join para ejecución de procesos paralelos.La Interfaz de Paso de Mensajes es la primera biblioteca de paso de mensajes que

ofreció escalabilidad, portabilidad, rendimiento, estandarización y una implementación eficiente para el desarrollo de aplicaciones paralelas y distribuidas [13]. El estándar define la sintaxis y semántica de funciones contenidas en una biblioteca diseñada para ser usada para la creación de programas que permitan usar múltiples procesadores que se comunican ya sea a través de una red de interconexión o usando memoria compartida [14]. Las implementaciones más ampliamente usadas son: Open MPI* y MPICH**. Un esquema que combina memoria compartida (OpenMP) y memoria distribuida (MPI) se

* https://www.open-mpi.org/ (última visita 18 de abril de 2017)** https://www.mpich.org/ (última visita 18 de abril de 2017)

Page 104: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

110

Software libre

muestra en la Figura 6, que contiene 4 nodos, cada uno con 4 unidades de procesamiento (cada uno con un bloque de memoria local). Los 4 nodos se pueden comunicar a través de una red de interconexión usando mensajes.

Figura 6: Configuración de acceso a memoria no uniforme (NUMA) que combina arquitecturas de memoria compartida y distribuida

3. DesarrolloComo se ha mencionado, las herramientas usadas para tratar el problema son OpenMP y MPI. Para ello se muestra en la presente sección la configuración del clúster, las instrucciones principales en ambas bibliotecas y un esquema de las implementaciónes del AG.

3.1 Configuración del cluster BeowulfPara la ejecución de los AGs se configuró un clúster Beowulf, que permite accesar a los recursos de cómputo y almacenamiento desde cualquier nodo en una red. La instalación implica instalar el compilador de C++, y los paquetes correspondientes a la implementación de OpenMPI o MPICH. El siguiente paso es la configuración de servidores SSH para establecer conexiones seguras entre los nodos. Al hacer esto todos los nodos tienen una configuración idéntica y se genera un archivo con claves de autenticación que permiten establecer conexiones MPI sin pedir la contraseña cada vez que se deseen transmitir datos entre los nodos (ssh-keygen).

Existen otras alternativas para desarrollar programas paralelos y distribuidos, por ejemplo: Intel® Threading Building Blocks (Intel® TBB), biblioteca que utiliza plantillas de C++ para el desarrollo de programas paralelizados. En está se incluyen algoritmos, operaciones atómicas, un programador de tareas y un sistema de asignación de memoria escalable.

Page 105: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

111

La primera

La biblioteca cuenta con una versión comercial con asistencia personalizada y una open source que pasó a distribuirse bajo la licencia Apache 2.0 en el 2017, además ésta al igual que OpenMP y MPI se ha utilizado en investigaciones de Matemáticas [15, 16], Física, medicina [17] y Computación [18].

En los últimos años, ha crecido el uso de unidades de procesamiento gráfico (GPUs), para ello existen principalmente dos alternativas que son OpenCL (software libre) y CUDA (distribuido como freeware), la cual se ha utilizado por ejemplo, en investigaciones de experimentos físicos [19, 20], de visión computacional y reconocimiento de patrones [15] o de data clustering [21].

Las principales alternativas para el desarrollo de aplicaciones paralelas y distribuidas son distribuidas libremente, a pesar de que cuentan con versiones comerciales no se existe mayor diferencia que el servicio de asistencia personalizada que brinda la compañía propietaria de la tecnología, de esta forma es como el software libre a través de OpenMP, MPI e Intel® TBB lidera el desarrollo de aplicaciones paralelas y distribuidas.

3.2 Estructura general de un programa en C/C++ con MPI y OpenMPLos programas que utilizan MPI y OpenMP se componen principalmente de las siguientes instrucciones básicas [22] :

MPI_Init( &argc, &argv): Prepara al sistema para que pueda recibir las llamadas de las funciones MPI.

MPI_Finalize(): Función que libera los recursos adquiridos por la biblioteca MPI.MPI_Send y MPI_Recv: Son instrucciones que permiten implementar comunicación

punto a punto.Estas instrucciones tienen como restricción que pueden estar únicamente en la función

main del programa. Además, pueden combinarse regiones de código MPI y OpenMP, usando para éste último la declaración de regiones paralelas usando las directivas #pragma. Una de las directivas básicas es parallel, la cual crea el número de hilos indicado por la variable de entorno OMP_NUM_THREADS [23].

3.3 Estructura general de los programas desarrollados.La primer implementación realizada fue la secuencial. La Figura 7 muestra a nivel general los módulos implementados. Se utilizó la herramienta gprof para detectar las regiones de código que tienen mayor carga de ejecución y que son candidatas a ser paralelizadas. En el Cuadro 1, se muestra que la mayor parte del tiempo es usada en la función getPosRepetido, esta es usada por el operador de cruza para verificar que no haya ciudades repetidas en un cromosoma. Para la versión paralela se optó por paralelizar el proceso de cruza, usando la directiva #pragma en el ciclo que aplica el operador de cruza.

Cuadro 1: Fragmento de la información generada por la herramienta gprof.% Tiempo de ejecución Tiempo acumulado Número de llamadas Función

93.55 47.28 18666904 getPosRepetido3.70 49.15 50 cruza2.13 50.23 compara 0.62 50.54 2400000 evalua0.06 50.57 1 inicializar

Page 106: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

112

Software libre

Figura 7: Módulos de la implementación de un AG

La implementación con OpenMP y MPI distribuye el cálculo de la función de aptitud y cruza en los nodos. Enviando primero los cromosomas padre y recibiendo los descendientes que cumplen con el criterio del ciclo hamiltoniano. La evaluación de cada individuo se realiza de manera similar.

Page 107: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

113

La primera

4. ResultadosPara monitorear la comunicación entre los hilos de ejecución en las implementaciones paralela y distribuida se usó la herramienta de instrumentación Score-P*** que agrega instrucciones al código original, de manera que al momento de ejecutar un programa se generen archivos de trazas. Los archivos de trazas generados en formato OTF**** (Open Tra-ce Format); posteriormente, pueden ser visualizados usando programas como Vampir***** con el objetivo de detectar el uso de los recursos como CPU, memoria y comunicaciones entre procesos. En la Figura 8 se aprecia el inicio de ejecución del AG implementado con OpenMP y MPI. Particularmente se aprecia el inicio del programa y la ejecución de una región paralela usando OpenMP. En la Figura 9 se visualiza la comunicación entre 4 procesos MPI, se aprecia el hilo principal y mensajes para envío y recepción de datos.

Figura 8: Uso de Vampir para visualizar las comunicaciones entre los hilos.

Figura 9: Visualización de comunicaciones entre procesos MPI usando la herramienta Vampir.

*** https://www.vampir.eu/ (última visita 18 de abril de 2017)**** https://tu-dresden.de/zih/forschung/projekte/otf (última visita 18 de abril de 2017)***** https://www.vampir.eu/ (última visita 18 de abril de 2017)

Page 108: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

114

Software libre

El cuadro 2 muestra los resultados en tiempo de ejecución del AG usando las tres versiones. Los tiempos de ejecución en la versión distribuida no son proporcionales a la cantidad de iteraciones debido a las comunicaciones (tiempos de espera y sincronización). Se aprecia que la versión que tiene mejor rendimiento es la paralela, esto debido a que no requiere tiempos de espera considerables. Las pruebas fueron realizadas en dos equipos Dell PowerEdge T310 con procesadores Xeon [email protected] GHz interconectados por un Switch HP V1405-8G 10/100/1000Mbps.

Cuadro 2: Tiempo de ejecución del AG en la versión secuencial con una población de 48,000 individuos..

Versión de la implementación.

Número de generaciones25 50

Secuencial 53.25 seg. 88.07 seg.Paralela (OpenMP) 12.98 seg. 22.40 seg.Distribuida – Paralela

(OpenMP + MPI)44.25 seg, 52.42 seg.

La implementación realizada consideraba tres tipos de operadores de selección: aleatoria, ranking y por torneo. En las figuras 9, 10 y 11 se muestra el comportamiento de los operadores de selección usados. Además durante la implementación se usa elitismo para conservar a los mejores elementos de cada generación.

Figura 10: Convergencia a la solución usando el operador de selección aleatoria.

Page 109: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

115

La primera

Figura 11: Convergencia a la solución usando el operador de selección rank.

Figura 12: Figura 9: Convergencia a la solución usando el operador de selección por torneo

Puede apreciarse que la selección aleatoria converge más rápido a la solución, sin embargo los otros operadores se aproximan a la solución óptima con más generaciones.

Page 110: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

116

Software libre

5.ConclusionesDurante el proyecto se obtuvo la aproximación a la solución óptima para el problema del TSP, siendo este un problema de gran importancia en aplicaciones reales. Se mostró el uso de diferentes operadores y se analizó y monitoreó el comportamiento de las aplicaciones tanto a nivel secuencial como en las ejecución paralela-distribuida.

El uso de software libre permite realizar desarrollo de aplicaciones complejas sin costo. Generalmente los desarrollos libres tienen documentación y muy buen soporte, permitiendo de esta manera ser parte de otros proyectos más complejos.

En cuanto a la aplicación, se detectó visualmente que puede mejorarse el balanceo de carga para obtener mejor tiempo de ejecución en la versión paralela-distribuida.

6.Bibliografia[1] Duarte, A., Pantrigo, J. J., & Gallego, M. (2007). Metaheurísticas. Madrid: Dykinson.[2] Grefenstette, J., Gopal, R., Rosmaita, B., & Van Gucht, D. (1985, July). Genetic algo-

rithms for the traveling salesman problem. In Proceedings of the first International Con-ference on Genetic Algorithms and their Applications (pp. 160-165).

[3] Gutin, G., & Punnen, A. P. (Eds.). (2006). The traveling salesman problem and its varia-tions (Vol. 12). Springer Science & Business Media.

[4] Omara, F. A., & Arafa, M. M. (2010). Genetic algorithms for task scheduling problem. Journal of Parallel and Distributed Computing, 70(1), 13-22.

[5] Parhami, B. (2000). Computer Architecture: Algorithms and Hardware Designs. [6] Rodrigues, E. R., Navaux, P. O., Panetta, J., Mendes, C. L., & Kalé, L. V. (2010, Decem-

ber). Optimizing an MPI weather forecasting model via processor virtualization. In High Performance Computing (HiPC), 2010 International Conference on (pp. 1-10). IEEE.

[7] Tang, Y. H., Lu, L., Li, H., Evangelinos, C., Grinberg, L., Sachdeva, V., & Karniadakis, G. E. (2017). OpenRBC: A Fast Simulator of Red Blood Cells at Protein Resolution. arXiv preprint arXiv:1701.02059.

[8] Al-Oraiqat, A. M. (2016). Parallel implementation of the coupled harmonic oscillator. International Journal of Engineering, Science and Technology, 8(6), 105-111.

[9] Lončar, V., Young-S, L. E., Škrbić, S., Muruganandam, P., Adhikari, S. K., & Balaž, A. (2016). OpenMP, OpenMP/MPI, and CUDA/MPI C programs for solving the time-depen-dent dipolar Gross–Pitaevskii equation. Computer Physics Communications, 209, 190-196.

[10] Boughezal, R., Campbell, J. M., Ellis, R. K., Focke, C., Giele, W., Liu, X., ... & Williams, C. (2017). Color-singlet production at NNLO in MCFM. The European Physical Journal C, 77(1), 7.

[11] Gonzalez, B. P., Sánchez, G. G., Donate, J. P., Cortez, P., & de Miguel, A. S. (2012, May). Parallelization of an evolving artificial neural networks system to forecast time series using openmp and mpi. In Evolving and Adaptive Intelligent Systems (EAIS), 2012 IEEE Conference on (pp. 186-191). IEEE.

Page 111: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

117

La primera

[12] Gupta, S., Palsetia, D., Patwary, M. M. A., Agrawal, A., & Choudhary, A. (2014, May). A new parallel algorithm for two-pass connected component labeling. In Parallel & Distri-buted Processing Symposium Workshops (IPDPSW), 2014 IEEE International (pp. 1355-1362). IEEE.

[13] Bridges, P., Doss, N., Gropp, W., Karrels, E., Lusk, E., & Skjellum, A. (1995). User’s Guide to MPICH, a Portable Implementation of MPI. Argonne National Laboratory, 9700, 60439-4801.

[14] Quinn, M. J. (2003). Parallel Programming. TMH CSE, 526.[15] Henderson, P., & Vertescher, M. (2017). An Analysis of Parallelized Motion Masking

Using Dual-Mode Single Gaussian Models. arXiv preprint arXiv:1702.05156.[16] Horn, A., & Kroening, D. (2015, June). Faster linearizability checking via p-compo-

sitionality. In International Conference on Formal Techniques for Distributed Objects, Components, and Systems (pp. 50-65). Springer International Publishing.

[17] Dotti, A., Asai, M., Barrand, G., Hrivnacova, I., & Murakami, K. (2015, October). Exten-ding Geant4 Parallelism with external libraries (MPI, TBB) and its use on HPC resources. In Nuclear Science Symposium and Medical Imaging Conference (NSS/MIC), 2015 IEEE (pp. 1-2). IEEE.

[18] Playne, D. P., & Hawick, K. A. (2011, May). Auto-generation of parallel finite-differen-cing code for mpi, tbb and cuda. In Parallel and Distributed Processing Workshops and Phd Forum (IPDPSW), 2011 IEEE International Symposium on (pp. 1168-1175). IEEE.

[19] Qi, R., Botello-Smith, W. M., & Luo, R. (2017). Acceleration of Linear Finite-Diffe-rence Poisson-Boltzmann Methods on Graphics Processing Units. arXiv preprint ar-Xiv:1704.02745.

[20] Carter, F., Hitschfeld, N., Navarro, C., & Soto, R. (2017). GPU parallel simulation algo-rithm of Brownian particles with excluded volume using Delaunay triangulations. arXiv preprint arXiv:1703.02484.

[21] Javadi, R., & Ashkboos, S. (2017). An Efficient Parallel Data Clustering Algorithm Using Isoperimetric Number of Trees. arXiv preprint arXiv:1702.04739.

[22] Michael, J. Q. (2004). Parallel Programming in C with MPI and OpenMP. Dubuque, IA: McGraw-Hill.

[23] Pacheco, P. (2011). An introduction to parallel programming. Elsevier.

Page 112: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

119

La primera

Explorando tres niveles de paralelismo empleando software libre y freeware en computadoras personales multicore. El caso de

Linux versus WindowsFrancisco Gabriel Bezares Molina, Abdias Medina Ramírez, Ángel Alexis Sosa Gómez, J.

Jesús Arellano Pimentel, Guadalupe Toledo Toledo

El advenimiento de las computadoras personales multicore con capacidades SIMD hace muy importante el uso del procesamiento paralelo a fin de lograr el mejor desempeño del hardware instalado. El presente proyecto de clase, correspondiente a la asignatura de Sistemas Distribuidos y Paralelos del séptimo semestre de la carrera de Ingeniería en Computación de la Universidad del Istmo, se enfocó a explorar tres niveles de granularidad del procesamiento paralelo: muy fino, fino y medio; además de algunas combinaciones de estos. En dicho proyecto se emplearon herramientas y API’s de software libre, en el caso de Linux (nasm con instrucciones SIMD, hilos Posix y OpenMP), y freeware en el caso de Windows (Microsoft Visual Studio Express 2012 con soporte para ensamblador en línea, hebras y OpenMP). El objetivo de este proyecto de clase es identificar hasta qué punto es conveniente incrementar el número de hilos o hebras en función del número de núcleos instalados en el sistema y cuál sistema operativo (Linux o Windows) reporta los tiempos de ejecución más consistentes.

Es importante mencionar que este tipo de proyectos de clase permiten concretar aspectos teóricos propios de las asignaturas. Para este caso en particular, se abordaron los temas de: especificación de procesos y tareas, plataformas de programación paralela, y como un caso de estudio de sistemas paralelos. Todos estos temas forman parte del programa de estudios oficial de la asignatura de Sistemas Distribuidos y Paralelos.Francisco Gabriel Bezares Molina ([email protected]) Estudiante del 8vo semestre de la carrera de Inge-

niería en Computación de la Universidad del Istmo. Miembro del cuadro de honor en Ciclo Escolar 2016-2017 A de la carrera de Ingeniería en Computación.

Abdías Medina Ramírez ([email protected]) Estudiante del 8vo semestre de la carrera de Ingeniería en Computación de la Universidad del Istmo. Miembro del cuadro de honor en Ciclo Escolar 2016-2017 A de la carrera de Ingeniería en Computación.

Ángel Alexis Sosa Gómez ([email protected]) Estudiante del 8vo semestre de la carrera de Ingeniería en Computación de la Universidad del Istmo. Miembro del cuadro de honor en Ciclo Escolar 2016-2017 A de la carrera de Ingeniería en Computación.

J. Jesús Arellano Pimentel ([email protected]) Profesor-Investigador adscrito a la carrera de In-geniería en Computación de la Universidad del Istmo. Es Ingeniero en Sistemas Computacionales por el Instituto Tecnológico de Morelia en 2001 y Maestro en Ciencias en Ingeniería Eléctrica, opción Sistemas Com-putacionales por la Universidad Michoacana de San Nicolás de Hidalgo en 2005. Ha sido distinguido con el Perfil deseable PRODEP en los periodos Julio 2013 - Julio 2016 y Junio 2016 - Junio 2019.

Guadalupe Toledo Toledo ([email protected]) Profesor-Investigador adscrito a la carrera de Ingeniería en Computación de la Universidad del Istmo. Es Ingeniera en Sistemas Computacionales por el

Instituto Tecnológico de Tuxtepc en 2010 y Maestra en Computación Aplicada por parte del Laboratorio Na-cional de Informática Avanzada (LANIA) en 2013.

Page 113: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

120

Software libre

1 IntroducciónA decir de [1] existen diversas razones para usar cómputo paralelo, entre ellas están:• La computación paralela en comparación con la computación secuencial es ofrece

mejores ventajas para modelar, simular y entender fenómenos complejos del mundo real.

• Se hace un mejor uso del hardware ya que los procesadores actualmente cuentan con múltiples núcleos.

• Ayuda a disminuir tiempo de cómputo y dinero.• Facilidad para resolver problemas que requieren grandes cantidades de procesamiento,

debido a que se puede dividir un proceso en tareas muy pequeñas.La paralelización se puede realizar a distintos niveles de granularidad [2] tal como

se puede apreciar en la Figura 1. Para el caso particular de este proyecto se empleará la granularidad muy fina a través de instrucciones SIMD (acrónimo del inglés: Single Instruction Multiple Data), específicamente usando instrucciones MMX a bajo nivel (ensamblador). Para el nivel fino se hará uso del OpenMP y para el nivel medio se emplearán hilos o hebras según sea el caso en Linux o Windows, respectivamente.

Figura 1. Niveles de granularidad.

Además de la granularidad, el balanceo de carga es un aspecto muy importante a considerar para asegurar eficiencia de la ejecución en paralelo, ya que si la carga de trabajo no está correctamente balanceada, se podría estar esperando por la culminación de una tarea mientras las otras ya han finalizado, por tal motivo, se pretende que cada

Page 114: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

121

La primera

hilo o hebra procese la misma cantidad de trabajo. Los datos que se van a procesar son los elementos de una imagen digital, mejor conocidos como pixels, abreviatura de su denominación inglesa “picture elements” [3]. En la siguiente sección, se aborda con mayor detalle la metodología para procesar los pixels en cuatro diferentes tamaños de imagen, se mide el tiempo de ejecución durante su procesamiento con 1, 2, 4 y 8 hilos o hebras, así como el tratamiento estadístico de los tiempos de ejecución obtenidos.

2 MetodologíaLa metodología empleada en el presente proyecto de clase consistió en seis fases: 1) Selección del formato y tamaño de las cuatro imágenes a procesar, 2) Puesta a punto de las herramientas de software libre y freeware a emplear en el procesamiento de las imágenes, 3) Codificar en cada Sistema Operativo los diferentes niveles de granularidad con 1, 2, 4 y 8 hilos, 4) Medir los tiempos de ejecución para 100 corridas en cada codificación, 5) Tratamiento estadístico de los tiempos de ejecución obtenidos mediante el cálculo del tiempo más probable y diagramas de cajas y bigotes, y 6) Análisis y discusión de los resultados obtenidos del tratamiento estadístico. A continuación se describen de la primera a la quinta fase; la sexta fase se abordará en el apartado 3 correspondiente a las Pruebas y resultados.

2.1 Tipos y tamaños de las imágenes El tipo de imagen utilizado para ser procesado fue “bmp”, es decir imágenes mapa de bits de 24 bits, esto para garantizar la compatibilidad entre Windows y Linux. De [4] se recuperó código fuente libre escrito en el lenguaje C++ para abrir, guardar, y en general manipular las imágenes bmp de 24 bits. Este código secuencial se tomó como base para su posterior paralelización.

En lo que respecta al tamaño de las imágenes se partió de una imagen pequeña de 320x240 pixels, y se incrementó su tamaño en exactamente el doble, es decir, la segunda imagen quedó de 640x480 pixels, de igual manera se generaron las siguientes dos imágenes, de tal forma que sus tamaños fueron de 1280x960 y 2560x1920 pixels, respectivamente.

2.2 Herramientas de Software Con excepción del sistema operativo Windows, todas las herramientas de software utilizadas para este proyecto de clase no tienen costo para el usuario final, siendo en su gran mayoría herramientas de software libre. Dichas herramientas se pueden clasificar en: las utilizadas en la programación y compilación del código para procesamiento de las imágenes (desarrollo), las utilizadas en el tratamiento estadístico (estadística) de los tiempos obtenidos, y las utilizadas para generar el presente documento (edición). El Cuadro 1 enlista las herramientas empleadas en Linux, todas ellas son software libre. Cabe mencionar que la distribución de Linux instalada en todos los equipos de cómputo es Fedora 23. En lo que respecta a Windows la única herramienta utilizada es el Microsoft Visual Studio Express 2012 con soporte para ensamblador en línea, hebras y OpenMP, esta versión de Visual Studio es freeware.

Page 115: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

122

Software libre

Cuadro 1. Herramientas de software libre utilizadas en Linux (Fedora 23)Herramienta Desarrollo Estadística Edicióngeany Ä

g++ Ä

nasm Ä

OpenMP Ä

RStudio Ä

OpenOffice Calc Ä

OpenOffice Writer Ä

Dia Ä

Una vez instaladas las herramientas listadas en el Cuadro 1 se procedió a codificar la granularidad en cada sistema operativo.

2.3 Codificación de la granularidadLa codificación de la granularidad, es decir, del paralelismo, se encuentra esquematizada en la Figura 2. En una primera instancia, los cuatro tamaños de imagen son procesados con código secuencial en tres variantes: codificación en C++ (.cpp), codificación en ensamblador (.asm), y codificación utilizando instrucciones SIMD (mmx). En éste último caso ya se tiene un procesamiento paralelo de granularidad muy fina al emplear instrucciones mmx. Esto se logra ya que con una sola instrucción mmx (paddusb) se procesan simultáneamente 8 bytes de cualquiera de las imágenes, en lugar de un solo byte por instrucción secuencial. Para los tres casos anteriores se levantan 1, 2, 4 y 8 hilos Posix, repartiendo equitativamente una porción de cada una de las imágenes para garantizar un balanceo de carga adecuado. Por otro lado, cada una de las cuatro imágenes también se procesan utilizando 2, 4 y 8 hilos con la librería de OpenMP. Todas estas codificaciones se realizaron en los sistemas operativos Linux en su distribución de Fedora 23, y Windows en su versión 7.

2.4 Tiempo de ejecuciónEl procedimiento para tomar el tiempo sigue un esquema muy conocido de tres pasos:

1) se toma el tiempo del sistema previo a la ejecución del código, 2) se ejecuta el código, y 3) se toma el tiempo tras la ejecución. Para el caso particular de este proyecto también se consideró el reparto de la carga de trabajo dentro del tiempo medible. En cada sistema operativo se emplearon funciones de librerías propias. Para el caso de Linux, se utilizó la función getttimeofday() y para el caso de Windows QueryPerformanceCounter().

2.5 Tratamiento estadístico de los tiempos de ejecuciónCon el propósito de observar cómo se comporta cada sistema operativo en cada

uno de los niveles de granularidad, con los diferentes tamaños de imagen, realizando 100 ejecuciones de prueba por cada caso, es posible utilizar el cálculo del tiempo más probable y los diagramas de cajas y bigotes.

El cálculo del tiempo más probable permitirá conocer con cierta certeza qué tiempo se lleva cada ejecución. Este cálculo involucra ciertas fórmulas de probabilidad y estadística tales como el promedio, la desviación estándar y una consideración del error en un 50%

Page 116: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

123

La primera

como el sugerido en [5]. Siendo s la desviación estándar de la media y considerando un error del 50%, el error probable se calcula como:

Ep = 0.6745 ´ sUna vez calculado el Ep (error probable) el valor más probable se calcula como: X = μ ± Epdonde μ representa el promedio.Por su parte, el diagrama de cajas y bigotes es una presentación visual que describe

al mismo tiempo varias características importantes de un conjunto de datos, tales como el centro, la dispersión, la simetría o asimetría y la identificación de datos atípicos [6]. Una gráfica de este tipo (ver Figura 3) consiste en una caja rectangular, donde los lados más largos muestran el recorrido intercuartílico. Este rectángulo está dividido por un segmento vertical que indica dónde se posiciona la mediana y por lo tanto su relación con los cuartiles primero y tercero.

Figura 2. Esquema del paralelismo realizado.

Page 117: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

124

Software libre

Figura 3. Diagrama de cajas y bigotes.

3 Pruebas y resultadosLos equipos de cómputo personal utilizados para la ejecución de las pruebas con sus correspondientes características se muestran en el Cuadro 2.

Cuadro 2. Equipos de cómputo personal utilizados en las pruebas.

Equipo de cómputo CPU Número de núcleos RAM

Laptop Hp Celeron a 1.86 Ghz de 64 bits 2 4 GB

Dell Vostro Intel i5 a 2.67Ghz de 32 bits 4 4 GB

Dell Precision T1700 i5 4a Gen. a 3.5 Ghz de 64 bits 4 8 GB

Cabe mencionar que para la compilación de todos los códigos tanto en Linux como en Windows no se emplearon directivas de optimización en la generación de código para los compiladores g++ o Visual Studio. Además, tampoco se alteró la prioridad de los procesos, dejando completamente el control de la planificación a los algoritmos que se

Page 118: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

125

La primera

emplean en cada sistema operativo de forma automática [7]. De esta forma se asegura una comparativa más justa entre ambos sistemas operativos.

El número de pruebas realizadas para cada tipo de granularidad (ver Figura 2) fue de 100 ejecuciones. Si se consideran los 4 tamaños de imagen, por 3 tipos de codificación (cpp, asm, mmx), por 4 configuraciones de hilos Posix por 2 sistemas operativos, se obtienen 9600 pruebas. Además, considerando 3 codificaciones distintas con OpenMP por los 4 tamaños de imagen para los 2 sistemas operativos realizando 100 ejecuciones, se obtienen otras 2400 pruebas más. Así la suma total ejecuciones es de 12000 por equipo de cómputo, y son 3 equipos, así que finalmente se consiguieron 36000 ejecuciones.

Dada la gran cantidad de pruebas realizadas solo se mostrarán los resultados más representativos mediante gráficas de dispersión con puntos y líneas suavizadas de los tiempos más probables, así como diagramas de cajas y bigotes para los casos más representativos de la comparativa entre los tiempos reportados en Linux y Windows.

3.1 Resultados del tiempo más probableLos resultados arrojados por la equipo de cómputo HP Laptop ejecutándose las

pruebas en Linux muestran una mayor consistencia en cuanto a la proximidad del tiempo más probable positivo y el tiempo más probable negativo respecto al tiempo promedio, esto es prácticamente consistente para todos los casos de prueba. La gráfica de la Figura 4 muestra un caso representativo utilizando codificación en ensamblador (asm) con 4 hilos en ambos sistemas para los diferentes tamaños de imágenes, considerándose como indicador para el tamaño pequeño (1), mediano (2), grande (3) y muy grande (4) en el eje x.

Para el caso de la implementación secuencial, es decir con un hilo en cpp y asm, ambos sistemas operativos muestran consistencia con las imágenes pequeña, mediana y grande; sin embargo, en Windows para la imagen muy grande presenta cierta dispersión de los tiempos más probable positivo y negativo respecto al tiempo promedio, además, para estos mismos casos, el tiempo en Linux siempre es menor. Un aspecto interesante observado con la combinación de instrucciones mmx e hilos Posix es que los tiempos más probables se comportan más dispersos respecto al tiempo promedio cuando el número de hilos se incrementa, no obstante, los tiempos reportados respecto al resto de las implementaciones (cpp, asm, y OpenMP) son menores, algo similar pasa en Windows pero con tiempos relativamente mayores.

Los resultados obtenidos de las pruebas realizadas en el equipo de cómputo Dell Vostro muestran que en la mayoría de los casos cuando se emplean 2 hilos, sin importar la implementación cpp, asm o mmx, los mejores tiempos probables se encuentran en Windows, mientras que a medida que se incrementa el número de hilos (a partir de 4 hilos), los mejores tiempos probables en la gran mayoría de las veces ocurren en Linux (ver Figura 5). Además, se puede apreciar una diferencia considerable en las ejecuciones de OpenMP siendo Linux el sistema operativo con los mejores tiempos, sin importar el número de hilos.

Page 119: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

126

Software libre

Figura 4. Comparativa del valor más probable entre Linux y Windows para la implementación en ensamblador con 4 hilos.

Las pruebas realizadas en el equipo Dell Precision muestran un comportamiento similar a las realizadas en los otros dos equipos de cómputo. Presentan en su gran mayoría mejores tiempos más probables en las ejecuciones de Linux que en las ejecuciones de Windows. Además, la proximidad de los tiempos mas probables positivos y negativos son más próximos al tiempo promedio en los resultados de las pruebas en Linux que en Windows, pero a diferencia de los otros dos equipos de cómputo en éste, en particular se observó que entre mayor era el tamaño de la imagen, los tiempos más probables en las pruebas de codificación cpp para ambos sistemas operativos se alejaban más. En la Figura 6 se puede apreciar un caso representativo (1 indica pequeña, 2 mediana, 3 grande, y 4 muy grande).

Page 120: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

127

La primera

Figura 6. Comparativa del valor más probable entre Linux y Windows para la implementación en cpp con 4 hilos.

Figura 5. Comparativa del valor más probable positivo entre Linux y Windows para la implementación en cpp con 1, 2, 4 y 8 hilos.

Page 121: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

128

Software libre

3.2 Resultados en formato de gráficas de cajas y bigotesLa construcción de las gráficas de cajas y bigotes se realizó empleando un sencillo script escrito en el lenguaje R [8]. A continuación se muestran las más representativas en cada uno de los equipos de cómputo utilizados empleando la imagen de mayor tamaño.

El gráfico de cajas y bigotes obtenido de los tiempos de ejecución para el equipo Laptop HP con la implementación en ensamblador (asm) se muestra en la Figura 7.

Figura 7. Diagrama de cajas y bigotes correspondiente a la implementación en ensamblador y pruebas ejecutadas en el equipo Laptop HP.

La Figura 7 presenta cómo Linux resulta más estable en cuanto a los tiempos de ejecución obtenidos, con datos atípicos menos alejados de la mayoría. Además, otro aspecto a resaltar de dicha figura es que se puede observar lo mencionado en la Ley de Amdahl [9] respecto a alcanzar el máximo de rendimiento en un sistema con n núcleos de procesamiento, en este caso el equipo en cuestión cuenta con solo dos núcleos.

En todas las pruebas realizadas la combinación de hilos o hebras con instrucciones mmx generaron los menores tiempos que sus contrapartes implementadas en cpp, asm u OpenMP en cualquiera de los sistemas operativos, no obstante también fue en esta implementación (mmx) donde ocurrieron la mayor cantidad de datos atípicos, si se consideran todos los ocurridos en los tres equipos de cómputo. La Figura 8 muestra la gráfica de cajas y bigotes correspondiente a la ejecución de pruebas de la implementación mmx con 2, 4 y 8 hilos o hebras en Linux y Windows realizadas en el equipo de cómputo Dell Precision, aquí también se puede observar que Linux es más consistente que

Page 122: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

129

La primera

Windows respecto a los tiempos obtenidos, inclusive es evidente que la ejecución con 8 hebras en Windows genera tiempos mayores que con 4 hebras.

Figura 8. Diagrama de cajas y bigotes correspondiente a la implementación en mmx y pruebas ejecutadas en el equipo Dell Precision.

Figura 9. Diagrama de cajas y bigotes correspondiente a la implementación con OpenMP y pruebas ejecutadas en el equipo Dell Vostro.

Page 123: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

130

Software libre

En lo que respecta a la implementación en OpenMP el comportamiento de los tiempos de ejecución son similares en los tres equipos. En este sentido es de resaltar que la implementación en Windows genera prácticamente los mismos tiempos, sin importar el número de hilos programados; sin embargo, esto no ocurre en Linux ya que los tiempos generados corresponden mejor a lo esperado al incrementar el número de hilos en cada equipo de cómputo. La Figura 9 muestra el diagrama de cajas y bigotes correspondiente a la implementación en OpenMP y pruebas ejecutadas en el equipo de cómputo Dell Vostro donde es posible apreciar lo antes mencionado.

4 ConclusionesCon base en el análisis de los resultados obtenidos se puede concluir que Linux genera en la gran mayoría de las pruebas los tiempos más consistentes y menores que los generados en Windows. No obstante, vale la pena resaltar que Linux no está exento de generar datos atípicos, que en algunos casos (los menos) superan considerablemente los tiempos generados en su contraparte Windows. Además, las gráficas de cajas y bigotes muestran que, una vez que el número de hilos es igual al número de núcleos instalados en el sistema, ya no se generan mejores tiempos, e inclusive pueden generarse mayores tiempos de ejecución.

Es de resaltar que las herramientas de software libre utilizadas durante el desarrollo (implementación), estadística y edición de este proyecto, proporcionaron prestaciones iguales e inclusive superiores respecto a sus contrapartes en software privativo. Además, como trabajo futuro se planean utilizar herramientas de software libre, tales como Score-P o Paraver a fin de mostrar el aprovechamiento de los recursos computacionales.

Referencias[1] Barney, B. (2016). Introduction to parallel computing, 2014. Accedido: 18 de abril del

2017. [2] Buyya, R. (2000). The design of paras microkernel. Parallel Computing at a Glance. [3] González, R. C., & Woods, R. E. (1996).Tratamiento digital de imágenes. [4] Mena Christiam. Cargar y procesar imágenes BMP de 24bits con C++. 2013. Recupe-

rado de: http://www.unistmo.edu.mx/~jjap/BMP24bits.zip[5] Miguel, J. (1993). Teoría de errores de observación. Departamento de Física de la Tie-

rra, Astronomía y Astrofísica, 133. [6] Minaard, C., Condesse, V., & Rabino, C. (2005). Los gráficos de Caja: un recurso inno-

vador. Revista Iberoamericana de Educación,35(8), 237. [7] Anthu P. & Rohini V. Performance Evaluation of Linux and Windows Operating System.

2017. International Journal Of Innovative Research in Advanced Engineering. Issue 03, Vol 4.

[8] Ahumada, J. A. (2003). R para Principiantes. University of Hawaii. [9] Molero, X., Juiz, C., & Rodeño, M. (2004). Evaluación y modelado del rendimiento de

los sistemas informáticos. Prentice Hall.

Page 124: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

131

La primera

El Software Libre y la Seguridad Nacional

Germán Alejandro Miranda Díaz

1. IntroducciónLa Seguridad Nacional se basa principalmente en los conceptos de seguridad, integridad

e independencia del estado, el alcance se determina por la realidad y temporalidad de cada Estado. El Estado Mexicano ha experimentado un cambio en sus prioridades, desde la defensa de la integridad territorial, hacia actividades como la independencia económica, o la visión geopolítica, donde el sector militar se vuelve irrelevante[1], hasta llegar a un ambiente multidisciplinario que invoca a la vez múltiples prioridades.

Uno de los factores más obvios en la seguridad del Estado es la integridad y confidencialidad de la información, denominada Seguridad Informática. En esta área el Estado tiene un trabajo satisfactorio sustentado en el Plan Nacional de Desarrollo 2013-2018 [2] y en el documento conocido como MAAGTICSI [3] que define con claridad las reglas y mecanismos seguridad.

Estos y otros documentos que pueden ser enmarcados en “La Estrategia Digital Nacional” (EDN a partir de aquí) establecen prioridades y requerimientos mínimos en las plataformas tecnológicas del gobierno federal, así como una ruta crítica que permita integrar una cantidad sustancial de “Tecnologías de la información” (TI a partir de aquí) en la administración pública, con el objetivo de mejorar la calidad de los servicios ofrecidos por esta, y su grado de confidencialidad.

El Gobierno Federal cuenta con una estrategia definida para garantizar ésta faceta de la Seguridad Nacional, donde existen un conjunto de acciones específicas encaminadas a mejorar este concepto, como lo es el acuerdo que firmó el Gobierno Federal con la empresa Microsoft de México el día 24 de febrero del año en curso [4], cuyo alcance es una transferencia tanto de tecnología como de inteligencia, a fin de que el Estado Mexicano sea capaz de solucionar las amenazas a las que se enfrenta. El acuerdo pone en relevancia situaciones que afectan la capacidad de los Estados para mantener su propia seguridad frente a las amenazas plurales a las que están expuestos.

Mark Estberg, director de Seguridad de Gobiernos de Microsoft explicó que:“El gobierno mexicano específicamente podrá proteger a sus ciudadanos y sus activos

críticos, pueden hacer esto al tomar la información sobre amenazas (de malware) que Microsoft comparte y recolecta alrededor del mundo” y profundizó en el alcance del

Page 125: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

132

Software libre

acuerdo al referirse a la capacitación en el código base de la plataforma tecnológica de Microsoft.

“Hay una capacitación básica, en su mayoría en nuestro código base; como pueden imaginar el código base de Microsoft es algo complicado, entonces proveemos entrenamiento en cómo el código está estructurado y cómo funciona y también proveemos información sobre amenazas y vulnerabilidades como el programa que es comúnmente usado para entrenar”[5].

2. ImplicacionesLa complejidad de los sistemas ha venido aumentando de forma significativa en los últimos años[6], y éste aumento contribuye a una mayor cantidad de posibles riesgos de seguridad[7].

El peso de la relación comercial entre el Gobierno Federal y Microsoft, así como la superficie de ataque que representa los productos de esta compañía ha permitido que un acuerdo de esta naturaleza sea viable, pero esto no garantiza que otras organizaciones puedan tener acceso a estos acuerdos.

De hecho, no existe información de ningún otro acuerdo de esta naturaleza entre el Gobierno Federal y otra empresa, aunque de hecho estos acuerdos podrían existir y encontrarse cubiertos bajo acuerdos de confidencialidad.

Por otro lado, la información sobre seguridad de la información es más escasa en otros niveles de gobierno, después de una búsqueda se encontraron escasas referencias a nivel Estatal. Y prácticamente nula en los niveles municipales. Lo cual plantea preguntas sobre la capacidad del estado para mantener esa vertiente de la Seguridad Nacional en esos niveles de gobierno.

Dado que la cuota de mercado de la plataforma Microsoft en el cómputo de escritorio se encuentra cercana al 90% durante al menos los últimos dos años [8], es lógico que el Gobierno Mexicano se preocupe por mantener seguras las plataformas basadas en los productos de ésta compañía, y es de suponer que este acuerdo beneficie a una gran cantidad de ciudadanos.

Sin embargo, esta alta cuota de mercado plantea otros interrogantes, como el poder sustancial sobre el mercado, y que una interrupción en la capacidad de Microsoft para proveer sus servicios tendría consecuencias graves al limitar la capacidad de realizar múltiples tareas en grandes sectores de la población general.

Existen múltiples casos documentados donde se estableció que Microsoft abusó de su posición en el mercado, lo que llevo a la Unión Europea a tomar medidas para defenderse de los riesgos sistémicos que representa, algunas de las controvertidas medidas utilizadas para combatir el riesgo responden a las características únicas de Microsoft, [9, 10] pero otras pudieran ser aplicables a otras organizaciones que en sus respectivos nichos de mercado tengan posiciones similares.

La dependencia en proveedores que se encuentran sujetos a las leyes y políticas de otras naciones, sujeta la capacidad operativa a los intereses y prioridades de naciones que eventualmente podrían resultar hostiles[11].

Page 126: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

133

La primera

La desaparición de proveedores es un hecho tan real que pone en riesgo tanto la seguridad como la capacidad del software de ejecutarse en ambientes actuales[12] afectando a los usuarios quienes pueden encontrar una interrupción a sus actividades cotidianas.

Por otro lado, los resultados financieros históricos de Microsoft[13] permiten eliminar la preocupación que podría existir sobre su viabilidad a largo plazo, lo cual se refleja en su clasificación de riesgo[14]. Sin embargo, otras organizaciones que producen software con altas tasas de mercado pudieran tener posiciones económicas más débiles, lo que las convertiría en un riesgo para la continuidad de las operaciones de sus usuarios.

En un conflicto bélico los blancos tradicionalmente han sido objetivos militares o las cadenas de producción, sin embargo los blancos han evolucionado, y hoy en día incluyen infraestructura común[15] o grandes concentraciones de gente[16], lo que ha afectado tanto la forma de lidiar con los riesgos como la manera de hacer las actividades comunes.

3. AnálisisLa proliferación de las TI en todas las actividades diarias, ha transferido riesgos y amenazas informáticas a otros prácticamente todos los sectores, como se demostró con los ataques ocurridos en octubre de 2016 que utilizaron dispositivos IOT[17], lo que demuestra que no solo existe una mayor superficie de ataque, sino que también una mayor fuente de ataques.

Podemos realizar una reducción de los riesgos que el software presenta para la Seguridad Nacional en 4 puntos diferentes, aunque relacionados:1. Perdida de información.2. Alteración de información.3. Incapacidad para proveer los servicios.4. Mal funcionamiento que cause daños a la población.

En el Gobierno Federal existen prácticas que combaten estos riesgos en su área de influencia, y es razonable asumir que los operadores de infraestructura crítica hacen lo propio. Sin embargo, la falta de un programa o medidas para transmitir el conocimiento generado, y las herramientas otros grupos pone en riesgo la capacidad del estado para enfrentar riesgos externos.

Las amenazas a las capacidades tecnológicas de las PYMES aumentan sus ya de por si altos riesgos a su sobre vivencia [18]. Dado que las PYMES generan más del 25% del PIB y un porcentaje mayor al 50% en la generación de empleos, los riesgos en este sector de la economía se convierten en riesgos a la integridad del Estado.

Es necesaria una estrategia integral que transfiera el conocimiento generado en el combate a las amenazas a la seguridad a los diferentes niveles de gobierno y a los distintos sectores económicos de la nación. Esto no es un enfoque nuevo al problema.

El CERT/CC nació como una forma de responder a los daños causados por el gusano Morris, lo que puede ser considerado el primer ataque de grandes proporciones, afectando seriamente el funcionamiento del internet de la época[19].

Page 127: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

134

Software libre

4. PropuestaActualmente CERT/CC es principalmente un centro de investigación que sirve como centro para compartir información sobre riesgos a la seguridad informática, realizando tareas consideradas como críticas para la Seguridad Nacional por parte del gobierno de los Estados Unidos[20].

Si bien el Estado Mexicano cuenta con un CERT propio, es necesario incrementar su alcance para atender a más sectores de la población.

El software libre por definición es un intercambio de experiencias y conocimiento[21]. Esto permite una mejor transferencia de conocimiento y ofrece una dilución del riesgo.

Las acciones del Gobierno Federal dejan en claro que el acceso a las fuentes de los programas que utilizan son una prioridad para su propia seguridad, y es por ello que el software libre se encuentra en un lugar privilegiado dado sus características abiertas.

Las características del software libre, en especial la característica de ser software de fuente abierta permiten una mejor respuesta a los incidentes de seguridad, tanto en su detección según la ley de Linus[22], o en la capacidad de múltiples actores para ofrecer una solución a los problemas comunes[23].

Dado que no existen limitaciones sobre la reutilización del software libre, las distintas dependencias de gobierno podrían compartir software realizado para ellas, generando un ahorro al evitar duplicidades en el desarrollo, y aumentar la calidad del producto final al permitir que múltiples dependencias puedan destinar parte de sus presupuestos a la realización de este.

La adopción de software libre permitiría reducir el riesgo de que el software quedase sin mantenimiento, dado que cualquiera con los conocimientos adecuados puede retomar un proyecto y generar nuevas versiones con las correcciones necesarias.

Esto además genera una abundancia en los proveedores, sin poner en riesgo la compatibilidad de las plataformas[24] lo que permite hacer las plataformas de TI más confiables.

Otros estados han adoptado medidas para disminuir sus riesgos utilizando software libre, estos estados han establecido diferentes prioridades en su implementación, como Brasil o Corea del Norte[25, 26] que han actuado en base a consideraciones económicas. O Bulgaria que sea enfocado en reducir su dependencia de actores externos[27].

Bulgaria a establecido una ley que si bien no implica implementar nuevas soluciones de software libre, o que los actores ya establecidos tengan que entregar su código fuentes, más bien que los nuevos desarrollos hechos a medida para el gobierno entreguen el código fuente, lo que reduce el riesgo de quedarse con software sin mantenimiento[28].

Por otro lado el Gobierno Estadounidense estableció como prioridad la generación de software de alta calidad, que además permita una reutilización por otros actores[29].

Medidas destinadas al uso del software libre le permitirán al Estado Mexicano no solamente actuar en pro de su propia seguridad, sino que también le permiten mejorar la experiencia tecnológica de sus ciudadanos, así como la capacidad de los sectores económicos para enfrentar las múltiples amenazas a su supervivencia.

Page 128: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

135

La primera

(Endnotes)1 Manuel A. Garretón M. (1978). De la seguridad nacional a la nueva institucionalidad.

Notas sobre la trayectoria ideológica del nuevo Estado autoritario. Revista Mexicana de Sociología, 1259-1282.

2 Manuel A. Garretón M. (1978). De la seguridad nacional a la nueva institucionalidad. Notas sobre la trayectoria ideológica del nuevo Estado autoritario. Revista Mexicana de Sociología, 1259-1282.

42945/photo/13 http://www.elfinanciero.com.mx/tech/gobierno-federal-se-blinda-contra-malware-

con-microsoft.html4 Kemerer, C. F., & Slaughter, S. (1999). An empirical approach to studying software evo-

lution. IEEE Transactions on Software Engineering, 25(4), 493-509.5 Lipow, M. (1982). Number of faults per line of code. IEEE Transactions on Software En-

gineering, (4), 437-4396 https://www.netmarketshare.com/operating-system-market-share.aspx?qprid=9&qpc

ustomb=0&qpsp=195&qpnp=24&qptimeframe=M7 Dolmans, M., & Graf, T. (2004). Analysis of Tying Under Article 82 EC: The European

Commission’s Microsoft Decision in Perspective. World Competition, 27, 225.8 Spulber, D. F. (2008). Competition Policy and the Incentive to Innovate: The Dynamic

Effects of Microsoft v. Commission. Yale J. on Reg., 25, 247.9 Arturo frias10 https://www.rarst.net/thoughts/unmaintained/11 http://finance.mapsofworld.com/financial-report/organisations/microsoft-financial-sta-

tement.html12 https://www.moodys.com/credit-ratings/Microsoft-Corporation-credit-rating-698200#13 Gellman, B. (1991). Allied air war struck broadly in iraq; officials acknowledge strategy

went beyond purely military targets. Washington Post, 23.14 Glaeser, E. L., & Shapiro, J. M. (2002). Cities and warfare: The impact of terrorism on

urban form. Journal of Urban Economics, 51(2), 205-22415 https://www.theguardian.com/technology/2016/oct/26/ddos-attack-dyn-mirai-botnet16 http://eleconomista.com.mx/industrias/2012/03/23/pymes-aportan-cada-vez-menos-pib17 Dressler, J. (2007). “United States v. Morris”. Cases and Materials on Criminal Law. St.

Paul, MN: Thomson/West. ISBN 978-0-314-17719-3.18 http://cert.org/about/19 https://www.gnu.org/philosophy/free-sw.es.html20 Meneely, A., & Williams, L. (2009, November). Secure open source collaboration: an

empirical study of linus’ law. In Proceedings of the 16th ACM conference on Computer and communications security (pp. 453-462). ACM.

21 Raymond, E. S. (2001). The Cathedral & the Bazaar: Musings on linux and open source by an accidental revolutionary. “ O’Reilly Media, Inc.”.

22 Wu, M. W., & Lin, Y. D. (2001). Open source software development: an overview. Com-puter, 34(6), 33-38.

23 https://www.fayerwayer.com/2009/04/brasil-ahorro-us-1678-millones-usando-software-libre/

Page 129: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

136

Software libre

24 http://www.u-gob.com/gobierno-abierto-en-mexico-el-papel-del-floss-como-habilita-dor/

25 https://thepolicy.us/bulgaria-got-a-law-requiring-open-source-98bf626cf70a#.nhcj1i71w

26 https://thepolicy.us/bulgaria-got-a-law-requiring-open-source-98bf626cf70a#.nhcj1i71w

27 https://obamawhitehouse.archives.gov/blog/2016/03/09/leveraging-american-ingenui-ty-through-reusable-and-open-source-software

Page 130: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

137

La primera

Wit Sparks: Una Suite Educativa de Apoyo a Educación Preescolar

Ketnia Nataly Navarrete Méndez*, Ricardo Pérez Aguila**, Miguel Fuentes Cortes***, Gabriel Gerónimo Castillo****

Resumen Se describe una suite de aplicaciones en dispositivos móviles, con sistema operativo Android, para apoyo a la formación de competencias en niños de educación preescolar. La suite está basada en algunos de los temas principales de los campos formativos de lenguaje y comunicación, así como de pensamiento matemático. El objetivo principal de este desarrollo es el contribuir al reforzamiento de los conocimientos adquiridos en el aula, así como también promover la generación de nuevos conocimientos. Debido a la importancia del aprendizaje de una lengua adicional a la materna, y considerando que en algunos planteles educativos de nivel preescolar los niños comienzan su inducción al idioma inglés, es que la suite también está habilitada para ofrecer contenido en inglés y español. Específicamente los usuarios finales a quienes está dirigida la aplicación son niñas y niños de 3 a 6 años que tienen al español como lengua materna, cursan su educación preescolar y pueden o no tener conocimientos en el idioma inglés. Se presentan y detallan también los resultados de una serie pruebas de aceptación y funcionalidad.

1. Marco Teórico

1.1 Educación y Tecnología en México y el Estado de OaxacaLos indicadores de la UNICEF muestran que en México cerca de 1.7 millones de niños y 1.4 millones de niñas no asisten a la escuela [1], haciendo énfasis en que la educación inicial debe ser una realidad indispensable para garantizar el óptimo desarrollo de los niños y las niñas [2]. * ([email protected]) Estudiante de Licenciatura en Ingeniería Informática. Instituto Tecno-

lógico Superior de Acatlán de Osorio (ITSAO). Acatlán de Osorio, Puebla, México.** ([email protected]) Profesor Investigador. Laboratorio EDUMOVIL/Instituto de Computación.

Universidad Tecnológica de la Mixteca (UTM). Huajuapan de León, Oaxaca, México.***([email protected]) Profesor Investigador. Instituto Tecnológico Superior de Acatlán de Osorio (IT-

SAO). Acatlán de Osorio, Puebla, México.****([email protected]) Vice-Rector Académico. Universidad de Chalcatongo (UNICHA). Chalcatongo de Hi-

dalgo, Tlaxiaco, Oaxaca.

Page 131: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

138

Software libre

En la actualidad el estado de Oaxaca, localizado en el suroeste de la República Mexicana, forma parte de los 5 últimos estados en lo que respecta a nivel educativo. Ello implica que, dentro de los diferentes rubros que conforman a tal problemática, es vital reforzar la base del conocimiento que se obtiene en el nivel preescolar. El aprendizaje en este nivel es muy importante ya que es la base para que los niños puedan adquirir de manera adecuada todos los conocimientos del nivel educativo básico (Educación Primaria).

Uno de los motivos para que se presente una gran cantidad de deserciones de las escuelas es que no todos los niños asisten al preescolar y de 100 niños que ingresan a la primaria, 93 de ellos llegan a la secundaria, 65 continúan sus estudios y sólo 13 llegan a concluir una licenciatura [3]. En consecuencia, actualmente se buscan alternativas para que los niños en educación preescolar adquieran y procesen los conocimientos de mejor manera, además de que se motiven a seguir estudiando.

Por otro lado, en las estadísticas de consumo tecnológico en México hasta el año 2011 se muestra que en el 94.9% de los hogares hay televisión, en el 83.6% telefonía, en el 32.2% computadoras y finalmente en el 26% se cuenta con una conexión a Internet [4]. Esto evidencia que el país efectivamente es un importante consumidor de tecnología, sin embargo ésta en su mayor parte no ha dejado de ser un producto de importación, además de que las bases científico- tecnológicas sobre las cuales se sustentan estos productos son ajenos a la mayor parte de la población. Es por ello que es también importante revertir el rol de consumidor a desarrollador de nuevas tecnologías. En este sentido cualquier área ingenieril tiene como base científica a las matemáticas. Es claro entonces que es importante contar con diversas técnicas de enseñanza para lograr un mejor procesamiento de conocimiento y eficientar los procesos educativos.

1.2 TabletasLos primeros ejemplos del concepto de “Tableta de Información” se mostraron en películas de Ciencia Ficción durante la década de los 60s, véase por ejemplo 2001: A Space Odissey de Stanley Kubrick. Estos elementos sirven entonces como inspiración para propuestas como Dynabook, de Alan Key, en 1972 [5].

En 1987, Apple Computer presentó un video donde se efectuaba la propuesta conceptual del Knowledge Navigator: una tableta que respondía ante comandos de voz [6]. En 2001, la empresa finlandesa Nokia desarrolló un prototipo de tableta, la 510 Web Tablet, la cual era de gran tamaño y peso [7]. Este desarrollo nunca alcanzó la fase de comercialización. También en el año 2001 Microsoft lanza la Tablet PC. Aunque relativamente se tuvo poco éxito, este desarrollo logró crear un nicho de mercado para el cómputo movil [8]. Finalmente, en 2010, Apple presentó el iPad, basado en su exitoso iPhone [9].

En la actualidad, prácticamente todos los fabricantes de equipos electrónicos han incursionado en la producción de tabletas, lo cual ha generado que el mercado se vea inundado de una inmensa cantidad de opciones con diferentes tamaños, aplicaciones, precios y sistemas operativos. La popularidad de las tabletas ha incrementado año con año y su facilidad de uso hace que las puedan utilizar inclusive niños, lo cual ha sido el motivo de la creación de múltiples aplicaciones tanto gratuitas como de paga.

Page 132: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

139

La primera

1.3 El Sistema Operativo AndroidCon la aparición de los teléfonos celulares y las tabletas se propicia la creación de sistemas operativos con características que permiten el acoplamiento a las necesidades de los usuarios finales. Pero los avances tecnológicos en cuanto a dispositivos móviles como celulares y tabletas no terminan, teniendo como consecuencia la evolución constante de tales sistemas operativos.

Diversos expertos coinciden en que el Sistema Operativo más utilizado en las tabletas es precisamente Android en su versión 4.0, véase por ejemplo [10] (aunque a la fecha ya se cuenta con versiones más recientes). Android es desarrollado por una compañía propiedad de Google.

Android es un sistema operativo basado en el núcleo de sistema operativo Linux. Fue diseñado principalmente para dispositivos móviles con pantalla táctil, como teléfonos inteligentes o tabletas. El primer móvil con el sistema operativo Android fue el HTC Dream que inició su comercialización en octubre de 2008 [11].

La popularidad de Android entre los usuarios es grande, por lo que hablar de este sistema es natural para todos ya que es muy fácil de utilizar y su mayor ventaja es ser un sistema operativo de distribución gratuita. Además se incluyen en el mismo herramientas gratuitas para la creación de aplicaciones para dispositivos móviles.

1.4 Educación y TecnologíaLa enseñanza asistida por tecnología tiene antecedentes en la República Mexicana con las aulas de medios que la Secretaria de Educación Pública (SEP) instaló en algunas escuelas [12]. Éstas estaban equipadas con computadoras personales, tratando de mecanizar el proceso didáctico mediante un sistema de secuenciación de fichas, preguntas y actividades.

Hoy en día la tecnología es parte del proceso de aprendizaje de todas las personas, por lo que el proyecto a describir en este trabajo establece la creación de una suite de aplicaciones para dispositivos móviles con sistema operativo Android. La finalidad es que los niños de nivel preescolar tengan un complemento para el aprendizaje en las diversas áreas de pensamiento, basada en los temarios de ese nivel educativo.

Toda aplicación educativa debería contar con al menos los siguientes tres componentes: el de programación, el pedagógico y el de diseño [13]:• Componente de Pedagogía: Debe tener actividades acorde a la edad y tema, por lo

que los libros de Texto son una buena opción, ya que son el resultado de analistas y especialistas en educación.

• Componente de Diseño: Se debe considerar como un aspecto atractivo para presentación de ideas e información para el niño. Si es atractivo le será más fácil procesar, comprender y aprender la información que se le presenta.

• Componente de Programación: Es responsabilidad total y completa del ingeniero informático o programador, trasladar las ideas de la pedagogía y diseño en una aplicación educativa.

Page 133: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

140

Software libre

La educación inicial o preescolar es fundamental, ya que como su nombre mismo lo menciona, es la base del aprendizaje, por lo que es de suma importancia hacer aportaciones en ese ámbito para mejorarlo.

1.5 PropuestaEn la actualidad la tecnología es un aspecto muy importante en el ambiente educativo,

lo cual se puede observar en los niños más pequeños, quienes utilizan un celular o una tableta sin mayor problema. Sin embargo, en muchas ocasiones utilizan aplicaciones hechas para otro tipo de usuarios. En consecuencia, si ya tienen nociones del uso de la tecnología, esas habilidades se pueden enfocar a utilizar aplicaciones que los ayuden a obtener habilidades y conocimientos nuevos.

Lo antes mencionado, enfocado de una manera apropiada, puede traer consigo una serie de beneficios para el aprendizaje de los niños. Con base en este razonamiento en este trabajo se presenta una Suite de Aplicaciones en Dispositivos Móviles para Apoyo a la Formación de Competencias en Niños de Educación Preescolar. La suite se basa en algunos de los temas principales de los campos formativos de lenguaje y comunicación, así como de pensamiento matemático. Ésta ofrecerá contenido en inglés y en español, ya que actualmente desde el nivel de preescolar los niños empiezan a inducirse en el idioma inglés.

El conjunto de aportaciones a las cuales la suite pretende dar cobertura son las siguientes:• Contar con actividades divertidas, que brinden la oportunidad a los niños de reforzar

sus habilidades, así como generar y adquirir conocimientos jugando.• Contar con aplicaciones en español e inglés.• Reforzar los conocimientos de los niños de Educación Preescolar en los siguientes

campos formativos:• Lenguaje y Comunicación: El niño aprende a comunicar lo que está a su alrededor,

conoce las letras y sus sonidos, además de iniciar sus habilidades de lectura.• Pensamiento Matemático: El niño conoce los números y aprende a contar de manera

ascendente. Aprende el concepto de sumas y restas con números pequeños. Se inicia en la resolución de pequeños problemas.

Estos dos campos formativos fueron elegidos bajo la recomendación de expertos en pedagogía debido a que forman la base para que los niños adquieran la mayoría de sus habilidades y conocimientos.

2. Desarrollo de la Suite Wit Sparks

2.1 Actividades InicialesSe efectuaron un total de seis actividades preliminares para definir elementos gráficos y

auditivos que fueron incorporados a la Suite de Aplicaciones Wit Sparks. A continuación se mencionan brevemente tomando en cuenta que en las siguientes subsecciones algunos de éstos podrán ser apreciados con mayor detalle:

Entrevistas con niños para decidir el diseño de las diferentes aplicaciones.

Page 134: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

141

La primera

En base al punto anterior se determina que la la suite se conforma por 8 aplicaciones, 4 en el área de Lenguaje y Comunicación, además de 4 en el área de Pensamiento Matemático.

Pruebas con niños para grabar el audio de las aplicaciones, quedando una niña de 5 años como seleccionada.

Un total de 700 grabaciones, de las cuales se seleccionaron y editaron las más adecuadas, incluyendo pronunciación tanto en inglés como en español.

Diseño de tarjetas para letras, vocales, números e imágenes de asociación a cantidades. Estas tarjetas son incorporadas a sus correspondientes aplicaciones.

Generación de una galería de fotografías de diferentes animales la cual es utilizada en la aplicación correspondiente.

2.2 Descripción del Mosaico Principal de la Suite de Aplicaciones Wit

SparksEn la Figura 1 se muestran la Pantalla Principal de la Suite de Aplicaciones Wit Sparks. En ésta se pueden apreciar las opciones correspondientes para acceso a las aplicaciones.

Figura 1. Diseño de la pantalla principal.

Page 135: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

142

Software libre

Los dos botones disponibles en la Pantalla Principal cumplen con las siguientes funciones:

• Letras: Direcciona al usuario al mosaico de aplicaciones relacionadas con el área de Lenguaje y Comunicación.

• Números: Direcciona al usuario al mosaico de aplicaciones relacionadas con el área de Pensamiento matemático.

2.3 Aplicaciones del Área de Lenguaje y Comunicación

2.3.1 Aplicación VocalesObjetivo de la aplicación: Se mostrarán al niño las vocales en tarjetas. Se repetirá el nombre de la letra y se mostrarán imágenes de objetos, animales o cosas que tengan un nombre que inicie con la vocal seleccionada.

Escenario 1: Repasar vocales. Véase la Figura 2 para el diagrama de su correspondiente caso de uso.

Figura 2. Diagrama de caso de uso "Repasar vocales".

Page 136: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

143

La primera

A continuación se presenta la descripción del caso de uso "Repasar vocales":Caso de uso: Repasar las vocales.

Metas en el contexto: Poder visualizar las tarjetas con las vocales y las imágenes. Además de poder escuchar el audio relacionado.

Precondiciones: Iniciar la aplicación.Condiciones de éxito: Las tarjetas cambian conforme el usuario lo solicita a través de un toque.Condiciones de fallo: Ninguna.Actores primarios: Aplicación, Base de Datos.Actores secundarios: Ninguno.Evento activador: El usuario toca la tarjeta con imagen. Puede ser la vocal o una figura u objeto.Casos incluidos: Mostrar tarjetas y cambiar tarjetas.Flujo principal: Paso y Acción.

El usuario toca la tarjeta que tiene una vocal.

La aplicación solicita la imagen y respectivo audio a la base de datos.

La Base de Datos retorna los datos solicitados, si la tarjeta tiene una vocal retorna los datos de la nueva tarjeta con una palabra.

La aplicación muestra al usuario la nueva tarjeta después de una animación con su audio.

El usuario toca la tarjeta con imagen.

La base de datos retorna los datos solicitados, si la tarjeta tiene una imagen, retorna los datos de la nueva tarjeta con la vocal que se está repasando.

La aplicación muestra al usuario la nueva tarjeta después de una animación, con el audio correspondiente.

Escenario 2: Cambiar de vocal. Véase la Figura 3 para el diagrama de su correspondiente caso de uso.

Figura 3. Diagrama de caso de uso "Cambiar de vocal".A continuación se presenta la descripción del caso de uso "Cambiar de vocal":

Caso de uso: Cambiar de vocal.

Page 137: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

144

Software libre

Metas en el contexto: Poder cambiar de vocal, a la anterior o la siguiente.Precondiciones: Iniciar la aplicación.Condiciones de éxito: Que el usuario presione alguna de las flechas.Condiciones de fallo: Ninguna.Actores primarios: Usuario, base de datos.Actores secundarios: Ninguno.Evento activador: Tocar alguna flecha.Casos incluidos: Mostrar flechas, tocar flechas y cambiar tarjeta.Flujo principal: Pasos y Acciones.

1. El usuario toca la flecha siguiente o anterior.2. La aplicación solicita la siguiente vocal o la anterior según sea el caso.3. La base de datos retorna la información de la tarjeta y audio solicitados.4. La aplicación muestra la tarjeta y reproduce el audio correspondiente.

Escenario 3: Cambiar idioma. Véase la Figura 4 para el diagrama de su correspondiente caso de uso.

Figura 4. Diagrama de caso de uso "Cambiar idioma".

A continuación se presenta la descripción del caso de uso "Cambiar idioma":Caso de uso: Cambiar idioma.Metas en el contexto: Cambiar el idioma en el que se desea utilizar la aplicación.Precondiciones: Iniciar la aplicación.Condiciones de éxito: Tocar alguna de las banderas.Condiciones de fallo: Ninguna.Actores primarios: Usuario, base de datos.Actores secundarios: Ninguno.

Page 138: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

145

La primera

Evento activador: Tocar una bandera.Casos incluidos: Ninguno.Flujo principal: Paso y Acción.

1. El usuario selecciona una bandera, México: español, Estados Unidos: inglés.2. La aplicación solicita a la base de datos la tarjeta y el audio correspondientes

al cambio de idioma.3. La base de datos actualiza la información y retorna los datos solicitados.4. La aplicación muestra la tarjeta y el audio correspondientes al idioma

solicitado.5. El usuario puede interactuar con la aplicación en el idioma que eligió.

Al iniciar la aplicación el usuario apreciará la Pantalla 1-Figura 5. Cuando el usuario toque la tarjeta de mayor tamaño con la letra “a”, a través de una animación cambia la tarjeta como puede observarse en la Pantalla 2-Figura 5. Si el usuario vuelve a tocar la tarjeta a través de una animación ésta se vuelve a cambiar pero ahora regresa a su estado anterior, mostrando nuevamente la vocal “a” (Pantalla 3-Figura 5). Se repite este ciclo las veces que el usuario lo desee. Para cambiar a la siguiente vocal el usuario debe tocar la flecha que se encuentra en el círculo amarillo en la Pantalla 4-Figura 5. Cuando se cambian las tarjetas también se reproduce el audio que corresponde.

Figura 5. Flujo de la aplicación Vocales para los escenarios 1 y 2.

Page 139: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

146

Software libre

Cuando el usuario cambia de vocal, por ejemplo a la vocal “e”, Pantalla 1-Figura 6, si toca la tarjeta con la vocal, a través de una animación se cambia y muestra una imagen cuyo nombre inicie con dicha vocal (Pantalla 2-Figura 6). Si el usuario toca la bandera de Estados Unidos, la aplicación cambia al idioma inglés, reemplazando la tarjeta por una que contenga una imagen cuyo nombre inicie con la vocal “e” en el idioma inglés, además de reproducir el audio correspondiente (Pantalla 3-Figura 6).

Figura 6. Flujo de la aplicación Vocales para el escenario 3.

En la Figura 7 se pueden observar algunas capturas de pantalla de la aplicación Vocales, la cual tiene como propósito ayudar al repaso de las mismas, además de asociar sus sonidos con palabras sencillas. La aplicación cuenta con diferentes imágenes que funcionan como botones. a continuación se describe la funcionalidad de cada uno:

• Casa: Regresa al mosaico anterior. En este caso es el mosaico de aplicaciones del área de lenguaje y comunicación.

• Bandera México: Cambia la aplicación al idioma español.

• Bandera Estados Unidos: Cambia la aplicación al idioma inglés.

• Flecha anterior: Retorna a la vocal anterior y en caso de que se esté viendo la vocal “a” retorna a vocal “u”.

• Flecha siguiente: Procede a la siguiente vocal y en caso de que se esté viendo la “u”, retorna a la vocal “a”.

• Tarjeta menor con vocal: Al tocarla muestra una animación y al mismo tiempo reproduce el audio de la vocal correspondiente.

• Tarjeta mayor con vocal: Al tocarla, a través de una animación, cambia de mostrar la vocal a mostrar una figura u objeto del cual su nombre inicia con esa vocal, reproduciendo el audio del nombre correspondiente. Si se vuelve a tocar se muestra la vocal otra vez y así sucesivamente, mostrando 2 figuras diferentes en inglés y 2 figuras en español.

Page 140: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

147

La primera

Figura 7. Diseño de la aplicación Vocales.

2.3.2 Aplicación AbecedarioObjetivo de la aplicación: Se mostrarán al niño las letras del abecedario en tarjetas. Se repetirá el nombre de la letra.

Escenario 1: Cambiar letra. Véase la Figura 8 para el diagrama de su correspondiente caso de uso.

Figura 8. Diagrama de caso de uso "Cambiar letra".

Page 141: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

148

Software libre

A continuación se presenta la descripción del caso de uso "Cambiar letra":Caso de uso: Cambiar letra. Metas en el contexto: Poder visualizar la letra anterior o la letra siguiente a la actual.Precondiciones: Iniciar la aplicación.Condiciones de éxito: Tocar alguna de las flechas.Condiciones de fallo: Ninguna.Actores primarios: Usuario, base de datos.Actores secundarios: Ninguno.Evento activador: Tocar alguna flecha.Casos incluidos: Ninguno.Flujo principal: Paso y Acción.

1. El usuario toca alguna de las flechas para avanzar o retroceder en el alfabeto.2. La aplicación solicita a la base de datos la información para cambiar las

tarjetas.3. La base de datos retorna los datos correspondientes.4. La aplicación cambia las tarjetas y reproduce el audio correspondiente.

Escenario 2: Cambiar a letra minúscula. Véase la Figura 9 para el diagrama de su correspondiente caso de uso.

Figura 9. Diagrama de caso de uso "Cambiar a letra minúscula".

A continuación se presenta la descripción del caso de uso "Cambiar a letra minúscula":Caso de uso: Cambiar a letra minúscula.Metas en el contexto: Cambiar la letra de mayúscula a minúscula.Precondiciones: La letra de la aplicación sea mayúscula.

Page 142: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

149

La primera

Condiciones de éxito: Tocar la letra minúscula.Condiciones de fallo: Ninguna.Actores primarios: Usuario, base de datos.Actores secundarios: Ninguno.Evento activador: Tocar la letra mayúscula.Casos incluidos: Ninguno.Flujo principal: Paso y Acción.

1. El usuario toca la tarjeta pequeña que contiene la letra minúscula.2. La aplicación solicita a la base de datos la información para cambiar las tarjetas.3. La base de datos regresa los datos correspondientes.4. La aplicación cambia las tarjetas y reproduce el audio correspondiente.

Al iniciar la aplicación el usuario visualizará la Pantalla 1-Figura 10 y la aplicación estará en el idioma español. Si el usuario toca la tarjeta con la letra mayúscula, se mostrará una animación. Si se toca la flecha de la derecha (Pantalla 2-Figura 10), la aplicación le mostrará al usuario la siguiente letra en el abecedario (Pantalla 3-Figura 10). Para cambiar las letras de mayúsculas a minúsculas el usuario sólo deberá tocar la tarjeta que está en la parte inferior derecha de la pantalla (círculo amarillo, Pantalla 3-Figura 10).

Figura 10. Flujo de la aplicación Abecedario para sus casos de uso.

Page 143: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

150

Software libre

La Figura 11 muestra la aplicación Abecedario, la cual permite visualizar las letras de la a-z en mayúsculas y minúsculas con el audio respectivo a su nombre. El abecedario está disponible en inglés y español. Si se decide repasar en inglés la letra “ñ” no aparece. Todas las imágenes restantes cumplen con alguna acción o funcionalidad las cuales se enlistan a continuación (omitiendo aquellas que ya fueron descritas en la subsección 2.3.1):

• Boca: Reproduce el audio correspondiente al nombre de la letra que se está visualizando en ese momento.

• Tarjeta con letra grande (puede ser mayúscula o minúscula): Al iniciar la aplicación se muestran las letras mayúsculas, pero se puede cambiar a minúsculas. Al tocar la imagen muestra una animación.

• Tarjeta con letra pequeña (puede ser mayúscula o minúscula): Contiene la letra contraria a la de la tarjeta grande, su función consiste en cambiar la letra de mayúscula a minúscula o de minúscula a mayúscula.

2.3.3 Aplicación DibujarObjetivo de la aplicación: Proporciona un lienzo para que el niño dibuje utilizando 8 colores diferentes, además de indicar el cambio de color.

Escenario 1: Dibujar. Véase la Figura 12 para el diagrama de su correspondiente caso de uso.

A continuación se presenta la descripción del caso de uso "Dibujar":Caso de uso: DibujarMetas en el contexto: Hacer un dibujo, eligiendo un color.

Precondiciones: Iniciar la aplicación.Condiciones de éxito: Seleccionar un color.

Condiciones de fallo: Ninguna.Actores primarios: Aplicación.Actores secundarios: Base de datos.Evento activador: El usuario elige alguno de los ocho colores disponibles.Casos incluidos: Seleccionar un color, dibujar.

Page 144: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

151

La primera

Figura 11. Diseño de la aplicación Abecedario.

Figura 12. Diagrama de caso de uso "Dibujar".

Page 145: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

152

Software libre

Flujo principal: Paso y Acción.1. El usuario inicia la aplicación.2. El usuario toca un círculo.3. La aplicación le pide a la base de datos el audio correspondiente al color que se

seleccionó.4. La base de datos retorna el identificador correspondiente para que la aplicación

reproduzca por audio el nombre de color.5. El usuario, utilizando su dedo, empieza a dibujar en la pantalla.

Para poder dibujar el usuario sólo tiene que tocar alguno de los círculos de colores (rectángulo azul, Pantalla 1-Figura 13), y dibujar con su dedo. Cada vez que toque un círculo la aplicación le avisará del cambio de color al reproducir el nombre del color en el idioma en el que se esté utilizando la aplicación. Para poder hacer un nuevo dibujo, sólo deberá tocar la imagen de la hoja en blanco con círculo de colores (círculo amarillo, Pantalla 3-Figura 13.). Para cambiar de idioma la aplicación, el usuario deberá tocar la bandera, donde la bandera que se esté mostrando es la del idioma disponible.

Figura 13. Flujo de la aplicación Dibujar.

En la Figura 14 se muestra la pantalla de la aplicación Dibujar, la cual cuenta con los siguientes botones cuya funcionalidad se enlista a continuación (omitiendo aquellos que ya fueron descritos en subsecciones previas):• Nueva hoja: Cuando el usuario la toca, la pantalla se limpia, para iniciar un

nuevo dibujo.

• Círculo de color: La aplicación cuenta con 8 diferentes colores, con los cuales el usuario puede dibujar.

Page 146: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

153

La primera

Figura 14. Diseño de la aplicación Dibujar.

2.3.4 Aplicación Galería de AnimalesObjetivo de la aplicación: Se cuenta con fotos de 36 animales diferentes, indicándole al niño como se escribe y escucha su nombre tanto en inglés como en español.

Escenario 1: El usuario ve la siguiente imagen en la galería. Véase la Figura 15 para el diagrama de su correspondiente caso de uso. A continuación

se presenta su descripción:Caso de uso: Ver la siguiente imagen.Metas en el contexto: Poder apreciar algunos animales y conocer sus nombres en inglés y español.Precondiciones: Iniciar la aplicación.

Page 147: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

154

Software libre

Condiciones de éxito: Iniciar la aplicación.Condiciones de fallo: Ninguna.Actores primarios: Aplicación, base de datos.Actores secundarios: Ninguno.Evento activador: El usuario toca la imagen.Casos incluidos: Deslizar a la izquierda la imagen.Flujo principal: Paso y Acción.

1. El usuario Inicia la aplicación.2. El usuario desliza la imagen hacia la izquierda.3. El sistema pide a la base de datos la información de la siguiente imagen

disponible.4. La base de datos le proporciona al sistema el nombre, audio e imagen del

siguiente elemento.5. El sistema muestra la información retornada por la base de Datos.

Figura 15. Diagrama de caso de uso "El usuario ve la siguiente imagen en la galería".

Escenario 2: El usuario ve la imagen anterior en la Galería.Véase la Figura 16 para el diagrama de su correspondiente caso de uso.

Figura 16. Diagrama de caso de uso "El usuario ve la imagen anterior en la galería".

Page 148: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

155

La primera

A continuación se presenta la descripción del caso de uso "El usuario ve la imagen anterior en la galería":

Caso de uso: Ver la imagen anterior.Metas en el contexto: Poder visualizar el elemento anterior.Precondiciones: Haber visto una imagen anterior a la que se está viendo.Condiciones de éxito: Deslizar la imagen hacia la derecha.Condiciones de fallo: Ninguna.Actores primarios: Aplicación, base de datos.Actores secundarios: Ninguno.Evento activador: Tocar la imagen.Casos incluidos: Deslizar la imagen hacia la derecha.Flujo principal: Paso y Acción.

1. El usuario Inicia la aplicación.2. El usuario desliza la imagen hacia la derecha.3. El sistema pide a la base de datos la información de la imagen anterior

disponible.4. La base de datos le proporciona al sistema el nombre, audio e imagen del

siguiente elemento.5. El sistema muestra la información proporcionada por la base de datos.

Para poder visualizar los 36 animales con los que cuenta la aplicación Galería de Animales, los usuarios deberán iniciar la aplicación dentro del mosaico de aplicaciones del área de Lenguaje y Comunicación. La aplicación inicia en el idioma inglés, como se puede observar en la Pantalla 1-Figura 17. Para cambiar de imagen el usuario deberá tocar la pantalla de derecha a izquierda; para cambiar de idioma solamente se debe tocar la bandera de México para el idioma español, y la bandera de Estados Unidos para inglés.

Figura. 17. Flujo de los casos de uso de la aplicación Galería de Animales.

Page 149: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

156

Software libre

En la Figura 18 se puede observar la pantalla de la aplicación Galería de Animales. La acción de cada botón se describe a continuación (excepto para aquellos botones antes presentados en secciones previas):

• Nombre: indica el nombre del animal que se está mostrando, en el idioma que el usuario lo desee.

• Imagen: Al tocarla reproduce el audio correspondiente al animal que se está visualizando en ese momento.

Figura 18. Diseño de la aplicación Galería de Animales.

Page 150: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

157

La primera

2.4 Aplicaciones del Área de Pensamiento Matemático

2.4.1 Aplicación NúmerosObjetivo de la aplicación: Se mostrarán los números del 1 al 20 con sus respectivos nombres y una figura de asociación de cantidades.

Escenario 1: Cambiar número. Véase la Figura 19 para el diagrama de su correspondiente caso de uso.

Figura 19. Diagrama de caso de uso "Cambiar número".

A continuación se presenta la descripción del caso de uso:Caso de uso: Cambiar número.Metas en el contexto: Poder ver el número siguiente o el número anterior al actual.Precondiciones: Iniciar la aplicación.Condiciones de éxito: Tocar alguna de las flechas.Condiciones de fallo: Ninguna.Actores primarios: Usuario, base de datos.Actores secundarios: Ninguno.Evento activador: Tocar una flecha.Casos incluidos: Ninguno.Flujo principal: Paso y Acción.

1. El usuario toca una de las flechas, la derecha para ver el siguiente número, y la izquierda para ver el número anterior.

2. La aplicación solicita a la base de datos la información del número y audio correspondiente.

3. La base de datos retorna la información solicitada.4. La aplicación muestra el número y el audio correspondiente.

Page 151: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

158

Software libre

Cuando el usuario inicia la aplicación Números ésta se apreciará tal como lo indica la Pantalla 1-Figura 20. El conteo iniciará desde el número 0, por lo que una tarjeta estará vacía, al tocar cada tarjeta se mostrará una animación (Pantalla 2-Figura 20). La imagen de la boca es para repetir el nombre del número. Para ver el siguiente número sólo se debe tocar la flecha de la derecha (Pantalla 3-Figura 20). Si se desea cambiar el idioma sólo se deberá tocar la bandera de Estados Unidos, ya que la aplicación inicia en el idioma español.

Figura 20. Descripción de flujo de casos de uso de la aplicación Números.

La Figura 21 muestra las pantallas de la Aplicación Números, la cual permite repasar los números del 0 al 20 en inglés y en español, además muestra una tarjeta con la cantidad de círculos correspondientes a número a fin de que el usuario efectúe una asociación entre número y cantidad. La aplicación reproduce los audios de los números tanto en inglés como en español. Las funciones de los botones se describen a continuación (excepto aquellos previamente presentados):

• Flecha anterior: Retorna al número anterior, si se encuentra en el número “0”, se traslada al número “20”.

Page 152: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

159

La primera

• Flecha siguiente: Procede al número siguiente, si se encuentra en el número “20”, se retorna al número “0”.

• Boca: Reproduce el audio correspondiente al número en la tarjeta.

• Tarjeta con número: Al tocarla gira a la izquierda y después regresa a su lugar, además de reproducir el audio del número correspondiente.

• Tarjeta con círculos: Al tocarla gira a la derecha y después regresa a su lugar, contiene la cantidad de círculos correspondientes al número de la tarjeta amarilla. Además de reproducir el audio del número correspondiente.

Figura 21. Diseño de la aplicación Números

Page 153: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

160

Software libre

2.4.2 Aplicación SumasObjetivo de la aplicación: Reforzar las nociones de suma, mostrando sumas de manera aleatoria, contando con ayuda en caso de que el niño la necesite. Las operaciones serán con números del 0 al 10 y con respuestas en el rango del 0 al 20.

Escenario 1: Resolver una suma. Véase la Figura 22 para el diagrama de su correspondiente caso de uso.

Figura 22. Diagrama de caso de uso "Resolver una suma".

A continuación se presenta la descripción del caso de uso:Caso de uso: Resolver una sumaMetas en el contexto: Ser capaz de resolver una suma, ya sea utilizando ayuda o sin ella.Precondiciones: Iniciar la aplicación.Condiciones de éxito: Seleccionar la respuesta correcta.Condiciones de fallo: Ninguna.Actores primarios: Aplicación, base de datos.Actores secundarios: Ninguno.Evento activador: El usuario toca un número como posible respuesta.

Casos incluidos:

Usar tarjeta de ayuda,

Seleccionar respuesta,

Comprobar respuesta,

Resolver suma.Flujo principal: Paso y Acción.

Page 154: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

161

La primera

1. El usuario inicia la aplicación.2. El sistema genera dos números aleatorios, los cuales guarda en la base de

datos y se los muestra al usuario, en tarjetas con números y en tarjetas con las cantidades de círculos que corresponden a las cantidades.

3. Si el usuario selecciona la tarjeta de ayuda, se mostrará una tarjeta con la cantidad de círculos correspondientes a la respuesta.

4. El sistema reproduce el audio correspondiente.5. El usuario selecciona un número como respuesta y verifica si es correcta o no.6. El sistema reproduce un audio que indica si la respuesta es o no correcta.7. Si la respuesta no es correcta el usuario puede elegir otro número como

posible respuesta.8. El sistema reproduce un audio que indica si la respuesta es o no correcta. Los

pasos del 5 al 8 se repiten hasta que la respuesta sea correcta.9. Si la respuesta es correcta el usuario puede pedir otra suma.

Cuando el usuario oprime un número, las tarjetas cambian tanto la correspondiente al número como la correspondiente a la cantidad (círculos) como se muestra en la Pantalla 2-Figura 23. Después debe presionar el botón con una carita para saber si su respuesta es correcta o no. Si no es correcta puede oprimir la tarjeta con círculos la cual le dirá la cantidad correcta (Pantalla 3-Figura 23) y puede volver a intentar resolver la operación de nueva cuenta. Para poder escuchar los nombres de los números o símbolos en inglés, el usuario debe tocar la bandera de Estados Unidos y para escuchar las reproducciones en español, el usuario debe tocar la bandera de México.

Figura 23. Flujo de los casos de uso de la aplicación Sumas.

Page 155: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

162

Software libre

La Figura 24 muestra las pantallas de la aplicación Sumas, la cual cuenta con los siguientes botones cuya función se describe a continuación sin considerar aquellos previamente presentados en subsecciones anteriores:

• Suma: Indica tal operación a realizar. Al tocarlo reproduce el audio correspondiente a su nombre.

• Signo de igualdad: Al tocarlo reproduce el audio correspondiente a su nombre.

• Tarjeta vacía: Al tocar un número del teclado, la tarjeta cambia y al tocarla reproduce el audio correspondiente al sonido del número.

• Tarjeta con signo de interrogación: Al tocarla le muestra al usuario la cantidad correspondiente a la solución de la operación y reproduce el audio de la misma.

• Teclado: Muestra los números del 1 al 20, al tocarlos reproduce el audio correspondiente.

2.4.3 Aplicación RestasObjetivo de la aplicación: Reforzar las nociones de resta, mostrando restas de manera aleatoria, contando con ayuda en caso de que el niño la necesite. Las operaciones serán con números del 0 al 10 y con respuestas en rango del 0 al 10.

Escenario 1: Resolver una resta. Véase la Figura 25 para el diagrama de su correspondiente caso de uso.

Page 156: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

163

La primera

Figura 24. Diseño de la aplicación Sumas.

Figura 25. Diagrama de caso de uso "Resolver una resta".

A continuación se presenta la descripción del caso de uso:

Page 157: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

164

Software libre

Caso de uso: Resolver una restaMetas en el contexto: Ser capaz de resolver una resta, ya sea utilizando ayuda o sin ella.Precondiciones: Iniciar la aplicación.Condiciones de éxito: Seleccionar la respuesta correcta.Condiciones de fallo: Ninguna.Actores primarios: Aplicación, base de datos.Actores secundarios: Ninguno.Evento activador: El usuario toca un número como posible respuesta.

Casos incluidos:

Usar tarjeta de ayuda

Seleccionar respuesta

Comprobar respuesta

Resolver resta.Flujo principal: Paso y Acción.

1. El usuario inicia la aplicación.2. El sistema genera dos números aleatorios, los cuales guarda en la base de

datos y se los muestra al usuario, en tarjetas con números y en tarjetas con las cantidades de círculos que corresponden a los números.

3. Si el usuario selecciona la tarjeta de ayuda, se mostrará una tarjeta con la cantidad de círculos correspondientes a la respuesta.

4. El sistema reproduce el audio correspondiente.5. El usuario selecciona un número como respuesta y verifica si es correcta o no.6. El sistema reproduce un audio que indica si la respuesta es o no correcta.7. Si la respuesta no es correcta el usuario puede elegir otro número como posible

respuesta.8. El sistema reproduce un audio que indica si la respuesta es o no correcta. Los

pasos del 5 al 8 se repiten hasta que la respuesta sea correcta.

Al iniciar la aplicación se muestra una resta aleatoria con números del 0 al 10, el usuario puede utilizar la ayuda tocando la tarjeta con el signo de interrogación (Pantalla 1-Figura 26), mostrándole la respuesta con círculos (Pantalla 2-Figura 26). Siendo más fácil la asociación entre cantidades y números, eligiendo la posible respuesta correcta y verificando con la carita (Pantalla 3-Figura 26). Para poder escuchar los nombres de los números o símbolos en inglés, el usuario debe tocar la bandera de Estados Unidos y para escuchar las reproducciones en español, el usuario debe tocar la bandera de México.

En la Figura 27 se puede observar la pantalla de la aplicación Restas la cual es parte del área de Pensamiento Matemático. La acción de cada botón se define a continuación (excepto aquellos previamente descritos):• Carita: Le indica al usuario si su respuesta es correcta mediante un audio.

Si la respuesta es correcta cambia a “carita feliz” y si es incorrecta cambia a “carita triste”.

• Signo de resta: Indica que la operación a realizar es una resta. Al tocarlo reproduce el audio correspondiente a su nombre.

Page 158: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

165

La primera

Figura 26. Flujo de los casos de uso de la aplicación Restas.

Figura 27. Diseño de la aplicación Restas.

Page 159: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

166

Software libre

2.4.4 Aplicación PianoObjetivo de la aplicación: Ayudar a los niños a repasar números, colores, aprender

notas musicales y tocar el piano con las 8 notas básicas.

Escenario 1: Escuchar nombre de notas musicales. Véase la Figura 28 para el diagrama de su correspondiente caso de uso.

Figura 28. Diagrama de caso de uso "Escuchar nombre de notas musicales".

Se presenta la descripción del caso de uso:Caso de uso: Escuchar nombre de la nota musical.Metas en el contexto: Aprender los nombres de las notas musicales.Precondiciones: Iniciar la aplicación.Condiciones de éxito: Iniciar la aplicación.Condiciones de fallo: Ninguna.Actores primarios: Usuario, base de datos.Actores secundarios: Ninguno.Evento activador: Tocar una teclaCasos incluidos: Ninguno.Flujo principal: Paso y Acción.

1. El usuario presiona una tecla el piano.2. La aplicación solicita a la base de datos el audio correspondiente al nombre

de la nota.3. La base de datos retorna la información solicitada.4. La aplicación reproduce el audio.

Escenario 2: Escuchar nombre de los colores. Véase la Figura 29 para el diagrama de su correspondiente caso de uso.

Page 160: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

167

La primera

Figura 29. Diagrama de caso de uso "Escuchar nombre de los colores".

A continuación se presenta la descripción del caso de uso:Caso de uso: Escuchar nombre del color. Metas en el contexto: Aprender el nombre de los colores.Precondiciones: Iniciar la aplicación.Condiciones de éxito: Tocar una Tecla.Condiciones de fallo: Ninguna.Actores primarios: Usuario, base de datos.Actores secundarios: Ninguno.Evento activador: Tocar una tecla.Casos incluidos: Ninguno.Flujo principal: Paso y Acción.

1. El usuario toca el botón rojo.2. El sistema muestra en cada tecla el nombre del color que le corresponde.3. El usuario toca una tecla.4. El sistema solicita a la base de datos el audio correspondiente.5. La base de datos envía la información solicitada.6. El sistema reproduce el audio.

Escenario 3: Escuchar nombre de los Números. Véase la Figura 30 para el diagrama de su correspondiente caso de uso.

A continuación se presenta la descripción del caso de uso:Caso de uso: Escuchar nombre de un número Metas en el contexto: Escuchar y ver el nombre de los números del 1 al 8.Precondiciones: Iniciar la aplicación.Condiciones de éxito: Tocar el botón con el número 3.

Page 161: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

168

Software libre

Condiciones de fallo: Ninguna.Actores primarios: Usuario, base de datos.Actores secundarios: Ninguno.Evento activador: Tocar una tecla.Casos incluidos: Ninguno.Flujo principal: Paso y Acción.

1. El usuario toca el botón con el número 3.2. El sistema muestra en cada tecla un número y nombre del mismo.3. El usuario toca una tecla.4. El sistema solicita a la base de datos el audio correspondiente.5. La base de datos envía la información solicitada.6. El sistema reproduce el audio.

Figura 30. Diagrama de caso de uso "Escuchar nombre de los números".

Escenario 4: Reproducir sonidos de las notas musicales. Véase la Figura 31 para el diagrama de su correspondiente caso de uso.

A continuación se presenta la descripción del caso de uso:Caso de uso: Reproducir sonido de las notas musicales. Metas en el contexto: Reproducir los sonidos de las notas musicales.Precondiciones: Iniciar la aplicación.Condiciones de éxito: Tocar el botón con una nota musical.Condiciones de fallo: Ninguna.Actores primarios: Usuario, base de datos.Actores secundarios: Ninguno.Evento activador: Tocar una tecla.Casos incluidos: Ninguno.Flujo principal: Paso y Acción.

Page 162: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

169

La primera

1. El usuario toca el botón con una nota musical.2. El sistema muestra en cada tecla el nombre de la nota musical correspondiente.3. El usuario toca una tecla.4. El sistema pide a la base de datos el audio correspondiente.5. La base de datos envía la información solicitada.6. El sistema reproduce el sonido de la tecla musical.

Figura 31. Diagrama de caso de uso "Reproducir sonidos de las notas musicales".

Al iniciar la aplicación las teclas muestran las notas musicales en español (Pantalla 1-Figura 32), permitiendo repasar los nombres de las mismas. Al tocar el número 3, las teclas cambian a número (Pantalla 2-Figura 32). Para poder conocer el nombre de los colores de cada tecla se debe tocar el cuadro rojo (Pantalla 3-Figura 32). El piano también permite repasar en inglés las notas musicales (Pantalla 4-Figura 32), los colores (Pantalla 5-Figura 32) y los números (Pantalla 6-Figura 32). Además la aplicación permite al usuario crear una melodía ya que tocando la nota musical, cada tecla reproducirá el sonido correspondiente a la misma.

En la Figura 33 se pueden observar algunas capturas de pantalla de la aplicación Piano, la cual tiene como propósito repasar las notas musicales, colores, números y poder tocar una melodía utilizando el sonido de cada nota musical. La aplicación Piano cuenta con los siguientes botones cuya función se describe a continuación sin considerar aquellos previamente presentados en subsecciones anteriores:

• Boca: Cambia la aplicación para que muestre los nombres de las notas musicales y reproduzca el audio correspondiente.

Page 163: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

170

Software libre

• Cuadro verde con el número 3: Cambia la aplicación para que muestre los números del 1 al 8.

• Tarjeta con nota musical: Cambia la aplicación para que muestre los nombres de las notas musicales, pero reproduzca sus sonidos.

• Cuadro color rojo: Cambia la aplicación para que muestre el nombre de los colores y reproduzca el audio correspondiente.

• Teclado: Reproduce el audio que corresponda según el botón presionado. Al iniciar la aplicación reproduce el sonido de las notas musicales.

Figura 32. Flujo de los casos de uso de la aplicación Piano.

Page 164: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

171

La primera

Figura 33. Diseño de la aplicación Piano.

3. Pruebas de Aceptación y Funcionamiento con

UsuariosLas pruebas con los usuarios fueron efectuadas en las instalaciones del Laboratorio EDUMOVIL dentro de la Universidad Tecnológica de la Mixteca (UTM). El perfil de usuario final es como sigue:• La Suite de Aplicaciones Wit Sparks está dirigida a las niñas y niños de 3 a 6 años que

hablan español, cursan su educación preescolar y pueden o no tener conocimientos en el idioma inglés.

• Se consideraron tres usuarios:• Un niño de 3 años.• Una niña de 4 años.• Una niña de 5 años.• Se utilizaron dos dispositivos:• Una tableta marca Tech Pad de 10 pulgadas.• Una tableta marca LG de 6 pulgadas.

Page 165: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

172

Software libre

Las tareas relacionadas con la Suite de Aplicaciones Wit Sparks abordadas por los usuarios fueron las siguientes:• Repasar el abecedario en español.• Repasar el abecedario en inglés.• Repasar las vocales en español.• Repasar las vocales en inglés.• Conocer los nombres de algunos animales en español.• Conocer los nombres de algunos animales en inglés.• Expresar sentimientos y dudas a través de un Dibujo.• Conocer los números del 1 al 20 en español.• Conocer los números del 1 al 20 en inglés.• Realizar sumas de baja complejidad.• Realizar restas de baja complejidad.• Conocer el nombre de las notas musicales en el sistema Latino.• Conocer el nombre de las notas musicales en el sistema Norteamericano.• Conocer el sonido de las notas musicales.• Repasar los nombres de los colores en español.• Repasar los nombres de los colores en inglés.

3.1 Actividades Programadas y Realizadas en el Laboratorio EDUMOVILActividad 1: Reconocimiento del área. Se le permitió a los usuarios explorar el área en donde se realizarían las pruebas, como se muestra en la Figura 34.

Observaciones: El ambiente que se preparó para los niños fue de su agrado. Se les permitió interactuar con todos los equipos de computo que llamaron su atención.

Figura 34. Usuarios explorando el laboratorio EDUMOVIL.

Page 166: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

173

La primera

Actividad 2: Acondicionamiento del área. Se le pidió a los usuarios que se acomodaran de tal forma que pudieran probar cómodamente la Suite de Aplicaciones Wit Sparks, optando por la configuración que se muestra en la Figura 35.

Observaciones: Los niños probaron 4 configuraciones diferentes, hasta que eligieron la que les pareció más confortable.

Figura 35. Laboratorio EDUMOVIL acondicionado para las pruebas.

Actividad 3: Pruebas de aceptación y funcionamiento. Los usuarios jugaron con la aplicación, mientras se llevaba un seguimiento de lo que iban realizando, además de anotar sus comentarios. Véase la Figura 36.

Observaciones: Los niños se mostraron contentos al interactuar con la suite. Jugaron con todas las

aplicaciones alrededor de 90 minutos. Dependiendo del gusto y las habilidades de cada uno se tuvo cierta preferencia por diferentes aplicaciones.

Los niños trabajaron tanto en la suite de aplicaciones como en las demás actividades, primero de manera individual y después en equipo, sin dificultad aparente.

Figura 36. Usuarios jugando con algunas de las aplicaciones.

Page 167: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

174

Software libre

Actividad 4: Esparcimiento. Con la finalidad de no estresar a los usuarios y dejarles la mejor impresión de las pruebas, se realizaron actividades como dibujar y armar un rompecabezas, actividades que ellos mismos eligieron. Véanse las Figuras 37, 38 y 39.

Observaciones: Al finalizar las actividades se retiraron contentos y relajados.Para finalizar el día de pruebas se les obsequió una golosina y una bebida a los niños.

Figura 37. Usuarios dibujando.

Figura 38. Usuarios armando un rompecabezas.

Page 168: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

175

La primera

Figura 39. Usuarios disfrutando de un refrigerio.

3.2 Comportamiento de los UsuariosSe tienen las siguientes observaciones referentes al comportamiento que mantuvieron

los usuarios durante la sesión de pruebas:• Los usuarios mostraron interés por la Suite de Aplicaciones Wit Sparks• Jugaron con todas las aplicaciones al menos en una ocasión.• Los colores utilizados hicieron que los usuarios se sintieran en confianza con la Suite de

Aplicaciones Wit Sparks, así lo comentaron.• Aplicación Abecedario: las animaciones llamaron su atención, además de gustarles

el hecho de que el audio de la suite era con voz de una niña y de que se les dio la oportunidad de poder ver letras mayúsculas y minúsculas.

• Aplicación Vocales: a los usuarios las imágenes les agradaron ya que eran familiares para ellos, algunas les gustaron más que otras, pero mencionaron que eran amigables.

• Aplicación Números: Utilizaron los círculos para asociar cantidad con el número, para los usuarios los círculos de colores les agradaron por que son fáciles de recordar y de asociar.

• Aplicación Sumas: los usuarios utilizaron los círculos para encontrar la respuesta correcta, casi no utilizaron la tarjeta de ayuda; lo que más les agradó y además sirvió de incentivo fue la forma de evaluación, ya que se realizó a través de caritas de suspenso, caritas felices y caritas tristes, acompañadas de un audio que los motivaba con frases como “Vuelve a intentar” o “¡Muy bien!”, según la respuesta que se eligiera.

• Aplicación Restas: Les agradó, pero a pesar de que eran números pequeños, se les dificultó un poco. Los usuarios disfrutaron intentando resolver restas e incluso

Page 169: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

176

Software libre

compitieron para determinar quien lograba resolver más restas sin equivocarse. Esta actividad fue propuesta, organizada y realizada por ellos mismos.

• Aplicación Piano: Utilizaron todas sus funciones al menos una vez. Les agradó mucho poder tocar su propia melodía, aprender colores y notas en un solo juego lleno de colores.

• Aplicación Dibujar: La cantidad de colores que se les proporcionó a los usuarios fue muy aceptable, además de la retroalimentación de la aplicación al reproducir el nombre de los colores que se van utilizando.

3.3 Fortalezas de la Suite de Aplicaciones Wit SparksDe acuerdo a las observaciones y comentarios recabados durante las pruebas efectuadas se identifican los siguientes puntos de fortaleza con los que cuenta la Suite de Aplicaciones Wit Sparks:• Uso correcto del vocabulario, para fomentar el aprendizaje por imitación.• Aprender a manipular objetos, ayuda al usuario a progresar en su desarrollo.• Se utilizan 3 de los 5 sentidos para promover el aprendizaje: vista, tacto y oído.• Promueve el trabajo individual y en equipo.• Pensamiento Matemático:

• Promueve el agrupamiento de objetos a partir de lo que ve.• Promueve el reflejo a patrones.

• Lenguaje y Comunicación: • Promueve el aprendizaje de la pronunciación correcta de las palabras.• Ayuda al usuario a conocer su entorno.• Motiva al usuario a expresarse por medio de palabras o dibujos.

4. Resultados Finales, Conclusiones y Trabajo FuturoSe cuenta con una Suite de Aplicaciones Educativas enfocada a niños en educación preescolar, la cual funciona en dispositivos móviles, específicamente tabletas, con una pantalla de 6 pulgadas o más, con sistema operativo Android en una versión mayor a la 4.2.2. Por otro lado, los elementos audio-visuales generados se resumen a continuación:• Un total de 201 ilustraciones son utilizadas en las aplicaciones que conforman a la suite. • Se cuenta con una galería formada por 49 fotografías.• Se tiene una librería con aproximadamente 700 grabaciones de audio, de las cuales 324

se utilizaron en la Suite de Aplicaciones.

La Suite de Aplicaciones Wit Sparks se puede utilizar en el idioma inglés o español y cuenta con las siguientes aplicaciones:• Lenguaje y comunicación:

• Vocales: Se mostrarán las vocales en tarjetas, se repetirá el nombre de la letra y se mostrarán imágenes de objetos, animales o cosas que tengan un nombre que inicie con la vocal seleccionada.

• Abecedario: Se mostrarán todas las letras del abecedario, así como sus nombres.

Page 170: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

177

La primera

• Dibujar: Proporciona un lienzo para que el niño dibuje utilizando 8 colores diferentes, además de indicar el cambio de color.

• Galería de Animales: Cuenta con fotos de 36 animales diferentes, indicándole al niño como se escribe y escucha su nombre en ingles y español.

• Pensamiento Matemático:• Números: Se mostrarán los números del 1 al 20 con sus respectivos nombres y una

figura de asociación de cantidades.• Sumas: Reforzará las nociones de suma, mostrando sumas de manera aleatoria,

contando con ayuda en caso de que el niño la necesite. Las operaciones serán con números del 0 al 10 y con respuestas en el rango del 0 al 20.

• Restas: Reforzará las nociones de resta, mostrando restas de manera aleatoria, contando con ayuda en caso de que el niño la necesite. Las operaciones serán con números del 0 al 10 y con respuestas en rango del 0 al 10.

• Piano: Ayudará a los niños a repasar los números, aprenderá colores, notas musicales y podrá tocar el piano con las 8 notas básicas.

En base a las experiencias obtenidas en el diseño, implementación y primeras pruebas con usuarios, se tienen identificadas 5 líneas de trabajo futuro:• Incorporación de nuevas aplicaciones a la suite considerando campos formativos

adicionales a Pensamiento Matemático y Lenguaje y Comunicación.• Aplicación de pruebas formales de aceptación e interacción sobre usuarios finales

(niños), profesores (nivel preescolar) y padres de familia.• Identificación formal de contribución efectiva al proceso de generación de competencias

en educación preescolar.• Migración de la suite a dispositivos móviles con pantallas menores a 6 pulgadas y

sistema operativo Android. • Con las 700 grabaciones de voz generadas se plantea formar un conjunto de

entrenamiento para aplicaciones de Cómputo Inteligente de Reconocimiento de Voz Infantil.

La Suite Wit Sparks aporta a niños, padres de familia y escuelas una herramienta gratuita que aspira a contribuir con la formación de competencias en las áreas de lenguaje y comunicación, así como de pensamiento matemático, promoviendo el uso de las nuevas tecnologías. Además, es una herramienta de apoyo a los profesores para la enseñanza en el nivel preescolar. También se espera brinde a los niños una forma divertida e interactiva de aprender y desarrollar sus habilidades. La aspiración es que se tenga una opción para que los niños puedan invertir su tiempo y agilizar su mente de forma divertida, y sobre todo aprovechando el uso de las nuevas tecnologías.

Referencias[1] Educación. UNICEF México. Web site (18 de abril de 2017): https://www.unicef.org/

mexico/spanish/educacion.html

Page 171: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

178

Software libre

[2] Educación Inicial. Secretaría de Educación Pública (SEP). Web site (18 de abril de 2017): http://www.sep.gob.mx/es/sep1/sep1_Educacion_Inicial

[3] Oaxaca, 2do. Lugar a Nivel Nacional en Rezago Educativo. AZ Revista de Educación y Cultura. Web site (18 de abril de 2017): http://www.educacionyculturaaz.com/articulos-az/oaxaca-2o-lugar-a-nivel-nacional-en-rezago-educativo

[4] Estadísticas Sobre Disponibilidad y Uso de Tecnología de Información y Comunicaciones en los Hogares 2011. Instituto Nacional de Estadística y Geografía (INEGI). Web site (18 de abril de 2017): http://internet.contenidos.inegi.org.mx/contenidos/productos/prod_serv/contenidos/espanol/bvinegi/productos/encuestas/especiales/endutih/ENDUTIH2011.pdf

[5] Greelish, David. An Interview with Computing Pioneer Alan Kay. TIME Magazine, 2013. Web site (18 de abril de 2017): http://techland.time.com/2013/04/02/an-interview-with-computing-pioneer-alan-kay/

[6] Shah, Agam. Intel invokes Apple’s Knowledge Navigator to envision future smartphones. Computer World, 2013. Web site (18 de abril de 2017): http://www.computerworld.com /article/2496831/computer-processors/intel-invokes-apple-s-knowledge-navigator-to-envision-future-smartphones.html

[7] Nokia creó su tableta nueve años antes que el iPad. Excelsior, 2014. Web site (18 de abril de 2017): http://www.excelsior.com.mx/hacker/2014/04/15/954182

[8] Gralla, Preston. Microsoft released its first tablet 10 years ago. So why did Apple win with the iPad? Computer World, 2011. Web site (18 de abril de 2017): http://www.computerworld.com/article/2471642/mobile-apps/microsoft-released-its-first-tablet-10-years-ago--so-why-did-apple-win-with-the-ipad-.html

[9] Apple Launches iPad - Magical & Revolutionary Device at an Unbelievable Price. Apple Press Info, 2010. Web site (18 de abril de 2017): https://www.apple.com/pr/library/2010/01/27Apple-Launches-iPad.html

[10] Arcia, María Elena. Sistemas Operativos de las Tablets: iOS, Android y Windows. About en Español, 2016. Web site (18 de abril de 2017): http://tabletas.about.com/od/Glosario/a/Sistemas-Operativos-De-La-Tabletas-Ios-Android-Blackberry-Windows-7.htm

[11] Arici, Alexandra. Remember: The First Android Smartphone Was the HTC Dream or Google G1. Softpedia, 2015. Web site (18 de abril de 2017): http://news.softpedia.com/news/Remember-The-First-Android-Smartphone-Was-the-HTC-Dream-or-Google-G1-472839.shtml

[12] Programa Enciclomedia. Secretaría de Educación Pública (SEP), 2007. Web site (18 de abril de 2017): http://www.sep.gob.mx/wb/sep1/programa_enciclomedia#.WPbOq_nyvDc

[13] Hernández, Manuel; Degante, Beatriz; Pérez-Aguila, Ricardo & Ruiz-Rodríguez, Ricardo. Aprender jugando: El diseño de programas educativos como tarea multidisciplinaria. Por ser publicado, abril 2017.

Page 172: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,

179

La primera

Page 173: Universidad Tecnológica de la Mixteca - utm.mxsimposio/IX/datos/LibroSoftwareLibre.pdf · D.R. c 2017 por U.T.M. Universidad Tecnológica de la Mixteca Km. 2.5 Carretera a Acatlima,