186

Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

  • Upload
    others

  • View
    10

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como
Page 2: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como
Page 3: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

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

Page 4: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

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 Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

El uso del software libreen la academia y la industria de México

Page 6: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Primera Edición; Febrero del 2018ISBN: 978-607-96303-9-3D.R. © 2017 por U.T.M.

Universidad Tecnológica de la MixtecaKm. 2.5 Carretera a Acatlima, Huajuapan de León, Oaxaca.

C.P. 69000 Tel. 9535320214 y 20399http://www.utm.mx

Diseño editorial: C. Jaqueline Estrada Bautista

Page 7: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

ÍndicePresentación .............................................................................. 11

Aplicaciones y Proyectos Universitarios ..................................... 131. Impacto del software libre en la Universidad Tecnológica de la Mixteca ..................... 152. Implementación del modelo de restricciones del problema de calendarización de horarios universitarios con PYTHON .................................................................... 213. Programa de Lecturas (ProLec versión 3.0) ................................................................. 294. Modelado de la operatividad de un repositorio institucional con acceso abierto utilizando Protégé ........................................................................................................ 37

Cultura Mixteca ........................................................................ 435. Software libre en pro del fortalecimiento de la cultura Mixteca ................................... 456. El open source y la difusión del patrimonio Vasijas polícromas Mixtecas .................... 59

Mejora de la Industria/Empresa ................................................ 657. Herramientas usadas en el desarrollo de un sistema de localización en interiores ........ 678. La filosofía del software libre aplicada a los negocios ................................................... 759. Modelo de proceso como guía para la etapa de elicitación de requisitos, implementado en software libre ........................................................................................................... 87

Aplicaciones en diversas áreas de investigación ......................... 10110. Simulación de temperatura por elemento finito en dos dimensiones mediante software libre y su comparación con software comercial ............................................................. 10311. Paralelización de un algoritmo genético para el problema del agente viajero ............... 11112. Explorando tres niveles de paralelismo empleando software libre y freeware en computadoras personales multicore. El caso de Linux versus Windows .................. 125

Temas Diversos ......................................................................... 13713. Ciencias, datos y prácticas abiertas ............................................................................... 13914. Wit Sparks Una Suite Educativa de apoyo a educación preescolar .............................. 147

Page 8: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como
Page 9: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

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 e internacional, tales como Richard Stallman funda-dor del movimiento de Software Libre a nivel mundial. La Universidad también se ha dedicado a promover esa filosofía entre los bachilleratos 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 la tarea de divulgar por medio de un libro, no sólo 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. Princi-palmente 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 cono-cer 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 preescolar 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 la colaboración de las siguientes personas: Lizbeth Yadira Colores Guzmán y Alma Rosa Ramírez Vega, estudiantes del octavo semestre de la carrera de Ingeniería en Compu-tación de la UTM, Francisco Gabriel Bezares Molina, Abdias Medina Ramírez y Ángel Alexis Sosa Gómez, estudiantes de Ingeniería en Computación, Universidad del Istmo, durante la re-dacción de los capítulos: Programa de Lecturas (ProLec versión 3.0), Explorando tres niveles de paralelismo empleando software libre y freeware en computadoras personales multicore. El caso de Linux versus Windows

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 Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como
Page 11: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Aplicaciones y Proyectos Universitarios

Page 12: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como
Page 13: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Impacto del software libre en la Universidad Tecnológica de la Mixteca

Carlos 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 merca-dos, 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ómi-cos 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 la etapa de integración de requerimientos que responden a las necesidades de funciones sustantivas en el quehacer universitario. El proble-ma 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

* [email protected]. Universidad Tecnológica de la Mixteca. ** [email protected]. Universidad Tecnológica de la Mixteca.

Page 14: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

14

Software libre

para la adquisición de infraestructura en cómputo y son aplicados en la compra de software pro-pietario, 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 causa-do 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.001 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 mu-

chas 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.

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

$38,865.00

Cuadro 2. Adquisición de licencias en el 2011.

Page 15: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

15

Impacto del software libre...

Cant software Costo Monto asignado1 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 inten-tos, pero aún no alcanzan una madurez.

2.4 Ejercicio 2013En el cuadro 4 se visualiza 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

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.

Page 16: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

16

Software libre

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.Año ahorro

2010 $ 180,988.002011 $ 38,865.002012 $ 0.002013 $ 190,000.002014 $ 8,621.002015 $ 19,270.002016 $ 154,101.00

Page 17: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

17

Impacto del software libre...

Después de haber analizado el software propietario que pudo haber sido sustituido por soft-ware 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 consideran algunos impactos del uso de software libre en la Universidad Tecnológica de la

Mixteca, para este trabajo como se aprecia 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 universita-ria de la UTM.

Limitar funciones sustantivas en cada uno de los casos parti-culares de los diferentes nive-les jerárquicos de la UTM, al no tener la costumbre del uso de software libre se ve perjudi-cada la actividad y en algunos otros casos ya no se realiza.

Uso de software libre

Diferentes carreras de la UTM

Estudiantes y profe-sores

No se modifican los planes y programas de estudio en el uso del software libre y sólo en algunos casos la incor-poració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 pro-pietario por el software libre no se elaboran proyectos de ahorro en la sustitución y aprendizaje en el uso del soft-ware libre, lo que implica la dependencia en el sector pro-ductivo o para los empleadores.

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.

ConclusionesAl término de este trabajo se aprecia 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

Page 18: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

18

Software libre

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 inge-niería industrial , otro ejemplo es el haber equipado una sala de cómputo 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 actua-lización de equipos en las salas de cómputo.

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

Page 19: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Implementación del modelo de restricciones del problema de calendarización de horarios

universitarios con PYTHONLluvia Carolina Morales Reynaga*, José Figueroa Martínez**

ResumenEn 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 planifi-cació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 compar-tidos 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 ge-nerar una medida de calidad de la solución/horario propuesto, por ejemplo, si tenemos las res-tricciones 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 penaliza-

ció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 Al-goritmo 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.

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

* [email protected]. Universidad Tecnológica de la Mixteca. ** [email protected]. Universidad Tecnológica de la Mixteca. Colaboración de: Juan Pablo Gómez Martínez, [email protected]. Alumno de Maestría en Tec-

nologías de Cómputo Aplicado.

Page 20: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

20

Software libre

Restricción fuerte: Son las que deben cumplirse de manera obligatoria. En la figura 1 se mues-tra 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 signi-fica que esta restricción puede no satisfacerse [2].

Figura 1. Ejemplo de una restricción fuerte.

A continuación se enlistan 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 sólo 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.3. Que no existan clases de práctica fuera del horario habitual de clases, a menos que se especifi-

que directamente en los datos de entrada.4. Que los profesores impartan las mismas materias que en semestres anteriores afines.

Page 21: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

21

Implementación del modelo...

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, depen-

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

jes 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 po-demos 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 estas 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 JavaS-cript Object Notation ( JSON). La ventaja de este formato es que es simple de generar e inter-pretar, 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 22: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

22

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.

Page 23: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

23

Implementación del modelo...

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.

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 im-plí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.

Page 24: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

24

Software libre

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).

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 con-veniencia.

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 restric-ción fuerte i multiplicado por un peso i que se le da a cada restricción dependiendo de la impor-tancia 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 facti-bilidad 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.

Page 25: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

25

Implementación del modelo...

Por otra parte la función heurística se encarga de verificar la bondad de una solución, por con-siguiente 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 a lo óptimo.

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 es-cribir 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 tengan 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.

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 progra-mació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 Heidelberg,

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

course timetabling problem. Computers and Industrial Engineering, 86 (April):43-59, 2014.[3] https://www.python.org citado en Abril de 2017.

Page 26: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como
Page 27: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Programa de Lecturas (ProLec versión 3.0)Lluvia Morales*, Mario Alberto Moreno Rocha**, José Figueroa Martínez***,

Rebeca Renata Pérez Damián****, David May Cuevas*****

ResumenEn 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 progra-ma 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 sis-tema, el propósito y el sitio Web en el que se puede acceder al mismo.

1. Experiencias con el uso de software libre Para 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.

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, * [email protected], Universidad Tecnológica de la Mixteca ** [email protected], Universidad Tecnológica de la Mixteca *** [email protected], Universidad Tecnológica de la Mixteca **** [email protected], Universidad Tecnológica de la Mixteca ***** [email protected], Universidad Tecnológica de la Mixteca

Page 28: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

28

Software libre

• 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ón

Administrador Guardar datos relacionados con el evaluador.Alumno Guardar datos relacionados con los alumnos.Carrera Datos relacionados a las 11 carreras existentesEntrega 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.

Page 29: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

29

Programa de Lecturas...

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, permi-tió 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 lenguaje 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.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.

Page 30: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

30

Software libre

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 31: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

31

Programa de Lecturas...

En la Figura 5 se muestra la interfaz en donde el evaluador puede subir libros, esto se progra-ma 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 lec-turas 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 32: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

32

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 éste.

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 7. Conexión con la base de datos de un servidor.

Figura 8. Cliente de FTP FileZilla

En la parte superior de la ventana del programa (ver Figura 8) 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).

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

Page 33: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

33

Programa de Lecturas...

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 dere-cho 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.

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

Page 34: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

34

Software libre

Durante el desarrollo del Sistema de Lecturas de la UTM se ha investigado y probado soft-ware 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/MYSQL (Doctoral dissertation).

