tasaEncuesta Web: AutoNota!

Proyecto para Programación de Sistemas [ELO - 330], por Roberto Vargas H.

Introducción y motivación - Implementación - Programa en si - Links de interes - Anexos - Códigos

Quien no ha presentado alguna ves algún proyecto, hecho una presentación o tan solo exponer un tema. Para algunas personas resulta simpatico salvo por el hecho de que, en la mayoría de los casos, alguien nos esta evaluando. Motivo de estas evaluaciones es claro: a futuro, nos tocaran muchas entrevistas, reuniones... instancias en general donde tendremos que dirigirle la palabra a un grupo (ojalá no menor). Es importante que nos despleguemos bien y hablemos de forma precisa y sin que los nervios nos interrumpan.

A la hora de evaluar una presentación, el profesor espera el mejor desempeño de sus alumnos en diferentes aspectos como desplante, conosimientos, soluciones, implementaciones, interpretación de la materia y conclusiones. Sin embargo, hay que considerar que una audiencia no solo consiste del profesor, sino que también de alumnos dispuestos a prestar la atención (normalmente, en proporción al interes que el tema en exposición les de). De justa manera, ellos pueden diferir de la opinión del profesor evaluador con respecto a los puntos en discusión. Es por este motivo que, como es el caso de este ramo, parte de la nota que un grupo expositor obtiene proviene nada mas y nada menos que de los propios alumnos.

A pesar de ser buena practica, esto se puede volver en una gran carga. Si consideramos que, para este semestre solo se tienen 11 grupos. Si todos los alumnos asistieran a dichas presentaciones, con un publico promedio de 15 personas, se obtendrían mas de 160 notas, de las cuales, considerando tan solo los campos anteriores, nos dejarían un monto mayor de 900 campos, los cuales deben ser ponderados y promediados.

Es debido a esto que, como proyecto personal, ofrezco una solución a esto: AutoNota!

Como sus siglas indican, AutoNota es ANónimo. Conserva los beneficios de evaluar de forma honrada a tus compañeros con el beneficio del anonimato y aprovecha las ventajas de mantener todas las notas de forma que puedan ser rapidamente ponderadas. Por otra parte, mantiene un registro de las notas para poder acceder a ellas en todo momento.

tablas

Figura 1: Tablas representando presentaciones mediante AutoNota!

Herramientas: JDBC y MYSQL

Desde Java 1.1, se ofrece una API para el desarrollo de sistemas con conexiones a bases de datos. JDBC (Java DataBase Conectivity) ofrece una manera comoda de poder interactuar con bases de datos relacionales, manteniendo relaciones del tipo "objeto-relacional" con respecto a tablas presentes en ellas. Para poder usarlas, deben realizar ciertos preparativos:

1.- Drivers:

Existe una gran cantidad de proveedores de bases de datos. Es por esto que uno debe especificar con cual se trabajara para poder cargar los drivers respectivos:

import java.sql.*;

Class.forName("com.mysql.jdbc.Driver");

Existe un driver para diferentes bases de datos.

 

2.- Conexión:

Una ves cargados los drivers, se debe establecer la conexión:

String url = "jdbc:mysql://<host>:<port>/<db>";


con = DriverManager.getConnection((String) url, (String) username, (String) password);

El url dependera de la base de datos con la que estemos relacionandonos.

 

3.- Creación de la sentencia:

Con todos los pasos anteriores listos, uno crea una sentencia sobre la cual uno podrá ejecutar comandos mediante SQL nativo:

Statement st = con.createStatement();

 

4.- Interacción con la base de datos:

Usando nuestra recientemente creada Statement podemos generar dos tipos de consultas:

(int) st.executeUpdate(String query);

ResultSet rs = st.executeQuery(String query);

ExecuteUpdate (Como su nombre intuye) ejecutara query en la base de datos. Retornara el numero de filas modificadas

ExecuteQuery realizara la consulta query, retornano un ResultSet con el cual se pueden obtener los valores mediante:

rs.next();

rs.getInt(String columna);

rs.getChar(int columna);

Y asi, para cada tipo primitivo de datos...

 

profe

Figura 2: AutoNota! Apariencia amistosa

Esta pestaña <Presentaciones> permite administrar las diferentes presentaciones. Mediante la lista desplegable uno puede crear una nueva presentación o seleccionar una ya existente en curso.

A la hora de crear una nueva presentación, nuevas opciones aparecerán referentes al nombre de esta presentación y la cantidad de entradas que tendrá:

nueva

Figura 3: Creando una nueva presentación con AutoNota!

Una vez creada, se despliegara en el recuadro todas las contraseñas generadas para que el profesor pueda copiarlas y pegarlas para luego, imprimirlas y repartirlas al curso. Cada una de estas contraseñas representara una opción de evaluación... no la pierdas!

En cualquier momento, uno puede seleccionar una presentación de la lista y apretar "Evaluar". Esto mostrara en el cuadro de dialogo un reporte completo con los promedios y cantidad de entradas respondidas hasta el momento:

eval

Figura 4: Reporte generado mediante AutoNota!

alumno

Figura 4: AutoNota! para alumnos

El alumno tan solo debe seleccionar la presentación para la cual su contraseña es valida, escribir su contraseña, ponderar los campos con su respectiva nota (0 a 100) y apretar "Contestar".

 

Java API 1.6

The Java Tutorials: JDBC

WampServer (Server de aplicación gratuito Apache, PHP y MySQL para Windows)

 

Presentación JDBC: Tomás Girardi, Pablo Benapres y Roberto Vargas ELO-326

Carpeta de proyecto NetBeans: AutoNota! profesor

Carpeta de proyecto NetBeans: AutoNota! alumno (applet)

Pagina hecha por mi, con Dreamweaver CS3 y sin mucha ciencia...

25 de Noviembre del 2008