Sistema Generador de Evaluaciones Aleatorias

      Departamento de Ciencias Computacionales
      Amador Ortiz Juan José, Padrón Hernández Antonio

       RESUMEN
      Con la problemática que existe al realizar/aplicar exámenes, variado las preguntas y tener uno diferente para cada alumno a evaluar, el maestro se encuentra ante la necesidad de hacer varios exámenes diferentes, para evitar o disminuir problemas comunes entre sus alumnos, como son: el copiar, intercambiar exámenes, entre otros. Por lo que implementa un Sistema Generador de Evaluaciones Aleatorias, con el que se evita dicha problemática. La idea de este tema, surge de un profesor del Departamento de Ciencias Computacionales de la Universidad de Guadalajara, él plantea la posibilidad de llevar acabo de manera más sencilla y diversa las evaluaciones a su alumnado. Su principal observación radica en que cada alumno que fuera a evaluar tuviera un examen diferente. Con el desarrollo de este sistema se planea cubrir las expectativas de este profesor y de otros más. Se planea desarrollar para que se aplique a cualquier materia o ámbito de trabajo en el que se requieran evaluaciones. Tomando como base los programas de computo, se opta por realizar un sistema interactivo de bases de datos en el que se almacenan preguntas clasificadas por temas y por tipo, para posteriormente seleccionar las preguntas de las que se realizará un examen, para mandarlo a impresión o para ser aplicado en un sistema de red.

      TEORIA BÁSICA UTILIZADA
      Para la realización del sistema de cómputo se tomó como herramienta de desarrollo Borland Delphi 2.0, el cuál es un lenguaje de programación visual basado en Object Pascal; además se utiliza un manejador de bases de datos incluido en esta herramienta, la cual nos permite trabajar las bases de datos relacionales. Este sistema se desarrollo tomando en cuenta los siguientes puntos:

      - Borland Delphi 2.0
      Delphi es RAD que corresponde a las siglas de Rapid Application Development (Desarrollo Rápido de Aplicaciones) y fue acuñado para una nueva casta de ambientes de desarrollo de software. Los creadores de Delphi han producido una herramienta que, a primera vista, parece similar a VB4, pero es de hecho diferente en forma distintiva al ambiente VB4. El Ambiente de Desarrollo Integrado (IDE, Integrated Development Environment) es la parte de Delphi que Ud. observa cuando hace un doble click en el icono de Delphi en Windows. Por otra parte Delphi utiliza Object Pascal como su lenguaje base.

      - Ingeniería de Software.
      La meta más directa del desarrollo de software consiste en hacer que el producto terminado coincida con la especificación de requisitos. Es necesario dividir en algo más manejable, algo más pequeño o más preciso que sea a la vez alcanzable y fácil de recordar.

      Las cuatro reglas generales de la ingeniería de software son:
       

      • Modificabilidad, El lenguaje Object Pascal proporciona un lenguaje muy legible, así como un ambiente que permite hacer cambios con facilidad y donde los errores al teclear son más difíciles de cometer. Estos atributos proporcionan un medio que facilita la meta de modificabilidad.
      • Eficiencia, Este aspecto es muy directo, su aplicación usa los recursos óptimos disponibles. Por recursos se infieren dos tipos: tiempo y espacio.
      • Confiabilidad, ésta es probablemente la meta más importante, en especial si su aplicación es responsable de alguna función crítica. Las aplicaciones que operan por largos periodos sin intervención humana deben ser estables y capaces de recuperarse de problemas en forma automática.
      • Comprensibilidad, esta consiste en asegurarse de que el diseño de sus aplicaciones e instrumentación refleje el mundo real. Si los objetos de su aplicación son modelos de objetos del mundo real, relacionar ambos en mente resulta más fácil. Por esto se usa en estas aplicaciones el diseño a objetos, de modo que se relacione el código con el mundo más fácilmente.
       
      Las reglas antes descritas son las que se aplican a cualquier proyecto de software. Los siguientes son una serie de principios que sirven de guía.
        - Modularidad.
      - Localización.
      - Abstracción.
      - Ocultamiento de información.
      - Posibilidad de confirmación.
      - Uniformidad.
      - Terminalidad.  
      La modularidad y localización se derivan fácilmente de la estructura de clase. Las clases son inherentemente modulares y la localización se refiere a mantener los módulos organizados de manera lógica; cada uno es un grupo de código relacionado lógicamente. Al construir código, si se escribe en pequeños módulos autónomos, éstos fácilmente transportables también a otros proyectos de software.

      La abstracción y ocultamiento de información tienen un muy buen apoyo en las clases de Delphi. La abstracción se maneja a través del ocultamiento de información y a través de la naturaleza de interfaz/instrumentación de los archivos de clase. Los detalles de instrumen-tación permanecen ocultos.

      La confirmabilidad se logra mediante una combinación de una verificación de tipos de datos y la construcción de módulos que puedan ser aprobados. La verificación de tipos es una forma de que el compilador confirme que una variable dada se usa adecuadamente.

      La uniformidad y terminalidad pertenecen por completo al dominio del programador. El código es más fácil de leer y mantener si se escribe y comenta de una manera uniforme. Los módulos que quedaron terminados cuando fueron escritos originalmente, no necesitan reescribirse o au-mentarse cuando surgen nuevas necesidades, y siempre surgen nuevas necesidades.

      Cada uno de los principios de ingeniería de software está dirigidos a evitar la complejidad.

      - Programación Orientada a Objetos.
      La programación orientada a objetos lleva ya varios años y ha asomado su cabeza en lenguajes de programación como Ada, Small Talk. C++, Pascal de Borland y por último en Delphi.

      Clases, Delphi suministra una palabra reservada class (clase) que le permite a usted definir un objeto.

      Propiedades, la palabra reservada property le permite declarar propiedades. Una definición de propiedad en una clase declara un atributo nombrado para objetos de la clase y las acciones asociadas con la lectura y la escritura del atributo.

      Herencia, esta es una de las características más poderosas de un lenguaje orientado a objetos como Delphi. Ésta permite que clases hijas tomen las propiedades de sus padres. Heredan los campos, propiedades, métodos y eventos de su clase padre.

      - Bases de Datos Relacionales.
      El objetivo del diseño de una base de datos relacional es generar un conjunto de esquemas de relaciones que nos permitan almacenar información sin redundancia innecesaria, pero que a la vez nos permitan recuperar información fácilmente. Una técnica consiste en diseñar esquemas que tengan una forma normal adecuada

      Peligros en el diseño de bases de datos relacionales.
      Antes de empezar el tratamiento de formas normales y dependencias de datos, estudiemos los defectos que puede tener una base de datos mal diseñada. Entre las propiedades indeseables que un mal diseño puede tener están:
       

      - Repetición de información.
      - Incapacidad para representar cierta información.
      - Perdida de información.
      - El diseño GUI.
       
      La Interfaz Gráfica de Usuario es un tipo de formato de exhibición que permite al usuario escoger comandos, iniciar programas y observar listas de archivos y otras opciones mediante el señalamiento de representaciones gráficas (iconos) y listas de menúes sobre la pantalla. Por lo general las opciones pueden activarse ya sea por el teclado o con un ratón.

      - Programación en 32 bits.
      Muchos consumidores de software dirán que les gustaría cambiar a aplicaciones de 32 bits. Sin embargo, la mayoría de los consumidores no sabe lo que es un bit y porque 32 de ellos son mejores. El número de bits describe la cantidad de datos que la computadora puede mover en una sola instrucción. De ahí que multiplicar dos números enteros de 32 bits en un sistema operativo de 16 bits se lleve muchas instrucciones que en un sistema de 32 bits. El resultado es que el sistema de 32 bits es mucho más rápido.

      - Bases de Datos en Delphi.
      Delphi tiene integrado un poderoso manejador de bases de datos. Hay componentes visuales que permiten accesar las tablas y métodos para manipular registros. Una de las características más poderosas del manejador de bases de datos consiste en que Delphi proporciona una capa de abstracción entre la base de datos subyacente y la funcionalidad de la base de datos.

      Modelos de bases de datos,;
      Existen las bases de datos independientes, las bases de datos de archivos compartidos, bases de datos cliente/servidor.

      DESCRIPCION DEL PROYECTO
      El sistema comprende 4 módulos principales:

      1. - Preguntas
      En este módulo se lleva a cabo la clasificación de las preguntas que son utilizadas cuando se realicen las evaluaciones.

      2. - Evaluados
      En este módulo se realizan operaciones sobre los posibles evaluados los cuales están clasificados por grupos o categorías, además de almacenar sus evaluaciones parciales (en caso de que sea necesario) para obtener una evaluación final.

      3. - Generación de evaluaciones
      En este módulo se seleccionan los grupos de preguntas que se requieran para ser utilizadas en una evaluación. Así como también la generación de la evaluación de las preguntas seleccionadas, dicha generación de evaluaciones se asocia al módulo de evaluados en caso de que se crea pertinente. Las evaluaciones que se generan en este apartado son exclusivamente para impresión. Las evaluaciones son integradas por preguntas seleccionadas en forma aleatoria por el sistema.

      4. - Modulo multiusuario.
      Este módulo toma el archivo en que se almacenan las preguntas seleccionadas previamente en el apartado de generación de exámenes; con dicho archivo se seleccionan en forma aleatoria las preguntas para cada usuario de la red que requiera ser evaluado. Además en condiciones específicas después de realizar las evaluaciones se imprimen los resultados de las mismas o en su defecto sólo las evaluaciones.

      CONCLUSIONES
      Con la utilización de este sistema se logró obtener exámenes diferentes para cada alumno, si bien existe la posibilidad de que se repitan algunas preguntas, pero es poco probable que estén en el mismo orden, por ejemplo: Si repito en los exámenes A y B una pregunta, en el examen A podría ser la pregunta número 2 y en el examen B podría ser la número 5. Los alumnos al saber que sus exámenes serían diferentes optaron en su mayoría por tratar de prepararse mejor.

      RECOMENDACIONES
      Antes de un examen se recomienda tener un buen número de preguntas en las bases de datos para que los exámenes sean en su mayoría diferentes. Además de tener cuidado quien tiene acceso a las bases de datos para evitar fugas de información.

      DIAGRAMA DE BLOQUES
       
      BIBLIOGRAFIA
      Aprendiendo Delphi 2.0 en 21 Días
      Dan Osier, Steve Grobman y Steve Batson
      PRENTICE HALL.

      Fundamentos de Bases de Datos
      Henry F. Korth, Abraham Silberschatz
      MC GRAW HILL.

      Ingeniería del Software
      Roger S. Pressman
      Mc Graw Hil

        Contact Information

        Electronic mail address of MC. Juan Gilberto Mateos Suarez
         
        jmateos@proton.ucting.udg.mx
         
        Web address
         
         
         

        Comments and Suggestions


        Please tell me what you think about this page.

        Comments:

        From:


        Esta página y todos sus contenidos son copyright © 1997 por UdeG.
        Last revised:  19 SEP 1997 .







       
       
      Home