• No se han encontrado resultados

CAPÍTULO 1. INTRODUCCIÓN Y OBJETIVOS

2.4 ESTADO DEL ARTE EN HERRAMIENTAS PARA EL APRENDIZAJE Y

2.4.2 Correctores de diagramas de clase

Los diagramas de clase nos describen los distintos objetos de un sistema y las relaciones estáticas que hay entre ellos. Se utilizan para modelar el esquema conceptual de la base de datos. En los últimos años han aparecido distintas herramientas para el soporte de la enseñanza y el aprendizaje de los temas más relevantes en el uso y corrección de diagramas de clase. Tal como veremos, la mayoría de ellos se presentan como una herramienta independiente, no integrada a ninguna plataforma de e-learning. Se trata de entornos especializados que se deben descargar e instalar antes de ser usados. Los trabajos más relevantes en herramientas para el aprendizaje y corrección de diagramas de clase son los que se citan a continuación:

 Hoggarth y Lockyer en [HL98] proponen un sistema basándose en la integración de herramientas CASE (Computer Aided Software Engineering) y herramientas CAL (Computer Assisted Learning). Se propone un sistema de evaluación de diagramas (en general) en el que parte de la corrección se realiza de forma manual, de forma que una vez realizado el diagrama se presenta al alumno una relación de los objetos usados en su diagrama y los de la solución correcta con la que se debe comparar. El alumno debe aparear estos objetos de forma manual y una vez realizada esta operación el sistema de comparación genera la lista de mensajes con el feedback más apropiado. No se evalúan los diagramas con ninguna nota.

 Baghaei, Mitrovic y Irwin en distintos artículos [BM05] [BMI06] presentan COLLECT- UML. Es un sistema de tutorización inteligente (Intelligent Tutor System) sobre el cual han desarrollado un entorno de resolución de diagramas de clase. Inicialmente desarrollaron una versión monousuario en la que el alumno debe desarrollar un diagrama de clases a partir de unos requisitos iniciales. El sistema compara las soluciones de los alumnos con una única solución ideal entrada por el profesor. El sistema se basa en el conocimiento del dominio que es representado como un conjunto de reglas. En el proceso de comparación se utilizan estas reglas para determinar el feedback a enviar al alumno. Cada una de estas reglas está formada por un indicador de relevancia (más o menos importancia), la condición a cumplir y el mensaje asociado en caso de violación de la regla. Posteriormente desarrollaron la versión que soporta aprendizaje colaborativo. En esta versión la pantalla se divide en dos partes principales: en una el alumno puede realizar sus diagramas de forma individual y en la otra es donde se realiza el trabajo colaborativo y donde los miembros el grupo van aportando sus ideas. El moderador del grupo puede enviar el diagrama a corregir y el sistema devuelve el feedback oportuno. COLLECT-UML no permite a los alumnos definir sus propios identificadores para clases, atributos y métodos. Por ejemplo el nombre de una clase debe escogerlo de una frase subrayada en el enunciado del problema. La decisión de usar un determinado nombre ya viene determinada por el sistema. Una interfaz de este tipo restringe el concepto de identificación y de asignación de nombre a clases y atributos.

 Blank y otros en [BPW+05] presentan CIMEL-ITS (Collaborative, constructive, Inquiry- based Multimedia E-Learning) un método para dar soporte al aprendizaje del análisis y diseño orientado a objetos a través de mejorar sus habilidades con la resolución de problemas. El sistema dispone de un componente de evaluación que observa las entradas del alumno (como por ejemplo el nombre de las clases, de cada atributo y de cada método) y intenta mapearlas con la de una solución de las correctas entradas por el profesor y si es el caso con los posibles errores previstos por el profesor. Las soluciones correctas y la relación de posibles errores son entrados por el profesor. Si una entrada del alumno no coincide con ninguna de las correctas y puede mapearse con uno de los errores previstos, el módulo de evaluación entiende que la solución es incorrecta. Una de las limitaciones de este sistema es que se anticipa a las acciones de los estudiantes, determinando las posibles acciones correctoras y los posibles errores por anticipado.

 Virvou and Tourtoglou en [VT06] presentan ASSET (Adaptative Support to a Software Engineering Trainer) como un entorno adaptativo para la construcción de diagramas de UML. Se basa en un entorno colaborativo en donde hay dos tipos de usuarios, el entrenador (experto) y los alumnos. El sistema ayuda a los alumnos a localizar al experto que mejor puede ayudarle en cada momento. El sistema está constantemente monitorizando el trabajo