Page 35: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

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.***, Jorge de la Calleja****, Antonio Benitez*****

1. IntroducciónAlgunas Instituciones de Educación Superior (IES) almacenan parte de su producción intelectual en un repositorio institucional (RI), el cual es una “plataforma digital centralizada que sigue están-dares internacionales de interoperabilidad, mantiene, preserva y disemina la información cientí-fica, tecnológica y de innovación derivada de 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 a documentos en formato digital del propio RI u otros, incremento en la visibilidad de la institución y de los autores, establecimien-to de políticas de distribución de acceso abierto para los documentos y metadatos.

Este documento propone el modelado de un RI y su operatividad 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 y de una representación formal, no ambigua de los términos y sus relaciones que puede compartirse y reutilizarse entre usuarios y computadoras. La versión completa del modelo es una ontología que se ha registrado formalmente ante el Insti-tuto Nacional de Derecho de Autor (IndAutor) como obra de base de datos número 03-2017-042511235500-01 [6].

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 u ontología. 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

* [email protected]. Universidad Politécnica de Puebla. ** [email protected]. Universidad de las Américas Puebla. *** [email protected]. Universidad de las Américas Puebla. **** [email protected]. Universidad Politécnica de Puebla. ***** [email protected]. Universidad Politécnica de Puebla.

Page 36: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

36

Software libre

y veracidad. En comparación con un modelo de datos de tipo relacional en donde se definen entidades, relaciones y objetos, 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 instanciasJunto 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 o restricciones que utilicen cuantificadores universales o existenciales, éstas se utilizan para validar consistencia e inferir conocimiento.

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

Es viable modelar clases disjuntas.Se obtiene conocimiento nuevo a partir de mecanismos de inferencia, es decir, se extrae cono-

cimiento implícito a partir de conocimiento explícito.La validación de la consistencia de un modelo utiliza razonadores lógicos, programas conoci-

dos también con el nombre de razonadores.

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 repre-sentació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 Institu-cionales (REMERI) o en redes de ámbito internacional. En la segunda fase, se representan los usuarios, documentos y términos relacionados con la temática del acceso abierto. 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 las comunidades de 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 atri-buto es mandatorio si es un requisito incluirlo o recomendado si aporta información deseable.

Page 37: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Modelado de la operatividad ...

37

Tabla 1. Atributos de un RI.

Atributo Descripción Tipo de atributofechaUltimaActualizacion Fecha de la última actualización de los datos Mandatorio

identificadorRepositorio Cadena que distingue a un RI de otro en la mis-ma institución Mandatorio

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

númeroDocumentos Número de documentos almacenados. Recomendadoresponsable 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 docu-mentos 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 Re-positorioNacional, esto con el propósito de resaltar que en las IES cualquier repositorio deberá seguir los lineamientos técnicos establecidos en [2] y [3] para interoperar. 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; esta propiedad está relacionada con la clase Reposi-torioInstitucional.

Figura 1. Sub-clases y atributos de RepositorioInstitucional

Page 38: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

38

Software libre

3.2 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 [4], los cuales son: 1. Determinar el dominio y alcance 2. Reutilizar ontologías existentes3. Enumerar términos importantes 4. Definir clases y su jerarquía5. Definir las propiedades de las clases (axiomas de propiedades de datos) 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: funcional, simétrica, inversa funcional, asimétrica, reflexiva e irreflexiva. El paso 7 se conoce también como poblar el modelo. Una vez que se cuente con instancias, el usuario final puede hacer uso de las interfaces de consulta del propio editor para recuperar información específica, así como de los razonadores para verificar automáticamente la consistencia.

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

Page 39: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Modelado de la operatividad ...

39

Conclusiones Este documento presentó algunos elementos de un modelo semántico para repositorios institu-cionales. El modelo integra conceptos relacionados con el acceso abierto y la operatividad de los 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. El modelo es flexible, de forma que di-ferentes IES podrían adoptarlo para atender necesidades de integración de datos. Como trabajo a futuro, se propone la migración de datos provenientes de diferentes RIs a instancias del modelo con el propósito de validar la consistencia de forma automática y así, ampliar la posibilidad de realizar análisis de datos en contextos semánticos.

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

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

[2] Lineamientos generales para el repositorio nacional y los repositorios institucionales. Docu-mento disponible desde el sitio web del Sistema Integrado de Información sobre Investiga-ció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/Lineamien-tos_generales.pdf.

[3] Lineamientos técnicos para el repositorio nacional y los repositorios institucionales. Docu-mento disponible desde el sitio web del Sistema Integrado de Información sobre Investi-gació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-nacional-y-los-repor-sitorios-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. Association of Computing Machinery Specific Interest Group in Artificial Intelligence, 1(4), June 2015. DOI: 10.1145/2557001.25757003.

[6] Medina N. M. A., Sánchez J.A, Cervantes, O., Medina R. R. C., De la Calleja, M. J., Be-nitez A. 2017. Representación semántica de conocimiento operativo y de dominio para

Page 40: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

40

Software libre

repositorios institucionales. Registro público del derecho de autor. Número: 03-2017-042511235500-01. Fecha de registro: 26 de Abril del 2017.

Page 41: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Cultura Mixteca

Page 42: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como
Page 43: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Software libre en pro del fortalecimiento de la cultura Mixteca

Olivia Allende Hernández*, 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 tec-nología móvil se da de forma natural, por lo que conlleva a un aprendizaje más ameno e interac-tivo 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 soft-ware 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: Software libre, Tecnología educativa, Telefonía móvil.

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 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

* [email protected]. Universidad Tecnológica de la Mixteca. ** [email protected]. Universidad Tecnológica de la Mixteca.

Page 44: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

44

Software libre

comercial que se da entre los diferentes proveedores del servicio telefónico, ha dado pauta al in-cremento 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 Go-bierno 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 ob-jetivo es otorgar libre acceso a las TICs para 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, tabletas), lo cual da como resultado que la penetración global de estos dispositivos aumente rápi-damente 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 tecno-logí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 condi-ciones 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 eu-ropeos, 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 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 diálogo sobre políticas, el intercambio de conocimiento y el aumento de capaci-dades, 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].

Page 45: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Sotware libre en pro al fortalecimiento...

45

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 sistemas 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 estruc-tura 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, y la hace una aplica-ció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 pro-grama 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 defini-ción de software libre, que 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 necesi-

dades —el acceso al código fuente es condición indispensable para ello.• 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 co-

munidad —el acceso al código fuente es condición indispensable para ésto.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 independiente-mente de la forma en que se obtenga, siempre se tiene la libertad de copiar, modificar e incluso

Page 46: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

46

Software libre

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 éstas puede requerir la adaptación para diferentes clientes, generando con ello más variantes, por eso es necesario identificar dependencias estratégicas relevantes (no sólo 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 pérdidas 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 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 muestra 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 pro-pósito, distribución, modificación y distribución de versiones modificadas del software, sin preo-cuparse 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 Alliance, su finalidad es satisfacer la necesidad de los operadores móviles y fabricantes de dispositivos, además de fomentar el desarrollo de aplicaciones, cualidad que nin-gú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 modifi-car 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.

Page 47: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Sotware libre en pro al fortalecimiento...

47

• Posee un portal llamado Android Market donde se tiene acceso a muchas aplicaciones.• 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 10Núcleo EKA2 Máquina vir-

tual 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 pro-pietario

Código abierto

Tipo de mer-cado

Teléfonos móviles Empresarial Dispositi-

vos móvilesiPhone, iPod touch y iPad

Teléfonos inteligentes, tabletas y computadoras

Smartpho-nes, tabletas, Android TV, An-droid Auto y Android Wear

Plataformas soportadas ARM, x86

Línea de teléfonos in-teligentes de BlackBerry

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

ARMTeléfonos inteligentes con el sistema operativo

ARM, x86, MIPS, IBM POWER

Sistema de gestión

Symbian Nokia Packet Service

BlackBerry Desktop Ma-nager

BlackBerry App World App Store

Desde: la computadora (WP7), el te-léfono (WP8)

Google Play, APK

Estado actual Desconti-nuado Descontinuado En desa-

rrolloEn desa-rrollo

En constante desarrollo

En perma-nente desa-rrollo

Idiomas Multilin-güe 26 idiomas Multilin-

güe 40 idiomas Multilingüe Multilingüe

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 BlackBe-rry 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 Smartpho-nes para el 2013 fue del 69%, para el 2014 del 77%; de los cuales el 51.7% usa Android como lo

Page 48: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

48

Software libre

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 penetra-ció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 género 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 49: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Sotware libre en pro al fortalecimiento...

49

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 suscriptores 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 50: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

50

Software libre

En 2014 a nivel mundial, los sistemas operativos para Smartphones que dominan el mercado son Android con el 81.9%, e 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 aumentarán 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 2017Descargas 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

3. 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 tabletas) 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 fin de dar conocimiento a los tres idiomas que hablada población mixteca. Con las estrategias

Page 51: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Sotware libre en pro al fortalecimiento...

51

implementadas para la disminución de la brecha digital la población tiene más oportunidades de contar con una laptop, computadora de escritorio, tableta 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 im-plementó 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,

Figura 5. Icono de la aplicación en el escritorio del emulador.

Figura 6. Página principal de la aplicación.

Page 52: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

52

Software libre

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) [18]

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.

Page 53: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Sotware libre en pro al fortalecimiento...

53

