LA PROGRAMACIÓN PARA HISPANO HABLANTES

Tamaño: px
Comenzar la demostración a partir de la página:

Download "LA PROGRAMACIÓN PARA HISPANO HABLANTES"

Transcripción

1 ESCUELA SUPERIOR DE INGENIERÍA INFORMÁTICA INGENIERÍA TÉCNICA EN INFORMÁTICA DE SISTEMAS Curso Académico 2009/2010 Proyecto de Fin de Carrera REBECA: SOFTWARE EDUCATIVO DE INTRODUCCIÓN A LA PROGRAMACIÓN PARA HISPANO HABLANTES Autor: Irene Montano Rodríguez Tutor: David Miraut Andrés

2 La mejor manera de que alguien aprenda algo consiste en hacerle creer que está aprendiendo otra cosa Randy Pausch

3 Agradecimientos Vaya en primer lugar mi agradecimiento a todos aquellos que han hecho posible este proyecto, desde los creadores de Alice hasta los profesores del departamento de Gráficos y Realidad Virtual de la Universidad Rey Juan Carlos. Muy especialmente a mi tutor David Miraut por su paciencia y dedicación y sobre todo por haber sabido animarme cuando más lo he necesitado. A todas mis amigas porque llevan conmigo toda la vida y en especial a Marian por su colaboración en la creación de imágenes y a Carmen que me ha dedicado su tiempo y ayuda haciendo que finalmente el proyecto tomara forma. A mis padres por haberme dado apoyo durante mis años de estudiante y por haber confiado siempre en mí. A mi hermana Alicia porque ha prescindido de su ordenador durante meses confiando en que algún día acabaría. A mi hermana Ana porque llena mis días de alegría. Y por supuesto a Sergio Ruiz Pérez, mi compañero durante estos años de Universidad y durante todo el proyecto, por su capacidad de trabajo, por su tesón y porque sin él esto no hubiera sido posible. Muchas Gracias a todos. 3

4 4

5 Resumen En el actual sistema es necesaria una adaptación de la educación a las características de nuestra época, en cuya construcción es deseable participar de forma creativa. El momento presente es propicio para esta necesaria renovación educativa en todas las etapas. La importancia de la educación y del conocimiento en un mundo global es cada vez mayor, las elevadas tasas de paro existentes entre diplomados y licenciados universitarios, junto a la devaluación de una buena parte de las titulaciones que se imparten en las universidades, han llevado a las autoridades políticas y académicas de los países de la Organización para la Cooperación y el Desarrollo Económico (OCDE) a plantearse las razones por las que la enseñanza superior, parece no responder adecuadamente a las nuevas necesidades de la sociedad. Por todo ello se considera necesario reformar las enseñanzas previas a la universitaria y crear nuevos recursos educativos que atraigan a los futuros universitarios hacia una formación que posibilite su incorporación al mundo laboral de forma más eficaz. En la búsqueda de nuevos recursos educativos que den respuesta al contexto anteriormente planteado, encontramos Alice, un proyecto de innovación educativa, liderado por la Universidad Carnegie Mellon, creado con el propósito de ayudar a los estudiantes a conocer los fundamentos de la programación orientada a objetos. Esta herramienta tiene el inconveniente de que durante su desarrollo no se ha contempló la posibilidad de dar soporte a otros idiomas, por lo que su interfaz está exclusivamente en inglés. El proyecto Rebeca surge de la necesidad de acercar Alice a los estudiantes de habla no inglesa, y en particular a los estudiantes de España e Iberoamérica. Vivimos en la era de la tecnología y de la información, esto nos permite compartir casi cualquier tipo de información desde puntos opuestos del planeta en un mismo instante. Por otra parte el código abierto nos permite poder leer, modificar y redistribuir el código existente que este sujeto a esta modalidad bajo 5

6 nuestra elección y criterio. En el caso concreto de Alice, existe la posibilidad de modificar el código ya que este es abierto, la decisión de internacionalizar el código de Alice surge con el objetivo de crear Rebeca, un software adaptable a cualquier idioma para que estudiantes de todo el mundo tengan oportunidad de poder conocer Rebeca en su propia lengua. El proyecto Rebeca se divide en varias etapas: Modificación del código fuente, donde se realiza el proceso de internacionalización y adaptación. En esta etapa también se modifican las imágenes del juego. Creación de ejecutables en distintas plataformas. Y la elaboración de la guía didáctica de Rebeca. En esta guía, al igual que en el conjunto del proyecto, se han cuidado todos los detalles para que aquellos que se animen a conocer Rebeca puedan tener una primera toma de contacto sencilla y agradable. Con todo esto esperamos haber cumplido nuestro objetivo y que Rebeca sea disfrutado en castellano tanto por profesores como estudiantes y de esta manera lograr acercarles más a la informática. 6

7 Índice 1. INTRODUCCIÓN PRESENTACIÓN QUÉ ES ALICE? ORIGEN DE ALICE ORIGEN DE REBECA VENTAJAS DE USAR ALICE Y REBECA OBJETIVOS PROGRAMAS SIMILARES Kodu PROBLEMA OBJETIVOS DESCRIPCIÓN ESPECÍFICA DEL PROBLEMA TAREAS A REALIZAR VIABILIDAD DEL PRODUCTO METODOLOGÍA UTILIZADA Internacionalización Adaptación Juego de caracteres Guía didáctica Errores conocidos MEDIOS HARDWARE Y SOFTWARE UTILIZADOS DESCRIPCIÓN INFORMÁTICA ESTADO DEL ARTE APORTACIONES Importación del proyecto Código fuente NetBeans IDE Importación del código Compilación y Ejecución Internacionalización y adaptación del proyecto (i18n, L10n) Herramienta Método sistemático Búsqueda de cadenas Archivo de recursos Ejemplo i18n-l10n de un archivo java Ejemplo i18n-l10n de un archivo de recursos

8 Problemas de la herramienta Dispersión de los textos El IDE no permite depurar Alice Paquete de imágenes Extensión de la adaptación Elección de la herramienta Realización Ejemplos de concordancia Codificación de los caracteres Problema y solución Extensión del problema Generación de ejecutables y empaquetado Ejecutable.jar multiplataforma Ejecutable.exe Windows Ejecutable Macintosh Guía didáctica Distribución Licencias Errores conocidos CONCLUSIONES RESULTADOS ALCANZADOS BIBLIOGRAFÍA APÉNDICES LICENCIA DE DISTRIBUCIÓN GUÍA DIDÁCTICA REBECA

9 1. INTRODUCCIÓN

10 1. Introducción La introducción a la programación ha sido siempre una tarea difícil para muchos alumnos y profesores, además los retos de la programación orientada a objetos suponen una dificultad añadida a la asimilación y aprendizaje de estos conceptos abstractos. Esto es especialmente preocupante cuando estudios recientes revelan que el número de estudiantes en informática ha disminuido un 60% entre 2000 y 2004 (Higher Education Research Institute, UCLA), y la tendencia en los últimos años en los países industrializados. Por este motivo, hemos decidido poner nuestro grano de arena para contribuir a evitar el desánimo y la frustración que pueden experimentar los estudiantes en su primera aproximación a la informática. Los sistemas Alice y Rebeca suponen una alternativa para hacer la programación orientada a objetos más cercana al público joven: en Alice y en Rebeca los objetos son fácilmente reconocibles ya que están representados mediante muñecos, animales, escenografía, etc. cuyo estado puede cambiar gracias a métodos como mover hacia adelante un metro o girar a la izquierda un cuarto de vuelta es fácilmente entendible por cualquier estudiante. Los profesores saben bien que si un alumno no está motivado para aprender, ni siquiera toda la pedagogía del mundo podrá ayudarle. La mejor técnica que tiene para aprender un alumno es encontrarse estimulado por sí mismo. Aunque podemos generar este sentimiento mediante incentivos, los sistemas Alice y Rebeca ofrecen una forma más directa: basan la programación en la actividad de contar historias. Bajo este paradigma intuitivo y visual los alumnos desarrollan un conjunto de animaciones que cambian de estado. Es difícil de imaginar una manera más simple de transmitir el concepto del estado en que se encuentra un objeto y el uso de la programación para modificarlo. Esta es la meta principal de Alice y de Rebeca: que conceptos abstractos puedan convertirse en conceptos concretos a los ojos de nuevos programadores. Gracias al uso de gráficos 3D, los sistemas Alice y Rebeca se comunican directamente con una generación que ha crecido inmersa en videojuegos y 10

11 1. Introducción películas de animación, proponiendo una alternativa eficiente en la transmisión de conocimiento capaz de rivalizar en motivación y profundidad con la enseñanza tradicional de la programación, que ha tenido escasas variaciones durante los últimos 30 años PRESENTACIÓN A pesar del gran número de puestos de trabajo ofertados, las matriculaciones en las facultades de informática han caído a menos de la mitad de las que había en el año 2000, según un estudio publicado por el Higher Education Research Institute de la universidad de California-Los Ángeles en Los profesores se enfrentan a una complicada tarea al intentar motivar a sus alumnos en el estudio. En el caso concreto de la programación orientada a objetos este problema se acentúa por tratarse de conceptos complejos y abstractos. Los proyectos Alice y Rebeca surgen con la finalidad de paliar la falta de interés y la desmotivación que ha surgido entre los alumnos de las escuelas de informática en los últimos años, también pretende poner su granito de arena para que el número de estudiantes que optan por las carreras de informática no siga descendiendo y conseguir que surja de nuevo un interés por este tipo de ingenierías. Alice y Rebeca hacen que el aprendizaje de la programación orientada a objetos se convierta en algo sencillo e intuitivo. Los objetos en Alice están representados por animaciones (animales, personajes, instrumentos, etc.) que cambian de estado a través de métodos, (mover hacia atrás, aumentar tamaño ). 11

12 1. Introducción 1.2. QUÉ ES ALICE? Alice es un innovador entorno de programación 3D que hace que sea fácil crear una animación para contar una historia, un videojuego interactivo o un video para compartir en Internet. Es una herramienta de enseñanza de libre acceso, está pensada para facilitar una primera toma de contacto de los alumnos a la programación orientada a objetos y permite a los estudiantes adquirir los conceptos fundamentales de programación. En Alice y en Rebeca los objetos 3D (personas, animales, vehículos ) pueblan un mundo virtual y los estudiantes crean programas para animar estos objetos. En la interfaz de Alice y de Rebeca los estudiantes arrastran y colocan elementos gráficos para crear un programa donde las instrucciones se corresponden con las sentencias estándar de lenguajes de programación orientada a objetos como pueden ser java, C++ y C#. Alice y Rebeca les permite ver, de manera inmediata, como se ejecutan sus animaciones programadas, y entender fácilmente la relación entre las sentencias de programación y el comportamiento de los objetos en sus animaciones. Mediante la manipulación de los objetos en su mundo virtual los estudiantes adquieren experiencia en nociones típicas de un curso de introducción a la programación ORIGEN DE ALICE Alice fue desarrollado en la universidad de Carnegie Mellon como parte de un proyecto de realidad virtual, con apoyo de la Fundación Nacional de Ciencia americana, DARPA e Intel entre otros colaboradores. Entre los desarrolladores de Alice cabe destacar al fallecido Randy Pausch que fue el fundador del proyecto; Wanda Dann directora del proyecto, Dennos Cosgrove, investigador científico; Caitlin Kelleher que como parte de su tesis 12

