Diferencia entre revisiones de «Trabajo:Ayuda en la elección de asignaturas optativas»

De FdIwiki ELP
Saltar a: navegación, buscar
(Página creada con « =Introducción= En los Grados de Ingeniería Informática, Ingeniería del Software e Ingeniería de Computadores ofrecidos en la Facultad de Informática de la Universi...»)
 
Línea 88: Línea 88:
 
</ol>
 
</ol>
 
</ul>
 
</ul>
 +
 +
=Integrantes del grupo=
 +
* Daniel Ortiz Sánchez
 +
* Miriam González Rodríguez
 +
* Alejandro Villarín Prieto
 +
* Miguel Marzal García
  
  

Revisión de 19:57 24 dic 2015

Introducción

En los Grados de Ingeniería Informática, Ingeniería del Software e Ingeniería de Computadores ofrecidos en la Facultad de Informática de la Universidad Complutense se deben cursar un total de 30 créditos optativos. Estos créditos pueden obtenerse por actividades formativas (hasta 6 créditos), por prácticas en empresas (hasta 12 créditos) o bien mediante las asignaturas optativas ofertadas, la lista de éstas es extensa y comprende:

  • Análisis de redes sociales (nueva) [
  • Aprendizaje automático y Big Data
  • Arquitectura Interna de Linux y Android
  • Bases de Datos noSQL (nueva)
  • Calculabilidad y Complejidad (nueva)
  • Cloud y Big Data (nueva)
  • Criptografía y teoría de códigos
  • Creación de empresas
  • Desarrollo de videojuegos mediante tecnologías web
  • Diseño Automático de Sistemas
  • Especificación, validación y testing
  • Gestión de la Información en la web
  • Herramientas informáticas para los juegos de azar (nueva)
  • Informática Gráfica
  • Ingeniería web
  • Interfaces de usuario
  • Inteligencia artificial aplicada al control
  • Investigación operativa
  • Los escenarios científicos y tecnológicos emergentes y la defensa
  • Minería de Datos y el paradigma Big Data
  • Percepción computacional
  • Programación de aplicaciones para dispositivos móviles
  • Programación evolutiva
  • Programación con restricciones
  • Programación de GPUs y aceleradores
  • Programación paralela para móviles y multicores
  • Robótica (nueva)
  • Sistemas Inteligentes (sólo GII-Tecnología de la Información)
  • Seguridad en Redes (todos los grados menos GII-Tecnología de la Información

Objetivo

Como hemos visto son necesarias al menos dos y hasta cinco asignaturas optativas elegidas de la lista mencionada anteriormente para poder obtener todos los créditos requeridos y esta elección puede resultar ardua dado el escaso conocimiento que en ocasiones se tiene sobre el programa o contenido de las mismas.

Nuestro objetivo principal es facilitar esta tarea a los alumnos mediante una herramienta con el fin de que la decisión tomada pueda basarse en unos argumentos sólidos y mejorar así su experiencia universitaria.

Descripción de las herramientas

Nube de palabras

Una de las medidas que hemos diseñado para facilitar la elección es el desarrollo de una herramienta que analice la ficha docente de cada asignatura y muestre en una nube de palabras los términos más repetidos, a modo de ejemplo:

NubeEjemplo.bmp

Decidimos realizar la nube sólo de 6 optativas, ya que ésta es una primera versión, y la ampliación al resto de optativas en el futuro no tendría un coste muy elevado. Para cada una de ellas hemos obtenido la ficha docente desde la página de la facultad y hemos tratado de captar una ligera idea sobre el temario de las asignaturas para conseguir un resultado más fiel. Las optativas elegidas son:

  • Percepción computacional
  • Análisis de redes sociales
  • Diseño automático de sistemas
  • Sistemas inteligentes
  • Programación de GPUS y aceleradores
  • Arquitectura interna de Linux y Android

Pasos seguidos hasta conseguir la nube

    1. Conversión del archivo pdf de la ficha de la asignatura a txt. Para analizar las palabras es necesario que el tipo del archivo sea txt, para lo cual utilizaremos un conversor. Nos decidimos por el programa “pdf-text-extraction” disponible en github de “Noah Isaacson”. Este programa tiene dependencias del módulo “yargs” con licencia MIT de “Benjamin E. Coe”. El motivo de nuestra elección es que una vez instalado es muy fácil de usar desde la línea de comandos, proporciona una alta calidad en la conversión y utiliza el lenguaje javascript, que nos será útil más adelante si queremos insertarlo en la web. Modo de empleo desde consola: “node pdf2text.js archivo.pdf” Esto nos guardaría en la carpeta indicada en el programa el archivo pdf convertido a txt.
    2. Obtención de las palabras más repetidas Una vez que tenemos las fichas docentes en formato txt necesitamos sacar las palabras más repetidas. A pesar de las múltiples herramientas disponibles para filtrar texto ya existentes nos decidimos por crear nosotros mismos el código ya que queríamos un filtro muy especial para conseguir que las palabras obtenidas tengan sentido y sean coherentes con el propósito del trabajo. Realizamos una primera versión en Java para realizar pruebas y depuración con una mayor fluidez. En este punto vamos anotando las palabras más repetidas de cada optativa y comprobando que tienen sentido y que realmente ayudan al usuario. Después se realizará una segunda versión del programa, esta vez en Javascript, para poder integrar el programa anterior de conversión de pdf a txt con el de búsqueda de palabras más repetidas. Se vuelve a comprobar que las palabras resultantes son las mismas que las obtenidas con el programa independiente en Java. De esta manera, una vez introduzcamos el pdf a convertir, nos devolvería un txt directamente ya con las palabras más repetidas automatizando mucho el proceso. El programa final es el siguiente (pdf2text.js[1]).
    3. Realización de nube (palabras aleatorias) Para la realización de la nube usamos las bibliotecas jqcloud de “Damian Sorel” con licencia MIT y jquery con doble licencia MIT y GNU GPL accediendo a esta última desde “googleaplis”. Elegimos estas bibliotecas por la amplia información que hay sobre ellas en Internet (tutoriales), la facilidad de proporcionar mejoras en el futuro (opciones de alerts/link en las palabras), y su facilidad de uso (atributos como color, text, fontSize…). Decidimos crear una copia de la página de la facultad donde creemos que se produciría la integración de la nube para así poder realizar pruebas con una mayor fiabilidad. En un primer momento introducimos las palabras de la nube aleatoriamente para probar el aspecto visual.
    4. Introducción de las palabras en la nube Una vez que tenemos las palabras en un txt solo hace falta escribirlas en el html que se encarga de crear la nube con las palabras que le indiquemos. Este paso se podía haber hecho mucho más automático usando lenguajes como php para cargar los archivos txt e ir leyendo las palabras más repetidas una a una, pero al no disponer del código “real” donde se usaría realmente decidimos hacerlo con html y en mejoras futuras pasarlo a php de un modo mucho más automatizado.

Integrantes del grupo

  • Daniel Ortiz Sánchez
  • Miriam González Rodríguez
  • Alejandro Villarín Prieto
  • Miguel Marzal García


Recursos