El conejo respondió: Pero yo presiento que tus intenciones no son buenas, tú quieres comerme por eso me insistes en que yo vaya, porque no es cierto que vas a hacer una fiesta como dices, tú me quieres comer. Porque ¿dónde 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 contestó: 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 dejó ir a su casa. Pero el conejo sólo 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.”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, éstos mos-traron 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.

ConclusionesEl prototipo de la aplicación NarraMix presentada al grupo de niños y adolescentes de la comu-nidad 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

Page 54: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

54

Software libre

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.

Es incuestionable el impacto que tienen los dispositivos móviles, debido a que los desarrolla-dores 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 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 predo-minante en dispositivos móviles gracias a que Google está desarrollando herramientas educativas masivamente. Una tendencia que empieza a surgir es el desarrollo 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 indigenous com-munities 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 educativos (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?.

Page 55: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Sotware libre en pro al fortalecimiento...

55

[6] UNESCO (2017), Recursos Educativos Abiertos, Organización de las Naciones Unidas 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 software 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)

[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 stores 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 com-munities 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

[18] Adaptado de “Cuentos de animales del monte”, Instituto Lingüístico de Verano en Coordinación con la Secretaría de Educación Pública a través de la Dirección General de Educación Extraescolar en el Medio Indígena, México, D.F. 1974

Page 56: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como
Page 57: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

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

Noé Coronel García*, Mario A Moreno Rocha**, Agustín E Andrade Cuautle***

ResumenLa 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 al-cance, 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, Foto-grafí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 Esta-dos 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 co-nocimiento 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 his-toria, 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].

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 * [email protected]. Universidad Tecnológica de la Mixteca ** [email protected]. Universidad Tecnológica de la Mixteca *** [email protected]. INAH

Page 58: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

58

Software libre

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 reali-zar 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 apro-ximadamente 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 Me-soamérica por su longevidad y el alcance de sus aportaciones [5]. Hoy en día, esa extraordinaria diversidad cultural se refleja en los numerosos grupos étnicos que aún pueblan la entidad, en lo

Page 59: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Open source y la difusión del patrimonio: ...

59

que de hecho constituye el conglomerado indígena más numeroso del país, con una notable va-riedad 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 estructu-ras 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 influen-cia maya. En este caso, la Cultura Mixteca se ha encontrado un poco alejada de dichas investiga-ciones 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 que se encuentran en dicha región, los cuales forman parte del objetivo del presente trabajo.

Page 60: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

60

Software libre

3. Objetivo de la investigación El objetivo general del presente trabajo se puede resumir como: “Crear un modelado tridimen-sional de vasijas polícromas y urnas mixtecas que permita comprender la importancia 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 polícromas y urnas mixtecas.

Con la realización del presente proyecto se pretende modelar en tres dimensiones específica-mente 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 conside-ra 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”.

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 capaci-dad 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 be-neficio al usuario, y es parte de lo que se pretende.

Figura 3. Vasija tripode 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 61: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Open source y la difusión del patrimonio: ...

61

4. Metodología de la investigación El Diseño Centrado en el Usuario o UCD por sus siglas en Inglés (User-Centered Design) ha cobrado popularidad en los últimos años como proceso encaminado al diseño de produc-

tos, objetos o servicios, que respondan a las necesidades reales de sus usuarios finales [2]. UCD busca el desarrollo correcto y apropia-do 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.

5. Resultados actuales Fase 1. Acopio de información y análisis de datos: Los objetos físicos de nuestro estudio, conser-van 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 entendimien-to 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 con-forman, 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 con base en 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.

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

Page 62: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

62

Software libre

Referencias[1] B. Schilit, N. Adams, y R. Want, 1994. Context-aware computing applications. , 1st Interna-

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

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

olina 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

[5] M. Winter, Cerro de las Minas, Oaxaca, Arqueología Mexicana.[6] M. Winter. 1997. “La arqueología de los Valles Centrales de Oaxaca”, en Arqueología mexi-

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

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

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

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

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

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

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

Page 63: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Mejora de la Industria/Empresa

Page 64: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como
Page 65: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Herramientas usadas en el desarrollo de un sistema de localización en interiores

Erik Germán Ramos Pérez*, 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 loca-lizació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 in-terior (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 actua-lidad 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 sistema propues-to 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.

* [email protected]. Universidad Tecnológica de la Mixetca. ** [email protected]. Universidad Tecnológica de la Mixetca.Colaboración de: Gil Hernández Ledezma, [email protected]. Universidad Tecnológica de la Mixetca.

Page 66: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

66

Software libre

2. Herramientas utilizadasA continuación se mencionan las herramientas utilizadas en el desarrollo del sistema de locali-zación en interiores.

2.1 Modelado 3DLa principal herramienta usada fue Blender, la cual permite hacer modelado 3D, aunque la in-terfaz 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 ver-sió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 12Windows 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 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.

Page 67: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Herramientas usadas ...

67

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 3D3.1 Pasos para el modeladoA continuación se presentan lo pasos más comunes al momento de modelar un elemeto tridimen-sionale:

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 Mix-teca. 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).

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

Después de aplicar las técnicas mencionadas anteriormente se obtiene el modelo de la figura 4.3.3 Creación del radio mapaPara 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 Ins-tituto de Computación se colocaron cuatro puntos de acceso, los cuales fueron localizados estratégi-camente para poder cubrir toda el área.

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).

Page 68: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

68

Software libre

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

Figura 2. Operación booleana.

Page 69: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Herramientas usadas ...

69

Figura 3. Estrucción para crear la ventana

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

Page 70: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

70

Software libre

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 rendimiento 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.72Todas 57.64

4.2 k-vecinos más cercanosCuadro 6. resultados de rendimiento usando k-nn

Conjunto de datos Mejor k % de rendimientoCaptura 0 9 y 10 56.25Captura 1 7 58.15Captura 2 10 62.20Captura 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 compu-tacional conforme el número de muestras aumenta.

Page 71: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Herramientas usadas ...

71

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 realizar 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 usados

Cuadro 9. resumen de los modelos utilizadosMé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.

ConclusionesEl uso de un sistema de localización en interiores tiene muchas aplicaciones, desde centros co-merciales 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 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). Sistemas

globales de localización y trazabilidad mediante identificación por radio frecuencia (RFID). Telecoforum 2005.