13 1. Introducción doctoral en la universidad Carnegie Mellon dió un enfoque a Alice como herramienta para contar historias. Este nuevo enfoque se diseñó para captar el interés de las chicas estudiantes de instituto por la programación. Se decidió el nombre del proyecto Alice en honor a la obra literaria Alice s adventures in Wonderland del autor Lewis Carroll (Charles Lutwidge Dodgson ) matemático y escritor inglés del siglo XIX ORIGEN DE REBECA Rebeca es el resultado de internacionalizar y adaptar el código de Alice. La idea surge en el departamento de Realidad Virtual de la Universidad Rey Juan Carlos, y fue ofrecido como posible proyecto fin de carrera para los alumnos de ingeniería Informática. Después de buscar en varios departamentos algún proyecto que nos motivara Sergio Ruiz (compañero de proyecto) y yo decidimos tomar parte en el proyecto Rebeca y enfrentarnos a la internacionalización y adaptación del código de Alice. Nuestra mayor motivación fue ser conscientes de la importancia que supone conseguir que Rebeca sea un software fácilmente adaptable a cualquier idioma. Consideramos que Alice es una potente herramienta educativa, puesto que trata de facilitar el aprendizaje a los alumnos, crear una versión adaptable supone eliminar el obstáculo del idioma a todos aquellos interesados en Alice que no tengan el inglés como primera lengua. Nuestro propósito, por tanto, es eliminar la barrera del idioma y conseguir que Rebeca pueda ser utilizado por quién lo desee independientemente de su lengua. 13

14 1. Introducción 1.4 VENTAJAS DE USAR ALICE Y REBECA El enfoque de Alice y de Rebeca aporta soluciones a problemas habituales en el mundo de la enseñanza de la programación: El frágil mecanismo de creación de programas, particularmente la sintaxis: El editor de Alice y de Rebeca elimina la posibilidad de cometer errores frustrantes en las primeras etapas de la creación de programas, ya que los elementos arrastrados al editor son siempre válidos y permite a los estudiantes desarrollar una intuición para la sintaxis. La dificultad para ver resultados cuando se ejecuta el programa: Los depuradores de código son una buena herramienta, pero el enfoque de Alice y Rebeca permite comprobar el estado del programa de una forma mucho más visible. Para un estudiante es más sencillo ver que un objeto se ha movido hacia adelante en vez de hacia atrás, que ver si una variable se ha decrementado en lugar de incrementado. La falta de motivación para programar: En cursos piloto usando Alice y Rebeca se ha demostrado que los estudiantes realizan más ejercicios opcionales y asisten a más clases que con un sistema de aprendizaje tradicional. Curiosamente, grupos minoritarios en informática, como las chicas, muestran mayor interés. La dificultad de comprender la lógica compuesta y aprender técnicas de diseño: Los entornos Alice y Rebeca fomentan la creación de métodos y funciones. La analogía de hacer una película nos permite usar el concepto de storyboard, para crear un guión de texto y refinarlo hasta convertirlo en pseudocódigo. 14

15 1. Introducción 1.5. OBJETIVOS El objetivo de Alice y de Rebeca es que los estudiantes puedan asimilar de una forma simple y transparente los mismos conceptos que proporcionaría un curso de programación, considerando especialmente importantes las siguientes destrezas: Pensamiento y expresión algorítmicos: ser capaz de leer y escribir en un lenguaje formal. Abstracción: aprender cómo transmitir ideas complejas de una forma simple y descomponer el problema lógicamente. Apreciación de elegancia: ser consciente de que, aunque hay muchas formas de resolver un problema, algunas son infinitamente mejores que otras 1.6. PROGRAMAS SIMILARES Existen otros recursos y materiales en el panorama educativo entre los que podemos destacar Scratch y Kodu, ambas aplicaciones sirven para crear juegos a través de la programación, de manera intuitiva y sencilla. Alice y Rebeca al igual que Scratch y Kodu persigue los mismos objetivos de iniciación a la programación. En un primer momento es más fácil jugar con Scratch o con Kodu, pero las limitaciones que tienen se alcanzan rápidamente. Alice y Rebeca suponen un mayor esfuerzo inicial, y es necesario un apoyo o referencia que acompañe al nuevo usuario para alcanzar a conocer todas las posibilidades que nos permite la aplicación. La innovación que introduce Alice y Rebeca es utilizar un lenguaje de programación orientado a objetos directamente heredado de Java, facilitando el paso de Alice y de Rebeca a cualquier otro lenguaje de programación. 15

16 1. Introducción SCRATCH Scratch pertenece al Media Lab del MIT y se creó con la finalidad de hacer la programación accesible a todo tipo de público. El objetivo principal de este software es permitir programar animaciones juntando ladrillos que contienen instrucciones de todo tipo. Con estas instrucciones podemos dar vida a elementos predeterminados creando así nuestros propios minijuegos, que pueden ponerse en el sitio web de Scratch. Scratch ayuda a los estudiantes a adquirir, progresivamente, estrategias de pensamiento algorítmico que se podrán aplicar en la resolución de problemas. Es fácil comenzar a ver resultados desde el primer uso. Los estudiantes pueden realizar pequeñas actividades desde el principio y a medida que van conociendo la aplicación los estudiantes ganan en comprensión de conceptos matemáticos como expresiones booleanas, variables, coordenadas Scratch tiene ciertas limitaciones y no soporta los elementos que se mencionan a continuación: Métodos. Parámetros. Valores de retorno. Herencia y polimorfismo KODU Es un lenguaje de programación visual hecho específicamente para crear juegos. Está diseñado para ser accesible a niños. Esta aplicación ha sido desarrollada por Microsoft y existe una versión para Xbox 360 y otra para PC. Kodu permite diseñar mundos en tres dimensiones a partir de una serie de elementos configurados previamente por el programa. Para crear los videojuegos nos encontramos un lienzo vacío donde podemos colocar los distintos elementos, desde árboles hasta juguetes, frutas, vehículos o personajes, así como efectos de sonido y melodías. 16

17 1. Introducción Estos elementos interactúan con el entorno y con el jugador, desde el sistema de menús pueden establecerse distintas rutinas de comportamiento. De esta manera podemos hacer que los elementos del entorno se comporten de una u otra forma en función de la situación, delimitando acciones a partir de aspectos como el tiempo transcurrido. Kodu puede expresar conceptos avanzados de diseño de juegos de una manera sencilla, directa e intuitiva aunque se prescinde de algunos de los elementos de programación más estrictos, como pueden ser los bucles, las subrutinas, procesos de ramificación, polimorfismo o incluso manipulación de tipos de datos como cadenas. 1.7 PROBLEMA Alice es un software cuya interfaz está completamente en inglés. Cuando se desarrolló el código no se contempló la idea de hacer que éste fuera multilenguaje por lo que para aquellos que no dominan el idioma anglosajón Alice es una herramienta poco amigable. Comenzar a utilizar Alice, a pesar de ser intuitivo, no es demasiado sencillo, que la aplicación esté en otra lengua hace que el estudiante no se encuentre cómodo en el entorno y no se centre realmente en intentar entender el comportamiento de Alice, si no que se sienta abrumado y confuso por el idioma. El estudiante que acude a Alice con la idea de aprender programación, ve frustrado su interés al encontrarse con dificultades añadidas que echan para atrás su iniciativa. Hay que tener en cuenta que el nivel de inglés que actualmente manejan los estudiantes de instituto en nuestro país no es lo suficientemente avanzado como para que no suponga ningún tipo de barrera a la hora de enfrentarse a una aplicación donde todo está en inglés. Alice esta principalmente dirigido a estos estudiantes pero para que el software tenga éxito en España y los países iberoamericanos es deseable ofrecerles un interfaz 100% en castellano, de esta 17

18 1. Introducción manera los estudiantes se sienten cómodos y pueden dedicarse plenamente a entender Alice desde el punto de vista de la programación y no del idioma. En nuestro caso sabíamos de antemano que nos enfrentábamos a una tarea complicada, ya que el código fuente de Alice que proporciona la Universidad Carnegie Mellon ha sido generado por muchos desarrolladores a lo largo de diferentes etapas, durante más de 15 años. A lo largo de este tiempo se han escrito más de líneas de código implementadas sin cumplir una lógica homogénea y, lo más importante, sin haber tenido en cuenta que fuera a ser internacionalizado en algún momento. Parte del trabajo necesario para internacionalizar y adaptar el extenso código de Alice, es realizar cambios en los paquetes de imágenes. Se han modificado todas aquellas imágenes que contenían textos en inglés, pero para obtener como resultado nuestro producto final Rebeca ha sido necesario cambiar también las imágenes propias de Alice (splash inicial de la aplicación, íconos ), y todas las imágenes que no han sido cedidas por los desarrolladores de la Carnegie Mellon. El equipo de Alice no nos dio el permiso para utilizar las imágenes de Alice porque consideró que la transformación en el código implicaba que ya no se trataba de la misma aplicación y por lo tanto no era posible utilizar la imagen corporativa de Alice registrada como marca en EEUU. En un primer momento nuestra idea fue llamar al código internacionalizado Alicia, pero tampoco fue posible debido al parecido con el original Alice. Debido a estos problemas de licencias el producto final se ha llamado Rebeca a través del espejo. Para completar el proyecto se ha realizado una guía didáctica que sirva de apoyo tanto a profesores como a estudiantes que quieran introducirse en el mundo de la programación a través de Rebeca. 18

19 2. OBJETIVOS

20 2. Objetivos 2.1 DESCRIPCIÓN ESPECÍFICA DEL PROBLEMA Para alcanzar nuestro objetivo principal, conseguir que Rebeca sea el resultado de internacionalizar y adaptar Alice, es muy importante que el código de Alice se internacionalice correctamente ya que pretendemos conseguir que una vez finalizado el proceso el software sea adaptable a cualquier idioma que se desee. A continuación se detalla brevemente qué es la internacionalización. Se conoce con este nombre al proceso de diseñar software de manera que pueda adaptarse a diferentes idiomas y regiones sin la necesidad de realizar cambios de ingeniería en el código. Posteriormente a la internacionalización se realiza la adaptación (localización si se usa el termino directamente traducido del inglés, localization) que adecúa el código a las necesidades lingüísticas del mercado concreto al que está destinado. Uno de los inconvenientes con el que nos encontramos es que el software original no permite ciertos elementos propios de la grafía del castellano, por lo tanto debemos adaptar el código para que se adapte a este juego de caracteres. El código fuente original de Alice sobre el que comenzamos a trabajar pertenecía a la versión Alice 2.0 publicada en 2005 y contenía varios errores, también ha sido parte de nuestro trabajo solventarlos para que no se reproduzcan en nuestra versión adaptada al castellano. Para finalizar hemos creado una guía didáctica que sirva como manual de aprendizaje tanto a los estudiantes como a los profesores a los que va dirigido Rebeca. Este trabajo tiene por tanto como objetivo: 20

21 2. Objetivos Introducir el software a institutos y universidades: El propósito de Rebeca es motivar a los estudiantes en el ámbito de la programación y por tanto incentivarles a la hora de elegir sus estudios. El software está orientado tanto a estudiantes de instituto con la finalidad de captar su interés a la hora de elegir una carrera, como a estudiantes de universidad para facilitarles la introducción en el mundo de la programación. Incrementar los grupos minoritarios en las carreras técnicas: Estudios realizados en la universidad de Washington demuestran que las chicas muestran un gran interés cuando toman contacto con herramientas como Alice y Rebeca. Esto supone un reclamo para fomentar el número de mujeres estudiantes en las carreras técnicas, sector en el que hasta ahora vienen siendo grupo minoritario. Aceptación del software y facilidad de uso: El idioma de Alice ha resultado ser un handicap a la hora de utilizar la herramienta. La Escuela Técnica Superior de Ingeniería Informática de la Universidad Rey Juan Carlos ha tratado de difundir Alice y Rebeca en varios eventos con un resultado muy positivo. La adaptación del software al castellano supone un reto para eliminar las dificultades causadas por el idioma y atraer a un mayor número de usuarios. Publicidad de los participantes: Es una gran oportunidad tanto para la universidad como para los estudiantes que hemos participado en este proyecto, colaborar en la difusión de Alice y de Rebeca ya que se trata de un producto respaldado por muchos colaboradores tanto técnicamente a lo largo de los años de desarrollo como colaboradores de promoción. 21