del alumno y recoge sus características para clasificar a los alumnos según su personalidad y su nivel de conocimiento. Cada usuario es asignado a un grupo de trabajo con un rol específico (desarrollador junior, desarrollador senior, etc.) según su nivel de conocimiento. No es un corrector automático propiamente dicho sino un entorno que proporciona ayuda al entrenador y facilita ayuda a los estudiantes.

 Nguyen-Thinh Le en [Ngu06] ha realizado una extensión de la herramienta ArgoUML, que permite la realización de diagramas UML, para conseguir un sistema de aprendizaje que permite diseñar diagramas de clase sin ninguna restricción en cuanto a nombre de las clases y atributos (free-form). El sistema se basa en un módulo de evaluación del diagrama de clases a través de unas pautas de diseño que el alumno debe seguir. Enviada una solución por parte del alumno, el sistema la mapea con la solución ideal facilitada. El sistema en primer lugar identifica las clases y los atributos según el sistema de identificación de nombres en las frases y con listas de categorías de conceptos según Larman [Lar01]. Para ello cada clase de la solución ideal dispone de una lista de posibles nombres a mapear con la solución del alumno. Si alguna clase del alumno no se puede mapear es considerada superflua y si una clase de la solución ideal no se puede aparear con ninguna del alumno se considera un error. Las clases superfluas, no identificadas por el sistema, se las intenta mapear con las clases de la solución ideal a través de sus asociaciones. Una vez identificadas las clases se identifican las asociaciones. Se consideran correctas si las clases relacionadas coinciden. El problema del método es que de momento sólo corrige el nombre de las clases y sus asociaciones, pero no evalúa ni atributos, ni métodos, ni navegación, con lo cual suponemos que no se está utilizando en un entorno real.

 Haji Ali. N. y otros [HSI07a] [HSI07b] presentan UCDA (UML Class Diagram Assessor). Este entorno no dispone de un editor propio de diagramas de clase y los alumnos deben utilizar Rational Rose [Rat] como herramienta de edición del diagrama. Así pues la entrada es siempre un fichero obtenido a partir de Rational Rose y la salida es una lista de comentarios como guía al estudiante. El sistema de comparación consiste en extraer la información del fichero .mdl generado por Rational Rose y compararla con la del profesor. La Tabla 2.4 ofrece una comparativa de los principales parámetros que estamos evaluando. Desde nuestro punto de vista la herramienta que ofrece mejores prestaciones es COLLECT-UML aunque no permita la puntuación automática. CIMEL-ITS detecta los errores a medida que se van produciendo. Desde nuestro punto de vista, consideramos que guía en demasía al alumno y da muy poca independencia al alumno. ASSET no es un sistema automático y necesita de un tutor experto que es quien ofrece el feedback. Es un sistema pensado para dar formación a las personas que se integran en una empresa de desarrollo de software. UCDA tiene el inconveniente que se necesita disponer de Rational Rose para la realización de los diagramas. La propuesta de la extensión de ArgoUML es quizás la más innovadora ya que no tiene ninguna restricción sobre los nombre de los distintos elementos que conforman el diagrama. Ahora bien, de momento no permiten ciertas funcionalidades habituales de un diagrama de clase. Uno de los problemas de estas herramientas es que están encaradas al aprendizaje/enseñanza de los diagramas de clase, permitiendo una evaluación formativa, pero no realizan ningún tipo de puntación automática de los ejercicios realizados por los alumnos. Existen además otro tipo de herramientas que permiten validar esquemas UML. Son herramientas que no están pensadas para ser usadas en un entorno de aprendizaje y que no validan si los diagramas son correctos desde un punto de vista semántico sino más bien si son correctos desde un punto de vista sintáctico, es decir si se puede instanciar. Estas herramientas permiten que el alumno pueda ver si sus esquemas conceptuales están correctamente escritos. Entre este tipo de herramientas citar a [Use] y [CCR07].

UML CARACTERÍSTICAS / ENTORNOS H O G G A R T H C O L L E C T C I M E L A S S E T A r g o U M L U C D A

Entorno integrado para la docencia de bases de datos no no no no no no

Web-based tool no si no no no no

Editor de diagramas propio no si no si no no

Corrección automática semi si si no parcial si

Puntuación automática del ejercicio no no no no no no

Evaluación automática del alumno no no no no no no

Trabajo colaborativo no si si si no no

Necesidad de software adicional si no si no si si

Proporciona feed-back automático si si si no no si

Tabla 2.4 Comparativa de herramientas de aprendizaje de diagramas de clase.