[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 Emergencia. Seminario Anual de Automática, Electrónica Industrial e Instrumentación.

Page 72: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

72

Software libre

[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 73: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

La filosofía del software libre aplicada a los negociosJesús Manuel Hernández Lezama*

ResumenUna constante en los negocios hasta hace algunos años, ha sido la búsqueda por mantener entor-nos cerrados, donde todo tipo de información se mantuviera oculta de la vista del público y cual-quier 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 impor-tancia 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 termina-do 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.

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

* [email protected]. Organización Aztli.

Page 74: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

74

Software libre

punto que inclusive hoy en día es sorprendente recordar las declaraciones de Sir Charles Darwin nieto del famoso naturalista proponiendo que una sola máquina sería suficiente para solucionar todos los problemas que se le solicitarán de toda Gran Bretaña. En aquella época la experimen-tació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 ven-tajas 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 generados du-rante 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 computa-ció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 práctica 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 éste nunca podrá alcanzar la calidad que se necesita para ser realmente útil en apli-caciones serias. Es aquí donde se muestra un primer intento por modificar el funcionamiento del nuevo entorno de la informática, proyectando hacia él las mismas prácticas 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 prácticas de mercado que aplicaron para los bienes tangibles durante varios siglos podrían ser aplicables durante el trans-curso del siglo XXI o sería necesario aceptar y fomentar nuevas prácticas.

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 traba-jaba en ese entonces, se ve en la necesidad de mejorar el software conflictivo, desafortunadamente ésta es la misma época donde XEROX como muchas otras empresas comienzan a aplicar políti-cas 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

Page 75: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

La filosofía del software libre...

75

lo desarrolla originalmente, de igual forma en la que se había desarrollado el software hasta el momento anterior a la aparición de las clausulas de exclusividad y no divulgación de la informa-ción en el área de la informática.

Figura 1. Carta de Bill Gates a los Hobbysts

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 éstos. 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 quie-

ra (libertad 1). El acceso al código fuente es una condición necesaria para ello.

Page 76: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

76

Software libre

• 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 modificacio-nes. El acceso al código fuente es una condición necesaria para ello.

Dichas libertades reflejan el deseo de mantener entornos que propicien la generación de co-nocimiento de manera constante, a través de incentivos basados en el reconocimiento público 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 implementa-ciones 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 con los desarrollos realizados bajo otros esquemas de trabajo. De esta forma, realmente es la Iniciativa Open Source (OSI por sus siglas en inglés) 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 de-sarrollo 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 únicamente un modelo de consumo, sin comunicación bilateral con los clientes. Pero es en la implantación de culturas donde parte el libre uso por el conocimiento generado en las empresas, 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 conjun-

Page 77: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

La filosofía del software libre...

77

to 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 únicamente monetarias, existen nuevas corrientes como el Liderazgo Transformacional [3], que buscan implementar motivadores tales como el reconocimiento público, 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 específica 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 gene-rar 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 sí los procesos de desarro-llo 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 ésta. 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 empre-sas, organizaciones o individuos y pertenecen al dominio público o bien, gracias al uso de licencias de fuente abierta, es posible su utilización dentro de nuevos desarrollos con fines de lucro y redu-cir así la carga de trabajo o gastos que de otra forma sería 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 fo-mentar 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

Page 78: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

78

Software libre

de la organización, o bien, que durante su desarrollo como profesionales han hecho como suya la práctica 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 investi-gació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 de incentivar la liberación de tanta información como sea posible es la forma como una empresa logra sus procesos innovadores, de ninguna manera se espera que todo sea divulgado.

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 va-riedad 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 domi-nar 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 exter-nos, como bien lo menciona Eric S. Raymond [7], no son fácilmente reproducibles en todos los escena-Figura 2. Paradigmas de Innovación Abierta y Cerrada

Page 79: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

La filosofía del software libre...

79

rios 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 número 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 ésta si alcanza la masa crítica de usuarios.

Lo importante para la generación de riqueza directa en una empresa, no es la investigación realizada por sí 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 más 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 más genera que en ambientes altamente competitivos el recurso humano sea tan valioso por su capacidad de traducir propuestas en bruto en soluciones prácticas para las organizaciones.

3.4 Generación de comunidadesEs gracias a la apertura de la información que se comienzan a gestar nuevos procesos inexisten-tes en empresas que no tienen un acercamiento con la cultura libre. Comunidades de desarro-lladores 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 las empresas tecnológicas. Este es uno de los mejores logros que pueden alcanzar organizaciones que buscan 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 pro-duciendo 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 posible el avance mutuo de la sociedad y la empresa.

Page 80: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

80

Software libre

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].

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 software

En este modelo las compañías se encargan de proveer soluciones de software open Source junto a un servicio de soporte profesional para atender 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 software

A diferencia del modelo anterior las empresas únicamente 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 nece-saria para usarlo, a múltiples clientes. Con la mejora en el acceso a Internet este es uno de los modelos que más han proliferado permitiendo generar cómputo en la nube a muy bajo costo debido a la escalabilidad de este modelo de negocios.Modelo comercial de Ad Ware

Esta 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ía

Como 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 premium

Modelo que permite a las empresas vender módulos añadidos al software existente en conjun-to con partes libres.Licencia dual

Es una variación de modelo de software propietario donde los usuarios son atraídos primera-mente a una versión Open Source sin costo del software para que posteriormente dependiendo

Page 81: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

La filosofía del software libre...

81

de sus necesidades se trasladen a una versión comercial más robusta o con funcionalidades pro-fesionales añadidas.Modelo híbrido

Se 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 específico de tiempo aquellas partes licenciadas como cerradas son liberadas bajo la misma licen-cia Open Source del código base.Servicios de integración de plataformas

Bajo 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 hardware

En este modelo las empresas utilizan software Open Source gratuito y se dedican únicamente 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 accesorios

Con este modelo las empresas generan servicios y accesorios alrededor de soluciones de soft-ware libre tales como venta de libros, mercancías publicitarias, materiales de entrenamiento, ac-cesorios de hardware, etc.Organizaciones sin fines de lucro

En ciertos casos este es uno de los modelos más extendidos para el desarrollo open Source. Or-ganizaciones como la Linux Foundation o Mozilla Foundation proveen algún producto o servicio de código abierto con la finalidad de beneficiar 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.

ConclusionesLos 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 número 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 ma-nera 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 manera, esto debe de ser entendido como una delegación de responsabilidades, ya que cada individuo por sí solo únicamente se hará cargo de las tareas

Page 82: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

82

Software libre

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 prácticas 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 objeti-vos. 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 artículo 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 pro-cesos 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 de-sarrollos 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/philo-

sophy/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 liderazgo

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 pers-pectiva 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 83: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

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

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

ResumenEl propósito de la Ingeniería de Requisitos (IR) es obtener, analizar, especificar, verificar y gestio-nar 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 de-seos 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 éstos 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 princi-pales 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.

1. Elicitación de requisitosEn la actualidad el software juega un papel muy importante para apoyar diversas actividades co-tidianas, 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 * [email protected]. Universidad Tecnológica de la Mixteca. Colaboración de: Reyes Sánchez Myriam Karenina, [email protected]. Universidad Tecnológica de la Mixteca. Cervantes Martínez Julio Cesar, [email protected]. Universidad Tecnológica de la Mixteca.

Page 84: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

84

Software libre

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 fun-cionalidades 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, correc-tos 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, 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 cono-cer 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.

• 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.

** El Standish Group es una empresa consultora que elabora el Chaos Report, este estudio tiene como objetivo do-cumentar 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 85: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Modelo de proceeso como guía...

85

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 stake-holders 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 acti-vidades que llevarán 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 desa-rrollo del presente trabajo y se menciona también el trabajo a futuro.

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

Page 86: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

86

Software libre

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 organizacio-nes 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 software para diseñar, representar, controlar y analizar procesos operacionales invo-lucrando 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 ges-tió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 compren-sió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 recur-sos 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.

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

Page 87: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Modelo de proceeso como guía...

87

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 conoce como Suite de Gestión de Procesos de Negocio (BPMS, por sus siglas en inglés), las cuales permiten construir aplicaciones compu-taciones 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 cons-trucción y ejecución de modelos de proceso construidos con la Notación BPMN v. 2.

Page 88: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

88

Software libre

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 pro-

ceso, 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 ne-cesidades 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, poste-riormente en este mismo componente se inicia la ejecución de la instancia del proceso, y final-mente 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 Mode-

lador, 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 para sus propiedades. La interfaz del mo-delador 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.

La figura 2 muestra el modelo del proceso general para la elicitación. En esta figura se ex-ponen 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.

Page 89: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Modelo de proceeso como guía...

89

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 stakeholders” formada 3 tareas: identificar y obtener información de los stakeholders, analizar su tipo de conocimiento y seleccionar quienes participaran en el siguiente subproceso.

Figura 1. Interfaz del Modelador de Activiti.

En la figura 4 muestra cómo llevar a cabo la “obtención de los deseos y necesidades”. Este sub-proceso 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. 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.

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 uti-lizando 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 proce-

Page 90: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

90

Software libre

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

Figura 3. Subproceso de identificación de stakeholders.

Page 91: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Modelo de proceeso como guía...

91

Figura 4. Subproceso de obtención de deseos y necesidades. Figura 5. Subproceso de refinamiento e integración de la información.

Page 92: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

92

Software libre

so. A partir de este momento, Activiti orquesta y guía 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 inter-faz 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 des-cripció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.

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.

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

Page 93: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Modelo de proceeso como guía...

93

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.

Figura 7. Interfaz del Explorador de Activiti para la realización de una tarea.

Adicionalmente, Activiti ofrece al analista, información histórica sobre la ejecución de la ins-tancia 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 resul-tados con mayor calidad.

Page 94: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

94

Software libre

Figura 8. Interfaz del Explorador de Activiti para el seguimiento de la ejecución del proceso.

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 elici-tació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.

Page 95: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Modelo de proceeso como guía...

95

Activiti ofrece múltiples funcionalidades para la construcción y ejecución de modelos de pro-ceso, 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 re-quiere realizar un consenso para contar con un proceso de elicitación más general y que se pueda adaptar a cualquier tipo de proyecto.

Referencias[1] Standish Group. (2015). The CHAOS report. Capturado em: http://www. standishgroup.

com [2] 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 Sympo-sium, 141-152.

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

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

[5] Sommerville I. (2010). Software Engneering. New York, US: Addison-Wesley [6] 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.

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

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

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

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

[11] 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.

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

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

[14] Underdahl, L (2015). Manipulative Monkeys: Research as Design.

Page 96: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

96

Software libre

[15] Van Der Aalst, W. M., Ter Hofstede, A. H., & Weske, M. (2003, June). Business process management: A survey. In International conference on business process management (pp. 1-12). Springer Berlin Heidelberg.

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

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

[18] 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.

[19] 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.

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

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

Page 97: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Aplicaciones en diversas áreas de investigación

Page 98: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como
Page 99: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Simulación de temperatura por elemento finito en dos dimensiones mediante software libre y su

comparación con software comercialLeonardo Flores Cano*, Maxvell Gustavo Jiménez Escamilla**

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 9% 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.

1. 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 es-tructural 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 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 movi-

* [email protected]. Universidad Tecnológica de la Mixteca ** [email protected]. Universidad Tecnológica de la MixtecaColaboración de: Reyes Pérez Emilio Rafael, [email protected]. Universidad Tecnológica de la MixtecaMatías Astorga Manuel Alejandro, [email protected]. Universidad Tecnológica de la Mixteca

Page 100: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

100

Software libre

miento 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 las 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 térmico con condiciones de frontera establecidas.

2. 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 de-pende 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).

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

Page 101: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Simulación de temperatura...

101

De la figura 1 se construyó la expresión de η como función de ξ proporcionando la depen-dencia η(ξ)=1-ξ. Así mismo fueron construidas las funciones de forma en el sistema coordenado local de un elemento arbitrario con la propuesta N_i=ai+bi η+ci ξ. 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, N3 (0,1)=0. Se resolvió para ai,bi,ci el sistema correspondiente para cada Ni obteniendo como resultado