22 2. Objetivos 2.2 TAREAS A REALIZAR El trabajo realizado en este proyecto ha sido muy extenso. Para simplificar podemos resumirlo en los diferentes hitos que se han ido completando. Internacionalización del código: Se modifica el código fuente de Alice de manera que el resultado pueda traducirse fácilmente a cualquier idioma y región, es decir que Rebeca sea un software adaptable. Adaptar Alice al español: Una vez completada la internacionalización se adapta el software al castellano para que la aplicación sea difundida a través de la Universidad Rey Juan Carlos a cualquier instituto o universidad de España. En este punto, se transforman también las imágenes que contienen textos. Proporcionar soporte para acentos y caracteres internacionales: El formato necesario para poder visualizar acentos y caracteres del lenguaje español es UTF-8. El objetivo es que Rebeca soporte este formato. Escribir, diseñar y maquetar una guía didáctica: Se elabora una guía que sirva como referencia de aprendizaje a los usuarios de Rebeca. La distribución de esta guía ha de ser efectiva y asequible, utilizando varios medios de acceso. Corregir errores conocidos: El código fuente de partida, versión del código Alice 2.0 que es el que proporciona la Universidad Carnegie Mellon contiene algunos bugs, se trata de solucionar estos errores. 22

23 2. Objetivos 2.3 VIABILIDAD DEL PRODUCTO Una vez planteados los objetivos del proyecto debemos analizar si estos son o no viables. Modificación del código fuente: El código fuente de Alice está disponible en la página oficial se trata de código fuente libre y por tanto puede descargarse gratuitamente. Una vez ha sido modificado el código, para poder presentar la aplicación bajo el nombre de Alice o Alicia y poder utilizar las imágenes de Alice es necesario que se conceda un permiso por escrito por parte de la Unversidad, este permiso nos ha sido denegado. Por este motivo una vez finalizada la adaptación del producto, ha sido renombrado a Rebeca a través del espejo. Inicialmente se eligió el nombre Alicia pero por motivos de copyright no nos fue permitido utilizar éste como nombre final por ser demasiado parecido al original Alice. Una vez elegido el nombre Rebeca es posible modificar el código para internacionalizarlo y adaptarlo sin infringir las licencias de copyright. Para evitar los problemas de licencias de uso de los paquetes de imágenes fue necesario cambiar la imagen inicial del producto, está imagen de entrada es el logo de Alice y está protegido como marca registrada en el territorio de los EEUU. Aunque los derechos que les otorga la marca no se extienden fuera de sus fronteras, al no darnos permiso para poder utilizarlo hemos preferido utilizar una imagen alternativa que nos ha cedido amablemente una estudiante. Por otra parte las imágenes utilizadas en la guía han sido autorizadas por sus autores bajo la licencia Creative Commons Reconocimiento-No-Comercial- CompartirIgual con la que dotamos tanto a Rebeca como a la guía elaborada. Esta licencia permite modificar el código resultante por otros interesados. 23

24 2. Objetivos Soporte para acentos y caracteres: El código de caracteres empleado por Java es Unicode y recoge los caracteres de prácticamente todos los idiomas representativos del mundo (son unos ). Los caracteres Unicode del alfabeto occidental corresponden a los primeros 256 enteros; es decir van desde [0, 255]. A cada carácter le corresponde unívocamente un número entero perteneciente al intervalo [0, 65536] o a [0, 255] si se trabaja sólo con el alfabeto occidental. Por ejemplo, la letra ñ es el entero 164. El formato de codificación de caracteres UTF-8 permite codificar cualquier carácter Unicode. El código Alice está desarrollado en Java, por este motivo la visualización de caracteres propios de la codificación UTF-8 no supone un problema y nuestro propósito es viable. Redacción de una guía didáctica: El problema del idioma original no sólo afectaba al propio software Alice sino a toda la documentación y libros escritos sobre él. Por este motivo decidimos que la realización de una guía explicativa del funcionamiento del producto era una idea asequible y necesaria. Bajo el título de Rebeca. Aprende a programar con gráficos 3D interactivos hemos intentado hacer una guía que sirva de referencia a todos aquellos que quieran introducirse en el mundo de la programación utilizando Rebeca. Esta guía puede obtenerse a través de Internet en formato digital e impreso. Bajo la licencia Creative Commons los autores decidimos prescindir de royalties para evitar problemas de licencias con las imágenes utilizadas y para que la guía sea accesible a todo aquel que desee utilizarla. Eliminación de errores: Dado que es viable modificar el código fuente de Alice y que existe documentación sobre los errores que se encuentran en la versión Alice 2.0. El objetivo es asequible y disponemos de información para localizar y solventar los errores. 24

25 2. Objetivos 2.4 METODOLOGÍA UTILIZADA INTERNACIONALIZACIÓN Para realizar la internacionalización del código crearemos un archivo de recursos por cada archivo.java del código que contenga cadenas de texto. Este archivo de recursos viene a ser un diccionario que contiene pares clavevalor. A cada clave le corresponde un valor concreto que será devuelto al código cuando este proporcione una clave a cambio de su correspondiente par. El código de Alice es muy extenso por lo que este proceso es un trabajo largo y tedioso. Además hay que tener en cuenta el número de desarrolladores que han colaborado en el código y su independencia, lo que implica cambios muy fuertes en el estilo y arquitectura del software. El entorno de trabajo con el que se realiza este proceso proporciona una herramienta que localiza los literales (valores fijos) en el código, esto facilita en gran medida la internacionalización ADAPTACIÓN El proceso de adaptación consiste en asignar a cada clave su valor correspondiente. Es decir en este momento se realiza la tarea de traducción en nuestro caso la clave es la cadena a traducir y el valor su equivalente en castellano. Al haber utilizado la herramienta de internacionalización automática que facilita el compilador el proceso de adaptación ha sido simultáneo al de internacionalización, es decir, a medida que se iba generando el archivo de recursos se iba asignando el valor correspondiente a la clave introducida. Una vez se ha internacionalizado y adaptado un archivo.java concreto necesario compilar y ejecutar el software para verificar que el proceso se ha es 25

26 2. Objetivos realizado correctamente y no se han generado errores derivados de la modificación del código, que los valores elegidos son coherentes y además encajan en el interfaz JUEGO DE CARACTERES Ha sido necesario realizar una labor de ingeniería inversa para solventar el problema de los caracteres. A partir de la información encontrada identificamos las instrucciones que eran necesarias para que la máquina virtual de Java pudiera ejecutar la aplicación con el juego de caracteres deseado GUÍA DIDÁCTICA El objetivo de la guía didáctica elaborada es que sea accesible a la mayor cantidad de público posible, para ello hemos optado por que el contenido esté expresado en lenguaje sencillo y vaya acompañado de imágenes de un gran atractivo visual, de esta manera la lectura resulta amena haciendo que el aprendizaje de la herramienta sea agradable. Con los ejemplos elegidos en la guía se permite ver con facilidad las posibilidades que ofrece Rebeca y familiarizarse con el entorno. Con esta guía hemos intentado ofrecer un viaje a través de Rebeca y esperamos conseguir un acercamiento a la aplicación por parte de los lectores ERRORES CONOCIDOS Para solucionar los errores del código era necesario hacer una depuración del código, una vez internacionalizado y adaptado Alice a Rebeca apareció una nueva versión Alice 2.2 en la que algunos de los de errores se habían corregido. Aunque nosotros ya habíamos solventado parte de los errores en Alice 2.0, decidimos migrar Rebeca a la versión

27 2. Objetivos 2.5. MEDIOS HARDWARE Y SOFTWARE UTILIZADOS La máquina virtual de Java necesaria para ejecutar Rebeca es Java SE Runtime Environment (JRE) 5 o superior en el sistema. En la carpeta del juego Rebeca se encuentra esta plataforma, por lo que no es necesario realizar ninguna instalación adicional. Para realizar la tarea de internacionalización hemos abierto el proyecto Rebeca en el entorno de desarrollo Netbeans junto con el JDK, Java SE Development Kit. Recurso hardware utilizado: Portátil Hacer Aspire 5520 (AMD Turion 64x GHZ, 3GB de RAM, nvidia GeForce 7000M) Recursos software Sistema operativo Microsoft Windows XP Professional Edition SP Alice 2.0, 2.2 (Windows) y su código fuente NetBeans IDE (Windows) Java SE Runtime Environment 5 (JRE) Java SE Development Kit 6u 16 (SDK) Java Media Framework API 2.1 (JMF) Java 3D API (J3D) Jython 2.1 (version de Python para Java) Adobe Photoshop CS4 Adobe InDesign CS4 Exe4j 4.3 Google Chrome Winzip

28 3. DESCRIPCIÓN INFORMÁTICA

29 3. Descripción informática 3.1. ESTADO DEL ARTE Cuándo se comienza un proyecto, sobre todo si es de gran envergadura, es deseable que contemple la internacionalización del mismo con el objetivo de poder asegurar la posterior adaptación a diferentes idiomas. En el caso de Alice los desarrolladores no tuvieron en cuenta que posteriormente fuera a ser necesario adaptar el código, por lo que no partimos de un software internacionalizado. Además Alice es el producto de muchísimas colaboraciones, lo que implica que el código no sigue una metodología rigurosa. Alice no está apenas comentado lo que facilitaría la comprensión de lo que se está haciendo en cada momento. Tampoco se puede acceder a una documentación sobre el mismo que nos permita acercarnos un poco más a los métodos seguidos por los programadores. Con todo esto nos enfrentamos a más de 1900 archivos java que suman más de líneas de código y que debemos internacionalizar para que pueda ser adaptado a cualquier idioma. Alice resultó tener gran éxito y aceptación en EEUU, su lugar de origen, por lo que la idea de trasladarlo a otros países ya se ha contemplado y por tanto internacionalizar el código de Alice es un reto que se plantearon antes otros desarrolladores, en ningún caso el proceso de internacionalización logró llevarse a cabo. Como ejemplos de los intentos por internacionalizar el código al castellano podemos nombrar el caso de José Garrido, profesor adjunto en Ciencias de Computación en la Universidad Kennesaw State, en Georgia o John Alexis Guerra profesor de la Universidad Tecnológica de Pereira, en Colombia. Estos dos profesores intentaron llevar a cabo la traducción de Alice al castellano con la finalidad de poder utilizarlo en sus clases como herramienta de aprendizaje para sus alumnos. Ninguno de los dos logró alcanzar su cometido, debido a lo extenso del proyecto, la desinformación y la falta de colaboración por parte del equipo de desarrolladores de Alice. Sin embargo no han sido estos los únicos intentos de 29

30 3. Descripción informática traducir el software, en el foro de la página web de Alice hay colaboraciones de traducciones al alemán por parte de la Universidad de Bremen (Alemania). En Kenai, pagina de acceso libre de Sun Microsystems aparecen iniciativas de versiones de Alice en árabe y en chino, aunque sin completar. Incluso por parte de nuestra Universidad, anteriormente un grupo de alumnos de postgrado intentaron llevar a cabo este mismo proyecto sin éxito. Por parte de los propios desarrolladores también se comenzó la labor de internacionalizar el código debido a la demanda de traducciones a diferentes idiomas que requerían los usuarios, finalmente no se terminó de llevar a cabo el propósito APORTACIONES Para comenzar el análisis del proyecto debemos en primer lugar familiarizarnos con el material del que disponemos. No conocíamos que entorno de desarrollo había elegido el equipo técnico para trabajar, ni que procesos debíamos seguir para compilar/ejecutar el código. Este fue nuestro primer reto. Nos enfrentábamos a un gran proyecto de ingeniería inversa. Las aportaciones para cada etapa del proyecto se enumeran a continuación: Importación del código: Labor de investigación sobre cómo integrar los archivos Java en el IDE y como compilar/ejecutar estos archivos. Internacionalización y adaptación: Modificación del software para hacerlo adaptable a cualquier idioma y en nuestro caso adaptarlo al castellano. Codificación de los caracteres: permitir que la aplicación utilice los caracteres propios del castellano. Paquete de imágenes: modificación de las imágenes por sus equivalentes con los textos traducidos. 30

