12.07.2015 Views

VIII Jornadas de Enseñanza Universitaria de la Informática Cáceres ...

VIII Jornadas de Enseñanza Universitaria de la Informática Cáceres ...

VIII Jornadas de Enseñanza Universitaria de la Informática Cáceres ...

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

lugar <strong>de</strong> pedir que dado el enunciado <strong>de</strong> unaconsulta los alumnos encuentren <strong>la</strong> respuesta, pi<strong>de</strong>que dada una SELECT -que parece resolver unenunciado- los alumnos encuentren una extensión<strong>de</strong> <strong>la</strong> tab<strong>la</strong> para <strong>la</strong> que dicha SELECT no cumplesu cometido, los alumnos no pue<strong>de</strong>n realizar dichoejercicio utilizando el sistema.Por lo tanto, en este caso se necesita unaaproximación que <strong>de</strong> más libertad al alumno. Paraque el alumno pueda cambiar <strong>la</strong>s extensiones <strong>de</strong><strong>la</strong>s tab<strong>la</strong>s <strong>de</strong>l profesor necesita po<strong>de</strong>r hacerINSERT-UPDATE-DELETE. Si el profesorcomparte sus tab<strong>la</strong>s permitiendo estas operacionesa los alumnos, se verá obligado a pasar todo eltiempo restaurando su copia <strong>de</strong> seguridad <strong>de</strong> <strong>la</strong>smismas, con el disgusto <strong>de</strong> los alumnos queestuviesen interesados en mantener sus cambios.Por el contrario, si cada alumno tiene sus propiastab<strong>la</strong>s, el profesor no tiene un mecanismo sencillo<strong>de</strong> propagar sus cambios sobre <strong>la</strong>s mismas a losalumnos. A<strong>de</strong>más los alumnos, serían responsables<strong>de</strong> recuperar <strong>la</strong>s tab<strong>la</strong>s con los contenidos quetenga el profesor en cada momento.Por todo ello, vemos que ninguna <strong>de</strong> <strong>la</strong>ssoluciones p<strong>la</strong>nteadas son <strong>de</strong>l todo satisfactoriascomo para impartir c<strong>la</strong>ses prácticas que versensobre el comando SELECT.2.2. Insert-Delete-Update y <strong>la</strong> ConcurrenciaLos comandos <strong>de</strong> modificación <strong>de</strong>l contenido<strong>de</strong> <strong>la</strong>s tab<strong>la</strong>s exigen que los alumnos tengan lospermisos correspondientes.A<strong>de</strong>más, es necesario que el sistema disponga<strong>de</strong>, al menos, el nivel control <strong>de</strong> concurrenciaserializable <strong>de</strong> SQL/ISO[6] para que los alumnospuedan experimentar con <strong>la</strong> concurrenciamanteniendo -cada alumno- varias sesionesabiertas que accedan sobre los mismos datos. Silos alumnos comparten <strong>la</strong>s mismas tab<strong>la</strong>s, pue<strong>de</strong>nbloquearse entre ellos si no cierran <strong>la</strong>stransacciones, <strong>de</strong>jando en espera a suscompañeros. Por ello, parece más indicado quecada alumno tenga sus propias tab<strong>la</strong>s.Sin embargo, como ya se ha comentado en 2.1,si los alumnos trabajan con sus propias tab<strong>la</strong>s, elprofesor pier<strong>de</strong> el control sobre el estado <strong>de</strong> <strong>la</strong>base <strong>de</strong> datos <strong>de</strong> cada alumno, por lo que le esdifícil proponer ejercicios en los que <strong>de</strong> antemanose sepa que el sistema va a producir el mismoresultado en todos los alumnos. De otro <strong>la</strong>do, si losalumnos comparten <strong>la</strong>s mismas tab<strong>la</strong>s que elprofesor, pudiendo modificar su estado, a<strong>de</strong>máslos problemas <strong>de</strong> concurrencia ya mencionados,tampoco el profesor contro<strong>la</strong>ría el estado <strong>de</strong> <strong>la</strong>base <strong>de</strong> datos. Nótese que este caso es muy simi<strong>la</strong>ral <strong>de</strong> <strong>la</strong> SELECT, y tampoco se tiene una solucióna<strong>de</strong>cuada.Tanto si se comparten o no <strong>la</strong>s tab<strong>la</strong>s <strong>de</strong>lprofesor, el crecimiento <strong>de</strong> <strong>la</strong>s tab<strong>la</strong>s y suocupación <strong>de</strong> espacio <strong>de</strong> disco <strong>de</strong>be <strong>de</strong> estaracotado para no perjudicar a otros posiblesusuarios <strong>de</strong>l sistema, quizás alumnos <strong>de</strong> otrasasignaturas.2.3. DDLLos contenidos a impartir sobre DDL son <strong>la</strong>creación <strong>de</strong> tab<strong>la</strong>s, incluyendo restricciones, yvistas. Para que el alumno pueda experimentar sehace necesario que tenga privilegios para crear yeliminar este tipo <strong>de</strong> objetos. Debido a que losalumnos ten<strong>de</strong>rán a crear tab<strong>la</strong>s con nombresparecidos a los <strong>de</strong> sus compañeros, habría quehabilitar algún mecanismo para que cada alumnotuviese un especio <strong>de</strong> nombres distinto. Ensistemas como Oracle[5], don<strong>de</strong> cada usuario tienesu propio espacio <strong>de</strong> nombres, <strong>la</strong> solución es dotara cada alumno con una cuenta distinta <strong>de</strong> usuario.Asimismo, hay que contro<strong>la</strong>r que <strong>la</strong>s tab<strong>la</strong>sque creen los alumnos no puedan crecerin<strong>de</strong>finidamente, asociándo<strong>la</strong>s una cuota <strong>de</strong> discomáxima por <strong>de</strong>fecto, y un espacio <strong>de</strong> disco que nointerfiera con otros posibles usos <strong>de</strong> <strong>la</strong> base <strong>de</strong>datos. En este sentido, nuevamente esrecomendable que cada alumno sea un usuariodistinto; <strong>de</strong> lo contrario, un alumno pue<strong>de</strong> eliminaro hacer crecer <strong>de</strong>masiado tab<strong>la</strong>s <strong>de</strong> suscompañeros intencionadamente o por <strong>de</strong>scuido.Finalmente, el sistema que elijamos <strong>de</strong>be <strong>de</strong>permitir actualizar vistas fácilmente, pues <strong>la</strong>actualización <strong>de</strong> vistas es parte <strong>de</strong> los contenidos aimpartir.Como conclusión, <strong>la</strong>s prácticas DDL si quetienen una respuesta a<strong>de</strong>cuada, simplemente dando<strong>de</strong>terminados privilegios a los alumnos, pero sinque puedan tocar <strong>la</strong>s tab<strong>la</strong>s <strong>de</strong>l profesor. La únicacuestión relevante es tener un sistema con espacios

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!