N1 (η,ξ)= ξ (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 Ψ=∑i=0 Ni ui, lo cual implica que para x e y expresados en términos de η y ξ se tiene:

(4)

, (5)

de otra forma se tiene que (6)

Donde se definió xi-xj≡xij. La ecuación 6 permite cambiar de coordenadas del sistema carte-siano 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.

3. 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 mues-tra en la ecuación 7:

(7)

La ecuación anterior se reescribió como:

(8)

n

Page 102: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

102

Software libre

El teorema de Stokes establece , esto convierte a la ecua-ció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 , 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 , (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 tempera-tura en dicho camino , como se muestra en la figura 2.

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

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)

Page 103: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Simulación de temperatura...

103

Se realizó el mismo cálculo para Sin embargo se observó que se requieren las deri-vadas parciales en el sistema local de η 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 ob-tuvo 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 fun-ció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 T1, T2 y y T3.

(18)

donde

(19)

(20)

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

Page 104: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

104

Software libre

Figura 3. Mallado 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 de ensamblaje. Debido a que la propuesta de someti-miento de temperaturas en las caras del rectángulo es arbitraria, entonces existen ciertos elemen-tos que se encontraron sometidos a más de una temperatura en alguno de sus contornos. Los colores muestran la cantidad de T∞ y h (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 convecciones (h) ad-quieran 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 (xi,yi).

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 un sistema matricial elemental siendo las incógnitas las tem-peraturas en los nodos. Sin embargo debido a que los elementos tienen 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 de soluciones correspondientes a cada nodo, los cuales se ordenaron para obtener una representación visual de las temperaturas en los nodos.

Page 105: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Simulación de temperatura...

105

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 5. Simulación del 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

Page 106: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

106

Software libre

al azar), la simulación del primer software con el segundo, se obtuvo una diferencia porcentual de 8.9% para una muestra de 7000 nodos para ambos programas, por lo cual es una diferencia aceptable y modesta considerando el costo de adquisición de un software como ANSYS ®. Sin embargo lo más importante es que se muestra 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 problema didáctico, se tienen los cimientos para simular otros fe-nó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 problems.”

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 based on fatigue life using finite element method and design of experiment.” Medical Engineering & Physics. Vol 43. Pp 86 – 91.

[6] Nandy, A., Jog, C. S. 2016. “An amplitude finite element formulation for electromagnetic 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 elec-tromagnetic analysis of braided cable shields.” Computer Physics Communications, 191, 209-220.

[8] Laadhari, A., Székely, G. 2017. “Eulerian finite element method for the numerical modeling of fluid dynamics of natural and pathological aortic valves.” Journal of Computational 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.” Theoretical and Applied Fracture Mechanics. 89. 110 – 126.

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

lación de temperatura por elemento finito en dos dimensiones mediante software libre y su comparación con software comercial

Page 107: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Paralelización de un algoritmo genético para el problema del agente viajero

Moisés Emmanuel Ramírez Guzmán*, Erik Germán Ramos Pérez**

ResumenEn 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 implemen-tación está hecha usando software libre. Como resultados se muestra el uso de diferentes opera-dores 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 cos-to 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 usa-dos y la función objetivo. La implementación está hecha en C, usando en primer lugar la biblio-teca 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.

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 distribuir-las 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.

* [email protected]. Universidad Tecnológica de la Mixteca. ** [email protected]. Universidad Tecnológica de la Mixteca. Colaboración de Gil Hernández Ledesma, [email protected]. Universidad Tecnológica de la Mixteca.

Page 108: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

108

Software libre

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. e. 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 cri-terio del ciclo hamiltoniano.

Figura 1: Selección por rueda de la ruleta

Page 109: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Paralelización de un algoritmo genético...

109

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.

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, 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 planifica-ción de rutas (vehicle routing problem) [1].

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 alma-cenamiento de datos, tanto de manera permanente como durante el tiempo en que se procesan para generar información.

Page 110: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

110

Software libre

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.

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 institucio-nes 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: mo-delado 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 ejecu-ción de los procesos paralelos se devuelve el control al nodo maestro (join). La figura 5 ilustra gráficamente este modelo.

Page 111: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Paralelización de un algoritmo genético...

111

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 inter-conexió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 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.

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 clúster 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

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

Page 112: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

112

Software libre

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).

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

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.

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 Com-putació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 dis-tribuidas libremente, a pesar de que cuentan con versiones comerciales no 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.

Page 113: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Paralelización de un algoritmo genético...

113

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 fun-ciones 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 di-rectivas 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, ésta 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

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.

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 Trace Format); posteriormente, pueden ser

***** 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)

Page 114: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

114

Software libre

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 ejecu-ció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 7: Módulos de la implementación de un AG******* https://www.vampir.eu/ (última visita 18 de abril de 2017)

Page 115: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Paralelización de un algoritmo genético...

115

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.

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 itera-ciones 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 con-siderables. 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.

Page 116: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

116

Software libre

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 implemen-tació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, ran-king 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.

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.

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 dife-rentes operadores y se analizó y monitoreó el comportamiento de las aplicaciones tanto a nivel secuencial como en las ejecución paralela-distribuida.

Page 117: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Paralelización de un algoritmo genético...

117

Figura 11: Convergencia a la solución usando el operador de selección rank.

Figura 12: Convergencia a la solución usando el operador de selección por torneo

El uso de software libre permite realizar desarrollo de aplicaciones complejas sin costo. Ge-neralmente los desarrollos libres tienen documentación y muy buen soporte, permitiendo de esta manera ser parte de otros proyectos más complejos.

Page 118: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

118

Software libre

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.

Bibliografía[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 algorithms

for the traveling salesman problem. In Proceedings of the first International Conference on Genetic Algorithms and their Applications (pp. 160-165).

[3] Gutin, G., & Punnen, A. P. (Eds.). (2006). The traveling salesman problem and its variations (Vol. 12). Springer Science & Business Media.

[4] Omara, F. A., & Arafa, M. M. (2010). Genetic algorithms for task scheduling problem. Jour-nal 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, December).

Optimizing an MPI weather forecasting model via processor virtualization. In High Perfor-mance 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. Inter-national 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-dependent 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 Con-ference on (pp. 186-191). IEEE.

[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 & Distribu-ted 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 Gui-de 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.

Page 119: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Paralelización de un algoritmo genético...

119

[16] Horn, A., & Kroening, D. (2015, June). Faster linearizability checking via p-compositiona-lity. In International Conference on Formal Techniques for Distributed Objects, Compo-nents, 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-differencing 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 120: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como
Page 121: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Explorando tres niveles de paralelismo empleando software libre y freeware en computadoras personales

multicore. El caso de Linux versus WindowsJ. Jesús Arellano Pimentel*, Guadalupe Toledo Toledo**

ResumenEl 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 éstos. En dicho proyecto se emplearon he-rramientas 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) re-porta 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: espe-cificació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.

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 ofrece mejores venta-

jas 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, debi-

do a que se puede dividir un proceso en tareas muy pequeñas.

* [email protected]. Universidad del Istmo. ** [email protected]. Universidad del Istmo.

Page 122: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

122

Software libre

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 la eficiencia de la ejecución en paralelo, ya que si la carga de trabajo no está correc-tamente 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 hilo o hebra procese la misma cantidad de trabajo. Los datos que se van a procesar son los elementos de una imagen digital, mejor conoci-dos 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

Page 123: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Explorando tres niveles de paralelismo...

123

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 ca-jas 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, ésto 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 herra-mientas de software libre. Dichas herramientas se pueden clasificar en: las utilizadas en la progra-mació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 equi-pos 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.

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 granula-ridad en cada sistema operativo.

Page 124: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

124

Software libre

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 proce-samiento 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 tiem-po 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% 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 x 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 dis-persió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 posi-ciona la mediana y por lo tanto su relación con los cuartiles primero y tercero.

Page 125: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Explorando tres niveles de paralelismo...

125

3. Pruebas y resultadosLos equipos de cómputo personal utilizados para la ejecución de las pruebas con sus correspon-dientes 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 GBDell Vostro Intel i5 a 2.67Ghz de 32 bits 4 4 GBDell Precision T1700 i5 4a Gen. a 3.5 Ghz de 64 bits 4 8 GB

Figura 2. Esquema del paralelismo realizado.

Page 126: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

126

Software libre

Figura 3. Diagrama de cajas y bigotes.

Cabe mencionar que para la compilación de todos los códigos tanto en Linux como en Win-dows no se emplearon directivas de optimización en la generación de código para los compi-ladores 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 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 sólo se mostrarán los resultados más representati-vos 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 el 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 utilizan-do codificación en ensamblador (asm) con 4 hilos en ambos sistemas para los diferentes tamaños

Page 127: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Explorando tres niveles de paralelismo...

127

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 siste-mas 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.

Figura 4. Comparativa del valor más probable entre Linux y Windows para la implementación en ensamblador con 4 hilos.

Page 128: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

128

Software libre

Los resultados obtenidos de las pruebas realizadas en el equipo de cómputo Dell Vostro mues-tran 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.

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.

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 proxi-midad de los tiempos más 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 me-diana, 3 grande, y 4 muy grande).

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.

Page 129: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Explorando tres niveles de paralelismo...

129

Figura 6. Comparativa del valor más probable entre Linux y Windows para la implementación en cpp con 4 hilos.

La Figura 7 presenta cómo Linux resulta más estable en cuanto a los tiempos de ejecución obteni-dos, 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 sólo 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ómpu-to. La Figura 8 muestra la gráfica de cajas y bigotes correspondiente a la ejecución de pruebas de la

Page 130: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

130

Software libre

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 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 7. Diagrama de cajas y bigotes correspondiente a la implementación en ensamblador y pruebas ejecutadas en el equipo Laptop HP.

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 progra-mados; 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 mues-tra 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.

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

Page 131: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Explorando tres niveles de paralelismo...

131

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.

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 132: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

132