31 3. Descripción informática Generación de ejecutables: creación de los ejecutables para el usuario final. Guía didáctica: elaboración de un libro de referencia con ejemplos destinado a facilitar el aprendizaje a los usuarios IMPORTACIÓN DEL PROYECTO CÓDIGO FUENTE Al descargar el código de la página oficial esperábamos encontrar a parte de todos los archivos.java que componen el software la información necesaria para comenzar a trabajar con él, (el entorno de trabajo recomendado, los requisitos necesarios para generar el proyecto y las instrucciones básicas para ser guiados en una primera ejecución del código), pero no es así. A continuación se describen los procedimientos seguidos para poder trabajar con el código descargado. Creamos nuestra carpeta de trabajo donde descomprimimos los archivos descargados NETBEANS IDE Importación del código En NetBeans Abrimos el código eligiendo el método Proyecto java con fuentes existentes. Establecemos la ruta de trabajo antes definida, que contiene el código fuente descomprimido. 31

32 3. Descripción informática Seleccionamos la opción Configurar como Proyecto Principal y después la carpeta java de nuestro directorio en la sección fuentes existentes. Tenemos nuestro proyecto alicia (El cambio a Rebeca fue posterior, una vez había finalizado la internacionalización y se nos denegó el uso del nombre Alicia) listo para comenzar a trabajar Compilación y Ejecución Para compilar debemos utilizar la opción limpiar y generar MainProject de la barra de herramientas. El primer intento produjo una gran cantidad de errores indicados por el compilador, estos se producían porque faltaban paquetes a los que el código java hacía referencia. Para solventar este problema recurrimos a el profesor Javier Sánchez quién nos ayudó en la búsqueda de estos paquetes necesarios, pero a medida que íbamos añadiendo los paquetes descargados de Internet nos dimos cuenta de que era imposible seguir este camino por resultar inabordable. En el foro de Alice encontramos la solución, todos los paquetes necesarios para la compilación del código y que no aparecían en el código fuente podían encontrarse en el paquete del juego en la carpeta Required. Por lo tanto pudimos localizar las librerías, el JRE, y Jython. Copiamos la carpeta Required dentro de la carpeta del proyecto e indicamos al compilador donde están las librerías, (botón derecho sobre el proyecto, elegimos la opción propiedades y en bibliotecas categorías se selecciona añadir jar/carpeta). 32

33 3. Descripción informática Hemos añadido todas las librerías de la ruta:.\alicia_2.2\alicia\externallib. Como se ve en la imagen elegimos el JDK 1.6. Ahora si podemos Limpiar y generar Main Proyect, el proceso es correcto y de esta forma se genera el archivo Java(.jar) Este archivo.jar es el que interpreta la máquina virtual de java en el momento de la ejecución. Para ejecutar el proyecto usamos la herramienta de Ejecutar Main Project de la barra de herrmientas. Al intentar ejecutar la aplicación la consola de errores nos indica que faltan archivos. Encontramos en la carpeta del juego el archivo IfAliceFailsTryThis.config que contiene lo siguiente: javapath jre/bin/java # Initial heap size vmparam -Xms32m # Maximum Heap size vmparam -Xmx512m # Enable incremental garbage collection vmparam -Xincgc # vmparam -XX:+ForceTimeHighResolution # python path vmparam -Dpython.home=jython-2.1 vmparam -Dpython.path=jython-2.1/Lib/alice # jars addjars lib 33

34 3. Descripción informática addjars externallib # jni libs vmparam -Djava.library.path=lib/win32;externalLib/win32 mainclass edu.cmu.cs.stage3.alice.authoringtool.jalice Esto datos se corresponden con instrucciones para la máquina virtual de Java, la ruta donde se encuentra el JDk y la ubicación de las librerías externas del juego. Dentro de Ejecutar -> Categorías en las propiedades de proyecto Alicia (después Rebeca) establecemos las opciones de la máquina virtual: INTERNACIONALIZACIÓN Y ADAPTACIÓN DEL PROYECTO (I18N, L10N) Éste es el punto clave del proyecto, como hemos detallado anteriormente la finalidad principal es conseguir un software adaptable a cualquier idioma HERRAMIENTA La herramienta utilizada para realizar el proceso de internacionalización es el entorno de desarrollo NetBeans que proporciona herramientas que facilitan la tarea de la internacionalización. 34

35 3. Descripción informática MÉTODO SISTEMÁTICO La funcionalidad de internacionalización de la que disponemos en NetBeans localiza las cadenas de texto y genera un archivo de recursos para cada archivo. Java internacionalizado Búsqueda de cadenas Para cada archivo.java del código hay que realizar la operación de internacionalización que facilita NetBeans. NetBeans es capaz de detectar todos los literales del código, se deja como tarea del desarrollador decidir si es una cadena que tiene que ser traducida o no. En un código tan extenso como el de Alice la internacionalización es un trabajo casi imposible, debido al gran número de archivos.java que hay que inspeccionar y a que cada uno de ellos lleva consigo una labor no solo de traducción si no que implica también ser capaz de entender el contenido lógico del código del archivo que se está tratando para comprender como funciona y si es posible y necesario internacionalizar las cadenas detectadas Archivo de recursos Para cada archivo.java internacionalizado se crea un archivo de recursos asociado que se guarda en la misma ruta donde se encuentra el.java, este archivo tiene el mismo nombre que el.java pero con la extensión.properties. Una vez se ha localizado la cadena, se elige el texto que va a sustituirla, en el archivo de recursos se crea un nuevo par clave-valor donde la clave es la cadena original y el valor la nueva cadena por la que se va a sustituir la cadena original. Cuando se haga la llamada al archivo de recursos se realizará con la clave como parámetro y se retornará el valor asociado. 35

36 3. Descripción informática Ejemplo i18n-l10n de un archivo java A continuación detallamos paso a paso como internacionalizar un archivo java con NetBeans. Lo primero que hacemos es elegir el archivo java que queremos internacionalizar, sobre este hacemos click con el botón derecho y seleccionamos Herramientas Internacionalización, Internacionalizar: Al elegir Internacionalizar la herramienta comenzará a buscar las cadenas de texto del archivo.java 36

37 3. Descripción informática Por cada cadena detectada debemos determinar si se trata de un literal a traducir o no. En caso de que si lo sea, el procedimiento es sencillo se selecciona el archivo properties que va a estar asociado al archivo.java, si no existe lo creamos: Solo resta indicar la traducción de la cadena, este será el valor asociado a la clave en el archivo de recursos. Cuando le damos a Reemplazar se introduce una nueva entrada en el archivo de recursos, a la clave UNABLE_TO_DETERMINE_THE_EXTENSION_OF se le adjudica el valor Imposible determinar la extensión del archivo Este archivo es el que habrá que modificar en el caso de adaptar el código a otro idioma: 37

38 3. Descripción informática Por otra parte en el código se inserta una llamada al archivo de recursos, en este ejemplo, la línea señalada del código en la imagen anterior queda transformada de la siguiente manera: throw new IllegalArgumentException( "unable to determine the extension of " + filename ); throw new IllegalArgumentException( java.util.resourcebundle.getbundle( edu/cmu/cs/stage3/alice/authoringtool/abstractimporter ).getstring( UNABLE_TO_DETERMINE_THE_EXTENSION_OF_.) + filename); Para internacionalizar el código de Alice ha sido necesario realizar este proceso en todos los archivos.java, exactamente 1992 archivos. Ha sido por tanto una enorme tarea que al principio parecía inabarcable, pero que conseguimos finalizar con mucho trabajo y organización Ejemplo i18n-l10n de un archivo de recursos Una vez se ha internacionalizado el archivo.java y el archivo de recursos.properties ha sido confeccionado, la adaptación a otro idiomas es un proceso muy sencillo. Este era el objetivo, hacer de Rebeca un software fácilmente adaptable a cualquier idioma. Lo único que tendrá que hacer el interesado en adaptar Rebeca es asignar el valor correspondiente cada clave del archivo de recursos. Ejemplo de adaptación al francés del archivo de recursos Actions.properties: New_World= Nouveau Monde Create_a_new_world= Créer un nouveau monde Open_World...= Ouvrir un monde Open_an_existing_world= Ouvrir un monde existant Save_World= Garder le Monde 38

39 3. Descripción informática Save_the_current_world= Garder le monde actuel Save_World_As...= Garder le monde... Export_As_A_Web_Page...= Exporter en page Web... Export_as_a_web_page= Exporter en page Web Import...= Importation PROBLEMAS DE LA HERRAMIENTA Hay que tener en cuenta que la herramienta de NetBeans ha sido de gran ayuda pero no es perfecta. En primer lugar no todas las cadenas que localiza la herramienta deben internacionalizarse pues muchas de ellas son literales propios del código y no de la interfaz. Al tratarse de un código muy extenso realizado por numerosos desarrolladores la lógica del mismo varía de unos archivos a otros por lo que es difícil establecer un patrón a la hora de identificar las cadenas que hay que internacionalizar. Aun tratando cuidadosamente cada archivo para no internacionalizar cadenas que no se pueden cambiar es necesario compilar y ejecutar el proyecto cada vez que se finaliza la internacionalización, de esta manera podemos asegurarnos de que no hemos cometido ningún error. Además es necesario realizar este control puesto que cuando estamos internacionalizando un archivo no sabemos dónde exactamente se encuentran las cadenas en la interfaz, por lo que puede que los textos no se adapten al tamaño que tienen disponible. Otro problema es que no se localizan todas las cadenas, una vez se finalizó la internacionalización vimos que quedaban partes sin traducir en la interfaz, por lo que el proceso que se siguió fue localizar manualmente los literales sin traducir en los archivos.java, una vez ubicados insertar la llamada al archivo de recursos e incluir el par clave-valor correspondiente. En muchos casos no se trató de un proceso sencillo pues el literal en cuestión podía encontrarse en varios archivos y no en todos debía internacionalizarse. 39

40 3. Descripción informática DISPERSIÓN DE LOS TEXTOS No todos los textos a traducir que contiene Alice se encuentran en los archivos.java. Después de internacionalizar los más de 1900 archivos y revisar todas las cadenas que quedaban sin traducir buscándolas en el código encontramos qué la política de desarrollo cambió en algún punto de la evolución del código diferente. Dado que Alice se ha ido elaborando por etapas, en alguna de ellas se decidió situar los literales de texto en archivos externos. En concreto se localizaron los textos en dos archivos: Alice Style.py y StandardResources.py. Ambos archivos se encuentran en la carpeta Resources del juego. La extensión.py pertenece a Python por lo que creemos que vienen de la versión de Alice 1.0 que estaba desarrollada en Python. Estos archivos contienen numerosas cadenas y son interpretados desde java con jython, hemos traducido las cadenas de estos archivos para la adaptación del código al castellano. Ejemplo extraído del archivo Alice Style.py: formatmap = { edu.cmu.cs.stage3.alice.core.question.visualization.model.item : "el valor de <<<subject>>>", edu.cmu.cs.stage3.alice.core.response.visualization.model.setitem : "dejar <<<subject>>> = <item>", edu.cmu.cs.stage3.alice.core.question.visualization.array.itematindex : "el valor de <<<subject>>>[ <index> ]", edu.cmu.cs.stage3.alice.core.response.visualization.array.setitematindex : "dejar <<<subject>>>[ <index> ] = <item>", edu.cmu.cs.stage3.alice.core.question.visualization.array.size : "tamaño de <<<subject>>>", edu.cmu.cs.stage3.alice.core.question.visualization.list.size : "tamaño de <<<subject>>>", edu.cmu.cs.stage3.alice.core.question.visualization.list.contains : "<<<subject>>> contiene <item>", 40

41 3. Descripción informática edu.cmu.cs.stage3.alice.core.question.visualization.list.isempty : "<<<subject>>> esta vacío", edu.cmu.cs.stage3.alice.core.question.visualization.list.firstindexofitem : "primer índice de <item> de <<<subject>>>", edu.cmu.cs.stage3.alice.core.question.visualization.list.lastindexofitem : "último índice de <item> de <<<subject>>>", edu.cmu.cs.stage3.alice.core.question.visualization.list.itematbeginning : "elemento al comienzo de <<<subject>>>", edu.cmu.cs.stage3.alice.core.question.visualization.list.itematend : "elemento al final de <<<subject>>>", edu.cmu.cs.stage3.alice.core.question.visualization.list.itematindex : "elemento con índice <index> de <<<subject>>>", * + } EL IDE NO PERMITE DEPURAR ALICE Una de las grandes dificultades al trabajar con el código de Alice ha sido no poder depurar. Con el IDE NetBeans tratamos de poner diferentes puntos de ruptura para trazar el código pero al ejecutar con la opción paso por paso el proyecto, se ejecuta sin parar en los puntos como si se tratara de una ejecución ordinaria. A pesar de haber compilado y ejecutado el código en otros entornos como Eclipse no se pudo depurar en ningún caso. Una correcta depuración del código nos hubiese sido muy útil para detectar los errores causados al internacionalizar los archivos. Determinar el funcionamiento de la aplicación a priori, sin poder trazar el código con las herramientas que contiene el IDE hace el trabajo de ingeniería inversa realizado muy complicado, ya que se trata de un proyecto extenso y complejo nada fácil de seguir. 41

