Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
INSTITUTO TECNOLÓGICO Y DE ESTUDIOS SUPERIORES DE MONTERREY CAMPUS MONTERREY PROGRAMA DE GRADUADOS EN TECNOLOGÍAS DE INFORMACIÓN Y ELECTRÓNICA INDICADORES PARA IMPLEMENTACIÓN DE TECNOLOGÍA OPEN SOURCE EN INSTITUCIONES EDUCATIVAS TESIS PRESENTADA COMO REQUISITO PARCIAL PARA OBTENER EL GRADO ACADÉMICO DE: MAESTRO EN ADMINISTRACIÓN DE TECNOLOGÍAS DE INFORMACIÓN POR: JUAN GILBERTO NAVARRO RODRÍGUEZ MONTERREY, N.L. DICIEMBRE 2006 INSTITUTO TECNOLÓGICO DE ESTUDIOS SUPERIORES DE MONTERREY DIVISIÓN DE TECNOLOGÍAS DE INFORMACIÓN Y ELECTRÓNIC A PROGRAMA DE GRA DUADOS EN TECNOLOGÍAS DE INFORMACIÓ N Y ELECTRÓNICA Los miembros del comité de tesis recomendamos que la presente tesis del Ing. Juan Gilberto Navarro Rodríguez sea aceptada como requisito parcial para obtener el grado académico de Maestro en Administración de Tecnologías de Información. Comité de tesis: ______________________________ Ing. Javier Alberto Giese Ruiz, MC. Asesor ______________________________ Ing. Gustavo Cervantes Ornelas, MC. Sinodal ______________________________ Dr. David Ángel Alanís Dávila Sinodal _________________________________________ Dr. Graciano Dieck Assad. Director del Programa de Graduados en Tecnologías de Información y Electrónica Diciembre de 2006 INDICADORES PARA IMPLEMENTACIÓN DE TECNLOGÍA OPEN S OURCE EN INSTITUCIONES EDUCATIVAS POR: JUAN GILBERTO NAVARRO RODRÍGUEZ TESIS Presentada al Programa de Graduados en Tecnologías de Información y Electrónica Este trabajo es requisito parcial para obtener el grado de: Maestro en Administración de Tecnologías de Informa ción INSTITUTO TECNOLÓGICO Y DE ESTUDIOS SUPERIORES DE MONTERREY CAMPUS MONTERREY DICIEMBRE 2006 iv DEDICATORIA A mis padres el Ing. Juan Gilberto Navarro Flores y la Profra. Delia Rodríguez Olivares que siempre me han apoyado y animado a salir adelante. A Yessica Berenice Zamarrón Maltos quien fue la persona que estuvo a mi lado, que yo me superara y estudiara esta maestría muchas gracias, has sido una persona muy importante en mi vida. A mi abuela Leonor que cada fin de semana esta esperándome y cuidando que esté bien. GRACIAS v AGRADECIMIENTOS A mis padres por estar siempre ahí apoyándome en todo este tiempo, siempre dándome consejos. A mi abuela que siempre me recibe y me ayuda. A Yessica por apoyarme en esta etapa de mi vida, que esto es para algo bueno en la vida. A mis hermanos, que están presentes en todo lo que hago. A mi Asesor de tesis que me apoyo y guió en este trayecto. A mis amigos que cuento con ellos cuando se necesita su apoyo. A mis compañeros de maestría que han formado parte importante en esta etapa de mi vida. A mis profesores de clase pues he aprendido mucho de ellos. A mis compañeros de trabajo por su apoyo y consejos durante este tiempo. A todos aquellos que colaboraron a la realización de esta tesis. A las instituciones educativas que ayudaron en la realización de esta investigación. vi Resumen . Con el avance de la tecnología también se crean nuevas formas de programación, nuevas formas de aprendizaje, nuevas formas desarrollo de software, la intención de toda institución educativa es la de ofrecer la mejor educación disponible a sus alumnos, y del mismo modo hacer uso de estas nuevas tecnologías para tener y ofrecer una mejor infraestructura. Ya que actualmente se cuenta con un amplio catálogo de software para su uso académico y operativo es necesario el uso de metodologías para su selección, muchas instituciones educativas actualmente se encuentran volteando hacia nuevas formas de aprendizaje, modelos educativos, y un mejor aprovechamiento de sus recursos tecnológicos. El software Open Source de este modo ayuda al aprendizaje colaborativo; presenta una nueva opción dentro del desarrollo de software, incluso un nuevo modelo de negocio. Una de las fortalezas de este tipo de software es que se tiene la libertad de acceder a su código, poder modificarlo y adaptarlo a las necesidades que se tengan dentro de la institución, aprender el cómo fue programado y realizar mejoras. La metodología que se utilizó en la realización de este estudio fue la siguiente: Se llevó a cabo un estudio exploratorio para obtener el costo total de propiedad (TCO) tanto para el software propietario como para el de Open Source en el área de licenciamiento, soporte técnico, instalación, capacitación, y costo, y de esta forma poder realizar una buena elección. Se tomo como referencia para este estudio empresas regiomontanas que ofrecieran servicio de mantenimiento, capacitación, instalación o venta de software, en alguna de las soluciones tecnológicas de Open Source o propietario. Para poder tener un mayor conocimiento del uso del software en las instituciones educativas, tanto en su área operativa como dentro del aula de clase, se realizó una encuesta en las diversas instituciones educativas de nivel licenciatura del área metropolitana de Monterrey. Ésta encuesta fue realizada a cuatro sectores principales: Director Académico, Director Operativo, maestros y alumnos del área de tecnologías de información. Con base a las respuestas obtenidas, se analizaron los datos y se determinaron cuales son los principales indicadores para una implementación de tecnología Open Source. Algunos de los elementos que se encontraron al realizar esta investigación, fue que se tiene un gran desconocimiento sobre la tecnología Open Source, falta de capacitación en todos los niveles académicos, pero hay algo importante que vale la pena resaltar y es que la gran mayoría de los maestros y alumnos concuerdan en que se debe de impartir algunas materias utilizando esta tecnología. Las universidades que han utilizado esta tecnología Open Source en la parte operativa han encontrado buenos resultados, al reducir sus costos o aumentar la satisfacción de sus clientes y en su parte académica al cubrir una necesidad de software educativo, al no poder adquirir el software propietario debido a sus altos costos. vii Índice . Resumen............................................................................................................vi Índice.................................................................................................................vii Índice de Figuras................................................................................................ x Índice de Tablas .................................................................................................xi Capítulo I.- Introducción ..................................................................................... 1 1.1 Introducción general............................................................................. 1 1.2 Objetivo................................................................................................ 2 1.3 Limitación y delimitación del Proyecto ................................................. 2 1.4 Metodología ......................................................................................... 2 1.5 Estructura de la Tesis .......................................................................... 2 1.6 Producto Final y contribución esperada............................................... 3 Capítulo II.- Marco teórico .................................................................................. 4 2.1 Orígenes del Open Source .................................................................. 4 2.2 Definición de Open Source .................................................................. 6 2.3 Tipos de licenciamiento........................................................................6 2.4 Uso de licencias en el software Open Source.................................... 16 2.5 Objetivos del Open Source ................................................................ 16 2.6 Motivaciones para el uso de Open Source ........................................ 17 2.7 Casos de éxito de software Open Source.......................................... 19 2.7.1 APACHE HTTP SERVER ........................................................... 19 2.7.2 Mozilla FireFox............................................................................ 22 2.7.3 OPENOFFICE............................................................................. 24 2.7.4 MySQL........................................................................................ 25 2.7.5 PHP ............................................................................................ 26 2.7.6 GIMP........................................................................................... 28 2.7.7 MONO......................................................................................... 30 2.8 El uso de Open Source en México..................................................... 32 2.8.1 Distrito Federal............................................................................ 33 2.8.2 Nuevo León................................................................................. 33 2.8.3 Morelos ....................................................................................... 33 2.8.4 Jalisco......................................................................................... 34 2.8.5 Yucatán....................................................................................... 35 2.8.6 Secretaría de Educación Pública de Baja California Sur ............ 35 2.8.7 Presidencia de la Republica........................................................ 35 2.8.8 Universidad Nacional Autónoma de México (UNAM).................. 37 2.8.9 Jarro Negro................................................................................. 38 2.8.10 Canacintra-Amesol ..................................................................... 38 2.8.11 La Cámara Nacional de la Industria Electrónica, de Telecomunicaciones e Informática (CANIETI) .......................................... 38 2.8.12 Instituto Nacional de Estadística, Geografía e Informática (INEGI) 39 2.8.13 NIC México ................................................................................. 39 2.9 Aplicaciones del Open Source en las instituciones educativas.......... 42 2.9.1 Beneficios en instituciones educativas........................................ 44 2.9.2 Beneficios educativos: ................................................................ 44 2.10 Casos de éxito de Open Source en instituciones educativas............ 46 2.10.1 Instituto Tecnológico de Massachusetts (MIT)............................ 46 2.10.2 Universidad del estado de UTAH................................................ 48 viii 2.10.3 Universidad del estado de Oregon.............................................. 49 2.10.4 Universidad Charles Sturt ........................................................... 50 2.10.5 Universidad de Guadalajara........................................................ 50 2.10.6 Carnegie Mellon.......................................................................... 51 Capítulo III.- Estudio del costo total de propiedad (TCO) ................................. 53 3.1 Importancia del TCO en las tecnologías de información.................... 53 3.2 Importancia del TCO en las instituciones educativas......................... 54 3.3 Metodología utilizada para el TCO..................................................... 55 Capítulo IV.- Metodología de investigación ...................................................... 63 4.1 Tipo de Estudio .................................................................................. 63 4.2 Población ........................................................................................... 63 4.3 Muestra .............................................................................................. 63 4.4 Modelo Particular ............................................................................... 64 4.4.1 Explicación del Modelo................................................................... 65 4.4.2 Variables ........................................................................................ 65 Capítulo V.- Análisis de resultados................................................................... 67 5.1 Análisis de las preguntas dirigidas a los Directores Académicos....... 67 5.1.1 Conocimiento de Open Source................................................... 67 5.1.2 Políticas de uso de Open Source................................................ 68 5.1.3 Uso de Open Source en clase .................................................... 68 5.1.4 Capacitación en TI ...................................................................... 69 5.1.5 Áreas de Oportunidad................................................................. 69 5.1.6 Se cuenta con el software necesario .......................................... 70 5.1.7 Causas de la falta de Software ................................................... 71 5.1.8 Principales problemas en la administración de proyectos .......... 71 5.1.9 No se realizan estudios sobre los recursos que se van a utilizar 72 5.1.10 No se asegura la disponibilidad del software.............................. 72 5.1.11 No se impulsa la capacitación a los profesores .......................... 73 5.1.12 No se establecen estándares ..................................................... 73 5.2 Análisis de las preguntas dirigidas a los Directores Operativos......... 75 5.2.1 Open Source ofrece seguridad ................................................... 75 5.2.2 Políticas de uso de Open Source................................................ 75 5.2.3 Conocimientos de Open Source ................................................. 76 5.2.4 Interés en Open Source .............................................................. 77 5.2.5 Capacitación en Tecnologías de Información ............................. 77 5.2.6 Implementación de Open Source................................................ 78 5.2.7 Tipo de software Open Source Implementado............................ 78 5.2.8 Soporte técnico en Open Source................................................ 79 5.2.9 Capacitación en Open Source .................................................... 79 5.2.10 Ventajas/Beneficios obtenidos del Open Source ........................ 80 5.2.11 Implementación de Open Source a futuro .................................. 80 5.2.12 Áreas de oportunidad.................................................................. 81 5.2.13 Se proporciona el software necesario......................................... 81 5.3 Análisis de las preguntas dirigidas a los Profesores .......................... 83 5.3.1 Capacitación en Tecnologías de información ............................. 83 5.3.2 Conocimiento de Open Source................................................... 83 5.3.3 Políticas de Open Source ........................................................... 84 5.3.4 Interés en Open Source .............................................................. 84 5.3.5 Se fomenta el uso de Open Source ............................................ 85 5.3.6 Debería impartirse alguna materia utilizando Open Source........ 85 ix 5.3.7 Uso de Open Source dentro de materias.................................... 86 5.3.8 Open Source facilita la enseñanza ............................................. 86 5.3.9 Se tiene el software necesario .................................................... 87 5.3.10 Por que no se tiene el software necesario .................................. 87 5.3.11 Búsqueda de alternativas ...........................................................88 5.3.12 Áreas de Oportunidad................................................................. 88 5.4 Análisis de las preguntas dirigidas a los Alumnos ............................. 89 5.4.1 Conocimientos sobre Open Source ............................................ 89 5.4.2 Políticas de uso de Open Source................................................ 89 5.4.3 Open Source ofrece seguridad ................................................... 90 5.4.4 Deberían impartirse materias utilizando Open Source................ 90 5.4.5 Uso de Open Source en alguna materia..................................... 91 5.4.6 Que uso se le dio al Open Source dentro de la materia ............. 91 5.4.7 Aprendizaje obtenido con el uso de Open Source ...................... 92 5.4.8 Software aprendido en la institución educativa ........................... 92 5.4.9 Se tiene el software necesario .................................................... 93 5.4.10 Por que no se proporciona el software ....................................... 93 5.4.11 Áreas de oportunidad.................................................................. 94 Capítulo VI.- Resultados obtenidos y trabajos futuros...................................... 95 6.1 Resultados obtenidos......................................................................... 95 6.2 Trabajos futuros ............................................................................... 101 Bibliografía ..................................................................................................... 102 Anexo 1 .......................................................................................................... 105 Cuestionario................................................................................................ 105 x Índice de Figuras Figura 1 ÑU [Fuente: (GNU ,2006)].................................................................... 4 Figura 2 Software Utilizado en Servidores [Fuente: (Netcraft, 2006)] .............. 21 Figura 3 Comparación de mercado de servidores [Fuente: (Netcraft, 2006)]... 21 Figura 4 Porcentaje de Servidores Web en México [Fuente: (Security, 2006)] 22 Figura 5 Histórico de Servidores Web en México [Fuente: (Security, 2006)] ... 22 Figura 6 Uso de Bases de Datos [Fuente: (Relational, 2004)] ......................... 26 Figura 7 Uso de PHP [Fuente: (Usage, 2006)]................................................. 27 Figura 8 Costos y beneficios del software Open Source [ Fuente: (Moyle, 2003)] .................................................................................................................. 43 Figura 9 Modelo particular................................................................................ 64 Figura 10 Conocimiento de Open Source Dir. Académico ............................... 67 Figura 11 Políticas de Open Source Dir. Académico ....................................... 68 Figura 12 Uso de Open Source en clase Dir. Académico ................................ 68 Figura 13 Capacitación de TI Dir. Académico .................................................. 69 Figura 14 Áreas de oportunidad Dir. Académico.............................................. 70 Figura 15 Se tiene el Sotfware necesario Dir. Académico ............................... 70 Figura 16 Se tiene el Sotfware necesario Dir. Académico ............................... 71 Figura 17 No se realizan estudios para implementación.................................. 71 Figura 18 No se realizan estudios de recursos a utilizar .................................. 72 Figura 19 No se asegura la disponibilidad del Software................................... 72 Figura 20 No se impulsa a los profesores a capacitarse.................................. 73 Figura 21 No se establecen estándares y métricas.......................................... 74 Figura 22 Open Source ofrece seguridad Dir. Operativo ................................. 75 Figura 23 Políticas de uso de Open Source Dir. Operativo.............................. 76 Figura 24 Conocimientos de Open Source Dir. Operativo ............................... 76 Figura 25 Interes en Open Source Dir. Operativo ............................................ 77 Figura 26 Capacitación en TI Dir. Operativo………………………………………77 Figura 27 Implementación de Open Source Dir. Operativo.............................. 78 Figura 28 Tipo de Software implementado Dir. Operativo................................ 78 Figura 29 Soporte en Open Source ……………………………………………..79 Figura 30 Capacitación en Open Source Dir. Operativo…………………………79 Figura 31 Ventajas/Desventajas Open Source Dir. Operativo ………………..80 Figura 32 Implementación de Open Source a futuro …………………………..80 Figura 33 Áreas de Oportunidad Dir. Operativo ............................................... 81 Figura 34 Por que no se proporciona el Software ............................................ 81 Figura 35 Convenios evitan otro software…………………………………………82 Figura 36 Capacitación en TI Profesores ......................................................... 83 Figura 37 Conocimiento de Open Source Profesores ...................................... 83 Figura 38 Políticas de Open Source Profesores .............................................. 84 Figura 39 Interes en Open Source Profesores................................................. 84 Figura 40 Fomenta el uso de Open Source Profesores ................................... 85 Figura 41 Debería impartirse materias utilizando Open Source....................... 85 Figura 42 Uso de Open Source en Materias .................................................... 86 Figura 43 Open Source facilita la enseñanza................................................... 86 Figura 44 Se tiene el Software necesario......................................................... 87 Figura 45 Por que no se proporciona el Software ............................................ 87 Figura 46 Búsqueda de alternativas................................................................. 88 Figura 47 Áreas de Oportunidad Profesores.................................................... 88 xi Figura 48 Conocimiento de Open Source Alumnos ......................................... 89 Figura 49 Políticas de uso de Open Source Alumnos ...................................... 89 Figura 50 Open Source ofrece seguridad Alumnos.......................................... 90 Figura 51 Debería impartirse materia Open Source......................................... 90 Figura 52 Uso de Open Source en alguna materia Alumnos ........................... 91 Figura 53 Qué uso se le dio al Open Source ................................................... 91 Figura 54 Aprendizaje con Open Source Alumnos........................................... 92 Figura 55 Software aprendido en la institución................................................. 92 Figura 56 Se tiene el software necesario Alumnos .......................................... 93 Figura 57 Por que no se proporciona el Software Alumnos ............................. 93 Figura 58 Áreas de Oportunidad Alumnos ....................................................... 94 Índice de Tablas Tabla 1 Uso de licencias Open Source Fuente: (Freshmeat, 2006)................. 16 Tabla 2 Comparación de mercado de Servidores Web en México [Fuente: (Security, 2006)......................................................................................... 22 Tabla 3 Estadísticas de uso de Navegador [Fuente: (Browser, 2006)] ............ 24 Tabla 4 Estadísticas de uso de Sistemas Operativos [Fuente: (Browser, 2006)] .................................................................................................................. 28 Tabla 5 Historial de Dominios bajo la terminación .COM.MX........................... 40 Tabla 6 Historial de Dominios bajo la terminación .GOB.MX ........................... 40 Tabla 7 Historial de Dominiosbajo la terminación .EDU.MX............................ 41 Tabla 8 Historial de Dominios bajo la terminación .ORG.MX ........................... 41 Tabla 9 Costos y Requerimientos de Software ................................................ 56 Tabla 10 Costos de Instalación de Servidor Microsoft ..................................... 57 Tabla 11 Costo de instalación de Linux............................................................ 57 Tabla 12 Costo de instalación de Mac ............................................................. 57 Tabla 13 Costo por soporte técnico Microsoft .................................................. 58 Tabla 14 Costo por soporte técnico Linux ........................................................ 58 Tabla 15 Costo por soporte técnico Mac.......................................................... 58 Tabla 16 Costo cursos de capacitación Microsoft ............................................ 59 Tabla 17 Costo cursos de capacitación Linux .................................................. 59 Tabla 18 Costo cursos de talleres Linux .......................................................... 59 Tabla 19 Costo cursos de capacitación Mac.................................................... 60 Tabla 20 Costo de Software Microsoft ............................................................. 60 Tabla 21 Costo de Software Open Source....................................................... 61 Tabla 22 Costo de Software Mac ..................................................................... 62 Tabla 23 variables para implementación de Open Source............................... 66 Tabla 24 Tabla de equivalencias de software propietario y Open Source........ 98 1 Capítulo I.- Introducción 1.1 Introducción general Con el continuo avance de la tecnología, el nuevo software cada vez más demandante por recursos de Hardware, y los elevados costos de comprar licencias constantemente para mantenerse actualizado, esto lleva a crear problemas para satisfacer las necesidades educativas en la mayoría de las instituciones educativas. La finalidad de una institución educativa, es la de proveer educación de calidad a sus alumnos, valiéndose de herramientas como la tecnología para ofrecer una valor agregado tanto en su parte operativa como en su modelo educativo, sin embargo el estar al día en cuanto a novedades de software se refiere, se requiere de una gran inversión constantemente para lo cual muchas de las instituciones educativas no pueden costear y finalmente llegar a caer en: no tener el software, tener poco software actual o incluso solo tener software obsoleto. El poder realizar una apropiada distribución del presupuesto destinado a tecnologías de información no es fácil ya que se deben considerar áreas como: el software para la parte operativa (servidores), software educativo, software administrativo, entre otros, y no es una tarea fácil ya que además de la compra del software se tiene que realizar otro gasto en la capacitación al personal técnico y de docencia y poder brindar un buen servicio. El éxito o fracaso de la aplicación seleccionada para el uso operativo o educativo, dependerá en gran medida de que se hayan utilizado herramientas adecuadas en la selección de la aplicación como el costo total de propiedad, que se tenga al personal adecuado, se sigan mecanismos de capacitación del personal involucrado, y poder evitar la resistencia al cambio por falta de tomar en consideración al personal que se encontrara directamente en uso de dicha aplicación. El uso de tecnología Open Source puede ser una alternativa viable para las instituciones educativas y llenar esa falta de software educativo, tener una ventaja competitiva o simplemente enseñar a sus estudiantes que existe otra opción en el mercado. Incluso grandes empresas de desarrollo de aplicaciones como: Microsoft, Novell, Sun, Oracle, IBM, han puesto interés en esta nueva tecnología. La tecnología Open Source ofrece la libertad de poder utilizar el software como mejor se adapte a nuestras necesidades, ya que en su modelo de licenciamiento se establece que se debe poder ver y modificar el código fuente. Esta libertad es importante para un rápido aprendizaje, ya que se puede observar el código de alguien más y a partir de ahí realizar mejoras, o generar nuevas ideas y de este modo las instituciones educativas participan realmente en el fomento del conocimiento, sin limites de “Licenciamiento”. 2 1.2 Objetivo Proporcionar una serie de indicadores a considerar para la implementación de tecnologías Open Source en las instituciones educativas de nivel licenciatura como una herramienta de apoyo a su modelo educativo y a su infraestructura tecnológica. 1.3 Limitación y delimitación del Proyecto Para este estudio se tomaron en consideración instituciones educativas de nivel licenciatura de Monterrey y área metropolitana, en las cuales se aplicaron encuestas para detectar los indicadores para la implementación. 1.4 Metodología La investigación será de tipo exploratoria según Hernández (2003) nos dice que los estudios exploratorios se efectúan, cuando el objetivo es examinar un tema o problema de investigación poco estudiado, del cual se tienen muchas dudas o no se ha abordado antes. La población la conformarán instituciones educativas públicas de nivel licenciatura. Se aplicarán entrevistas y cuestionarios para recabar la información necesaria. Se realizará una muestra no probabilística de directivos, profesores y estudiantes de las distintas instituciones educativas de nivel licenciatura del área de Monterrey. Se entiende por muestra no probabilística según Hernández (2003) nos dice que la elección de los elementos no depende de la probabilidad, sino de causas relacionadas con las características de la investigación. 1.5 Estructura de la Tesis A continuación se muestran las etapas seguidas para la elaboración de este trabajo y llegar al objetivo planteado. Capítulo 1: Introducción : Se da una introducción al tema, la problemática a tratar, se definen el objetivo y la metodología a seguir, así como las limitaciones del presente trabajo. Capítulo 2: Marco teórico : En este capítulo se presenta la definición y orígenes del Open Source, se da una explicación de los tipos de licenciamiento más comunes dentro del Open Source. Se exponen algunos de los casos de éxito de software Open Source que se han destacado por su utilidad y gran aceptación. 3 Se habla sobre algunos impulsores del uso de Open Source en México como instituciones gubernamentales, educativas, etc. Se comenta sobre casos de éxito de instituciones educativas que han implementado alguna tecnología Open Source y con ello han conseguido grandes ventajas competitivas y apoyo en su educación. Capítulo 3: Estudio del costo total de propiedad (T CO): Aquí se presentan resultados de un análisis del costo total de propiedad (TCO), un análisis de las necesidades en las instituciones educativas, convenios utilizados en las instituciones, las políticas de uso de Open Source dentro de las instituciones, así como la aplicación de las encuestas para obtener los indicadores de implementación. Capítulo 4: Metodología de investigación : En esta sección se presenta la metodología ha utilizar, las variables que se analizaran, así como la muestra que se utilizo para realizar este estudio. Capítulo 5: Análisis de resultados : en esta sección se muestran los resultados obtenidos después de analizar los datos recolectados por medio de las encuestas. Capítulo 5: Conclusiones y trabajos futuros: En esta parte final se presenta las conclusiones obtenidas y los posibles trabajos que pretendo realizar a futuro. 1.6 Producto Final y contribución esperada Como resultado final y contribución de este trabajo de investigación se espera saber cuáles son los indicadores para una implementación de tecnología OpenSource dentro de una institución educativa y poder apoyar tanto en la parte de la operación como en el aula de clase en las instituciones educativas de nivel licenciatura del área de Monterrey. Se espera que el identificar estos indicadores pueda ayudar a las instituciones educativas a tener un mejor servicio y poder ofrecer la demanda de software a sus alumnos y profesores y ofrecer una alternativa de calidad para el desarrollo de su trabajo. 4 Capítulo II.- Marco teórico 2.1 Orígenes del Open Source El Open Source tiene sus orígenes por el año de 1984 donde Richard Stallman, trabajando en el laboratorio de inteligencia artificial del MTI, desarrollaba software y en donde todos ellos compartían software, cuando algún otro laboratorio o universidad deseaba utilizar o instalar un programa ellos se los daban, pero las cosas cambiaron drásticamente cuando se le pidió que firmara un acuerdo de no divulgación (non-disclosure agreement) con la llegada de nuevos sistemas operativos, incluso tenia que firmar un acuerdo de confidencialidad para obtener una copia ejecutable, Stallman sintió que esto estaba incorrecto y que el acceso al software no debería ser privado. Todo ello implicaba que antes de poder utilizar una computadora tenías que prometer no ayudar a tu vecino. Quedaban así prohibidas las comunidades cooperativas. Los titulares de software propietario establecieron la siguiente norma: “Si compartes el software con tu vecino, te conviertes en un pirata. Si quieres hacer algún cambio, tendrás que rogárnoslo”. Stallman dice que -lo más fácil hubiera sido subirse al tren del software propietario, firmar acuerdos de confidencialidad y prometer no ayudar a mis compañeros “hackers”. Es muy probable que ahora se dedicara a desarrollar software publicado con cláusulas de confidencialidad, presionando así a otros para traicionar también a sus compañeros. Stallman dice que pudo haber ganado mucho dinero de esta forma, y quizás se hubiera divertido escribiendo código. Pero sabría que, al final de su carrera, echaría la vista atrás y sólo habría contribuido a levantar muros para dividir a la gente, habría pasado toda su vida convirtiendo este mundo en un lugar mucho peor. Por estas razones en 1986 Stallman publica el manifiesto GNU, fue ahí donde el empezó a desarrollar su propia versión de Unix, el cual nombro GNU (GNU no es Unix), y también quiere decir ÑU en ingles (de ahí proviene su logotipo figura 1). Figura 1 ÑU [Fuente: (GNU ,2006)] En aquel momento había personas interesadas en utilizar GNU Emacs (es un editor de texto altamente extensible y configurable creado por Richard Stallman, distribuido bajo la licencia libre GPL), lo que planteó el problema de la distribución software. Por supuesto, el software se colocó en un servidor anónimo ftp de una computadora del MIT (Esta computadora, prep.ai.mit.edu, se convirtió así en el principal sitio ftp de distribución de GNU; años mas tarde 5 al ser desmantelada la computadora, Stallman transfirió el nombre a un nuevo servidor ftp). Pero en aquel entonces, muchos no tenían acceso a Internet y no podían descargar una copia vía FTP. Stallman pudo haberles dicho: “Busca un amigo en la red y que te haga una copia”. Pero como en esos momentos no tenía trabajo y andaba buscando la manera de ganar dinero con el software libre, anunció que enviaría copias a cualquiera interesado a cambio de ciento cincuenta dólares. Así comenzó su empresa de distribución de software libre, precursora de las empresas que hoy distribuyen sistemas Linux basados en GNU. Poco después Stallman creó la organización no lucrativa Fundación para el Software Libre (Free Software Foundation, FSF). Para coordinar el esfuerzo, esta organización está dedicada a eliminar las restricciones de copiado, redistribución y modificación de los programas de computadora. Mientras que muchas organizaciones distribuyen cualquier tipo de software libre que esté disponible, la Fundación para el Software Libre se concentra en desarrollar nuevo software libre, y en hacer de este software un sistema coherente. Stallman también creó la Licencia Pública General GNU, conocida generalmente como la “GPL”. Los empleados de la Free Software Foundation han escrito y se han encargado del mantenimiento de una serie de paquetes de software de GNU. Dos ejemplos notables son la librería C y la shell. Todos los programas ejecutados en un sistema GNU/Linux utilizan la librería C de GNU para comunicarse con Linux. Fue desarrollada por un miembro de la plantilla de la Free Software Foundation, Roland McGrath. La shell utilizada en la mayoría de los sistemas GNU/Linux se llama BASH —acrónimo de Bourne Again Shell—, desarrollada por otro empleado de la FSF, Brian Fox. Fox comenta que con el nombre de “Bourne again Shell” se pretendía hacer burla de la “Bourne Shell”, la shell más común en Unix. En 1991 Linus Benedict Torvalds un joven finlandés desarrolló un Kernel (Núcleo) del sistema operativo GNU/Linux, o simplemente llamado LINUX, que también es compatible con Unix y este kernel se liberó bajo los términos de la licencia GPL (Licencia Publica General). Con estas libertades que añade de uso a Linux, totalmente opuestas a las del software no libre, permitiendo su copia, predistribución, modificación, y uso ilimitado, este kernel capaz de ejecutar BASH (Bourne Again Shell) y GCC (GNU Compiler collection). Ahora Torvalds trabaja en Silicon Valley (EE.UU.). Solo el 2% de Linux fue creado por él en los 90, pero en su persona sigue descansando la paternidad de este revolucionario Sistema Operativo. El software Open Source se encuentra libremente disponible (sin embargo no siempre gratuitamente) y percibido como una alternativa barata a los usos comerciales, el acceso al código fuente permite que las compañías adapten el software a sus necesidades específicas y a acelerar el desarrollo del software por nuevas ideas, código parcial, o módulos (Kalina, Czyzycki, 2005). 6 2.2 Definición de Open Source En años recientes se ha visto un incremento en el interés por el movimiento Open Source como un nuevo paradigma para el desarrollo de software. Open Source se refiere a compartir el código fuente, estándares abiertos y de colaboración, a través de desarrolladores de software y de usuarios alrededor del mundo, para construir software, identificar y corregir errores. A diferencia del tradicional paradigma del desarrollo de software de código cerrado, los usuarios tienen acceso libre al código fuente, donde ellos pueden modificarlo para corregir errores de software, transportar el software a un nuevo hardware o plataformas de software, resolver problemas adicionales o simplificar su uso (Raghunathan, Prasad, Mishra, Chang, 2005). Cuando hablamos de Open Source, es preferible evitar expresiones como “regalar”, “gratis”, “Free”, porque entonces caeremos en el error de interpretarlo como una mera cuestión de precio y no de libertad. El “Open Source” es una cuestión de libertad, no de precio. Para comprender este concepto, debemos pensar en la acepción de libre como en “libertad de expresión” y no como en “barra libre, de cerveza”. El Open Source no significa que “no pueda ser comercializado”. El software Open Source se encuentra libremente disponible (sin embargo no siempre gratuitamente) y percibido como una alternativa barata a los usos comerciales, el acceso al código fuente permite que las compañías adapten el software a sus necesidades específicas y a acelerar el desarrollo del software por nuevas ideas, código parcial, o módulos (Kalina, Czyzycki, 2005). Vemuri y Bertone (2004) describen el movimiento Open Source como una fuente alternativa de la innovación y de la difusión del conocimiento. El software Open Source es un software libre de costo y cuyo código fuente está públicamente disponible, así los programadores pueden modificarlo, extenderlo,y compilarlo. El movimiento Open Source ha creado una gran variedad de software de alta calidad que es muy útil, confiable e ineludible en mundo de la computación, prominentes ejemplos de miles de proyectos Open Source incluyendo Apache, que se ejecuta en la mayoría de los Web Servers en Internet y GNU Linux, una popular alternativa para el sistema operativo propietario Unix (Gallaway; Kinnear, 2004). 2.3 Tipos de licenciamiento Actualmente las licencias o derechos de autor que se encuentran en la mayoría del software comercial están diseñadas para quitar la libertad a cualquier usuario o desarrollador de poder modificar dicho software y poderlo adaptar a sus necesidades o compartirlo con otras personas, y si alguna persona o 7 empresa intentara por algún método acceder al código fuente del software para poder modificarlo, estaría infringiendo la ley y para cuidar estas licencias o derechos de autor existen organismos tanto nacionales como internacionales. En el ámbito internacional se encuentra la Organización Mundial de la Propiedad Intelectual (OMPI, o por su nombre en ingles World Intellectual Property Organisation WIPO) es un organismo especializado del sistema de organizaciones de las Naciones Unidas. Su objetivo es desarrollar un sistema de propiedad intelectual (P.I.) internacional, que sea equilibrado y accesible y recompense la creatividad, estimule la innovación y contribuya al desarrollo económico, salvaguardando a la vez el interés público. Se estableció en 1967 en virtud el Convenio de la OMPI, con el mandato de los Estados miembros de fomentar la protección de la propiedad intelectual en todo el mundo mediante la cooperación de los Estados y la colaboración con otras organizaciones internacionales. Su Sede se encuentra en Ginebra (Suiza). La Organización Mundial de la Propiedad Intelectual (OMPI) define la propiedad intelectual de la siguiente forma: “La propiedad intelectual tiene que ver con las creaciones de la mente: las invenciones, las obras literarias y artísticas, los símbolos, los nombres, las imágenes y los dibujos y modelos utilizados en el comercio. La propiedad intelectual se divide en dos categorías: la propiedad industrial, que incluye las invenciones, patentes, marcas, dibujos y modelos industriales e indicaciones geográficas de origen; y el derecho de autor, que abarca las obras literarias y artísticas, tales como las novelas, los poemas y las obras de teatro, las películas, las obras musicales, las obras de arte, tales como los dibujos, pinturas, fotografías y esculturas, y los diseños arquitectónicos. Los derechos relacionados con el derecho de autor son los derechos de los artistas intérpretes o ejecutantes sobre sus interpretaciones o ejecuciones, los derechos de los productores de fonogramas sobre sus grabaciones y los derechos de los organismos de radiodifusión sobre sus programas de radio y de televisión.” Los creadores originales de obras protegidas por el derecho de autor y sus herederos gozan de ciertos derechos básicos. Determinan el derecho exclusivo de utilizar o autorizar a terceros a que utilicen la obra en condiciones convenidas de común acuerdo. El creador de una obra puede prohibir o autorizar: • su reproducción bajo distintas formas, tales como la publicación impresa y la grabación sonora; • su interpretación o ejecución pública, por ejemplo, en una obra de teatro o musical; • su grabación, por ejemplo, en discos compactos, casetes o cintas de audio o video; • su transmisión, por radio, cable o satélite; 8 • su traducción a otros idiomas, o su adaptación, como en el caso de una novela adaptada para un guión. En cuanto a la informática, la OMPI establece que los programas informáticos deberían estar protegidos por el derecho de autor, mientras que los aparatos que usaran programas informáticos o inventos relacionados con este tipo de programas deberían estar protegidos por patente. Se puede obtener la información completa del texto, los artículos y las leyes que contempla la OMPI en:http://www.wipo.int/copyright/es/faq/faqs.htm#P70_10617 En México existe la Ley Federal del derecho de autor que se encarga de regular y proteger el software, y en su capitulo IV habla sobre los programas de computación y las bases de datos en donde se contemplan los siguientes artículos: Articulo 105. El usuario legítimo de un programa de computación podrá realizar el número de copias que le autorice la licencia concedida por el titular de los derechos de autor, o una sola copia de dicho programa siempre y cuando: I. Sea indispensable para la utilización del programa, o II. Sea destinada exclusivamente como resguardo para sustituir la copia legítimamente adquirida, cuando ésta no pueda utilizarse por daño o pérdida. La copia de respaldo deberá ser destruida cuando cese el derecho del usuario para utilizar el programa de computación. Articulo 106. El derecho patrimonial sobre un programa de computación comprende la facultad de autorizar o prohibir: I. La reproducción permanente o provisional del programa en todo o en parte, por cualquier medio y forma; II. La traducción, la adaptación, el arreglo o cualquier otra modificación de un programa y la reproducción del programa resultante; III. Cualquier forma de distribución del programa o de una copia del mismo, incluido el alquiler, y IV. La de compilación, los procesos para revertir la ingeniería de un programa de computación y el desensamblaje. La Ley completa puede leerse en la siguiente dirección: http://www.diputados.gob.mx/LeyesBiblio/pdf/122.pdf Licencias de Código cerrado Este tipo de licencias se encuentran el software comercial, comúnmente también llamado: software no libre, software propietario, software privativo; hace referencia a cualquier tipo de programa de computadora en el cual los usuarios tienen limitaciones al uso de este software, modificarlo o distribuirlo, en el cual el código fuente no se encuentra disponible para ser modificado o estudiado y para realizar cualquiera de estas acciones se requiere de autorización. 9 El software convencional de código cerrado (Microsoft), basa su licenciamiento en el uso de copyright para protección del software de computadora. De esta manera se impide que se pueda hacer cualquier modificación al código fuente (Madison, 2005). La licencia convencional del software propietario consiste en un documento o un expediente electrónico que acompaña a cada copia del programa, en forma de objeto solamente, dando permiso único para cada usuario de ese programa. La licencia especifica el alcance de los derechos legales que el usuario puede hacer de ese código. Lo más importante entre las especificaciones de las aplicaciones permitidas nos dice que el concesionario no puede modificar el programa de ninguna manera o aplicarle ingeniería inversa al código que se ha proporcionado, es decir, para realizar cualquiera de un número de técnicas que se pudieran utilizar para invertir el proceso de la traducción y de este modo obtener una copia del código fuente del programa (Madison, 2005). • Licencias estilo Copyright o Derecho de Autor: éstas son las clásicas licencias como su nombre lo indica de “Derecho de Autor” o Copyright, también llamadas de propiedad intelectual en otros países donde se busca la protección de una obra original, estas son un conjunto de normas y principios que se encargan de regular los derechos morales y patrimoniales que la ley concede a los autores o creadores, por el solo hecho de la creación de una obra literaria, artística o científica, tanto publicada o que aun no se haya publicado. Esta licencia protege a que solo el autor puede modificar, copiar, distribuir u otorgar el permiso para realizar estas mismas actividades. Licencias de código abierto u Open Source: El modelo de licenciamiento de software Open Source es caracterizado por una filosofía defranqueza y de compartir estructuras de un código fuente y que el código siempre este disponible para cualquier uso (Madison, 2005). Las licencias Open Source se diferencian a partir del código fuente del programa, pues éste debe estar siempre disponible para la inspección y la adaptación de los usuarios, los investigadores, y los clientes, es decir, cualquier persona que desee trabajar o utilizar el programa. Cualquier usuario, investigador, programador, o cliente futuro está libre de adaptar y modificar ese código (Madison, 2005). • Licencias estilo GNU GPL (General Public License o licencia pública general): licencia creada por la fundación de software libre (Free Software Foundation FSF) y Richard Stallman en 1989 y que actualmente es la licencia mas utilizada en el mundo Open Source, es una licencia que obliga a los licenciatarios a proporcionar ciertos derechos y libertades en relación al software sobre el que la licencia se aplica. El objetivo de la licencia publica general (GNU GPL) es 10 proporcionar libertad a los usuarios, no en cuestión de precio, sino asegurarnos que se tenga la libertad de compartir libremente copias del software que se ha desarrollado, de que se pueda tener acceso al código fuente o que se pueda obtener de alguna forma si se requiere, GNU GPL no se creo simplemente para ser una licencia popular. De modo que se necesitaba idear unos términos de distribución que impidieran que el software de GNU se convirtiera en software propietario. El método que se empleó se denominó copyleft. Mencionaremos 3 puntos iniciales de los términos y condiciones de la licencia GNU GPL, Esta licencia puede leerse completa en: http://opensource.org/licenses/gpl-license.php “0 Esta Licencia se aplica a cualquier programa u otro tipo de trabajo que contenga una nota colocada por el tenedor del copyright diciendo que puede ser distribuido bajo los términos de esta Licencia Pública General. En adelante, «Programa» se referirá a cualquier programa o trabajo que cumpla esa condición y «trabajo basado en el Programa» se referirá bien al Programa o a cualquier trabajo derivado de él según la ley de copyright. Esto es, un trabajo que contenga el programa o una porción de él, bien en forma literal o con modificaciones y/o traducido en otro lenguaje. Por lo tanto, la traducción está incluida sin limitaciones en el término «modificación». Cada concesionario (licenciatario) será denominado «usted»”. “Cualquier otra actividad que no sea la copia, distribución o modificación no está cubierta por esta Licencia, está fuera de su ámbito. El acto de ejecutar el Programa no está restringido, y los resultados del Programa están cubiertos únicamente si sus contenidos constituyen un trabajo basado en el Programa, independientemente de haberlo producido mediante la ejecución del programa. El que esto se cumpla, depende de lo que haga el programa”. “1 Usted puede copiar y distribuir copias literales del código fuente del Programa, según lo has recibido, en cualquier medio, supuesto que de forma adecuada y bien visible publique en cada copia un anuncio de copyright adecuado y un repudio de garantía, mantenga intactos todos los anuncios que se refieran a esta Licencia y a la ausencia de garantía, y proporcione a cualquier otro receptor del programa una copia de esta Licencia junto con el Programa”. “Puede cobrar un precio por el acto físico de transferir una copia, y puede, según su libre albedrío, ofrecer garantía a cambio de unos honorarios”. “2 Puede modificar su copia o copias del Programa o de cualquier porción de él, formando de esta manera un trabajo basado en el Programa, y copiar y distribuir esa modificación o trabajo bajo los términos del apartado 1”. 11 • Licencias estilo licencia pública general corta de GNU (LGPL o Lesser General Public License) La licencia LGPL es una modificación de la GPL. La licencia pública general corta, reconoce que muchos desarrolladores de software no utilizarán el código fuente que se distribuya bajo la licencia GPL porque todos los derivados tendrán que seguir los dictámenes de esa licencia. La LGPL permite que los programas de software se unan o recurran a programas bajo la LGPL sin correr el riesgo de someter el programa al que se está recurriendo a la licencia GPL. Además ofrece una serie de obligaciones menos generosas. En un principio esta licencia se diseño para que las librerías de sistemas operativos de GNU pudieran utilizarlo con programas que no sean de código abierto. Los redactores del borrador de la licencia original GPL se reconoce que al permitir que los programas comerciales utilicen librerías de software abierto ampliaría su distribución y su cuota de mercado. Esta licencia puede leerse completa en: http://opensource.org/licenses/lgpl-license.php • Licencias estilo Copyleft utiliza la ley de Copyright, pero dándole la vuelta para servir a un propósito opuesto al habitual: en lugar de privatizar el software y que nadie pueda utilizarlo, ayuda a preservarlo como software libre. Copyleft tiene como objetivo que cualquier persona que redistribuye el software, con o sin cambios, debe dar la libertad de copiarlo y modificarlo. Copyleft garantiza que cada usuario tiene “libertad”. La idea fundamental del Copyleft es que se autoriza la ejecución del programa, su copia, modificación y distribución de versiones modificadas, siempre que no se añada ninguna clase de restricción a posteriori. De este modo, las libertades cruciales que definen el “software libre” quedan garantizadas para cualquiera que posea una copia; estas libertades se convierten en derechos inalienables. Para que el Copyleft sea efectivo, las versiones modificadas deberán ser libres también. Esto garantiza que cualquier tarea basada en nuestro trabajo libre se pondrá a disposición de la comunidad si llegara a publicarse. Cuando los programadores que tienen empleo se ofrecen voluntariamente a mejorar el software GNU GPL, sólo el Copyleft impide que sus jefes les digan: “No puedes compartir esos cambios, porque vamos a utilizarlos para crear nuestra versión propietaria del programa”. • Licencias estilo BSD (Berkeley Software Distribution), llamadas así porque se utilizan en gran cantidad de software distribuido junto a los sistemas operativos BSD. El autor, bajo tales licencias, mantiene la protección de copyright para requerir la adecuada atribución de la autoría en trabajos derivados, pero permite la libre redistribución y modificación, incluso si dichos trabajos tienen propietario, en la actualidad esta licencia sigue siendo utilizada por varios proyectos como: FreeBSD, NetBSD, OpenBSD, SunOS, Mac OS X, PostgreSQL. Son muy permisivas, tanto que son fácilmente absorbidas al ser 12 mezcladas con la licencia GNU GPL con quienes son compatibles, pero esta licencia tiene unos puntos débiles ya que no es copyleft y se puede cambiar desarrollar software propietario a partir de un programa de licencia BSD y quedar como software propietario sin poderse distribuir más adelante su código fuente, además en la versión BSD Original se deben de incluir unas INTERMINABLES notas de publicidad que se tienen que hacer en el software desarrollado y mostrar la siguiente leyenda “This product includes software Developer by the Uniersity of California, Berkley and its contributors”. Pero en una nueva versión de licencia BSD Modificada ya no es necesario incluir estas notas de publicidad. Esta licencia puede leerse completa en: http://www.opensource.org/licenses/bsd-license.php. • Licencias estilo MPL (Mozilla Public License) y derivadas. Esta licencia de Open Source y tiene un gran valor porque fue el instrumento que empleó Netscape Communications Corp. para liberar su Netscape Communicator 4.0 y empezar ese proyecto tan importante para el mundo del Open Source: Mozilla. Esta licencia se utiliza en gran cantidad de productos de Open Source deuso cotidiano en todo tipo de sistemas operativos. La MPL es Open Source y promueve eficazmente la colaboración evitando el efecto "viral" de la GPL (si usas código licenciado GPL, tu desarrollo final tiene que estar licenciado GPL). Desde un punto de vista del desarrollador, la GPL presenta un inconveniente en este punto, y lamentablemente mucha gente se cierra ante el uso de dicho código ya que esta licencia deja abierta la posibilidad a que se utilice de forma comercial propietaria si el desarrollador así lo desea. No obstante la MPL no es tan excesivamente permisiva como las licencias tipo BSD, un detalle importante en esta licencia dice que cualquier individuo o compañía que contribuye al código del proyecto debe renunciar a cualquier derecho de patentar el código fuente. Esta licencia puede leerse completa en: http://opensource.org/licenses/mozilla1.1.php • Licencias de Dominio Público (Public domain) está no es una licencia, significa que el contenido no está protegido y no necesita licencia y cualquier persona puede hacer uso de él. Un software de dominio público es aquel donde el autor ha renunciado a sus derechos, significa que el programa no tiene propietario y cualquier persona puede remover el nombre del autor y tratarlo como un trabajo propio, este tipo de característica tiene un problema muy grande ya que cualquier persona puede tomar este software realizar muy pocos o ningún cambio y convertirlo en software privado y al convertirse en privado las personas que reciben el software no tienen la misma libertad que el autor original brindó. • Licencias estilo MIT esta licencia otorga permiso, libre de costo a cualquier persona que obtenga una copia de este software y la documentación asociada, para trabajar con el mismo sin restricciones a los derechos de uso, copia, modificación, publicación, distribución, 13 sublicenciar y/o la venta de copias del software. licencia puede leerse completa en: http://opensource.org/licenses/mit-license.php • Licencias estilo Freeware este tipo de licencia se incluye en cierto software que puede ser distribuido libremente, pero el código fuente de este programa no se incluye para su modificación, también se encuentra prohibida su venta, y se tiene que informar al autor del software. http://www.gnu.org/philosophy/categories.html • Licencias estilo Shareware esta licencia se encuentra en cierto software o programas en el cual normalmente se instala para poder evaluarlo de forma gratuita por algún tiempo, se permite la distribución de copias, pero su uso o características pueden ser o no limitadas por el autor del software. Y para poder hacer uso de este software una vez concluido el tiempo de prueba, es necesario realizar la compra del software. http://www.gnu.org/philosophy/categories.html Existe una realidad latente ya que el software y la ciencia despiertan la codicia en un gran número de gerentes, directivos, universitarios, empresas, desarrolladores independientes, entre otros, que consideran el software como una potencial fuente de ingresos económicos y no como aportaciones al conocimiento humano. Los programadores involucrados en los proyectos de software Open Source llevan conviviendo con esta tendencia desde hace ya casi veinte años. En la actualidad muchas empresas importantes están considerando la posibilidad de permitir que desarrolladores y personas interesadas puedan ver el código fuente de su software un claro ejemplo es la empresa Microsoft que ofrece tres tipos de licencias para compartir su código fuente, esta iniciativa llamada Shared Source (código compartido) para ser usadas ya sea de modo educativo, empresarial o gubernamental, estas licencias cuentan con los siguientes atributos: • Cortas y fácil de entender – Las nuevas licencias son tan cortas como una hoja de tamaño carta y fáciles de entender y de leer. • Efectivas y modernas – Las licencias son diseñadas para ser efectivas y reflejar las mejores prácticas actuales en el licenciamiento de código de software. • Eficientes – Mediante el uso de estas tres simples licencias, Microsoft podrá acelerar su proceso interno de liberación de código fuente. • Ecosistema amigable – Utilizando tres simples licencias y fácil de entender ayuda a simplificar el compartir el código fuente a través de los ecosistemas de Microsoft y evitar la proliferación de licenciamiento excesivo. 14 Las tres licencias que Microsoft esta presentando para compartir su código fuente son: • 1. Microsoft Permissive License ( Ms-PL) La licencia Ms-PL es la menos restrictiva de las licencias de código fuente de Microsoft. Permite ver, modificar y redistribuir el código fuente para propósitos comerciales así como no comerciales. Bajo el licenciamiento Ms-PL se puede cambiar el código fuente y compartirlo con otros, incluso se puede pedir un pago por las modificaciones realizadas si se desea, esta licencia es la más comúnmente usada por desarrolladores de herramientas, aplicaciones y componentes. Esta licencia se encuentra libre de derechos de autor y de concesión de patentes, esto significa que no se debe de realizar algún pago a Microsoft por hacer uso del código fuente, no existe ninguna obligación por publicar los cambios realizados, se puede realizar cualquier tipo de noticia en el código fuente para atribuirse los cambios realizados. • Microsoft Limited Permissive License ( Ms-LPL) esta licencia que es igual que la Ms-PL con la restricción de ser usada solamente en plataforma de Windows. Esta restricción de plataforma es una medida que Microsoft como un proveedor comercial de software ha escogido para tener una interacción con los desarrolladores que utilizan la plataforma de Windows. • 2. Microsoft Community License ( Ms-CL ) esta licencia es la que más se utiliza en proyectos de desarrollo colaborativo, esta licencia Ms-CL igual que la licencia publica Mozilla trabajan en base de “file by file”, esto significa que si se utiliza código Ms-CL en la creación de un archivo todo el archivo se deberá redistribuir bajo los términos de la licencia Ms-CL, pero también si dentro de un proyecto grande se tienen archivos que no contengan código Ms-CL, se tiene la libertad de licenciar estos archivos bajo los términos que mejor convenga. Esta licencia se encuentra libre de derechos de autor y de concesión de patentes, esto significa que no se debe de realizar algún pago a Microsoft por hacer uso del código fuente, se necesitan por publicar los cambios realizados, se puede realizar cualquier tipo de noticia en el código fuente para atribuirse los cambios realizados. • Microsoft Limited Community License ( Ms-CL ) esta licencia que es igual que la Ms-PL con la restricción de ser usada solamente en plataforma de Windows. Esta restricción de plataforma es una medida que Microsoft como un proveedor comercial de software ha escogido para tener una interacción con los desarrolladores que utilizan la plataforma de Windows. • 3. Microsoft Referente License ( Ms-RL ) esta es la más restrictiva de las licencias de código fuente de Microsoft, esta licencia prohíbe cualquier uso de código fuente que no sea el de solo observarlo para propósitos de referencia, el uso más común de esta licencia, es mediante el desarrollo de “librerias” donde la modificación no es un requerimiento 15 para el uso del código fuente, en estos casos es importante la transparencia que el desarrollador necesita para entender mas a fondo el funcionamiento interno de una tecnología en especifico. Al realizar esto los desarrolladores serán mas efectivos en realizar software que hagan uso de Librerías compartidas (Shared library). Esta licencia se encuentra libre de derechos de autor y de concesión de patentes, esto significa que no se debe de realizar algún pago a Microsoft por hacer uso del código fuente. La licencia limita la liberación del código fuente para uso exclusivoen la plataforma Windows. Para mayor información acerca de este tipo de licenciamiento se puede ver en: http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses. mspx#EDC Microsoft dice que el modelo de software Open Source (OSS) es ampliamente aplicado a cuatro conceptos interrelacionados: el modelo de desarrollo OSS, filosofías OSS, regimenes de licencias OSS y modelos de negocio OSS. Primero OSS es un modelo de desarrollo creado alrededor de una idea de comunidad de creación y el compartir código fuente. Microsoft dice que el primordial beneficio del modelo de desarrollo OSS es la colaboración, en donde las ideas del desarrollador original se encuentran disponibles para su modificación y mejoramiento por cualquier miembro de la comunidad, es importante resaltar que la liberación del código fuente no garantiza la creación de una comunidad de desarrolladores alrededor de ese proyecto. Microsoft ha estado aprendiendo de la comunidad de software Open Source observando los beneficios de una colaboración profunda e incrementar la transparencia que guía a una mejor comunicación con los clientes. Microsoft está convencido que el camino más efectivo para una compañía comercial de software es llevar un balance entre invertir en la búsqueda y desarrollo, así como en la liberación de la propiedad intelectual en su forma de código fuente, para ambos propósitos, referencia y colaborativo. Microsoft observa que el incremento de competencia, resultante de la proliferación de software Open Source ha sido muy constructivo para toda la industria. La implicación de software Open Source dentro de múltiples segmentos de mercados han causado que las organizaciones observen que es lo más importante para ellos. El gran ganador ha sido el consumidor de software en donde sus opciones se han visto incrementadas. Esto ha llevado a que la iniciativa de Shared Source (código compartido) sea la manifestación de estos factores dentro de Microsoft. Ofreciendo más de 80 código fuente, utilizado por más de dos millones de desarrolladores, Microsoft espera aplicar lo mejor de Open Source al mismo tiempo que ayuda a los consumidores a evitar muchas de las fallas. No existe un camino correcto para el desarrollo de software. El ecosistemas como un todo se beneficia de una riqueza variada de desarrollo, negocios y modelos de licenciamiento. Para más información acerca de la posición de Microsoft con Open Source se puede encontrar en la siguiente dirección: http://www.microsoft.com/resources/sharedsource/Articles/MicrosoftandOpenSource.m spx 16 2.4 Uso de licencias en el software Open Source A continuación en la tabla 1 se puede observar el tipo de licenciamiento que escogen los desarrolladores de Open Source al momento de seleccionar bajo que licencia será liberado su software. Tabla de uso de licencias de Open Source Licencia Porcentaje GNU General Public License (GPL) 66.48% GNU Lesser General Public License (LGPL) 6.36% BSD License (original) 3.05% BSD License (revised) 2.58% Freeware 2.45% Freely Distributable 2.21% Artistic License 1.62% Other/Proprietary License with Free Trial 1.59% Free for non-commercial use 1.59% MIT/X Consortium License 1.49% Free To Use But Restricted 1.34% Public Domain 1.18% Other/Proprietary License 1.08% Other/Proprietary License with Source 1.00% OSI Approved 0.94% Shareware 0.84% The Apache License 2.0 0.68% Mozilla Public License (MPL) 0.65% Tabla 1 Uso de licencias Open Source Fuente: (Freshmeat, 2006) 2.5 Objetivos del Open Source En el movimiento de Open Source también llamado de código abierto se tiene la idea que los usuarios de computadoras deben tener libertad para cambiar y redistribuir el software que utilizan. El adjetivo “libre” en el software libre u Open Source hace referencia a la libertad: libertad del usuario para ejecutar, modificar y redistribuir software. El software Open Source contribuye al saber humano, al contrario que el software propietario. Por este motivo, las universidades deberían fomentar el uso del software Open Source, para hacer una aportación al progreso del conocimiento humano, del mismo modo que deben animar a científicos y académicos a publicar sus obras (Stallman, 2002). Los objetivos son: 17 De acuerdo con la definición que se encuentra vigente actualmente, el software Open Source se considera “Libre” o “Abierto” si se pueden garantizar los siguientes puntos: - Libertad de ejecutar el programa sea cual sea el propósito (privado, educativo, público, comercial, etc.). - Libertad de estudiar y modificar el programa y adaptarlo a las necesidades (para lo cuál es necesario poder acceder al código fuente). - Libertad de distribuir copias, con lo que se puede ayudar a otros. - Libertad de redistribuir el software, sus cambios y mejoras de forma que se beneficie toda la comunidad. Gacek, y Arief, (2004) crearon la Definición Open Source (Open Source Definition OSD por sus siglas en ingles) como pauta para determinar si una distribución particular del software es Open Source o no lo es. El OSD plantea tres criterios principales: • La capacidad de distribuir el software libremente. • La disponibilidad del código fuente. • El derecho de crear trabajos derivados con la modificación. Beneficios productivos: Lussier (2004) comenta que al utilizar una tecnología Open Source se obtiene un mejor desarrollo en el producto final, utilizando la técnica de revisión de código, que se revisa dicho código antes de agregarse al código final. - Estabilidad.- Miles de personas en el mundo prueban y corrigen los sistemas. - Velocidad.- Miles de personas en el mundo optimizar el software, al tener acceso al código fuente. - Adaptabilidad.- Las compañías tienen la oportunidad de obtener lo que quieren del software y modificarlo, no lo que les venden y no poderlo modificar. - Seguridad.- Los huecos de seguridad que se detectan son reportados y corregidos inmediatamente y distribuidos en Internet. - Costos.- El costo en la inversión de software se reduce considerablemente y las actualizaciones son inmediatas. - Soporte.- Cientos de los mejores programadores y usuarios expertos en el mundo corrigen problemas y dan soporte. 2.6 Motivaciones para el uso de Open Source “Los buenos programadores saben qué escribir. Los grandes saben qué rescribir (y rehusarlo." (Faber, 2002). Hars y Ou (2001) asumen dos tipos de motivación que explican la participación de la gente en los proyectos Open Source: los factores internos (motivación, intrínseca, altruismo e identidad con la comunidad) y los factores externos 18 (recompensa futura, incluyendo la venta de productos, capital humano, la auto promoción, reconocimiento y necesidades personales). En un estudio similar, (Lakhani, 2003) concluye que la motivación intrínseca basada en: disfrutar, la necesidad del usuario, el estímulo intelectual y la mejora de las habilidades de programación, están entre las motivaciones principales. Contra este contexto de ampliar intereses comerciales en la innovación, la creación de conocimiento, la educación, y la difusión, se ha desarrollado una forma alternativa de desarrollo de la innovación y del producto descrito comúnmente como "Open source". Hay varias encarnaciones emergentes de Open Source incluyendo proyectos de estándares abiertos, materiales de curso abiertos (tales como los recientemente anunciados por MIT OpenCourseWare), los proyectos parcialmente abiertos, donde algunas formas de código de colaboración de software se entierran detrás de los sistemas cerrados (Macintosh, Microsoft, etc), e incluso un nuevo proceso de inteligencia, que se recolecta en los espacios públicos llamados "inteligencia Open Source" (Faber, 2002). En muchos sentidos, hablar de Open Source no es acerca de los datos, es acerca de construir conexiones dentrode comunidades expertas que colaboran para crear mejores productos. Los modelos educativos Open Source, proveen un camino único para proveer a los estudiantes proyectos educacionales significativos y motivacionales; además provee a lo estudiantes la facultad de recobrar la naturaleza colaborativa de la creación de conocimiento. Al mismo tiempo, podemos reintroducir estudiantes al concepto de la comunidad de investigación y reintroducirse a los nuevos métodos de innovación, creación del conocimiento, y el solucionar el problema de inventiva (Faber, 2002). Dentro de una materia educativa el método de enseñanza se podría basar alrededor de proyectos específicos que los estudiantes encuentren interesantes, de motivación. Estos proyectos podían integrar experiencias de organizaciones aliadas o en proyectos reales. Los estudiantes escogerían los proyectos en los que desean trabajar y mediante el avance de los estudiantes en los proyectos, ellos aprenderán otros materiales relevantes del curso (Faber, 2002). Becta (2005) Identificó que la principal motivación en las escuelas para introducir OSS era el ahorro potencial en sus costos. También se observaron resultados en las escuelas primarias que indicaron, que la ayuda técnica proporcionada gratuitamente por la (High School) secundaria en su grupo, era un factor importante en su decisión de implementar tecnologías Open Source. Otras razones divulgadas para introducir software OSS en las instituciones educativas, son su transparencia y flexibilidad, y el valor educativo de proveer a los alumnos una experiencia más amplia de sistemas operativos y de software (Becta, 2005). 19 2.7 Casos de éxito de software Open Source 2.7.1 APACHE HTTP SERVER El Proyecto Apache es un esfuerzo de desarrollo de software en colaboración destinado a crear un servidor HTTP (servidor Web) robusto, comparable a los comerciales y con muchas características y que permita disponer gratuitamente de su código fuente. El proyecto está gestionado conjuntamente por un grupo de voluntarios diseminados por todo el mundo, usando Internet para comunicarse, planear y desarrollar el proyecto Apache y la documentación correspondiente. Estos voluntarios son conocidos como el Grupo Apache (Apache Group). Además, cientos de usuarios contribuyen al proyecto con ideas, código y documentación (Apache, 2005). En febrero de 1995, el servidor más popular en la Web era el HTTP DAEMON de dominio público desarrollado por Rob McCool de la National Center for Supercomputing Applications (NCSA), de la Universidad de Illinois en Urbana-Champaign. Sin embargo, el desarrollo de este httpd se detuvo tras la marcha de Rob de la NCSA a mediados de 1994 y muchos Web master desarrollaron entonces sus propias extensiones y corrigieron errores que se daban en la distribución. Un pequeño grupo de estos Web master se contactaron vía e-mail y decidieron unirse y coordinar sus cambios (a modo de parches) (Apache, 2005). Utilizando como base httpd 1.3 de NCSA, el grupo Apache añadió todas las correcciones de errores y la mejoras que consideraron oportunas, realizaron pruebas al resultado en sus propios servidores e hicieron oficialmente público la versión 0.6.2 de Apache en abril de 1995. Por pura coincidencia NCSA empezó de nuevo su propio desarrollo en el mismo período y Brandon Long y Beth Frank del Equipo de Desarrollo de la NCSA se unieron a la lista en marzo como miembros honorarios, de modo que los dos proyectos pudieran compartir ideas y soluciones (Apache, 2005). El proyecto Apache es una "meritocracia", es decir, cuanto más trabajo haya hecho usted, más se le permite hacer. Los fundadores del grupo pusieron las normas originales, pero pueden ser cambiadas por votación de los miembros activos. Hay un grupo de personas que tiene cuentas dentro del servidor (hyperreal.com) y pueden acceder al repositorio CVS. Todo el mundo tiene acceso a las "fotos" del CVS. Los cambios en el código son propuestos en la lista de correo y generalmente votados por los miembros activos. Son necesarios tres +1 (aceptación) y no -1 (rechazo, veto) para llevar a cabo cambios en el código durante el ciclo de una versión. La documentación suele ser la primera en ser aprobada y después los cambios a medida que vayan siendo necesarios. Los conflictos se resuelven por la votación de la mayoría (Apache, 2005). Apache existe para proporcionar una implementación del protocolo HTTP suficientemente robusto y comparable a los que tienen un carácter comercial. Debe permanecer como una plataforma sobre la cual individuos o instituciones puedan construir sistemas fiables, tanto para propósitos experimentales como para propósitos de misión crítica. En Apache tienen la idea de que las herramientas de publicación en línea deberían estar en las manos de todo el mundo y las compañías de software harían dinero proporcionando servicios de valor agregado, tales como módulos especializados o soporte, entre otras cosas (Apache, 2005). Más aún, Apache es un ente orgánico: aquellos que se benefician de él usándolo, a menudo aportan cosas como mejoras, corrección de errores y soporte para otros usuarios en los grupos de noticias. La cantidad de esfuerzo hecho por cualquier individuo particular es a veces pequeño, pero el producto resultante es muy fuerte. Se puede argumentar entonces que la fuerza de Apache le viene del hecho de que es gratuito y que si fuera "no gratuito" sufriría tremendamente, aún si el dinero fuera gastado en un equipo de desarrollo que trabajara día y noche para Apache (Apache, 2005). Apache quiere que su servidor Web se utilice ampliamente; por grandes compañías, pequeñas, en los centros de investigación, escuelas, por cualquier persona individualmente, en intranets, en cualquier parte. Más aún, esto puede significar que compañías que se permiten pagar software comercial sin condenarse por ello, puedan darse un "paseo gratis" utilizando Apache. Seríamos aún más felices si algunas compañías de software comercial abandonaran sus planes de desarrollo de su propio servidor HTTP y utilizaran Apache como base de su desarrollo, mientras mantuvieran las atribuciones que se describen en la “LICENSE” (licencia de Apache) (Apache, 2005). La Licencia actual de Apache es la 2.0 aprobada por al ASF en 2004, las metas de esta licencia son el reducir el número de preguntas frecuentes (FAQ), permitir a la licencia de ser re-usable sin ser modificada por algún otro proyecto (incluyendo proyectos que no son de la ASF), permitir a la licencia ser utilizada como referencia en lugar de ser listada en cada archivo (Apache, 2005). Estas licencias nos ayudan a alcanzar nuestra meta de proporcionar productos de software confiable y duradero mediante el desarrollo de colaboración de software Open Source. En todos los casos, los contribuidores conservan el completo derecho de utilizar sus contribuciones originales para cualquier otro propósito fuera de Apache mientras que proporcionen al ASF (Apache Software Foundation), sus proyectos y el derecho de distribuir y de construir sobre su trabajo dentro de Apache (Apache, 2005). El la figura 2, podemos observar el uso de los diferentes servidores Web, en la figura 3 podemos observar la participación de mercado que tienen los servidores Web, en la tabla 2 observamos el crecimiento de los servidores Web por porcentaje, en la figura 4 observamos como es la participación de mercado de los servidores Web en México, y en la grafica 5 observamos una grafica histórica sobre la participación de mercado de los servidores Web en México. 20 21 Figura 2 Software Utilizado en Servidores [Fuente: (Netcraft, 2006)] Market Share for Top Servers Across All Domains August 1995 - November 2006 Figura 3 Comparación de mercado de servidores [Fuente: (Netcraft, 2006)] Market Share Change (Total servers: 19,342) Server1 February Count February % January
Compartir