Software libre

Es de resaltar que las herramientas de software libre utilizadas durante el desarrollo (imple-mentació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. Recuperado

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 Tierra,

Astronomía y Astrofísica, 133. [6] Minaard, C., Condesse, V., & Rabino, C. (2005). Los gráficos de Caja: un recurso innovador.

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 133: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Temas Diversos

Page 134: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como
Page 135: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Ciencia, datos y prácticas abiertasGermán Alejandro Miranda Díaz*

ResumenEl movimiento del Software Libre gira en torno a las prácticas de programadores que fueron consolidando una serie de reglas culturales y legales con las cuales se formaliza y garantiza la libre circulación de los objetos producidos, en contraposición a la norma imperante de la reserva derechos de autor o de copyright que se reserva todos los derechos impidiendo la libre circulación de los objetos culturales.

Aunque no conste formalmente, la noción de la libertad del software libre sirvió de moldea-miento ideológico y económico en diversas aéreas de producción de conocimiento contemporá-neo, como las expresiones artísticas, los materiales educativos o el ámbito editorial, entre muchas áreas en la que se cristaliza la producción del conocimiento humano en el ámbito digital.

El establecimiento del uso de copyright en los bienes intangibles y el abuso de los sistemas de gestión de derechos digitales (Digital Rights Management) [1] y los sistemas de vigilancia electró-nica que han consolidado amplias restricciones al uso de las obras digitales.

Estas restricciones permitirían la formalización de un movimiento reaccionario que brinda a los autores de los objetos digitales de una serie de plantillas jurídicas en lo que se ceden al usuario una serie de derechos que pueden ir desde permitir la libre circulación del objeto, su modificación o la explotación de la obra; esta sesión de derechos a favor del usuario la conocemos como los licenciamientos Creative Commons [2].

Las licencias Creative Commons, si bien se inspiran en los licenciamientos permisivos del soft-ware libre como la GPL (General Public License), permiten una elección amplia de gradientes que tienen como característica mínima la libre circulación de la obra, hasta permisos de uso equivalen-tes al dominio público (ver ilustración 1), siendo las últimas tres combinaciones las que se deno-minan “culturalmente permisivas”, es decir, que los licenciamientos atribución – compartir igual, atribución y el licenciamiento zero (equivalente al dominio público) son aquellas que garantizan la libre circulación cultural de las obras.

Los licenciamientos Creative Commons junto con el fenómeno de construcción de conoci-miento en Wikipedia [4] han modelado las propuestas de acceso y libre circulación del conoci-miento fuera de las costumbres culturales de las comunidades del software libre, esto se debe a que la libre circulación de los objetos culturales con una propiedad inherente a la acción humana y la construcción evolutiva de la psique.

* [email protected]. Universidad Nacional Autónoma de México.

Page 136: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

136

Software libre

Ilustración 1. Muestra el grado permisividad cultural de cada licenciamiento Creative Commons [3].

1. El humano, el conocimiento y la propiedad intelectual.Cuando hablamos de la construcción de conocimiento y sus mecanismos evolutivos tendre-

mos que hacer una revisión histórica del estudio contemporáneos del fenómeno comenzando por la Gestalt .

La psicología Gestalt inauguró los estudios modernos de la percepción humana y demostró el papel activo del sujeto en la construcción de la realidad, de ellos se desprenden la psicología genética y la psicología del procesamiento de información que tienen como eje común el uso de estructuras cognoscitivas para la organización del conocimiento, que se desequilibran, asimilan y acomodan en un ciclo constante de adquisición de nuevos elementos de conocimiento.

También encontramos los ejes teóricos que enfatizan la construcción social del conocimiento proveniente de la psicología rusa, entre los que encontramos a Vigotsky, Leontiev o Engrestöm y que abordan los mecanismos de negociación, co-construcción, internalización, diseminación y cristalización del conocimiento.

Todas estas teorías psicológicas abordan desde distintas ópticas la generación de conocimien-to, y nos permiten aseverar que el ser humano ha creado mecanismos sociales y cognitivos con los que se garantiza la interiorización de los arreglos culturales presentes en el ambiente. Así que por milenios el ser humano se ha dedicado a la creación de estructuras sociales y cognitivas que le per-miten apropiarse y crear nuevo conocimiento, que se expresa en objetos materiales y simbólicos.

Page 137: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Ciencia, datos...

137

La ciencia, como resultado de la acción humana, no es ajena a los mecanismos psicológicos de construcción de conocimiento, de hecho el método científico y las validaciones sociales del conocimiento se han construido sobre los mecanismos individuales y sociales de la construcción psicológica de conocimiento.

La ciencia como lo menciona Bunge [5], es un sistema de construcción de conocimiento abierto que recibe la estimulación externa constante y que como todo mecanismo evolutivo cam-bia para adaptarse a los requerimientos ambientales.

Hemos pasado de una ciencia que enfatizaba leyes universales y buscaba la predictibilidad y control de los fenómenos, a la que expresa en factores de leyes probabilísticas la ocurrencia de los mismos, hasta reconocer que algunos objetos de estudio tienen una complejidad suficiente para poder saber cuándo comenzarán a ocurrir pero no cuándo ocurrirán.

2. El despojo, la propiedad intelectualSin embargo este sistema abierto de construcción social del conocimiento se encontró con la primera excepción legal moderna, cuando en el siglo XIX la reina Ana [6] creaba los primeros monopolios artificiales para el desarrollo de la emergente industria editorial. Nunca imaginarían que tres siglos después, lo que fue una buena idea para incentivar la inversión, se consolidaría en las industrias culturales y que éstas harían un uso intensivo de la vigilancia y control legal para evitar usos no autorizados de las obras bajo su custodia.

El control de la reproducción no autorizada de la obra se lleva con relativa facilidad cuando los objetos son materiales, en tanto es más fácil controlar el acceso y reproducción de materiales físicos como un libro en papel; pero con la irrupción de los objetos digitales, el control sobre el acceso y reproducción de la obra se dificultó.

¿Cómo evitar la clonación de objetos digitales? En realidad se ve como una tarea difícil con-siderando que la copia tiene un costo tendiente a cero y que el ser humano evolucionó para la apropiación, derivación y diseminación de los artefactos culturales. A pesar de ello la industria, aprovechando la mediación tecnológica en el acceso de contenidos, desarrolló la gestión de dere-chos digitales DRM por sus siglas en inglés (digital rights management) que consisten en tecno-logías de control de acceso y copia en dispositivos digitales [1] que en opinión de sus proponentes busca proteger los derechos de usufructo de una obra determinada.

Lamentablemente para ellos cada uno de estos sistemas DRM han sido vulnerados al llegar a los usuarios, visto desde una óptica evolutiva esto tiene sentido, como lo decíamos el ser humano por milenios ha encontrado el camino para cumplir su función de diseminador cultural, pero la copia sólo es el último paso que la industria cultural deben cuidar.

3. Dónde publicarRegresando al tema que nos ocupa, la ciencia ha negociado diversos métodos de validación de la producción del conocimiento y en la parte última el investigador debe decidir donde ha de difundir los hallazgos encontrados en su proceso de investigación.

La publicación del reporte de investigación significa el inicio del último tramo del proceso de investigación y por lo tanto es un paso tan importante como la investigación misma, los autores

Page 138: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

138

Software libre

deben considerar factores como el halo de la revista, su visibilidad y el impacto. La idea es buscar la mejor opción para las posibilidades del reporte de investigación.

Así pues, comúnmente los investigadores usan, o solicitan a sus estudiantes de posgrado, con-sultar los índices de factor de impacto publicados por las corporaciones con bases de datos espe-cializadas en la divulgación certifica, por ejemplo las publicadas por ISI [7] en el Journal Citation Reports de la empresa Thomson Reuters; también podemos encontrar el Journal Metrics de Scopus [8] en donde se publican los indicadores recolectados por la citada compañía.

Independientemente de las opiniones que nos merezcan los métodos de cálculo usados para obtener los respectivos indicadores, los investigadores recomiendan su uso, como si se tratara de un robusto cálculo axiomático con base en sus filias; sin considerar que el reporte es tan bueno como los mecanismos de inclusión de las revistas indexadas en sus respectivas bases de datos. Sin considerar que muchas revistas quedan excluidas, independiente mente de su calidad, al no poder pagar las cuotas de inscripción solicitadas por dichas corporaciones.

4. El negocio del accesoEsto nos lleva al punto relevante del acceso a los reportes de investigación científica. Por una parte tenemos a las corporaciones instaladas en el imaginario de los investigadores, que solicitan a sus estudiantes de posgrado el uso de sus bases. Por otro, los investigadores han construido mecanismos de validación de calidad de los productos de la ciencia que usan los factores de im-pacto publicadas por las corporaciones, es decir, se ha creado un contexto obligado de consulta y postulación de bases de datos a los que se es difícil acceder.

Eso no son los único problemas que encontraremos en este modelo de negocio, un investi-gador al postular su trabajo le será solicitada una cuota con la que se cubren los gastos admi-nistrativos asociados al dictamen, aun cuando los dictaminadores son otros investigadores que harán el trabajo de forma voluntaria y sin más pago que el reconocimiento por escrito de que han participado en dicho proceso.

Luego de ser aceptado la publicación el autor podrá tener derecho a la descarga de un ejemplar de su artículo o capítulo, el cual como fue cedido para usos de la explotación de la obra no podrá ser compartido.

Esto quiere decir que si uno de esos estudiantes quiere leer algún artículo de su interés tendrá que pagar por el acceso del documento. Esta situación puede llegar al absurdo de tener que pagar por la lectura de algún material de los miembros de la misma facultad.

El pago del acceso se puede hacer de forma directa (por el interesado), o bien, por medio de los convenios de las universidades; Dess [9] menciona que para el 2006 las universidades gastaron en promedio 100,000 dólares por el pago de ISI y entre un 85% al 95 % de esta cuota por los pagos de Scopus.

Entonces tenemos que la industria de divulgación cobra por la postulación y el acceso a los investigadores y alumnos de las propias universidades que producen los contenidos que publican. Hasta antes de la digitalización de contenidos, los costos de impresión y distribución eran enor-mes, sin embargo hoy se cobra excesivamente por costos de producción comparativamente bajos.

Page 139: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Ciencia, datos...

139

5. Acceso abierto (OA)De forma reaccionaria al abuso de la industrialización de la divulgación de la ciencia emergió el concepto de acceso abierto, que se define como la literatura que se encuentra en “disponibilidad gratuita en Internet público, permitiendo a cualquier usuario leer, descargar, copiar, distribuir, imprimir, buscar o usarla con cualquier propósito legal, sin ninguna barrera financiera, legal o técnica, fuera de las que son inseparables de las que implica acceder a Internet mismo”[10].

El acceso abierto se origina como resultante de la iniciativa de Budapest [11], que presupone el acceso universal, gratuito, completo y por tiempo ilimitado de la obra mediante algún mecanismo legal en el que se cede el derecho de uso, copia y distribución al usuario.

Como resultado de la implementación de esta iniciativa se han creado dos vías de implemen-tación de la política de acceso abierto: la vía verde y la vía dorada.

La vía verde ([12] implica el uso de repositorios institucionales o temáticos, bajo el método del auto-archivo, es decir, son los propios autores los que han de liberar su documento depositándolo en un repositorio. En opinión de Carr, Swan, & Harnad [9] esta es la mejor opción en tanto existe un gran motor personal e institucional por promover la producción científica, lo que lo hace más rápido y seguro.

La vía dorada [12] refiere a las políticas de acceso abierto adoptadas por las editoriales y los editores, en este camino se dificulta más el proceso de adopción en tanto que la definición más amplia del Acceso Abierto incluye que ni autores, ni lectores paguen por el acceso. Es un hecho que alguien debe pagar por el costo del proceso editorial, y en el caso de la vía dorada las insti-tuciones universitarias son el gran motor de desarrollo. Tal es el caso del sistema de información científica de la Red de Revistas Científicas de América Latina y el Caribe, España y Portugal (REDALYC) o de la Biblioteca Científica Electrónica en Línea (SciELO - Scientific Electronic Library Online) que compila los contenidos de las revistas científicas de América Latina y el Caribe; en ambos casos hay una adherencia explícita al modelo de Acceso Abierto y una política clara de promoción, difusión y desarrollo de la producción regional de conocimiento.

Como podemos leer, el establecimiento del uso de copyright en los objetos disciplinares es la regla, siendo muy evidentes los reportes de investigación que terminan en las bases de datos cien-tíficas a las que se accede por inscripción de los usuarios, pero también de las revistas indexadas. Por fortuna desde hace más de una década en el entorno latinoamericano y del caribe han surgido iniciativas de empoderamiento de la ciencia que han basado su crecimiento en el libre acceso de la producción científica regional, con muy buenos resultados.

6. Otros ejes de la ciencia abiertaLa ciencia abierta tradicionalmente se ha centrado en el acceso sin restricciones a las pu-blicaciones de corte científico, sin embargo reducirlo al acceso sería acortar un fenómeno emergente innecesariamente.

Es necesario dar su justo reconocimiento al movimiento de software libre que fue el primero en alertar sobre los abusos de las industrias asociadas al conocimiento, pero sobre todo en propo-ner un arreglo simple basado en cuatro principios que son la libertad de ejecutar, copiar, distribuir,

Page 140: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

140

Software libre

estudiar, modificar y mejorar el software [13], creando la noción del Copyleft entendidas como el arreglo legal en que se garantizan estas cuatro libertades.

El Software Libre formalizó un movimiento, que si bien sólo le interesaba el software, que enfatiza la libertad del usuario por aprender, modificar y distribuir código, restituyendo la inten-cionalidad original de la generación de conocimiento humano en un contexto de producción de ciencia tecnología. En el mismo sentido pero temporalmente más adelante emergió el hardware libre que en consonancia son las cuatro libertades del software libre busca que el hardware pueda ser “ser copiado, distribuido, modificado, y fabricado libremente” [14].

En lo que respecta a la educación se popularizó el concepto de los Recursos Educativos Abiertos (REA), que se definen como “materiales de enseñanza, aprendizaje o investigación que se encuen-tran en el dominio público o que han sido publicados con una licencia de propiedad intelectual que permite su utilización, adaptación y distribución gratuito”[15]. Entre los antecedentes relevantes de los Recursos Educativos Abiertos se encuentran los cursos abiertos y los cursos masivos.

La parte última de esta gran apertura de la sociedad es encontrar los datos abiertos y el gobier-no abierto. Los datos abiertos “son datos que pueden ser utilizados, reutilizados y redistribuidos libremente por cualquier persona, y que se encuentran sujetos, cuando más, al requerimiento de atribución y de compartirse de la misma manera en que aparecen” [16] , en este caso nos referimos a los datos abiertos que se generan en el gobierno, que son de interés público y por lo tanto se encuentren disponibles para ser usados y compartidos sin restricción.

Para nuestro último caso, el de la consolidación de prácticas abiertas el panorama es discipli-nalmente desalentador, aunque en un fragmento de estas prácticas se fortalecieron en el movi-miento del software y hardware libre y la adopción de licenciamiento permisivo, en otras áreas de conocimiento la apropiación es lenta y por lo tanto requiere de eventos y ritos que permitan la adopción de estas prácticas.

En resumen, los procesos de construcción de conocimiento son inherentes al ser humano, éstos lo son tanto cognitivos como sociales y nos permiten interiorizar todo elemento externo, para reelaborarlo y posiblemente mejorarlo. A pesar de que en el siglo XIX se crearon los primeros monopolios artificiales y en el XX se instauró en el imaginario colectivo el concepto de propiedad individual, los grupos humanos no han abandonado sus mecanismos evolutivos de construcción social de conocimiento, por el contrario han adaptado terminología legal para oficializar y ga-rantizar la libre circulación cultural de las obras, inclusive en aquellos objetos tan especializados como los resultantes de la producción científica.

Referencias[1] Subramanya, S. R., & Yi, B. K. (2006). Digital rights management. IEEE Potentials, 25(2),

31-34.[2] Vercelli, A. H. (2004). La Conquista Silenciosa del Ciberespacio: Creative Commons y el

diseño de entornos digitales como nuevo arte regulativo en Internet (Doctoral dissertation, Facultad Latinoamaricana de Ciencias Sociales-FLACSO).

[3] Txopitea, M. (2009). Semáforo Creative Commons. Disponible en: http://ikusimakusi.eus/2007-2015/es/index.html%3Fp=160.html

Page 141: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Ciencia, datos...

141

[4] Voss, J. (2005). Measuring wikipedia.[5] Bunge, M. (1978). La ciencia: su método y su filosofía (No. 001.42 B854M 1975.). Siglo veinte.[6] Cadavid, J. A. P. (2010). De los privilegios a la propiedad intelectual: la protección en Colom-

bia a las obras literarias, artísticas y científicas en el siglo XIX. U. Externado de Colombia.[7] ISI. (2017). Journal Citation Reports, Disponible en: https://Jcr.incites.thomsonreuters.

comconsultado el 27 de abril del 2017.[8] SCOPUS. (2017). Journal Metrics. Disponible en: https://journalmetrics.scopus.com/, con-

sultado el 27 de abril del 2017.[9] Carr, L., Swan, A., & Harnad, S. (2011). Creación y mantenimiento del conocimiento com-

partido: contribución de la University of Southampton. El profesional de la información, 20(1), 102-110.

[10] UNESCO. (2017). ¿Qué es acceso abierto?. Disponible en: http://es.unesco.org/open-access/%C2%Bfqu%C3%A9-es-acceso-abierto, consultado el 1 de mayo del 2017.

[11] BOAI. (2001). Iniciativa de Budapest para el Acceso Abierto. Recuperado de http://www. opensocietyfoundations. org/openaccess/translations/spanish-translation.

[12] SEDIC. (2017). Vías para alcanzar el acceso abierto: Revistas de acceso abierto, Reposito-rios institucionales, Repositorios temáticos. Disponible en http://www.sedic.es/autoforma-cion/acceso_abierto/2-vias-acceso-abierto.html, consultado el 1 de mayo del 2007

[13] Free Software Foundation. (2017) .¿Qué es el software libre?. Disponible en https://www.gnu.org/philosophy/free-sw.es.html, consultado el 1 de mayo de 2017.

[14] Wikipedia, La enciclopedia libre. (2017, 4 de abril). Hardware libre. Recuperado de https://es.wikipedia.org/w/index.php?title=Hardware_libre&oldid=98179026.

[15] UNESCO. (2017b). Recursos Educativos Abiertos. Disponible en: http://www.unesco.org/new/es/communication-and-information/access-to-knowledge/open-educational-resour-ces/, consultado el 1 de mayo del 2017.

[16] Open Data Handbook. (2017). ¿Qué son los datos abiertos?. Disponible en: http://openda-tahandbook.org/guide/es/what-is-open-data/, consultado el 1 de mayo del 2017.

Page 142: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como
Page 143: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Wit Sparks: Una suite educativa de apoyo a educación preescolar

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 reforza-miento 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 ma-terna, 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 pre-escolar 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órico1.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].

En la actualidad el estado de Oaxaca, localizado en el suroeste de la República Mexicana, for-ma parte de los 5 últimos estados en lo que respecta a nivel educativo. Ello implica que, dentro de los diferentes rubros que conforman 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 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 de deserción de la escuela es que no todos los niños asisten al preesco-lar y de 100 niños que ingresan a la primaria, 93 de ellos llegan a la secundaria, 65 continúan * [email protected]. Instituto de Computación. Universidad Tecnológica de la Mixteca (UTM). ** [email protected]. Instituto Tecnológico Superior de Acatlán de Osorio (ITSAO). *** [email protected]. Universidad de Chalcatongo (UNICHA).Colaboración de: Ketnia Nataly Navarrete Méndez, [email protected]. Instituto Tecnológico Superior

de Acatlán de Osorio (ITSAO).

Page 144: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

144

Software libre

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 cono-cimientos 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% com-putadoras 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- tecno-lógicas sobre las cuales se sustentan estos productos son ajenos a la mayor parte de la población. Es por ello que es importante revertir el rol de consumidor a desarrollador de nuevas tecnologías. En tal sentido cualquier área ingenieril tiene como base científica las matemáticas. Es claro en-tonces que es importante contar con diversas técnicas de enseñanza para lograr un mejor proce-samiento del conocimiento y hacer eficientes 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, éste desarrollo logró crear un nicho de mercado para el cómputo móvil [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 inmen-sa cantidad de opciones con diferentes tamaños, aplicaciones, precios y sistemas operativos. La popularidad de las tabletas se ha incrementado año con año y su facilidad de uso hace que las puedan manejar inclusive niños, lo cual ha sido el motivo de la creación de múltiples aplicaciones tanto gratuitas como de paga.

1.3 El Sistema Operativo AndroidCon la aparición de los teléfonos celulares y las tabletas se propicia la creación de sistemas ope-rativos 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 termi-nan, 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.

Page 145: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Wit Sparks: Una suite educativa...

145

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 él mismo, herramientas gratuitas para la creación de aplicaciones en 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 me-diante 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 dis-positivos 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 tres siguientes 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 apren-der 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.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, 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 usua-rios. 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

Page 146: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

146

Software libre

presenta una suite de aplicaciones en dispositivos móviles para apoyo a la formación de compe-tencias 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 ha-

bilidades, 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 as-

cendente. 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 cono-cimientos.

2. Desarrollo de la Suite Wit Sparks2.1 Actividades Iniciales

Se efectuaron un total de seis actividades preliminares para definir elementos gráficos y auditi-vos 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.Con base al punto anterior se determina que 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, inclu-

yendo 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 apli-

cació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.

Page 147: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Wit Sparks: Una suite educativa...

147

Figura 1. Diseño de la pantalla principal.

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.

Page 148: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

148

Software libre

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".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.

Page 149: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Wit Sparks: Una suite educativa...

149

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 re-torna 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.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.

Page 150: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

150

Software libre

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.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ó.

Page 151: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Wit Sparks: Una suite educativa...

151

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 anima-ció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 Pan-talla 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.

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 correspon-diente (Pantalla 3-Figura 6).

Page 152: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

152

Software libre

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 continua-ción se describe la funcionalidad de cada uno:

Page 153: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Wit Sparks: Una suite educativa...

153

• Casa: Regresa al mosaico anterior. En este caso es el mosaico de aplicacio-nes 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é vien-do la vocal “a” retorna a vocal “u”.

• Flecha siguiente: Procede a la siguiente vocal y en caso de que se esté vien-do 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 154: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

154

Software libre

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 155: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Wit Sparks: Una suite educativa...

155

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.

Page 156: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

156

Software libre

Precondiciones: La letra de la aplicación sea mayúscula.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 pan-talla (círculo amarillo, Pantalla 3-Figura 10).

Figura 10. Flujo de la aplicación Abecedario para sus casos de uso.

Page 157: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Wit Sparks: Una suite educativa...

157

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 restan-tes 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 cam-biar 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.

Page 158: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

158

Software libre

Figura 11. Diseño de la aplicación Abecedario.

Figura 12. Diagrama de caso de uso "Dibujar".

Page 159: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Wit Sparks: Una suite educativa...

159

Evento activador: El usuario elige alguno de los ocho colores disponibles.Casos incluidos: Seleccionar un color, dibujar.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 160: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

160

Software libre

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.Condiciones de éxito: Iniciar la aplicación.Condiciones de fallo: Ninguna.

Page 161: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Wit Sparks: Una suite educativa...

161

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".

A continuación se presenta la descripción del caso de uso "El usuario ve la imagen anterior en la galería":

Page 162: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

162

Software libre

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 siguien-

te 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 163: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Wit Sparks: Una suite educativa...

163

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 164: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

164

Software libre

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 iz-quierda para ver el número anterior.

2. La aplicación solicita a la base de datos la información del número y audio corres-pondiente.

3. La base de datos retorna la información solicitada.4. La aplicación muestra el número y el audio correspondiente.

Page 165: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Wit Sparks: Una suite educativa...

165

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 (Panta-lla 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 can-tidad. 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”.

• Flecha siguiente: Procede al número siguiente, si se encuentra en el número “20”, se retorna al número “0”.

Page 166: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

166

Software libre

• 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 corres-pondiente.

Figura 21. Diseño de la aplicación Números

Page 167: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Wit Sparks: Una suite educativa...

167

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 168: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

168

Software libre

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 169: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Wit Sparks: Una suite educativa...

169

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 corres-pondiente 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 can-tidad 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 170: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

170

Software libre

Figura 24. Diseño de la aplicación Sumas.

Figura 25. Diagrama de caso de uso Resolver una resta.

Page 171: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Wit Sparks: Una suite educativa...

171

A continuación se presenta la descripción del caso de uso: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 incorrec-ta cambia a “carita triste”.

• Signo de resta: Indica que la operación a realizar es una resta. Al to-carlo reproduce el audio correspondiente a su nombre.

Page 172: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

172

Software libre

Figura 26. Flujo de los casos de uso de la aplicación Restas.

Figura 27. Diseño de la aplicación Restas.

Page 173: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Wit Sparks: Una suite educativa...

173

2.4.4 Aplicación PianoObjetivo de la aplicación: Ayudar a los niños a repasar números, colores, aprender notas musi-

cales 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 174: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

174

Software libre

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.

Page 175: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Wit Sparks: Una suite educativa...

175

Condiciones de éxito: Tocar el botón con el número 3.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 176: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

176

Software libre

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 sub-secciones anteriores:

• Boca: Cambia la aplicación para que muestre los nombres de las no-tas musicales y reproduzca el audio correspondiente.

Page 177: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Wit Sparks: Una suite educativa...

177

• Cuadro verde con el número 3: Cambia la aplicación para que mues-tre 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 presiona-do. Al iniciar la aplicación reproduce el sonido de las notas musicales.

3. Pruebas de Aceptación y Funcionamiento con UsuariosLas pruebas con los usuarios fueron efectuadas en las instalaciones del Laboratorio EDUMO-VIL 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.

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.

Page 178: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

178

Software libre

Figura 32. Flujo de los casos de uso de la aplicación Piano.

Figura 33. Diseño de la aplicación Piano.

Page 179: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Wit Sparks: Una suite educativa...

179

• 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 cómputo que llamaron su atención.

Figura 34. Usuarios explorando el laboratorio EDUMOVIL.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.

Page 180: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

180

Software libre

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 aplicacio-

nes 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.

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, acti-vidades 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.

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 Apli-

caciones 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.

Page 181: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Wit Sparks: Una suite educativa...

181

Figura 36. Usuarios jugando con algunas de las aplicaciones.

• 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 cari-tas 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 compitieron para determi-nar quién lograba resolver más restas sin equivocarse. Esta actividad fue propuesta, organizada y realizada por ellos mismos.

Page 182: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

182

Software libre

Figura 37. Usuarios dibujando.

Figura 38. Usuarios armando un rompecabezas• 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 acep-

table, además de la retroalimentación de la aplicación al reproducir el nombre de los colores que se van utilizando.

Page 183: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Wit Sparks: Una suite educativa...

183

Figura 39. Usuarios disfrutando de un refrigerio.

3.3 Fortalezas de la Suite de Aplicaciones Wit SparksDe acuerdo a las observaciones y comentarios recabados durante las pruebas efectuadas se iden-tifican 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.

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.

Page 184: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

184

Software libre

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 mostra-rá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. • 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 cómo

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 po-drá 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 habili-dades. 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.

Page 185: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como

Wit Sparks: Una suite educativa...

185

Referencias[1] Educación. UNICEF México. Web site (18 de abril de 2017): https://www.unicef.org/mexi-

co/spanish/educacion.html[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-en-vision-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.computer-world.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.soft-pedia.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 186: Universidad Tecnológica de la Mixtecasimposio/IX/files/SoftwareLibre-digital-baja.pdf · En este ejercicio se pudo sustituir Mecanalyst por algún software libre estadístico como