42 3. Descripción informática PAQUETE DE IMÁGENES Extensión de la adaptación El proceso de adaptación no sólo afecta a las cadenas que se encuentran en el código, también es necesario modificar las imágenes de Alice que contienen textos o de lo contrario el software final Rebeca estaría parcialmente traducido. Para poder traducir los textos integrados en las imágenes es necesario editar y modificar todas aquellas imágenes que contengan cadenas Elección de la herramienta Para modificar las imágenes contenidas en Alice se eligió la herramienta Adobe Photoshop CS Realización Para modificar los textos utilizamos la herramienta de capas de Photoshop, con esta herramienta es posible dividir la imagen en diferentes capas que en conjunto forman la imagen final. En un primer momento se cambiaron las imágenes con el nombre Alice a Aicia, pero finalmente como ya hemos mencionado se transformaron a Rebeca, las imágenes del banner de inicio y el splash de Rebeca han sido cedidas por una estudiante que nos permitió modificar su dibujo original y utilizarlo en el juego Ejemplos de concordancia 42

43 3. Descripción informática CODIFICACIÓN DE LOS CARACTERES PROBLEMA Y SOLUCIÓN Una vez finalizado por completo el proceso i18n-l10n, lo que nos llevo más de un año de trabajo, es necesario crear los ejecutables para poder difundir nuestra aplicación Rebeca totalmente adaptada. Mientras ejecutamos el juego desde NetBeans no detectamos este problema porque el IDE permite elegir la codificación de caracteres con la que se quiere ejecutar la aplicación, pero cuando creamos los ejecutables de manera que no fueran dependientes del IDE nos dimos cuenta de que no se visualizaban correctamente algunos caracteres típicos del castellano como la ñ y los acentos. Se observó de donde podía venir el problema y nos dimos cuenta de que las cadenas que no se visualizaban correctamente se encontraban en los archivos.py por lo que pensamos que el problema estaba al interpretar los archivos Python. Buscamos información en diferentes foros tratando de encontrar una solución para la correcta interpretación de los archivos.py. La primera posible solución que probamos fue añadir a la cabecera de los archivos Python la línea: (#-*- coding: utf-8 -*-) y escribir delante de cada cadena codificada en utf-8 la expresión (u), pero el resultado fue el mismo, seguían sin visualizarse correctamente algunos caracteres. Este resultado no fue del todo sorprendente pues en todos los foros sobre Python consultados se afirmaba que desde una versión bastante anterior a la nuestra ya existía soporte para codificar caracteres en utf-8. Después de esta experiencia nos inclinamos por buscar otras posibles causas del problema. Pensamos que la solución podríamos encontrarla en la configuración IDE puesto que esta permitía la correcta interpretación de los caracteres utf-8. Como no nos era posible ver las instrucciones exactas de ejecución de Rebeca nos llevamos la aplicación a Linux. Mediante comandos de Shell como ps ef grep java pudimos 43

44 3. Descripción informática ver la línea exacta de ejecución, los parámetros y opciones que usaba NetBeans. De esta manera encontramos la opción necesaria para la máquina virtual de Java: Dfile.encoding = UTF-8 El problema se solucionó cuando incluimos este parámetro al generar los ejecutables EXTENSIÓN DEL PROBLEMA En la barra de herramientas de Rebeca se encuentra la opción de exportar la animación creada en formato html. Al exportar el código se producía el mismo error en la visualización de caracteres utf-8. Observamos que la página web html se construía a partir de una plantilla que se encontraba en dos ubicaciones, una en el código y otra en el juego: AppletTemplate.html en la carpeta /etc/ del juego. ExportCodeForPrintingContentPane.java en la carpeta edu/cmu/stage3/alice/ authoringtool/dialog/ del código fuente La solución en este caso fue más sencilla, bastó con añadir en la cabecera del código html de los archivos la siguiente etiqueta: <meta http-equiv="content-type" content="text/html; charset=utf-8"/> 44

45 3. Descripción informática GENERACIÓN DE EJECUTABLES Y EMPAQUETADO A continuación, una vez explicado cómo se solucionó el problema de los caracteres, vamos a detallar el proceso de generación de ejecutables y su empaquetado. Es importante señalar que el éxito de una aplicación también depende de las facilidades de acceso a la misma que se proporcionen. Una vez generados los ejecutables se procede a empaquetar los archivos necesarios para que no se requiera por parte del usuario ningún tipo de instalación ni de la propia aplicación Rebeca ni de ningún otro software adicional EJECUTABLE.JAR MULTIPLATAFORMA Un archivo.jar es un formato de fichero que contiene recursos necesarios (clases, imágenes, sonidos ) para ejecutar una aplicación Java y que se utiliza para distribuir esta aplicación. Para ejecutar un archivo.jar lo más importante es tener la máquina virtual de java en el equipo, de manera que el sistema operativo pueda llamarla y que ésta ejecute el fichero. El problema en nuestro caso es que para ejecutar el archivo.jar tenemos que indicar una serie de parámetros a la máquina virtual ya sea desde NetBeans o desde consola, esta tarea debe ser transparente para los usuarios, que no tienen porque conocer NetBeans ni estar familiarizados con la ejecución de aplicaciones desde consola. Por tanto tenemos que crear ejecutables que realicen la llamada al archivo.jar enviándole también estos parámetros a la máquina virtual de Java. Vamos a generar dos archivos.ejecutables uno para la plataforma Windows y otro para Macintosh. 45

46 3. Descripción informática EJECUTABLE.EXE WINDOWS Para generar el archivo.exe de Windows hemos utilizado la herramienta exe4j. A través de esta herramienta podemos generar el ejecutable que contiene los parámetros necesarios para la máquina virtual de Java. La generación del ejecutable.exe con la herramienta exe4j, sólo requiere seguir unas sencillas instrucciones de configuración, entre las que podemos destacar la ruta del fichero.jar de Rebeca, la imagen que queremos de icono en nuestro ejecutable y como puede verse en la siguiente imagen la cadena de parámetros indicados a la máquina virtual de Java. Una vez creado el archivo.exe se realiza el empaquetado. Seguimos el modelo de empaquetado de los creadores de Alice, que distribuyen una carpeta comprimida en formato zip. Esta carpeta incluye el JRE ( Java Runtime Environment) necesario para la ejecución de la maquina virtual de Java, de esta manera se evita que el usuario tenga que descargarlo el mismo. Creamos el archivo Rebeca.zip, sólo es necesario descomprimir este archivo en la carpeta que se desee y hacer doble clic sobre el ejecutable Rebeca.exe para lanzar el juego. 46

47 3. Descripción informática EJECUTABLE MACINTOSH En este caso la solución es más sencilla, la página oficial de proporciona el archivo.dmg para ejecutar Alice en Macintosh, al extraer este.dmg podemos ver todos los archivos comprimidos que contiene por tanto solo tenemos que sustituir los archivos necesarios de Rebeca, como el archivo.jar generado al ejecutar Rebeca y los archivos e imágenes que hemos modificado al realizar la internacionalización del código. Una vez sustituidos estos archivos volvemos a generar, gracias a SimplyDisk, el.dmg de Rebeca para Macintosh. El empaquetado se realiza con SimplyDisk, que permite incluir un menú autoejecutable que facilita la tarea de descomprimir Rebeca en la carpeta Aplicaciones que especificamos como predeterminada. El resultado obtenido a partir de la herramienta SimplyDisk es el siguiente menú autoejecutable: 47

Análisis de aplicación: Scribus

Análisis de aplicación: Scribus Análisis de aplicación: Scribus Este documento ha sido elaborado por el Centro de Apoyo Tecnológico a Emprendedores bilib, www.bilib.es Copyright 2011, Junta de Comunidades de Castilla La Mancha. Este

Más detalles

AGREGAR COMPONENTES ADICIONALES DE WINDOWS

AGREGAR COMPONENTES ADICIONALES DE WINDOWS INSTALACIÓN DE IIS EN WINDOWS XP El sistema está desarrollado para ejecutarse bajo la plataforma IIS de Windows XP. Por esta razón, incluimos la instalación de IIS (Servidor de Web) para la correcta ejecución

Más detalles

ENVÍO DE E-MAIL POR MEDIO DE SMTP

ENVÍO DE E-MAIL POR MEDIO DE SMTP UNIVERSIDAD TÉCNICA FEDERICO SANTA MARÍA DEPARTAMENTO DE ELECTRÓNICA ELO 322: REDES DE COMPUTADORES I ENVÍO DE E-MAIL POR MEDIO DE SMTP Alumnos Ariel Mancilla G. 2521040-9 Daniel Spataris J. 2521029-8

Más detalles

Internet Information Server

Internet Information Server Internet Information Server Internet Information Server (IIS) es el servidor de páginas web avanzado de la plataforma Windows. Se distribuye gratuitamente junto con las versiones de Windows basadas en

Más detalles

Elementos requeridos para crearlos (ejemplo: el compilador)

Elementos requeridos para crearlos (ejemplo: el compilador) Generalidades A lo largo del ciclo de vida del proceso de software, los productos de software evolucionan. Desde la concepción del producto y la captura de requisitos inicial hasta la puesta en producción

Más detalles

Parámetros con la ventana de selección de usuario, reglas, texto y descomposición (IVE)

Parámetros con la ventana de selección de usuario, reglas, texto y descomposición (IVE) QUÉ SON CONCEPTOS PARAMÉTRICOS? Los conceptos paramétricos de Presto permiten definir de una sola vez una colección de conceptos similares a partir de los cuales se generan variantes o conceptos derivados

Más detalles

Capítulo 6. Desarrollo del Software

Capítulo 6. Desarrollo del Software Capítulo 6. Desarrollo del Software Introducción El objetivo principal de la presente tesis como su título lo describe, es la animación de las tramas de comunicación principales de WCDMA. Para lograr dicho

Más detalles

Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente

Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente En este capítulo definimos los requisitos del modelo para un sistema centrado en la mejora de la calidad del código fuente.

Más detalles

Guía de instalación de la carpeta Datos de IslaWin

Guía de instalación de la carpeta Datos de IslaWin Guía de instalación de la carpeta Datos de IslaWin Para IslaWin Gestión CS, Classic o Pyme a partir de la revisión 7.00 (Revisión: 10/11/2011) Contenido Introducción... 3 Acerca de este documento... 3

Más detalles

Proyecto Scratch: http://scratch.mit.edu/projects/38518614/

Proyecto Scratch: http://scratch.mit.edu/projects/38518614/ Proyecto Scratch: http://scratch.mit.edu/projects/38518614/ SISTEMAS DE NUMERACÍON Dos de los sistemas de numeración más utilizados son el sistema decimal, que se emplea en la vida cotidiana, y el sistema

Más detalles

AGREGAR UN EQUIPO A UNA RED Y COMPARTIR ARCHIVOS CON WINDOWS 7

AGREGAR UN EQUIPO A UNA RED Y COMPARTIR ARCHIVOS CON WINDOWS 7 Tutoriales de ayuda e información para todos los niveles AGREGAR UN EQUIPO A UNA RED Y COMPARTIR ARCHIVOS CON WINDOWS 7 Como agregar a una red existente un equipo con Windows 7 y compartir sus archivos

Más detalles

Modificación y parametrización del modulo de Solicitudes (Request) en el ERP/CRM Compiere.

Modificación y parametrización del modulo de Solicitudes (Request) en el ERP/CRM Compiere. UNIVERSIDAD DE CARABOBO FACULTAD DE CIENCIA Y TECNOLOGÍA DIRECCION DE EXTENSION COORDINACION DE PASANTIAS Modificación y parametrización del modulo de Solicitudes (Request) en el ERP/CRM Compiere. Pasante:

Más detalles

Manual para usuarios USO DE ONEDRIVE. Universidad Central del Este

Manual para usuarios USO DE ONEDRIVE. Universidad Central del Este Manual para usuarios USO DE ONEDRIVE Universidad Central del Este Contenido 1. QUÉ ES Y PARA QUÉ SIRVE OFFICE 365?... 3 1.1 CÓMO ENTRAR A LA PLATAFORMA DE OFFICE 365 DE LA UCE?... 3 ONEDRIVE... 5 2. QUÉ

Más detalles

ISO 9001:2000 DOCUMENTO INFORMATIVO DOCUMENTO ELABORADO POR CHRISTIAN NARBARTE PARA EL IVECE

ISO 9001:2000 DOCUMENTO INFORMATIVO DOCUMENTO ELABORADO POR CHRISTIAN NARBARTE PARA EL IVECE ISO 9001:2000 DOCUMENTO INFORMATIVO DOCUMENTO ELABORADO POR CHRISTIAN NARBARTE PARA EL IVECE MARZO 2007 Este documento contesta las preguntas más frecuentes que se plantean las organizaciones que quieren

Más detalles

Introducción a la extensión de scripting en gvsig 2.0

Introducción a la extensión de scripting en gvsig 2.0 Introducción a la extensión de scripting en gvsig 2.0 2012 gvsig Association Este documento se distribuye con la licencia Creative Commons 1 2 Índice de contenido 1 Introducción... 3 Instalación de la

Más detalles

Presentaciones. Con el estudio de esta Unidad pretendemos alcanzar los siguientes objetivos:

Presentaciones. Con el estudio de esta Unidad pretendemos alcanzar los siguientes objetivos: UNIDAD 8 Presentaciones Reunión. (ITE. Banco de imágenes) as presentaciones son documentos formados por una sucesión de páginas, llamadas diapositivas, que transmiten información estructurada de manera

Más detalles

Notas para la instalación de un lector de tarjetas inteligentes.

Notas para la instalación de un lector de tarjetas inteligentes. Notas para la instalación de un lector de tarjetas inteligentes. Índice 0. Obtención de todo lo necesario para la instalación. 3 1. Comprobación del estado del servicio Tarjeta inteligente. 4 2. Instalación

Más detalles

INTRODUCCIÓN: Una Visión Global del Proceso de Creación de Empresas

INTRODUCCIÓN: Una Visión Global del Proceso de Creación de Empresas INTRODUCCIÓN: Una Visión Global del Proceso de Creación de Empresas 1 INTRODUCCIÓN. Una visión global del proceso de creación de empresas Cuando se analiza desde una perspectiva integral el proceso de

Más detalles

App para realizar consultas al Sistema de Información Estadística de Castilla y León

App para realizar consultas al Sistema de Información Estadística de Castilla y León App para realizar consultas al Sistema de Información Estadística de Castilla y León Jesús M. Rodríguez Rodríguez rodrodje@jcyl.es Dirección General de Presupuestos y Estadística Consejería de Hacienda

Más detalles

LiLa Portal Guía para profesores

LiLa Portal Guía para profesores Library of Labs Lecturer s Guide LiLa Portal Guía para profesores Se espera que los profesores se encarguen de gestionar el aprendizaje de los alumnos, por lo que su objetivo es seleccionar de la lista

Más detalles

Capitulo I. Introducción

Capitulo I. Introducción Capitulo I. Introducción 1.1 Descripción del trabajo El ser humano, como todos sabemos tiene la necesidad de comunicarse, de ser escuchado y sobretodo interactuar con los demás seres vivos que lo rodean.

Más detalles

GUÍA TÉCNICA PARA LA DEFINICIÓN DE COMPROMISOS DE CALIDAD Y SUS INDICADORES

GUÍA TÉCNICA PARA LA DEFINICIÓN DE COMPROMISOS DE CALIDAD Y SUS INDICADORES GUÍA TÉCNICA PARA LA DEFINICIÓN DE COMPROMISOS DE CALIDAD Y SUS INDICADORES Tema: Cartas de Servicios Primera versión: 2008 Datos de contacto: Evaluación y Calidad. Gobierno de Navarra. evaluacionycalidad@navarra.es

Más detalles

Creación y administración de grupos locales

Creación y administración de grupos locales Creación y administración de grupos locales Contenido Descripción general 1 Introducción a los grupos de Windows 2000 2 Grupos locales 5 Grupos locales integrados 7 Estrategia para utilizar grupos locales

Más detalles

1.- DESCRIPCIÓN Y UTILIDAD DEL SOFTWARE DAEMON TOOLS.

1.- DESCRIPCIÓN Y UTILIDAD DEL SOFTWARE DAEMON TOOLS. CREANDO UNIDADES VIRTUALES DE CD Y DVD CON DAEMON TOOLS 1.- DESCRIPCIÓN Y UTILIDAD DEL SOFTWARE DAEMON TOOLS. Daemon Tools es una herramienta que permite a los usuarios simular una unidad o varias unidades

Más detalles

CAPITULO 1 PLANTEAMIENTO DEL PROBLEMA.

CAPITULO 1 PLANTEAMIENTO DEL PROBLEMA. CAPITULO 1 PLANTEAMIENTO DEL PROBLEMA. 1.1 DESCRIPCIÓN DEL PROBLEMA. El aprendizaje del idioma Inglés puede resultar un tanto difícil y poco atractivo cuando se está iniciando, lo cual puede ser modificado

Más detalles

Práctica del paso de generación de Leads

Práctica del paso de generación de Leads Práctica del paso de generación de Leads La parte práctica de este módulo consiste en poner en marcha y tener en funcionamiento los mecanismos mediante los cuales vamos a generar un flujo de interesados

Más detalles

Cómo ayudar a nuestros hijos e hijas en las tareas escolares si no sabemos euskera?

Cómo ayudar a nuestros hijos e hijas en las tareas escolares si no sabemos euskera? Cómo ayudar a nuestros hijos e hijas en las tareas escolares si no sabemos euskera? Este documento es un resumen de la charla No sabemos euskera, Cómo ayudar a nuestros hijos e hijas en las tareas escolares?.

Más detalles

Análisis de aplicación: Virtual Machine Manager

Análisis de aplicación: Virtual Machine Manager Análisis de aplicación: Virtual Machine Manager Este documento ha sido elaborado por el Centro de Apoyo Tecnológico a Emprendedores bilib, www.bilib.es Copyright 2011, Junta de Comunidades de Castilla

Más detalles

AHORRACOM SOLUCIONES AVANZADAS S.L. Avda. de la Industria 13, Oficina 25. 28108 Alcobendas, Madrid. www.ahorracom.com

AHORRACOM SOLUCIONES AVANZADAS S.L. Avda. de la Industria 13, Oficina 25. 28108 Alcobendas, Madrid. www.ahorracom.com PAGTE Plan de Ahorro y Gestión de Telecomunicaciones para Empresas En Ahorracom nos ponemos de su parte. Por eso nos interesa que usted, nuestro cliente, esté al tanto de todos los procesos que llevamos

Más detalles

Microsoft Access proporciona dos métodos para crear una Base de datos.

Microsoft Access proporciona dos métodos para crear una Base de datos. Operaciones básicas con Base de datos Crear una Base de datos Microsoft Access proporciona dos métodos para crear una Base de datos. Se puede crear una base de datos en blanco y agregarle más tarde las

Más detalles

DESCARGA DE CARPETAS DE MENSAJES DE CORREO DESDE EL WEBMAIL A PC S LOCALES

DESCARGA DE CARPETAS DE MENSAJES DE CORREO DESDE EL WEBMAIL A PC S LOCALES DESCARGA DE CARPETAS DE MENSAJES DE CORREO DESDE EL WEBMAIL A PC S LOCALES 1.- Introducción El objetivo de este documento es la descripción de los pasos a seguir para descargar a nuestros PCs los mensajes

Más detalles

Guía de instalación de la carpeta Datos de ContaWin

Guía de instalación de la carpeta Datos de ContaWin Guía de instalación de la carpeta Datos de ContaWin Para ContaWin CS, Classic o Pyme a partir de la revisión 12.10 (Revisión: 29/06/2011) Contenido Introducción... 3 Acerca de este documento... 3 Dónde

Más detalles

Manual Ingreso Notas y Acta Electrónica

Manual Ingreso Notas y Acta Electrónica Manual Ingreso Notas y Acta Electrónica ÍNDICE ÍNDICE 2 I. INTRODUCCIÓN 3 II. CREAR LA ESTRUCTURA DE NOTAS PARCIALES (OPCIÓN NOTAS NORMALES) _ 4 III. CREAR LA ESTRUCTURA DE NOTA FINAL (OPCIÓN NOTAS CALCULADAS)

Más detalles

WINDOWS 2008 5: TERMINAL SERVER

WINDOWS 2008 5: TERMINAL SERVER WINDOWS 2008 5: TERMINAL SERVER 1.- INTRODUCCION: Terminal Server proporciona una interfaz de usuario gráfica de Windows a equipos remotos a través de conexiones en una red local o a través de Internet.

Más detalles

Visual Studio 2008 es el conjunto de herramientas de

Visual Studio 2008 es el conjunto de herramientas de 1. VISUAL STUDIO 2008 Visual Studio 2008 es el conjunto de herramientas de desarrollo y programación creado por Microsoft tanto para aplicaciones Windows como aplicaciones web. La aparición de Visual Studio

Más detalles

GUIA APLICACIÓN DE SOLICITUDES POR INTERNET. Gestión de Cursos, Certificados de Aptitud Profesional y Tarjetas de Cualificación de Conductores ÍNDICE

GUIA APLICACIÓN DE SOLICITUDES POR INTERNET. Gestión de Cursos, Certificados de Aptitud Profesional y Tarjetas de Cualificación de Conductores ÍNDICE ÍNDICE ACCESO A LA APLICACIÓN... 2 1.- HOMOLOGACIÓN DE CURSOS... 4 1.1.- INICIAR EXPEDIENTE... 4 1.2.- CONSULTA DE EXPEDIENTES... 13 1.3.- RENUNCIA A LA HOMOLOGACIÓN... 16 2.- MECÁNICA DE CURSOS... 19

Más detalles

POWER POINT. Iniciar PowerPoint

POWER POINT. Iniciar PowerPoint POWER POINT Power Point es la herramienta de Microsoft Office para crear presentaciones que permiten comunicar información e ideas de forma visual y atractiva. Iniciar PowerPoint Coloque el cursor y dé

Más detalles

GUÍA DE USUARIO: GOOGLE DRIVE

GUÍA DE USUARIO: GOOGLE DRIVE GUÍA DE USUARIO: GOOGLE DRIVE Google Drive es una herramienta telemática de la web 2.0 que permite el trabajo virtual de forma colaborativa. En Google Drive podemos encontrar una barra de navegación en

Más detalles

ANÁLISIS DE LA WEB: http://recursostic.educacion.es/primaria/hello/web/

ANÁLISIS DE LA WEB: http://recursostic.educacion.es/primaria/hello/web/ ANÁLISIS DE LA WEB: http://recursostic.educacion.es/primaria/hello/web/ Esta página web perteneciente al Ministerio de Educación y realizada en colaboración con las distintas Comunidades Autónomas está

Más detalles

Creación y administración de grupos de dominio

Creación y administración de grupos de dominio Creación y administración de grupos de dominio Contenido Descripción general 1 a los grupos de Windows 2000 2 Tipos y ámbitos de los grupos 5 Grupos integrados y predefinidos en un dominio 7 Estrategia

Más detalles

Educación y capacitación virtual, algo más que una moda

Educación y capacitación virtual, algo más que una moda Éxito Empresarial Publicación No.12 marzo 2004 Educación y capacitación virtual, algo más que una moda I Introducción Últimamente se ha escuchado la posibilidad de realizar nuestra educación formal y capacitación

Más detalles

Escritorio remoto y VPN. Cómo conectarse desde Windows 7

Escritorio remoto y VPN. Cómo conectarse desde Windows 7 Escritorio remoto y VPN. Cómo conectarse desde Windows 7 Hay ocasiones en las que es necesario conectarnos a un equipo informático situado a mucha distancia de donde nos encontramos para realizar sobre

Más detalles

Plataforma e-ducativa Aragonesa. Manual de Administración. Bitácora

Plataforma e-ducativa Aragonesa. Manual de Administración. Bitácora Plataforma e-ducativa Aragonesa Manual de Administración Bitácora ÍNDICE Acceso a la administración de la Bitácora...3 Interfaz Gráfica...3 Publicaciones...4 Cómo Agregar una Publicación...4 Cómo Modificar

Más detalles

Acronis License Server. Guía del usuario

Acronis License Server. Guía del usuario Acronis License Server Guía del usuario TABLA DE CONTENIDO 1. INTRODUCCIÓN... 3 1.1 Generalidades... 3 1.2 Política de licencias... 3 2. SISTEMAS OPERATIVOS COMPATIBLES... 4 3. INSTALACIÓN DE ACRONIS LICENSE

Más detalles

Proyecto MONO. Juantomás García. 1. Introducción. GNOME Hispano juantomas@lared.es

Proyecto MONO. Juantomás García. 1. Introducción. GNOME Hispano juantomas@lared.es Juantomás García GNOME Hispano juantomas@lared.es Qué es el proyecto MONO?. Estado actual del proyecto. Por qué es interesante para el software libre disponer de la tecnología relacionado con el proyecto

Más detalles

COPIAS DE SEGURIDAD AUTOMÁTICAS DE DIRECCIONES CALLEÇPAÑA

COPIAS DE SEGURIDAD AUTOMÁTICAS DE DIRECCIONES CALLEÇPAÑA COPIAS DE SEGURIDAD AUTOMÁTICAS DE DIRECCIONES CALLEÇPAÑA Autor: Carlos Javier Martín González. Licenciado en Física Teórica por la Universidad Autónoma de Madrid. Analista programador y funcional. Desarrollador

Más detalles

Análisis de aplicación: TightVNC

Análisis de aplicación: TightVNC Análisis de aplicación: TightVNC Este documento ha sido elaborado por el Centro de Apoyo Tecnológico a Emprendedores bilib, www.bilib.es Copyright 2011, Junta de Comunidades de Castilla La Mancha. Este

Más detalles

PLATAFORMA VIRTUAL BASADA EN MOODLE

PLATAFORMA VIRTUAL BASADA EN MOODLE PLATAFORMA VIRTUAL BASADA EN MOODLE GUIA PARA LOS ALUMNOS GUIA PARA LOS ALUMNOS El siguiente documento es un manual de usuario para los alumnos en general, que pertenezcan a la Plataforma Virtual basada

Más detalles

Análisis de aplicación: Cortafuegos de la distribución clearos

Análisis de aplicación: Cortafuegos de la distribución clearos Análisis de aplicación: Cortafuegos de la distribución clearos Este documento ha sido elaborado por el Centro de Apoyo Tecnológico a Emprendedores bilib, www.bilib.es Copyright 2011, Junta de Comunidades

Más detalles

Bases de datos en Excel

Bases de datos en Excel Universidad Complutense de Madrid CURSOS DE FORMACIÓN EN INFORMÁTICA Bases de datos en Excel Hojas de cálculo Tema 5 Bases de datos en Excel Hasta ahora hemos usado Excel básicamente para realizar cálculos

Más detalles

Manual para el uso de Skype

Manual para el uso de Skype INDICE I. Conocimientos básicos..3 1. Qué es Skype? 2. Cuál es el objetivo principal? 3. Qué requisitos se requieren para su utilización? 4. Dónde se puede encontrar gratuitamente? 5. Qué beneficios ofrece?

Más detalles

INSTALACION MANUAL DE ECLIPSE EN UBUNTU

INSTALACION MANUAL DE ECLIPSE EN UBUNTU INSTALACION MANUAL DE ECLIPSE EN UBUNTU Objetivos: Pasar correctamente un programa escrito en Pseudocódigo a C. Editar, compilar y comprobar el funcionamiento de programas usando un IDE. Resumen Cuando

Más detalles

UNIVERSIDAD TECNICA DEL NORTE

UNIVERSIDAD TECNICA DEL NORTE UNIVERSIDAD TECNICA DEL NORTE FACULTAD DE INGENIERIA EN CIENCIAS APLICADAS ESCUELA DE INGENIERIA EN SISTEMAS COMPUTACIONALES MANUEL DE USUARIO TEMA: SISTEMA INFORMÁTICO PARA LA PROMOCIÓN Y PUBLICIDAD DE

Más detalles

Ajustes del Curso en egela (Moodle 2.5)

Ajustes del Curso en egela (Moodle 2.5) Ajustes del Curso en egela (Moodle 2.5) Manual para el profesorado Versión 2 (12/05/2015) El presente manual ha sido desarrollado por el Campus Virtual de la Universidad del País Vasco / Euskal Herriko

Más detalles

Capítulo 9. Archivos de sintaxis

Capítulo 9. Archivos de sintaxis Capítulo 9 Archivos de sintaxis El SPSS permite generar y editar archivos de texto con sintaxis SPSS, es decir, archivos de texto con instrucciones de programación en un lenguaje propio del SPSS. Esta

Más detalles

PLANTILLAS DE DOCUMENTOS EN WORD 2007

PLANTILLAS DE DOCUMENTOS EN WORD 2007 1 PLANTILLAS DE DOCUMENTOS EN WORD 2007 Introducción Una plantilla es un modelo o patrón para crear nuevos documentos. En una plantilla se guarda internamente el formato utilizado, es decir, el estilo

Más detalles

Figura 4.6: Prototipo de la pantalla de inicio.

Figura 4.6: Prototipo de la pantalla de inicio. Por lo tanto el siguiente paso ha sido realizar el prototipo a más alto nivel del sitio web, para conocer cómo quiere la empresa que se estructure el contenido y qué aspecto darle. Para ello se ha utilizado

Más detalles

Guía de uso del Cloud Datacenter de acens

Guía de uso del Cloud Datacenter de acens guíasdeuso Guía de uso del Cloud Datacenter de Calle San Rafael, 14 28108 Alcobendas (Madrid) 902 90 10 20 www..com Introducción Un Data Center o centro de datos físico es un espacio utilizado para alojar

Más detalles

Gestión de la Configuración

Gestión de la Configuración Gestión de la ÍNDICE DESCRIPCIÓN Y OBJETIVOS... 1 ESTUDIO DE VIABILIDAD DEL SISTEMA... 2 ACTIVIDAD EVS-GC 1: DEFINICIÓN DE LOS REQUISITOS DE GESTIÓN DE CONFIGURACIÓN... 2 Tarea EVS-GC 1.1: Definición de

Más detalles

CUADERNIA 2.0. CÓMO INSTALAR CUADERNIA 2.0 Para instalar Cuadernia debemos seguir los siguientes pasos:

CUADERNIA 2.0. CÓMO INSTALAR CUADERNIA 2.0 Para instalar Cuadernia debemos seguir los siguientes pasos: CUADERNIA 2.0 Se trata de una herramienta fácil y funcional que nos permite crear de forma dinámica ebooks o libros digitales en forma de cuadernos compuestos por contenidos multimedia y actividades educativas

Más detalles

ESCUELA SUPERIOR DE INFORMATICA Prácticas de Estadística UNA SESIÓN EN SPSS

ESCUELA SUPERIOR DE INFORMATICA Prácticas de Estadística UNA SESIÓN EN SPSS UNA SESIÓN EN SPSS INTRODUCCIÓN. SPSS (Statistical Product and Service Solutions) es un paquete estadístico orientado, en principio, al ámbito de aplicación de las Ciencias sociales, es uno de las herramientas

Más detalles

Prezi: editor de presentaciones

Prezi: editor de presentaciones Prezi: editor de presentaciones Descripción Francisco Mora En momentos en que la Web 2.0 es un entorno de interacción, aparecen múltiples servicios que permiten compartir y editar recursos de forma conjunta.

Más detalles

REDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS

REDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS REDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS Servicio DNS - 1 - Servicio DNS...- 3 - Definición... - 3 - Instalación... - 5 - Configuración del Servidor DNS...- 10 - - 2 - Servicio DNS Definición

Más detalles

1. INTRODUCCIÓN Y OBJETIVOS

1. INTRODUCCIÓN Y OBJETIVOS 1. INTRODUCCIÓN Y OBJETIVOS Los teléfonos móviles son ya parte esencial en nuestra forma de vida y cada día son más los usuarios de estos terminales. Hasta ahora nos han acompañado a todas partes y nos

Más detalles

Hot Potatoes, aplicaciones educativas

Hot Potatoes, aplicaciones educativas Hot Potatoes, aplicaciones educativas Módulo 1: Primeros pasos ÍNDICE MÓDULO 1. PRIMEROS PASOS...1 Qué es Hot Potatoes?... 2 Ventajas de Hot Potatoes... 7 Requisitos...8 Saber más... 9 1 de 10 Aplicaciones

Más detalles

El objetivo principal del presente curso es proporcionar a sus alumnos los conocimientos y las herramientas básicas para la gestión de proyectos.

El objetivo principal del presente curso es proporcionar a sus alumnos los conocimientos y las herramientas básicas para la gestión de proyectos. Gestión de proyectos Duración: 45 horas Objetivos: El objetivo principal del presente curso es proporcionar a sus alumnos los conocimientos y las herramientas básicas para la gestión de proyectos. Contenidos:

Más detalles

Gestión de proyectos

Gestión de proyectos Gestión de proyectos Horas: 45 El objetivo principal del presente curso es proporcionar a sus alumnos los conocimientos y las herramientas básicas para la gestión de proyectos. Gestión de proyectos El

Más detalles

CENTENARIA Y BENEMÈRITA ESCUELA NORMAL DEL ESTADO DE QUERETARO ANDRES BALVANERA UNIDAD JALPAN SEMINARIO DE ANALISIS Y TRABAJO DOCENTE

CENTENARIA Y BENEMÈRITA ESCUELA NORMAL DEL ESTADO DE QUERETARO ANDRES BALVANERA UNIDAD JALPAN SEMINARIO DE ANALISIS Y TRABAJO DOCENTE CENTENARIA Y BENEMÈRITA ESCUELA NORMAL DEL ESTADO DE QUERETARO ANDRES BALVANERA UNIDAD JALPAN SEMINARIO DE ANALISIS Y TRABAJO DOCENTE DOCENTE: Edith Rangél Ángeles ALUMNA: Castañeda Valladares Lizei Marlene

Más detalles

Instalar protocolo, cliente o servicio nuevo. Seleccionar ubicación de red. Práctica - Compartir y conectar una carpeta

Instalar protocolo, cliente o servicio nuevo. Seleccionar ubicación de red. Práctica - Compartir y conectar una carpeta Configuración de una red con Windows Aunque existen múltiples sistemas operativos, el más utilizado en todo el mundo sigue siendo Windows de Microsoft. Por este motivo, vamos a aprender los pasos para

Más detalles

Software de Simulación aplicado a entornos de e-learning

Software de Simulación aplicado a entornos de e-learning Software de Simulación aplicado a entornos de e-learning 2009 Laboratorio de Investigación de Software Universidad Tecnológica Nacional Facultad Regional Córdoba Titulo del Proyecto Software de Simulación

Más detalles

Infraestructura Tecnológica. Sesión 8: Configurar y administrar almacenamiento virtual

Infraestructura Tecnológica. Sesión 8: Configurar y administrar almacenamiento virtual Infraestructura Tecnológica Sesión 8: Configurar y administrar almacenamiento virtual Contextualización Como sabemos, actualmente los servicios y medios de almacenamiento de información son muy variados,

Más detalles

Sesión No. 4. Contextualización INFORMÁTICA 1. Nombre: Procesador de Texto

Sesión No. 4. Contextualización INFORMÁTICA 1. Nombre: Procesador de Texto INFORMÁTICA INFORMÁTICA 1 Sesión No. 4 Nombre: Procesador de Texto Contextualización La semana anterior revisamos los comandos que ofrece Word para el formato del texto, la configuración de la página,

Más detalles

Instalación de la aplicación de COAS Visado Digital

Instalación de la aplicación de COAS Visado Digital Manual de instalación de la aplicación de COAS Visado Digital Página 1 Instalación de la aplicación de COAS Visado Digital A. Requerimientos del Sistema (requisitos del equipo sobre el que se va a realizar

Más detalles

LMS: Manual de la familia

LMS: Manual de la familia Sistema UNOi LMS: Manual de la familia En este Learning Coffee aprenderá a: Acceder a la plataforma y editar su cuenta. Acceder a sus notificaciones. Consultar el calendario. Consultar clases, proyectos

Más detalles

Introducción a la plataforma Moodle Aníbal de la Torre 2006. Plataforma Moodle. Accediendo a los contenidos

Introducción a la plataforma Moodle Aníbal de la Torre 2006. Plataforma Moodle. Accediendo a los contenidos Plataforma Moodle Accediendo a los contenidos Formatos ----------------------------------------------------------------------- 2 Glosarios -----------------------------------------------------------------------

Más detalles

LA PIZARRA DIGITAL. UNA NUEVA METODOLOGÍA EN EL AULA?

LA PIZARRA DIGITAL. UNA NUEVA METODOLOGÍA EN EL AULA? MEMORIA FINAL DEL PROYECTO DE INVESTIGACIÓN: LA PIZARRA DIGITAL. UNA NUEVA METODOLOGÍA EN EL AULA? 1 ÍNDICE 1. PRESENTACIÓN 2. OBJETIVOS DEL PROYECTO DE INVESTIGACIÓN 3. HIPÓTESIS DE LA INVESTIGACIÓN 4.

Más detalles

DOCUMENTOS COMPARTIDOS CON GOOGLE DOCS

DOCUMENTOS COMPARTIDOS CON GOOGLE DOCS DOCUMENTOS COMPARTIDOS CON GOOGLE DOCS 1. Introducción Los ambientes de aprendizaje acompañados de trabajos colaborativos como estrategia se revierten en actividades de diferente índole (análisis de videos,

Más detalles

Manual del Usuario. Sistema de Help Desk

Manual del Usuario. Sistema de Help Desk Manual del Usuario Sistema de Help Desk Objetivo del Manual El siguiente manual tiene como objetivo proveer la información necesaria para la correcta utilización del sistema Help Desk. Describe los procedimientos

Más detalles

Uso de Visual C++ Pre-Practica No. 3

Uso de Visual C++ Pre-Practica No. 3 Pre-Practica No. 3 Uso de Visual C++ Microsoft Visual C++ 2010 es una versión de Visual Studio específica para el lenguaje de programación C++. Es un entorno de desarrollo muy completo y profesional. Por

Más detalles

GUÍA RED SOCIAL FACEBOOK

GUÍA RED SOCIAL FACEBOOK GUÍA RED SOCIAL FACEBOOK Qué es una Red Social? Una Red Sociales un sitio en internet donde compartir información, mensajes, ideas, fotos, etc., con amigos, conocidos y desconocidos. Para acceder a una

Más detalles

Programación de videjuegos

Programación de videjuegos Programación de videjuegos INFORMACIÓN - Programación de videojuegos con Scratch para alumnos de 3º a 6ºde primaria y 1º de ESO. - Programación de videojuegos con GameMaker y GML para alumnos de 2º, 3º

Más detalles

Plataforma Helvia. Manual de Administración Administración General. Versión 6.08.05

Plataforma Helvia. Manual de Administración Administración General. Versión 6.08.05 Plataforma Helvia Manual de Administración Administración General Versión 6.08.05 Índice de contenidos INTRODUCCIÓN... 3 ENFOQUE...3 LA ADMINISTRACIÓN GENERAL...3 ACCESO A LA ADMINISTRACIÓN GENERAL...

Más detalles

Un Banner es un gráfico, generalmente elaborado en un formato de archivo.gif o JPG, de aproximadamente 400 x 40 pixeles, el cual se coloca como un encabezado o una representación de una "Página en un Website".

Más detalles

WINDOWS 2008 7: COPIAS DE SEGURIDAD

WINDOWS 2008 7: COPIAS DE SEGURIDAD 1.- INTRODUCCION: WINDOWS 2008 7: COPIAS DE SEGURIDAD Las copias de seguridad son un elemento fundamental para que el trabajo que realizamos se pueda proteger de aquellos problemas o desastres que pueden

Más detalles

Módulo III. Aprendizaje permanente Tema 4: Aprendizaje de actividades laborales Entrevista. El papel de las familias como impulsoras del empleo

Módulo III. Aprendizaje permanente Tema 4: Aprendizaje de actividades laborales Entrevista. El papel de las familias como impulsoras del empleo Módulo III. Aprendizaje permanente Tema 4: Aprendizaje de actividades laborales Entrevista. El papel de las familias como impulsoras del empleo Carmen Ochoa Berrozpe Pedagoga Responsable del Programa de

Más detalles

PLANTILLAS EN MICROSOFT WORD

PLANTILLAS EN MICROSOFT WORD PLANTILLAS EN MICROSOFT WORD Una plantilla es un modelo o patrón para crear nuevos documentos. En una plantilla se guarda internamente el formato utilizado, es decir, el estilo de la fuente, el tamaño,

Más detalles

El ejemplo de wiki más conocido es la enciclopedia universal colaborativa wikipedia.

El ejemplo de wiki más conocido es la enciclopedia universal colaborativa wikipedia. UNIDAD 4: WIKIS Qué es un wiki? El término con el que comenzó conociéndose esta herramienta es WikiWiki, de origen hawaiano que significa rápido. Un wiki es un sitio web con distinta páginas donde el contenido

Más detalles

CITRIX 4.5 - Citrix Application Streaming

CITRIX 4.5 - Citrix Application Streaming 1 de 39 01/12/2007 1:06 CITRIX 4.5 - Citrix Application Streaming Es la caracteristica principal de la versión 4.5 de Citrix, el Application Streaming, en este documento se explica cómo usarlo. Application

Más detalles

Este documento se distribuye bajo los términos de la licencia Creative Commons by sa. http://creativecommons.org/licenses/by sa/2.

Este documento se distribuye bajo los términos de la licencia Creative Commons by sa. http://creativecommons.org/licenses/by sa/2. Análisis de aplicación: Visual Understanding Environment (VUE) Este documento ha sido elaborado por el Centro de excelencia de software libre de Castilla La Mancha (Ceslcam, http://ceslcam.com). Copyright

Más detalles

1.4.1.2. Resumen... 1.4.2. ÁREA DE FACTURACIÓN::INFORMES::Pedidos...27 1.4.2.1. Detalle... 1.4.2.2. Resumen... 1.4.3. ÁREA DE

1.4.1.2. Resumen... 1.4.2. ÁREA DE FACTURACIÓN::INFORMES::Pedidos...27 1.4.2.1. Detalle... 1.4.2.2. Resumen... 1.4.3. ÁREA DE MANUAL DE USUARIO DE ABANQ 1 Índice de contenido 1 ÁREA DE FACTURACIÓN......4 1.1 ÁREA DE FACTURACIÓN::PRINCIPAL...4 1.1.1. ÁREA DE FACTURACIÓN::PRINCIPAL::EMPRESA...4 1.1.1.1. ÁREA DE FACTURACIÓN::PRINCIPAL::EMPRESA::General...4

Más detalles

Programa diseñado y creado por 2014 - Art-Tronic Promotora Audiovisual, S.L.

Programa diseñado y creado por 2014 - Art-Tronic Promotora Audiovisual, S.L. Manual de Usuario Programa diseñado y creado por Contenido 1. Acceso al programa... 3 2. Opciones del programa... 3 3. Inicio... 4 4. Empresa... 4 4.2. Impuestos... 5 4.3. Series de facturación... 5 4.4.

Más detalles

CAPÍTULO 3 VISUAL BASIC

CAPÍTULO 3 VISUAL BASIC CAPÍTULO 3 VISUAL BASIC 3.1 Visual Basic Microsoft Visual Basic es la actual y mejor representación del viejo lenguaje BASIC, le proporciona un sistema completo para el desarrollo de aplicaciones para

Más detalles

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA Documento de trabajo elaborado para la Red Temática DocenWeb: Red Temática de Docencia en Control mediante Web (DPI2002-11505-E)

Más detalles

El proceso de edición digital en Artelope y CTCE

El proceso de edición digital en Artelope y CTCE El proceso de edición digital en Artelope y CTCE Carlos Muñoz Pons Universitat de València carlos.munoz-pons@uv.es Introducción Una de las cuestiones más importantes a la hora de trabajar en proyectos

Más detalles

BASE DE DATOS FINANCIADA POR:

BASE DE DATOS FINANCIADA POR: TERCER CONCURSO DE EXPERIENCIAS MENCIÓN ESPECIAL (B) Acercar la asociación a las familias APA CP SEIS DE DICIEMBRE. Madrid. FAPA Francisco Giner de los Ríos. DESCRIPCIÓN DEL PROYECTO Para incrementar la

Más detalles

Cómo elegir tu SOFTWARE DE GESTIÓN?

Cómo elegir tu SOFTWARE DE GESTIÓN? Cómo elegir tu SOFTWARE DE GESTIÓN? 00 Introducción Tu empresa está en expansión y has decidido integrar todas las áreas de tu negocio para seguir creciendo. Has iniciado la búsqueda de un software de

Más detalles

COMO CONFIGURAR UNA MAQUINA VIRTUAL EN VIRTUALBOX PARA ELASTIX

COMO CONFIGURAR UNA MAQUINA VIRTUAL EN VIRTUALBOX PARA ELASTIX COMO CONFIGURAR UNA MAQUINA VIRTUAL EN VIRTUALBOX PARA ELASTIX En este manual se presenta el proceso de configuración de una Maquina Virtual en VirtualBox, que será utilizada para instalar un Servidor

Más detalles

Una plantilla es un documento de Word 2003 con la característica de que el tipo de documento es plantilla de documento (.dot).

Una plantilla es un documento de Word 2003 con la característica de que el tipo de documento es plantilla de documento (.dot). Unidad 3. Plantillas Objetivos de la unidad: Una plantilla es un documento prediseñado que usted puede usar para crear nuevos documentos con el mismo formato. A través de una plantilla, el aspecto de un

Más detalles

HOT POTATOES: UNA NUEVA HERRAMIENTA EDUCATIVA

HOT POTATOES: UNA NUEVA HERRAMIENTA EDUCATIVA HOT POTATOES: UNA NUEVA HERRAMIENTA EDUCATIVA ÍNDICE: 1. Introducción 2. Programa Hot Potatoes 3. Requisitos del programa 4. Configuración de Hot Potatoes 5. Bibliografía 1. INTRODUCCIÓN Con la aparición

Más detalles

Accede a su DISCO Virtual del mismo modo como lo Hace a su disco duro, a través de:

Accede a su DISCO Virtual del mismo modo como lo Hace a su disco duro, a través de: Gemelo Backup Online DESKTOP Manual DISCO VIRTUAL Es un Disco que se encuentra en su PC junto a las unidades de discos locales. La información aquí existente es la misma que usted ha respaldado con su

Más detalles