Integrantes: Nicolás Frois
Un problema que he identificado durante mi estadía en la universidad es lo engorroso que se hace coordinar el horario de ayudantía en algunos ramos, esto se da principalmente en ramos en que el alumnado es de carreras diferentes, por lo que la existencia de un horario en común entre los alumnos y el ayudante se dificulta. En la actualidad el método mas utilizado para coordinar el o los horarios de ayudantía es un proceso sin un mayor apoyo tecnologico, el ayudante asiste a la sala, y se recorren uno a uno los horarios disponibles preguntando, a mano alzada, que alumnos tienen tope, esto genera discusiones innecesarias, perdida de tiempo, perdida de clases, y confusión, sin embargo, todo esto puede ser evitado. Se propone una solucición basada en lo aprendido en el curso sobre comunicación de procesos no concentrados, el programa propuesto es capaz de definir 1 o 2 horarios de ayudantía facilitando la tarea del ayudante calculando las mejores opciones entre los horarios ingresados, de manera inmediata, el mayor consumo de tiempo se llevará acabo tan solo al ingresar el horario de cada alumno y ayudante a coordinar. Cabe destacar que la solución aqui expuesta no esta lista para ser implementada en casos reales debido a que esta debiese ser mucho mas amigable con los usuarios sin conocimientos de computación, considero la solución que se presenta acá como un primer paso para poder llegar a una aplicación de real utilidad dentro de la universidad.
El sistema desarrollado es un Servidor que ejecuta el ayudante y que atiende Clientes que son los alumnos del ramo a coordinar.
A continuación se detalla la secuencia de pasos que el programa toman para la coordinación de ayudantía:
Como antes se dijo, este programa cumple las funciones básicas del servicio de coordinación de horario para ayudantía, sin embargo aún le falta mucho para llegar a ser una aplicación usable en la vida real debido a que es de muy dificil acceso a los usuarios a los que está destinada, como siguiente paso, es necesaria una interfaz de usuario visual que indique de manera mas clara el estado del programa.
Actualmente la información debe ingresarse de manera aún engorrosa, el horario se debe ingresar por día como una cadena de hasta 7 digitos '0' o '1' en que 0 representa un bloque disponible para el usuario y 1 representa un bloque ocupado para el usuario, la primera posicion representa al primer bloque del día, hasta llegar a la ultima posicion de la cadena que representa el septimo bloque del día.
A continuación se muestra un ejemplo de lo antes descrito:
1101100
A continuación se presenta un ejemplo simulado de un ayudante y 3 alumnos:
Las reglas
La principal dificultad fue el manejo de la información y el como hacer de este un proceso mas sencillo y rápido de calcular, esto se simplificó al momento de analizar los posibles casos que podía adoptar el problema, luego de esto la implementación fue mucho mas llevadera.
UI
La idea de que exista esta aplicación es para facilitar la vida universitaria en un aspecto de solución relativamente sencilla, sin embargo, para que este programa sea realmente útil, es necesario que los usuarios puedan interactuar con el programa mediante una interfaz gráfica, de esta forma se merma la barrera de entrada al programa que actualmente es bastante alta.
Para descargar el código fuente, haz click aquí