Home
ESCUELA SUPERIOR DE INGENIERÍA - rodin
Contents
1. transformation elemento ra z que contiene el cuerpo del documento XML de Pentaho info elemento que contiene informaci n general de la transformaci n entre ella el nombre de la misma connection elemento que contiene la informaci n de conexi n si la hubiere a la base de datos Tomar sus datos del fichero de conexi n que deberemos situar en la carpeta ra z de Eclipse order elemento en el que se indican los saltos hops o enlaces entre etapas steps de que constar la transformaci n step elemento que engloba las caracter sticas de cada etapa step y que se corresponder a alg n componente Pentaho de los que comentamos en el subapartado anterior Mapeo de entrega de hitos Los ficheros XML son bastantes largos por lo que vamos a poner en el ap ndice al completo el correspondiente a esta transformaci n Vamos a mostrar en el cuerpo de este mapeo c digo 1 los elementos de etapas steps como los de transici n hops y para el resto de mapeos s lo mosteremos los steps El c digo que generar el fichero de transformaci n para la entrega de hitos es el que se ve en el c digo 5 3 Evidence indicador_ hitos get students show milestones in assignment Listing 5 3 Consulta para la entrega de hitos lt transformation gt lore lt order gt lt hop gt lt from gt query lt from gt lt to gt milestones lt to gt lt enabled gt Y lt enabled gt lt hop gt lt
2. 1 Student1 5 3 0 2 60 2 Student2 5 1 0 4 20 3 Student3 5 3 2 0 60 4 Student4 5 3 2 0 60 5 Student5 5 3 2 0 60 6 Student6 5 3 1 1 60 7 Student 5 3 2 0 60 8 Students 5 3 2 0 60 9 Student9 5 3 2 0 60 Student student Student1 Student5 Student4 o Student6 Performance in Student7 assignments Students Student9 Figura 7 2 Gr fico del desempeno de los estudiantes en la entrega de actividades estudiante esta vinculado a la actividad central La anchura del enlace indica desempeno de los estudiantes en el indicador En el ejemplo el enlace del primer estudiante es m s delgado que la del resto Eso significa que su rendimiento era menor que la de los otros estudiantes Resoluci n de problemas Para evaluar la resoluci n de problemas vamos a centrarnos en el trabajo de los estudiantes en los foros Jacob et al 2009 Suponemos que los profesores exponen los problemas que hay que resolver en un foro Los estudiantes tienen que estudiar antes de empezar a trabajar en sus solu ciones Adem s se supone que los alumnos habr n sido informados a principios del curso de que los profesores tendr n en cuenta la participaci n en el foro para evaluar algunos resultados Por lo tanto vamos a utilizar el registro de su participaci n del foro como un indicador relacionado con la resoluci n de problemas Tambi n los estudiantes pueden plantear problemas en el foro que surjan como fruto de su
3. Cabot J Modeling languages http modeling languages com CCOO 2010 CCOO 2010 Tablas salariales 2010 IV Convenio Colectivo http www uca es sindicato ccoo documentos tabla salarial pas laboral 2010 pdf dosideas com 2009 dosideas com 2009 Los lenguajes espec ficos de dominio http www dosideas com noticias actualidad 487 los lenguajes especificos de dominio html EC TEL EC TEL Ec tel 2013 http www ec tel eu Eclipse a Eclipse E Eclipse modeling framework http www eclipse org modeling emf Eclipse b Eclipse E Ecore component http www eclipse org modeling emft project ecoretools Eclipse c Eclipse X xtend http www eclipse org xtend Fowler and Parsons 2011 Fowler M and Parsons R 2011 Domain specific languages Addison Wesley Upper Saddle River NJ Gronback and C Gronback and C R Eclipse Modeling Project A Domain Specific Language DSL Toolkit 105 Haan Haan J d Dsl and mde necessary assets for model driven approaches ISELEAR2013 ISELEAR2013 Iselear 2013 http teemconference eu tracks 4th internat ional workshop on software engineering for e learning iselear13 Jacob et al 2009 Jacob S M Lee B and Lueckenhausen G R 2009 Measuring critical thinking skills in engineering mathematics using online forums 2009 International Conference on Engineering Education ICEED2009 Embracing New Challenges in Engineering E
4. Se tard en realizar el proyecto 207 dias 6 9 meses Por lo que hubieran sido necesarias 6 9 personas mes Siendo el salario base mensual de los trabajadores Complemento categor a 2 746 65 Total real 6 9 trabajadores x 2 746 65 18 951 88 Sin embargo la estimaci n temporal previa a la realizaci n del proyecto fue menor 5 34 personas mes La estimaci n ascend a a 14 648 80 La diferencia entre el coste estimado y el coste real ha sido de 4 303 08 p a ea za E ta so etoz so 60 eroz eo oz 102 T0 6z zroz zt ot zroz or tz zroz so to Figura 10 1 Diagrama de Gantt del tiempo empleado ta 23 Ta ea za Ta so so Ta 98 se va eg Ta Te yv ev m zroz or tz RM z1oz s0 To Figura 10 2 Diagrama de Gantt Comparacion Actividades Inicio Duraci n d as Fin AL 01 09 2012 3 04 09 2012 A2 05 09 2012 6 11 09 2012 A3 __ 12 09 2012 14 26 09 2012 A4 07 10 2012 B1 08 10 2012 3 11 10 2012 B2 12 10 2012 4 16 10y2012 B3 17 10 2012 6 23 10 2012 B4 24 10 2012 10 03 11 2012 BS 04 11 2012 5 o9 11 2012 B6 10 11 2012 10 20 11 2012 c 21 11 2012 3 24 11 2012 c2 25 11 2012 3 28 1 2012 c3 06 12 2012 c4 o7 12 2012 8 15 12 2012 c5 10 01 2013 c6 21 01 2013 D1 22 01 2013 4 26 01 2013 D2 27 01 2013 6 02 02 2013 D3 o3 02 2013 3 06 02 2013 D4 07 02 2013 10 17 02 2013 EL
5. 000000000000006 lt id gt 00000000000007 lt id gt 00000000000008 lt id gt 00000000000009 lt id gt 00000000000010 lt id gt 00000000000011 lt id gt lt username gt Student3 lt username gt lt username gt Student4 lt username gt lt username gt Student5 lt username gt lt username gt Student6 lt username gt lt username gt Student7 lt username gt lt username gt Student8 lt username gt lt username gt Student9 lt username gt lt firstname gt Student3 lt firstname gt lt firstname gt Student4 lt firstname gt lt firstname gt Student5 lt firstname gt lt firstname gt Student6 lt firstname gt lt firstname gt Student7 lt firstname gt lt firstname gt Student8 lt firstname gt lt firstname gt Student9 lt firstname gt lt lastname gt Student3 lt lastname gt lt lastname gt Student4 lt lastname gt lt lastname gt Student5 lt lastname gt lt lastname gt Student6 lt lastname gt lt lastname gt Student7 lt lastname gt lt lastname gt Student8 lt lastname gt lt lastname gt Student9 lt lastname gt Figura 8 8 Resultado textual en xml lado izquierdo 2 lt Debate starter gt lt Debate starter gt 1 lt Debate starter gt lt Debate starter gt 1 lt Debate starter gt lt Debate starter gt lt Debate starter gt lt Debate participation gt lt Debate participation gt lt Debate participation gt 1 lt Debate participation gt lt Debate participation gt lt Deba
6. Descripci n Solicitud de informaci n sobre la participaci n activa en el campus Esta consulta puede ir dirigida a un conjunto de actividades referenciadas por su id o a todas las actividades del curso Cuadro 4 11 Caso de uso general Participaci n activa en el campus Caso de uso Seguimiento del campus Descripci n Solicitud de informaci n sobre la participaci n pasiva en el campus Esta consulta puede ir dirigida a un conjunto de actividades referenciadas por su id o a todas las actividades del curso Cuadro 4 12 Caso de uso general Seguimiento del campus posteriormente el docente eval a Lo que se pretende de las actividades es saber qu cantidad de estas ha entregado un estudiante De las que ha entregado cu les han sido dentro y fuera del plazo establecido Las tablas que almacenan esta informaci n de actividades 4 12 son las siguientes mdl assign assignment Almacena informaci n general de las tareas su relaci n con el curso las fechas disponibles de entrega etc mdl assign submission Esta tabla almacena informaci n concreta sobre la entrega de cada usuario En qu fecha lo hizo qu entreg etc Gesti n de talleres El taller workshop es una actividad muy interesante que nos ofrece la plataforma virtual En l los estudiantes han de realizar alguna actividad como en las mencionadas en el apartado anterior La diferencia radi
7. Para implementar todos estos componentes se crean varias clases dentro de un paquete especial llamado utils 6 13 Estas clases son las siguientes lt transformation gt lt connection gt lt step gt Figura 6 12 Componentes de la transformaci n en Pentaho Classpath xtend Clase para de incluir las bibliotecas necesarias para ejecutar transforma ciones de Pentaho en el proyecto EvalCourse que cree el usuario DBconnection xtend Clase para incluir en la transformaci n de Pentaho el componente de conexi n con la base de datos a gephi xtend Clase para generar el fichero de transformaci n en Pentaho para generar el XML del fichero grafico Gephi a partir de un fichero de transformaci n XSLT Hop rtend Clase para generar los saltos entre las diferentes etapas del fichero de transfor maci n en Pentaho Step ctend Clase para generar las etapas de que constar la transformaci n en Pentaho a Transformation xtend Clase para generar los par metros generales del fichero de transfor maci n de Pentaho Xml ctend Clase para generar el resto de caracter sticas por defecto del fichero de trans formaci n de Pentaho Una vez terminado el proyecto se exporta como plugin de Eclipse para despu s poder ser utilizado como tal en cualquier instalaci n de Eclipse que cuenta con EMF 6 14 1 9 evalcourseUsL a E src gt B evalcourse dsl gt B evalcourse dsl formatting D evalcourse dsl scoping a B evalcourse ds
8. lt log gt lt maxdate gt lt connection gt lt table gt lt field gt lt offset gt 0 0 lt offset gt lt maxdiff gt 0 0 lt maxdiff gt lt maxdate gt lt size rowset gt 10000 lt size rowset gt lt sleep time empty gt 50 lt sleep time empty gt 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 lt info gt lt notepads gt lt notepads gt lt connection gt lt connection gt lt order gt lt hop gt lt hop gt lt hop gt lt hop gt lt hop gt lt sleep time full gt 50 lt sleep time full gt lt unique connections gt N lt unique connections gt lt feedback shown gt Y lt feedback shown gt lt feedback size gt 50000 lt feedback size gt lt using thread priorities gt Y lt using thread priorities gt lt shared objects file gt lt capture step performance gt N lt capture step performance gt lt step performance capturing delay gt 1000 lt step performance capturing delay gt lt step performance capturing size limit gt 100 lt step performance capturing size limit gt lt dependencies gt lt dependencies gt lt partitionschemas gt lt partitionschemas gt lt slaveservers gt lt slaveservers gt lt clusterschemas gt lt c
9. lt id gt LOG FIELD lt id gt lt enabled gt Y lt enabled gt lt name gt LOG FIELD lt name gt lt field gt lt trans log table gt lt perf log table gt lt connection gt 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 lt schema gt lt table gt lt interval gt lt timeout days gt lt field gt lt id gt ID_BATCH lt id gt lt enabled gt Y lt enabled gt lt name gt ID_BATCH lt name gt lt field gt lt field gt lt id gt SEQ_NR lt id gt lt enabled gt Y lt enabled gt lt name gt SEQ_NR lt name gt lt field gt lt field gt lt id gt LOGDATE lt id gt lt enabled gt Y lt enabled gt lt name gt LOGDATE lt name gt lt field gt lt field gt lt id gt TRANSNAME lt id gt lt enabled gt Y lt enabled gt lt name gt TRANSNAME lt name gt lt field gt lt field gt lt id SSTEPNAME lt id gt lt enabled gt Y lt enabled gt lt name gt STEPNAME lt name gt lt field gt lt field gt lt id gt STEP_COPY lt id gt lt enabled gt Y lt enabled gt lt name gt STEP_COPY lt name gt lt field gt lt field gt lt id gt LINES READ lt id gt lt enabled gt Y lt enabled gt lt name gt LINES_ READ lt name gt lt f
10. 18 02 2013 20 10 03 2013 E2 26 03 2013 E3 06 04 2013 E4 07 04 2013 12 19 04 2013 Figura 10 3 Resumen de fechas una vez acabado el proyecto La brecha entre la estimaci n y el coste real se debe al desajuste de 47 dias en la realizaci n del proyecto Este desajuste se ha debido sobre todo al desconocimiento inicial de la tecnolog a Si tuviera que volver a presupuestar un trabajo de este tipo seria mucho m s exacto en el c lculo pues ya si conozco la tecnologia Sin embargo como reflexion final diria que es dificil presupuestar a priori aquello que no se domina 10 2 3 Experiencia Este proyecto ha sido para mi una primera piedra de toque a lo que debe ser mi carrera como in vestigador Ha sido mucho m s el tiempo invertido en investigaci n que en desarrollo No s lo en la investigaci n de cara a la realizaci n del proyecto sino tambi n en los dos articulos que hemos escrito para los congresos EC TEL 2013 Eight European Conference on Technology Enhanced Learning EC TEL e ISELEAR 13 4th International Workshop on Software Engineering for E learning ISELEAR2013 Hay mucho por andar en esta rea de la ciencia Hay trabajos sobre competencias muchos trabajos pero muy pocos tienen una tecnologia que proporcionen unos datos cuantitativos Con EvalCourse obtenemos eso unos datos que nos sirven de indica dores para evaluar objetivamente las competencias Medir el trabajo es dif cil Aunque en el apartado de planificac
11. 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 lt step gt lt step gt lt grouping symbol gt lt currency symbol gt lt calculation gt lt cluster schema gt lt remotesteps gt lt input gt lt input gt lt output gt lt output gt lt remotesteps gt lt GUL lt xloc gt 430 lt xloc gt lt yloc gt 150 lt yloc gt lt draw gt Y lt draw gt lt GUI gt lt name gt indicador hitos lt name gt lt type gt XMLOutput lt type gt lt description gt lt distribute gt Y lt distribute gt lt copies gt 1 lt copies gt lt partitioning gt lt method gt none lt method gt lt schema_name gt lt partitioning gt lt encoding gt UTF 8 lt encoding gt lt name space gt lt xml main element gt Rows lt xml main element gt lt xml repeat element gt Row lt xml repeat element gt lt file gt lt name gt Internal Transformation Filename Directory amp 47 amp 47 output amp 47 indicador_hitos lt name gt lt extention gt xml lt extention gt lt servlet output gt N lt servlet output gt lt do not open newfile init gt N lt do not open newfile init gt lt split gt N lt split gt lt add date gt N lt add date gt lt add time gt N lt add time gt lt SpecifyFormat gt N lt SpecifyFormat gt lt omit null values gt N lt o
12. 7 1 3 Transformaci n En este apartado se eval an los ficheros de Pentaho obtenidos a partir de las consultas del programa para comprobar si realmente devuelven el resultado esperado tabla 7 2 Todos los A Evidencexmi 52 4 X platform resource evalcourse model model Evidence xmi 4 Evidence 4 Target get amp Student 0 Validation Information 4 amp Indication grade Entity 0 4 Connection O Validation completed successfully Figura 7 1 Validaci n de un modelo conforme al metamodelo de EvalCourse 71 Cuadro 7 1 Listado de pruebas unitarias de c digo Consulta Verificada Evidence name get students show milestones in assignments Y Evidence name get students show assessment in workshop Y Evidence name get students show participation in forum Y Evidence name get students show access in campus Y Evidence name get students show participation in campus Y Evidence name get students show access in forum Y Cuadro 7 2 Listado de pruebas unitarias de transformaciones Transformaci n Funcionamiento Obtenci n de entrega de hitos Evaluaci n por pares en workshops Participaci n en los foros Interacci n con el campus Acceso a los foros RA ficheros generados funcionan en Pentaho luego se han pasado las pruebas unitarias para este m dulo 7 1 4 Resultados en xml En este apartado se eval an los ficheros xml obtenidos a partir la ejecuci n de la transformac
13. 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 lt subject gt lt field gt lt field gt lt id gt LINES_INPUT lt id gt lt enabled gt Y lt enabled gt lt name gt LINES INPUT lt name gt lt subject gt lt field gt lt field gt lt id SLINES_OUTPUT lt id gt lt enabled gt Y lt enabled gt lt name gt LINES_OUTPUT lt name gt lt subject gt lt field gt lt field gt lt id SLINES_REJECTED lt id gt lt enabled gt Y lt enabled gt lt name gt LINES REJECTED lt name gt lt subject gt lt field gt lt field gt lt id gt ERRORS lt id gt lt enabled gt Y lt enabled gt lt name gt ERRORS lt name gt lt field gt lt field gt lt id SSTARTDATE lt id gt lt enabled gt Y lt enabled gt lt name gt STARTDATE lt name gt lt field gt lt field gt lt id SENDDATE lt id gt lt enabled gt Y lt enabled gt lt name gt ENDDATE lt name gt lt field gt lt field gt lt id SLOGDATE lt id gt lt enabled gt Y lt enabled gt lt name gt LOGDATE lt name gt lt field gt lt field gt lt id gt DEPDATE lt id gt lt enabled gt Y lt enabled gt lt name gt DEPDATE lt name gt lt field gt lt field gt lt id SREPLAYDATE lt id gt lt enabled gt Y lt enabled gt lt name gt REPLAYDATE lt name gt lt field gt lt field gt
14. 8 eclipse exe 04 02 2013 13 05 eclipse ini m7 eclipsec exe epl vio html E gne bat notice html 26 04 2013 19 31 04 02 2013 13 05 18 03 2013 12 06 06 02 2013 13 11 18 03 2013 12 06 Figura 9 2 Carpeta de plugins de Eclipse Cap tulo 10 Conclusiones En este ltimo capitulo se detallan las lecciones aprendidas tras el desarrollo del presente proyecto y se identifican las posibles oportunidades de mejora sobre el software desarrollado 10 1 Objetivos Objetivo principal Creaci n de un DSL con una sintaxis sencilla e intuitiva que extraiga informaci n impor tante para el docente sobre la participaci n de los alumnos en Moodle se ha creado un DSL que realiza esta funci n No es menos cierto que es misi n del profesor definir sus indicadores de competencias o si la informaci n que recibe de unos indicadores le son o no v lidos Cada curso es diferente y que un profesor fomente en mayor o menor medida el uso del curso del campus virtual influir en los resultados De cualquier forma la herramienta se ha desarrollado se ha utilizado y se ha probado con datos reales que han sido enviados Balderas et al 2013a y Balderas et al 2013b y aceptados Balderas et al 2013b en congresos de TEL demostrando su viabilidad En trabajos futuros se dar n m s pistas sobre los pr ximos pasos Subobjetivos Crear un metamodelo lo suficientemente gen rico para nuestro DSL de forma que sea v lido no s l
15. Caso de uso consultar evidencias en workshops O oo O ISO O or I 11 11 11 12 12 12 13 19 21 21 21 22 23 25 4 2 5 Caso de uso evidencias de campus e e 4 3 Requisitos de informaci n oc esa ocr nn Add Moodle sus sda da a a BA an er ae ee o Re 432 Metamodelo 2440054444546 844 Hekken AR LE MDS 4 4 Requisitos no funcionales es ars eca a aa e o 4 5 Estudio de alternativas tecnol gicas o o e eee eee 5 Dise o del Sistema DL Diseno de la argutettuta o ae be da db ee Bt gr e 5 2 Argquibectura Hisica sas aim mid aen dE Bee Bk HRE ae B et 9 3 Arquitectura VOEG oee aen dee AAA PRE PBS A 5 3 1 EMF Eclipse Modeling Framework eee 9 93 22 Ecore Tools sis wa a a re DER Be wee ne ww beide LEME att eat ww eh a ade Rene BDA LENA auka dr etn en ate ea oee sed a hae a et anh wed 5 3 5 Transformaciones a Pentaho a s agosa Emm nenn 5 4 Arquitectura d diseno gm va 8 2 wwe han PWS ar PO ee a eS a 6 Implementaci n del Sistema OL Introdueccion 2 240 E Rea ws oR RS ee Re ewe Bek ORS ee Re sk A 6 25 Modelo u at ar ene a wu a a a Ei ER Eide 6 3 Proyecto BMP 6064444644485 een eher O RL RO Oder DOE z ee 5 os en ok Hate Goose do Rts we Ge TA AA a OR ada BO ae A 6 5 Praduccion vr ten th on ana ne a eh Se WE e do 7 Pruebas del Sistema del Pruebas UNA A e eaa aar be we be a ae ad we ee we eek eh we 1 1 1 Metamodelo s sop
16. Cerramos el trabajo con la secci n del epilogo en la que se pueden encontrar el manual de usuario el manual de instalaci n y explotaci n las conclusiones la bibliografia utilizada y los articulos enviados a dos congresos a partir de este trabajo Cap tulo 2 Planificaci n 2 1 Metodolog a de desarrollo El modelo de desarrollo de software utilizado ha sido el iterativo o incremental Con este modelo de desarrollo se han creado versiones del producto que poco a poco han ido creciendo en presta ciones hasta llegar al producto final A continuaci n se describen las funcionalidades que ten an cada una de estas versiones 2 1 1 Primer ciclo El proyecto EvalCourse abarca un conjunto de herramientas software y de pasos que a priori puede resultar dif cil de abarcar por lo que se opt que la primera iteraci n de desarrollo consistiese nicamente en el cierre del ciclo del producto desde que se crea el metamodelo hasta que se genera el fichero fuente del Pentaho Adem s este primer ciclo comprende el estudio de la herramienta Eclipse Modeling Framework EMF Gronback and C Ecore Ecore Diagram Xtext y Xtend as como el manejo del software Pentaho a Creaci n del metamodelo en Ecore a Creaci n del proyecto Xtext basado en un metamodelo Ecore a Estudio del fichero de entrada del software Pentaho Programaci n b sica del DSL en Xtend 2 1 2 Segundo ciclo Viendo que el software es posible se comienzan a plantear
17. Diagn stico del problema p s s asaq e eeen Propuesta de estrategia as a Cm nn Beneficios esperados si a ph aa aan near aaa kan 1 4 Objetivos y alcance del proyecto cscs s a s aui ebo a nn 1 5 Organizaci n del documento aa ea sae m nn nn Planificaci n 2 1 Metodolog a de desarrollo scs sasse saia ka o o ee 2 1 1 2 1 2 2 1 3 2 1 4 2 1 0 Primer cielo 3 ars dal 2 RA es omen a AN de AE On ed Secundo CIO due ia anh rr a A Eee RR ee ee ide Mercer ciclo 4 6 zee x AA en RM oe eh as A Cuarto Cielo ss a aar Bowe Oy BE er A ES oa B a Ai par Quinto ciclo oS ar PRR E hen HOO ard OH ee ae oe a Sad 2 2 Planificaci n del proyecto o ss sy e dae daa Se eee be eRe E ewes 2 3 Costes Ingenieria Dirigida por Modelos 3 1 MDE Ingenier a Dirigida por Modelos 2 2 o o nenn 3 2 DSL Lenguaje de Dominio Espec fico a a s o e e 3 2 1 Fases en el desarrollo de un DSL externo 3 95 MIDE DSL sa aa 34 aard 4S S cho A E AE de B an Desarrollo An lisis de Requisitos 4 1 Cat logo de actores ag uu aa e nn a O ad E ROAD A A E 4 2 Requisitos funcionales s oc BA aaa na an a han 4 2 1 4 2 2 4 2 3 4 2 4 Caso de uso general interacci n o e e e Caso de uso consultar evidencias en actividades Caso de uso consultar evidencias en foros 22 2 2 2222
18. Generaci n de XML Gephi Refactorizaci n del c digo fuente de todo el DSL Realizaci n de bater a de pruebas 2 2 Planificaci n del proyecto Se muestra un diagrama de Gantt con la planificaci n para el desarrollo del proyecto figura 10 1 y el listado de tareas junto con su estimaci n temporal detallada figura 2 5 El tiempo requerido es de 160 d as Como el diagrama de Gantt es muy grande despu s de mostrarse al completo se divide en tres y se muestra en las hojas siguientes figuras 2 2 2 3 y 2 4 El listado de tareas que aparecen en el diagrama de Gantt se listan a continuaci n siendo estas las mismas que componen cada uno de los ciclos descritos en el apartado anterior a Al u A2 A3 Ad a Bl B2 u B3 B4 u Bo B6 a Cl C2 u C3 a C4 a 05 a C a Dl a D2 a D3 a D4 Creaci n del metamodelo en Ecore Creaci n del proyecto Xtext basado en un metamodelo Ecore Estudio del fichero de entrada del software Pentaho Programaci n b sica del DSL en Xtend Mejora del metamodelo Ecore Regeneraci n del proyecto Xtext basado en el metamodelo Ecore Mejora de la sintaxis del DSL Estudio de base de datos Moodle Conexion a base de datos Moodle desde el c digo fuente Mejoras en mapeo a Pentaho Mejora del metamodelo Ecore Regeneraci n del proyecto Xtext basado en el nuevo metamodelo Modificaci n de la sintaxis del DSL basada en el nuevo metamodelo Conexi n a base de datos medi
19. Herencia de casos de usos de consultar evidencias en workshops 34 Herencia de casos de usos de consultar evidencias en Campus 35 Diagrama de Moodle V 2 2 4 02 nn are en a ee a a a 36 Diagrama del m dulo de usuarios de Moodle V2 e o 37 Diagrama del m dulo de roles de Moodle V 2 0 0 o o 38 Diagrama del m dulo de foros de Moodle V 2 0 o o oo 39 Diagrama del m dulo de actividades de Moodle V 2 2 2 2 2 39 Diagrama del m dulo de workshop de Moodle V2 2 2 222 2 40 Diagrama del m dulo de logging de Moodle V2 2 2222 40 Metamodelo de EvalCourse 2 eee 42 Filtros para la obtenci n de informes en Moodle o o 43 Arquitectura software Proceso de desarrollo 0 nn nme nenn 46 Diagrama de la arquitectura f sica o nme 46 Diagrama de la arquitectura l gica o eee 47 Diagrama de componentes de la arquitectura l gica de EvalCourse 48 Vista del editor gr fico de Ecore aa 48 Jerarqu a de componentes Ecore c ccccccccccc ERE 49 Diagrama de la arquitectura de dise o o e 58 Creaci n proyecto EME 246262444 dador a ad 60 Creaci n diagrama en Ecore o mon 60 Vista gr fica del metamodelo o o e ee eee eee 61 Archivo del metamodelo Ecore e 61 Creaci n fichero de generaci n de modelo o e e 62 V 6 6 Genera
20. X participacion en foroxml FA build properties Figura 8 6 Ficheros de salida Vista general KAN N Particionam Clasifica EI Grafo x ALLE contexto a fosas DO AAL armer Jerarquia Modos E e Elige un par metro de dasific R g Est Filtros E E Configuraci n Z EE Visi n general de la red gt Grado medio 2 Grado medio con pesos Di metro de la red or Z x Densidad de grafo Distribuci n alla Elige una distribuci n Modularidad o Dd Seater PageRank Componentes conexos E Visi n general de los nd Coeficente medio de custerin lt Ninguna Propiedad gt e Centralidad de vector propio a EI Visi n general de las ar Longitud media de camino ze CAES A A Y conteuaciones rete es 9 18 ECO A A lo 2 INE e Workspace 4 Figura 8 7 Resultado gr fico en software Gephi X participacion_en_foroxml 53 lt xml version 1 8 encoding UTF 8 gt lt Rows gt lt Row gt lt id gt lt Row gt lt id gt lt Row gt lt id gt lt Row gt lt id gt lt Row gt lt id gt lt Row gt lt id gt lt Row gt lt id gt lt Rows gt lt Debate starter gt lt Debate starter gt lt Debate starter gt lt Debate starter gt lt Debate starter gt lt Debate starter gt lt Debate starter gt 00000000000005 lt id gt
21. decir que el trabajo del profesor deja de ser escalable Por eso si aprovechamos la interacci n del alumno con el cam pus virtual para evaluar sus competencias el trabajo podria automatizarse Complejidad de procesar la informaci n contenida en los registros de Moodle Problema Complejidad de procesar la informaci n contenida en los re gistros de Moodle Propuesta Crear un lenguaje de dominio especifico Justificaci n Un DSL ofrece un alto nivel de abstracci n al usuario ya que est n dirigidos a expertos en el dominio La sem ntica del lenguaje es muy cercana al dominio del problema para el que se disena Por este motivo se considera que un DSL es la mejor opci n ya que se usar un lenguaje muy cercano al lenguaje del profesor 1 3 3 Beneficios esperados Los beneficios esperados son los siguientes Evaluaci n objetivas de competencias Posibilidad de evaluar las competencias gen ricas de todos los alumnos de un curso sin que esta tarea suponga un trabajo inabordable Sencillez en el trabajo con el DSL para la obtenci n de la informaci n necesaria 1 4 Objetivos y alcance del proyecto Objetivo principal Creaci n de un DSL con una sintaxis sencilla e intuitiva que extraiga informaci n impor tante para el docente sobre la participaci n de los alumnos en Moodle Subobjetivos Crear un metamodelo lo suficientemente gen rico para nuestro DSL
22. gt lt aggregate gt Max lt aggregate gt lt subject gt Milestones lt subject gt lt type gt MAX lt type gt lt valuefield gt lt field gt lt fields gt lt cluster schema gt lt remotesteps gt lt input gt lt input gt lt output gt lt output gt lt remotesteps gt lt GUD lt xloc gt 190 lt xloc gt lt yloc gt 30 lt yloc gt lt draw gt Y lt draw gt lt GUI gt lt step gt lt step gt lt name gt join lt name gt lt type gt JoinRows lt type gt lt description gt lt distribute gt Y lt distribute gt lt copies gt 1 lt copies gt lt partitioning gt lt method gt none lt method gt lt schema_name gt lt partitioning gt lt directory gt ava io tmpdir directory gt 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 lt step gt lt step gt lt prefix gt out lt prefix gt lt cache size gt 500 lt cache size gt lt main gt lt compare gt lt condition gt lt negated gt N lt negated gt lt leftvalue gt lt function gt lt function gt lt rightvalue gt lt condition gt lt compare gt lt cluster schema gt lt remotesteps gt lt input gt lt input gt lt output gt lt output gt lt r
23. lt hop gt lt hop gt lt hop gt lt order gt lt step gt lt enabled gt Y lt enabled gt lt from gt milestones lt from gt lt to gt join lt to gt lt enabled gt Y lt enabled gt lt from gt max lt from gt lt to gt join lt to gt lt enabled gt Y lt enabled gt lt from gt join lt from gt lt to gt percentage lt to gt lt enabled gt Y lt enabled gt lt name gt query lt name gt lt type gt TableInput lt type gt lt description gt lt distribute gt Y lt distribute gt lt copies gt 1 lt copies gt lt partitioning gt lt method gt none lt method gt lt schema_name gt lt partitioning gt lt connection gt mudel lt connection gt lt sql gt SELECT u id u username u firstname u lastname IF a duedate e timemodified amp gt 0 1 0 milestone FROM mdl user u mdl context ct mdl course c mdl role r mdl role assignments ra mdl assign a mdl assign submission e WHERE c id 2 AND r id 5 AND ra userid u id AND ct id ra contextid AND c id ct instanceid AND r id ra roleid AND u id e userid AND a id e assignment ORDER BY u id u username u firstname u lastname lt sql gt lt limit gt 0 lt limit gt lt lookup gt lt execute each row gt N lt execute each row gt lt variables active gt N lt variables active gt lt lazy conversion active gt N lt lazy conversion active gt lt cluster schema gt lt remotesteps gt lt input gt
24. lt input gt lt output gt lt output gt lt remotesteps gt lt GUL 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 lt step gt lt step gt lt xloc gt 70 lt xloc gt lt yloc gt 150 lt yloc gt lt draw gt Y lt draw gt lt GUI gt lt name gt milestones lt name gt lt type gt GroupBy lt type gt lt description gt lt distribute gt N lt distribute gt lt copies gt 1 lt copies gt lt partitioning gt lt method gt none lt method gt lt schema_name gt lt partitioning gt lt all rows gt N lt all rows gt lt ignore aggregate gt N lt ignore aggregate gt lt field ignore gt lt directory gt ava io tmpdir director y gt lt prefix gt grp lt prefix gt lt add linenr gt N lt add linenr gt lt linenr fieldname gt lt give back row gt N lt give back row gt lt group gt lt field gt lt name gt id lt name gt lt field gt lt field gt lt name gt username lt name gt lt field gt lt field gt lt name gt firstname lt name gt lt field gt lt field gt lt name gt lastname lt name gt lt field gt lt group gt lt fields gt lt field gt lt aggregate gt Milestones lt aggregate gt lt subject gt mi
25. lt precision gt 0 lt precision gt lt field gt lt fields gt lt cluster schema gt lt remotesteps gt lt input gt lt input gt lt output gt lt output gt lt remotesteps gt lt GUD lt xloc gt 550 lt xloc gt lt yloc gt 150 lt yloc gt lt draw gt Y lt draw gt lt GUI gt Listing 1 Estructura XML Pentaho o JOS OS CO IO NONE ae ae ee A CO COU COU CU CU CU CO CU CO CO LINO IO DO NO DO O NNN NS en en Pe ON EO OENE IN OO oO IQ OT ENE ON E NEO O OH O UA UN rr O O 2 Contenido del fichero EvalCourse ecore C digo fuente del fichero EvalCourse ecore lt xml version 1 0 encoding UTF 8 gt lt ecore EPackage xmi version 2 0 xmlns xmi http www omg org XMI xmlns xsi http www w3 org 2001 XMLSchema instance xmlns ecore http www eclipse org emf 2002 Ecore name evalcourse nsURI http evalcourse 1 0 nsPrefix evalcourse gt lt eClassifiers xsi type ecore EClass name Evidence gt lt eStructuralFeatures xsi type ecore EReference name target lowerBound 1 eType Target containment true gt lt eStructuralFeatures xsi type ecore EAttribute name name eType ecore EDataType http www eclipse org emf 2002 Ecore EString gt lt eStructuralFeatures xsi type ecore EReference name indicator lowerBound 1 eType Indication containment true gt lt eStructuralFeatures xsi type ecore EReference name dbconnection eType Con
26. lt step gt lt name gt participation lt name gt lt type gt GroupBy lt type gt lt step gt lt step gt lt name gt t otal lt name gt lt type gt Calculator lt type gt lt step gt lt step gt lt name gt indicador_ foro lt name gt lt type gt XMLOutput lt type gt lt step gt lt transformation gt Listing 5 8 Estructura steps XML Pentaho para la participaci n en el foro A Ne CO SO ONS CO NO Po OS SS oJ SC UN rr O O textbfMapeo de interacci n con el campus El c digo que generar el fichero de transformaci n para la interacci n con el campus es el que se ve en el c digo 5 9 Las etapas de la transformaci n se pueden ver en el c digo 5 10 Evidence indicador campus get students show access in campus Listing 5 9 Consulta para el acceso al campus lt transformation gt lt step gt lt name gt query lt name gt lt type gt TableInput lt type gt lt step gt lt step gt lt name gt access lt name gt lt type gt GroupBy lt type gt lt step gt lt step gt lt name gt indicador campus lt name gt lt type gt XMLOutput lt type gt lt step gt lt transformation gt Listing 5 10 Estructura steps XML Pentaho para acceso al campus 5 4 Arquitectura de diseno El patr n arquitect nico que sigue este proyecto es el patr n pipeline El patr n pipeline consiste en una serie de transformaciones sobre sucesivas etapas
27. n EvalCourse es el software desarrollado que se distribuye como un plugin de Eclipse a Moodle sistema web de gesti n de cursos de distribuci n libre que ayuda a los educadores a crear comunidades de aprendizaje en l nea Este tipo de plataformas tecnol gicas tambi n se conoce como LMS Learning Management System 45 Figura 5 1 Arquitectura software Proceso de desarrollo Profesor C Base de Datos de Moodle Figura 5 2 Diagrama de la arquitectura f sica 3 Resultados de la consulta 2 Solicitud de informaci n 1 Se escribe E It a EvalCourse 4 Resultados eo pentaho Figura 5 3 Diagrama de la arquitectura l gica a Pentaho conjunto de programas libres para generar inteligencia empresarial que incluye herramientas integradas para generar informes miner a de datos ETL etc Gephi Gephi es un programa para visualizaci n interactiva y exploraci n de todo tipo de redes y sistemas complejos din micos y graficos jer rquicos Ademas de los componentes descritos anteriormente EvalCourse necesita de otra serie de com ponentes para su desarrollo En los siguientes puntos se hablara de ellos Nos referimos a EMF Ecore Xtext y Xtend figura 5 4 Adem s describiremos el software Pentaho ya que hay que incluir en el c mo ser n los ficheros de transformaci n que generar el DSL 5 3 1 EMF Eclipse Modeling Framework EMF Eclipse a es un framework de modelado y fa
28. n en lo que a lo personal se refiere Britton and Tesser 1991 Los profesores suelen definir durante el curso diferentes actividades que los estudiantes tienen que realizar y subir al campus virtual antes de una fecha tope Vamos a considerar cada una de estas entregas de actividades como unos si fueran unos hitos Al final del curso mediremos la cantidad de actividades o hitos que los estudiantes han entregado a tiempo y la cantidad de ellos que han sido entregados fuera de tiempo Una de las caracter sticas de las actividades que definimos en el campus virtual es que se puede O no permitir el env o de tareas retrasadas Para poder realizar el estudio permitimos que los estudiantes entreguen sus tareas tardes si no han tenido tiempo Las fechas topes hay que cum plirlas pero el sistema permitir su entrega aunque haya pasado la fecha En este ejemplo suponemos que los estudiantes han enviado varias tareas durante el curso y ahora vamos a evaluar su desempe o en la competencia de planificaci n y gesti n del tiempo Usando EvalCourse vamos a consultar la informaci n utilizando el c digo mostrado en el ejemplo 7 1 Declaramos una evidencia llamada Milestone list Evidence Milestone list get students show milestones in assignment Listing 7 1 Consulta para obtener el desempeno de los alumnos en la entrega de actividades Este c digo nos devolver el desempeno de los estudiantes en dos archivos Por un lado tendre mos
29. n sobre el acceso a las actividades en el taller Esta consulta puede ir dirigida a un conjunto de actividades referenciadas por su id o a todas las actividades del curso Cuadro 4 10 Caso de uso general Acceso al workshop qui n ya se obtuvo con anterioridad de la tabla de usuarios Pero para saber en qu foro se hace es necesario acceder a la tablas de los mensajes en el foro 4 11 Las tabla que se necesita es las siguiente mdl forum posts Esta tabla almacena toda la informaci n de los mensajes de los usuarios Entre toda esa informaci n est la que nos interesa A partir del atributo userid se sabe qu usuario escribi A partir del atributo parent se sabe si el usuario inici un debate o particip en l Si parent es cero significa que es el comentario ra z del que parte la conversaci n por lo que sabemos que el usuario inici el debate Sin embargo si es distinto de cero significa que el comentario es respuesta a un mensaje anterior El origen del mensaje podr a ser de utilidad al docente para seg n qu competencia quiera evaluar Gesti n de actividades Los estudiantes realizan una serie de actividades a lo largo del curso Estas actividades suelen consistir en un fichero o conjunto de ficheros que stos han de subir a la plataforma virtual y que 0 610 369 NO Go 60 Figura 4 9 Diagrama del m dulo de usuarios de Moodle V 2 Caso de uso Participaci n activa en el campus
30. users your or third parties legal rights to forbid circumvention of technological measures Conveying Verbatim Copies You may convey verbatim copies of the Program s source code as you receive it in any medium provided that you conspicuously and appropriately publish on each copy an ap propriate copyright notice keep intact all notices stating that this License and any non permissive terms added in accord with section 7 apply to the code keep intact all notices of the absence of any warranty and give all recipients a copy of this License along with the Program You may charge any price or no price for each copy that you convey and you may offer support or warranty protection for a fee Conveying Modified Source Versions You may convey a work based on the Program or the modifications to produce it from the Program in the form of source code under the terms of section 4 provided that you also meet all of these conditions a The work must carry prominent notices stating that you modified it and giving a relevant date b The work must carry prominent notices stating that it is released under this License and any conditions added under section 7 This requirement modifies the requirement in section 4 to keep intact all notices c You must license the entire work as a whole under this License to anyone who comes into possession of a copy This License will therefore apply along with any applicable section
31. B6 28 10 2012 8 05 11 2012 c 06 11 2012 3 09 11 2012 c2 10 11 2012 3 13 11 2012 c3 21 11 2012 ca 22 11 2012 8 30 11 2012 c5 16 12 2012 c6 27 12 2012 D 28 12 2012 2 30 12 2012 D2 31 12 2012 6 06 01 2013 D3 07 01 2013 3 10 01 2013 Da 11 01 2013 10 21 01 2013 E1 22 01 2013 5 27 01 2013 E2 07 02 2013 E3 08 02 2013 10 18 02 2013 E4 19 02 2013 12 03 03 2013 Figura 2 5 Resumen de fechas planificadas para el desarrollo del proyecto 2 3 Costes A continuaci n se presenta el estudio y presupuesto de los costes de los recursos humanos y materiales descritos anteriormente necesarios para el proyecto Para el c lculo de costes de per sonal nos basamos en las tablas salariales de la UCA para el personal t cnico de apoyo contratado laboral CCOO 2010 Para la realizaci n del proyecto ser n necesarias 5 34 personas mes La categor a de los trabajadores ser T S Apoyo a la Docencia e Investigaci n Salario base mensual de los trabajadores Complemento categor a 2 746 65 Total estimado 5 34 trabajadores x 2 746 65 14 648 80 Cap tulo 3 Ingenieria Dirigida por Modelos 3 1 MDE Ingenier a Dirigida por Modelos MDE es un nuevo enfoque en Ingenier a del Software En l se utilizan modelos como artefactos software Es una metodolog a de desarrollo de software que se centra en la creaci n y explo taci n de modelos de dominio es decir representaciones abstractas
32. Public License into a single combined work and to convey the resulting work The terms of this License will continue to apply to the part which is the covered work but the special requirements of the GNU Affero General Public License section 13 concerning interaction through a network will apply to the combination as such Revised Versions of this License The Free Software Foundation may publish revised and or new versions of the GNU General Public License from time to time Such new versions will be similar in spirit to the present version but may differ in detail to address new problems or concerns Each version is given a distinguishing version number If the Program specifies that a certain numbered version of the GNU General Public License or any later version applies to it you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation If the Program does not specify a version number of the GNU General Public License you may choose any version ever published by the Free Software Foundation If the Program specifies that a proxy can decide which future versions of the GNU Gene ral Public License can be used that proxy s public statement of acceptance of a version permanently authorizes you to choose that version for the Program 15 16 17 Later license versions may give you additional or different permissions However no
33. You should have received a copy of the GNU General Public License along with this program If not see lt http www gnu org licenses gt Also add information on how to contact you by electronic and paper mail If the program does terminal interaction make it output a short notice like this when it starts in an interactive mode lt program gt Copyright C lt year gt lt name of author gt This program comes with ABSOLUTELY NO WARRANTY for details type show w This is free software and you are welcome to redistribute it under certain conditions type show c for details The hypothetical commands show wand show c should show the appropriate parts of the General Public License Of course your program s commands might be different for a GUI interface you would use an about box You should also get your employer if you work as a programmer or school if any to sign a copyright disclaimer for the program if necessary For more information on this and how to apply and follow the GNU GPL see http www gnu org licenses The GNU General Public License does not permit incorporating your program into pro prietary programs If your program is a subroutine library you may consider it more useful to permit linking proprietary applications with the library If this is what you want to do use the GNU Lesser General Public License instead of this License But first please read http www gnu org philosophy wh
34. ad ditional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version Disclaimer of Warranty THERE IS NO WARRANTY FOR THE PROGRAM TO THE EXTENT PERMITTED BY APPLICABLE LAW EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND OR OTHER PARTIES PROVIDE THE PROGRAM AS IS WITHOUT WARRANTY OF ANY KIND EITHER EXPRESSED OR IMPLIED IN CLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHAN TABILITY AND FITNESS FOR A PARTICULAR PURPOSE THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU SHOULD THE PROGRAM PROVE DEFECTIVE YOU ASSUME THE COST OF ALL NECESSARY SERVICING REPAIR OR CORRECTION Limitation of Liability IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER OR ANY OTHER PARTY WHO MO DIFIES AND OR CONVEYS THE PROGRAM AS PERMITTED ABOVE BE LIABLE TO YOU FOR DAMAGES INCLUDING ANY GENERAL SPECIAL INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES Interpretation of Sections 15 and 16 If the disclaimer of warranty and limitation of liability provided above cannot be given
35. archivo process evc 8 3 El entorno de trabajo marcar con un error el fichero process evc mientras ste no contenga una consulta que satisfaga la sintaxis del lenguaje Para crear una consulta debemos utilizar la sintaxis especificada en 8 1 Evidence name of the indicator get students show milestones participation access in assignment forum campus list of ids Listing 8 1 Formato y palabras reservadas Un ejemplo de consulta ser a el que aparece en la figura 8 4 Vemos que una vez que la consulta satisface la especificaci n del lenguaje deja de avisar del error tal y como ve amos en la figura anterior Cuando guardamos el trabajo escrito en el fichero process evc autom ticamente se generan los ficheros de transformaci n de Pentaho en la carpeta src gen figura 8 5 Estos ficheros son type filter text gt Eclipse Modeling Framework gt Ecore Tools a 2 EvalCourse DSL gt amp Java gt Maven gt Plug in Development e gt gt Xtend EvalCourse gt Cn Vime Figura 8 1 Creaci n de un nuevo proyecto de EvalCourse e New EvalCourse Pret as ES EvalCourse Project Create a new EvalCourse project Project name prueba _ 7 Use default location Location C Users Antonio UCA Alumno PFC worlbench_test prueb Browse Figura 8 2 Dando nombre a un nuevo proyecto de EvalCourse u Kr F Pac
36. de los datos de entrada Los datos entran al sistema y fluyen a trav s de los componentes Una tuber a pipeline es una estructura com n que conecta componentes computacionales filtros a trav s de conectores pipes de modo que las computaciones se ejecutan a la manera de un flujo Los datos se transportan a trav s de las tuberias entre los filtros transformando gradualmente las entradas en salidas Es una arquitectura muy intuitiva debido a su simplicidad y su facilidad para captar una funcionalidad Al introducirse la consulta EvalCourse en el sistema esta va pasando por las diferentes etapas del compilador hasta generarse finalmente el c digo en XML que podremos ver en Pentaho 5 7 Figura 5 7 Diagrama de la arquitectura de diseno Cap tulo 6 Implementaci n del Sistema 6 1 Introducci n La implementaci n de un DSL tiene b sicamente tres pasos a Por un lado tenemos la creaci n del modelo Como se ha mencionado varias veces en este documento nuestro DSL ser til en un determinado dominio Lo primero es modelar dicho dominio crear el metamodelo que caracterice a todas las instancias de dicho dominio Este es el primer paso que debemos hacer ya que queremos modelar un lenguaje para un dominio para el que no existe Si tuvi ramos el modelo podr amos omitir este paso En segundo lugar queremos crear el lenguaje de dominio espec fico DSL Crearemos un lenguaje que se base en el metamodelo creado de
37. especificar un lenguaje la gram tica ser descrita utilizando el lenguaje Xtext El producto final se instala como un plugin adicional en la herramienta Eclipse que deber tener el docente o usuario del programa Para su utilizaci n ste deber crear utili zando nuestro DSL una sentencia indicando la informaci n que se desea obtener Como resultado se obtiene un fichero para el programa Kettle de Pentaho un software que sirve para generar informes y para miner a de datos Desde EvalCourse a trav s de este fichero se podr n obtener tanto los datos de la evaluaci n de indicadores de competencias en un formato textual como en formato gr fico Para obtener informaci n de Moodle el software extraer de la base de datos los datos de la participaci n entrega de tareas o acceso de los alumnos a Moodle Estos datos podr n ser utilizados por el docente como indicadores de las competencias En los pr ximos cap tulos expli caremos la sintaxis del DSL sus aspectos t cnicos y toda la informaci n relativa al desarrollo e implementaci n de la herramienta Palabras clave EvalCourse DSL Lenguajes Espec ficos de Dominio indicadores evidencias evaluaci n competencias LMS Moodle Indice general I Proleg meno 1 Introducci n Tel Motivaci n te Aars Bars De Wert ea or ied 1 2 Descripci n del sistema actual 2 2 2 o eeen 1 3 Descripci n del problema s e raw 644 4068 sr aaa ed eG II 1 3 1 1 32 1 3 3
38. estudio Estas participaciones tambi n ser n valoradas Podria ser que el estudiante participase en un foro escribiendo un comentario que no contribu yera a la soluci n del problema Pero por un lado podemos considerarlo como una sefial de la E co DO Cuadro 7 7 Listado del desempe o de los estudiantes en la participaci n en el foro id username Debate starter Debate participation 1 Studentl 0 0 2 Student2 0 0 3 Student3 2 0 4 Student4 0 1 5 Student5 1 0 6 Student6 0 3 7 Student 1 1 8 Student8 0 1 9 Student9 0 1 voluntad de los estudiantes Y por otro lado esto es s lo un indicador Corresponde al profesor tenerlo en cuenta o no Por ejemplo el profesor puede considerar que los estudiantes por debajo de una cantidad m nima de mensajes se deban ser considerados como inactivos y por tanto no participaron en el curso Por el contrario el profesor podr a evaluar como un indicador positivo si se sabe que un determinado alumno alcanza cierto grado de participaci n Para evaluar el desempe o estudiantil en las competencias gen ricas de resoluci n de problemas mediante la participaci n foro utilizaremos el siguiente c digo 7 2 Evidence Participation list get students show participation in forum Listing 7 2 C digo para recoger la participaci n de lo estudiantes en los foros Como resultado se obtiene la tabla 7 7 Cada estudiante tiene dos atributos Debate starter indica los debates que
39. evalcourse dsl formatting a EH evalcourse dsl generator 5 Main java EvalCourseGenerator xtend E EvalCourseGeneratorMWE mwe2 fB evalcourse dsl scoping HB evalcourse dsl utils E3 evalcourse dsl validation amh ni Figura 6 10 Generaci n infraestructura DSL query participation total Participation_Report Figura 6 11 Transformaci n en Pentaho 6 5 Traducci n En la generaci n de la infraestructura a partir del fichero Xtext se gener entre otros un paquete llamado EvalCourse dsl generator que contiene un fichero llamado EvalCourse xtend 6 10 que ser en el que deberemos comenzar a programar la transformaci n ya que es el fichero principal A partir de este podremos crear otros paquetes y ficheros en el que programar diferentes partes de nuestro DSL Lo que queremos hacer aqu es transformar una consulta del tipo que vimos anteriormente en fichero de transformaci n Pentaho Cuando abrimos una transformaci n en Pentaho tiene el aspecto que podemos ver en la figura 6 11 Una transformaci n en Pentaho se compone de varios componentes 6 12 Deberemos mapear estos componentes desde nuestro lenguaje Estos componentes son los siguientes transformation componente principal que inicia y finaliza una transformaci n connection componente que se encarga de la conexi n con la base de datos step cada uno de los pasos de los que se compone la transformaci n hop cada uno de los saltos que va de un step al siguiente
40. fichero de transformaci n de Pen taho llega el momento de aplicar dicho fichero a Moodle Esta aplicaci n se debe poder realizar desde el propio EvalCourse Este caso de uso representa el proceso de la obtenci n de los informes En este caso de uso figura 4 2 el usuario ejecuta el fichero Java el sistema utiliza el fichero de transformaci n de Pentaho para consultar la base de datos del Moodle LMS y devuelve los datos en el formato xml A continuaci n se procesa el fichero xml con la transformaci n XSL y se obtiene el fichero en formato gr fico Gephi 29 Profesor lt lt include gt gt lt lt include gt gt ED EE Figura 4 1 Casos de uso Interacci n lt lt includez gt E lt lt include gt aa A a ni ude gt gt N N Profesor pe LMS lt lt includez gt lt lt include gt gt Figura 4 2 Casos de uso Realizar Informes Caso de uso Interacci n Descripci n El usuario escribe una consulta en el sistema para conocer alg n tipo de informaci n referente al trabajo de los estu diantes Este es el s per caso del que los dem s heredar n Actores Docente Precondiciones Pasos a An lisis l xico sint ctico y sem ntico de la consulta Construcci n del fichero de transformaci n Pentaho Construcci n del fichero de transformaci n XSL para transformar listado Pentaho a grafo Gephi Construcci n del fi
41. hop gt lt from gt percentage lt from gt lt to gt indicador hitos lt to gt lt enabled gt Y lt enabled gt lt hop gt lt hop gt lt from gt milestones lt from gt lt to gt max lt to gt lt enabled gt Y lt enabled gt lt hop gt lt hop gt lt from gt milestones lt from gt 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 E Ne lt hop gt lt hop gt lt hop gt lt hop gt lt hop gt lt order gt lt step gt lt step gt lt step gt lt step gt lt step gt lt step gt lt step gt lt step gt lt step gt lt step gt lt step gt lt step gt lt to gt join lt to gt lt enabled gt Y lt enabled gt lt from gt max lt from gt lt to gt join lt to gt lt enabled gt Y lt enabled gt lt from gt join lt from gt lt to gt percentage lt to gt lt enabled gt Y lt enabled gt lt name gt query lt name gt lt type gt TableInput lt type gt Less lt name gt milestones lt name gt lt type gt GroupBy lt type gt lt name gt max lt name gt lt type gt GroupBy lt type gt lt name gt join lt name gt lt type gt JoinRows lt type gt lt name gt percentage lt name gt lt type gt Calculator lt type gt lt name gt indicador hitos lt na
42. los requisitos que este debe cumplir Se a aden prestaciones como la conexi n a la base de datos mejora de la sintaxis del DSL y la estructura de los ficheros de Pentaho Mejora del metamodelo Ecore Regeneraci n del proyecto Xtext basado en el metamodelo Ecore Mejora de la sintaxis del DSL a Estudio de base de datos Moodle 11 a Conexi n a base de datos Moodle desde el c digo fuente a Mejoras en mapeo a Pentaho 2 1 3 Tercer ciclo En este punto se decide generalizar m s el DSL para no pensar tanto en Moodle sino en un LMS gen rico como es el objetivo del proyecto A su vez se dan m s mejoras en otros aspectos del software que se detallan a continuaci n a Mejora del metamodelo Ecore a Regeneraci n del proyecto Xtext basado en el nuevo metamodelo a Modificaci n de la sintaxis del DSL basada en el nuevo metamodelo Conexi n a base de datos mediante fichero externo Mejoras en la compilaci n permiti ndose el uso de m s operadores de Pentaho Pruebas 2 1 4 Cuarto ciclo En este ciclo se pone a punto el software para su finalizaci n Peque os retoques en la sintaxis del metamodelo Se mejora la compilaci n del DSL Se exporta el plugin creado y se personaliza Se estudia el software Gephi para su integraci n con EvalCourse y la generaci n de gr ficos 2 1 5 Quinto ciclo Finalizaci n refactorizaci n del c digo y pruebas del software final a Integraci n de bibliotecas de Pentaho
43. nenn 92 8 9 Resultado textual en xml lado derecho o o o o o e 92 9 1 P gina de descarga de EvalCourse o nn nn 95 9 2 Carpeta de plugins de Eclipse a c oi e waa o e ee ee 95 10 1 Diagrama de Gantt del tiempo empleado eeen 99 10 2 Diagrama de Gantt Comparaci n i a a sa ue a a aba a 40 nahen 100 10 3 Resumen de fechas una vez acabado el proyecto 2 2 2 o 101 ndice de tablas 4 1 4 2 4 3 4 4 4 5 4 6 4 7 4 8 4 9 4 10 4 11 4 12 4 13 7 1 1 2 7 3 7 4 7 5 7 6 ore 7 8 1 9 7 10 List of students performance in forum participation in case study Caso de uso Interacci n Caso de uso Realizar informes Caso de uso general Caso de uso general Caso de uso general Caso de uso general Caso de uso general Caso de uso general Caso de uso general Caso de uso general Caso de uso general Caso de uso general Caso de uso general Entrega de hitos Participaci n en actividades Acceso a las actividades Participaci n en foros Acceso al foro Entrega de hitos en workshop Participaci n en actividades en workshop Acceso al workshop Participaci n activa en el campus Seguimiento del campus Acceso al campus Listado de pruebas unitarias de c digo ee Listado de pruebas unitarias de transformaciones ee Listado de resultados de ficheros xml Listado de resultados de ficheros xml Pruebas de integraci n de los m dulos
44. on the extraction of data from Web 2 0 systems like Me diaWiki wikis or Blojsom blogs While Evalcourse provides refined reports this proposal retrieves a model for further processing DSL is an approach that can be used for areas that are not connected to computer science A DSL based on ag ile method adapted to the management process model of distance learning courses within the context of the Open University of Brazil is presented in 3 The Social Networks Adapting Pedagogical Practice SNAPP tool was developed to provide instructors with the capacity to visualize the evolution of participant relationships within discussions forums SNAPP 2 0 2 shows the evolution of participant interaction over time and annotate key events that occur along this timeline EvalCourse generates other types of displays without having to program a new applica tion for visual analysis 6 CONCLUSIONS AND FUTURE RESEARCH In education the focus of assessment of learning experiences has shifted from knowledge to competences Competences are the practice skills and attributes we can develop in every aspect of our life The development of such key competences should be integrated throught curricula along with specific competences Assessing certain competences is usually a subjective task Specially when the number of students in the course in creases When using a LMS researchers can analyze interac tion traces produced by the environment LMS
45. resolver cada problema as como la justificaci n de la misma Subjetividad de las evaluaciones de competencias Problema Subjetividad de las evaluaciones de competencias Propuesta Evaluar las competencias mediante el uso de indicadores de su desempe o basados en la interacci n de los alumnos con el campus virtual Justificaci n A pesar de su importancia las competencias gen ricas son dif ciles de evaluar objetivamente De los registros de acti vidad del uso del Campus virtual se pueden extraer indi cadores objetivos para evaluarlas Ser necesario relacionar indicadores de competencias con actividades de Moodle fo ros taller etc para obtener autom ticamente indicadores objetivos que permitan la evaluaci n de una serie de compe tencias gen ricas Escalabilidad del trabajo de evaluaci n de competencias Problema Escalabilidad del trabajo de evaluaci n de competencias Propuesta Recolecci n autom tica de informaci n de los registros del campus virtual Justificaci n La labor del docente es conseguir que sus alumnos consigan las competencias profesionales que capaciten al alumno para el desempeno de la profesi n El profesor justifica a poste riori una nota para sus estudiantes por medio de ex menes Si a esta labor de docencia diseno y correcci n de activi dades hemos de sumar la labor de fomentar el desarrollo y la evaluaci n de unas competencias gen ricas podriamos
46. se conectar a la base de datos de Moodle Los permisos para poder conectarse o no a la herramienta quedan fuera del mbito del proyecto En nuestro caso la conexi n se realiza por medio del fichero de transformaci n que se crea en Pentaho Pero el pc desde el que se ejecuta EvalCourse ha de tener permisos en el sistema que almacena Moodle para poder interactuar Extensibilidad El proyecto que aqu se presenta es s lo la primera piedra de un software m s ambicioso Las competencias han de depurarse de manera que se puedan extraer otros indicadores de la herramienta Moodle as como extender el DSL para ser utilizado con otros entornos de aprendizaje Usabilidad La facilidad con la que los docentes puedan utilizar EvalCourse para extraer los indicadores de competencias es uno de los objetivos principales de la herramienta EvalCourse est orientado a cualquier usuario no teniendo porque estar relacionado con el rea de la inform tica Debe ser f cil de usar entendible e intuitivo Privacidad Cumplir la LOPD La Ley Org nica 15 1999 de 13 de diciembre de Protecci n de Datos de Car cter Personal LOPD es una Ley Org nica espa ola que tiene por objeto garantizar y proteger en lo que concierne al tratamiento de los datos personales las libertades p blicas y los derechos fundamentales de las personas f sicas y especialmente de su honor intimidad y privacidad personal y familiar El nico dato de car cter personal que va a
47. se ha hecho Consideramos que esta alternativa no es ptima por varios motivos El generador de informes es dif cil de encontrar si no lo utilizas a menudo Su interfaz es muy poco intuitiva Los informes son poco personalizables y contienen informaci n de poca utilidad Cap tulo 5 Diseno del Sistema En este capitulo se recoge la arquitectura general del sistema de informaci n y el diseno de componentes software 5 1 Dise o de la arquitectura El dise o de la arquitectura se basa en diversos componentes del software Eclipse destinados al desarrollo dirigido por modelos Tiene las etapas que se pueden ver en la figura 5 1 y que se detallar n m s adelante 5 2 Arquitectura f sica Los componentes hardware 5 2 que forman la arquitectura f sica de nuestro sistema son b sica mente dos Base de datos de Moodle La base de datos puede estar en el propio ordenador local del usuario o en un servidor independiente Ordenador del usuario El equipo del profesor que va a utilizar la aplicaci n 5 3 Arquitectura l gica La arquitectura l gica de EvalCourse con car cter m s general es la descrita en la figura 5 3 En ella se aprecia en un diagrama de interacci n los componentes que intervienen y que son necesarios para cumplir todos los requisitos de la aplicaci n Estos elementos software son los que se describen en la siguiente lista Eclipse es el programa base sobre el que se instalar la aplicaci
48. to any other work released this way by its authors You can apply it to your programs too When we speak of free software we are referring to freedom not price Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software and charge for them if you wish that you receive source code or can get it if you want it that you can change the software or use pieces of it in new free programs and that you know you can do these things To protect your rights we need to prevent others from denying you these rights or asking you to surrender the rights Therefore you have certain responsibilities if you distribute copies of the software or if you modify it responsibilities to respect the freedom of others For example if you distribute copies of such a program whether gratis or for a fee you must pass on to the recipients the same freedoms that you received You must make sure that they too receive or can get the source code And you must show them these terms so they know their rights Developers that use the GNU GPL protect your rights with two steps 1 assert copyright on the software and 2 offer you this License giving you legal permission to copy distribute and or modify it For the developers and authors protection the GPL clearly explains that there is no warranty for this free software For both users and authors sake the GPL requires that modified versions be mar
49. we will expand our generative computer language to be used in others LMS 7 ACKNOWLEDGEMENTS This work has been funded by the PAIDI programme of the Andalusian Government ASCETA project P09 TIC 5230 and University of Cadiz programme for Researching and Innovation 8 REFERENCES 1 C Alvarez M Nussbaum M Recabarren F Gomez and D Radovic Teaching communication interpersonal and decision making skills in engineering courses supported by technology International Journal of Engineering Education 25 4 655 664 2009 Aneesha Bakharia and Shane Dawson Snapp a bird s eye view of temporal participant interaction In Proceedings of the 1st International Conference on Learning Analytics and Knowledge LAK 11 pages 168 173 New York NY USA 2011 ACM 3 A A M Batista Z Abdelouahab D Lopes and P S Neto A process model for supporting the management of distance learning courses through an agile approach volume 152 LNEE of Lecture Notes in Electrical Engineering 2013 Bruce K Britton and Abraham Tesser Effects of time management practices on college grades Journal of Educational Psychology 83 3 405 410 1991 H Chebil J Girardot and C Courtin An ontology based approach for sharing and analyzing learning trace corpora In Proceedings IEEE 6th International Conference on Semantic Computing ICSC 2012 pages 101 108 2012 6 O Diaz G Puente J L C novas Izquierdo and J Garcia Molina Harves
50. 000002 eee Listado del desempefio de los estudiantes en la entrega de actividades Listado del desempe o de los estudiantes en la participaci n en el foro Tabla explicativa de como calificamos las competencias en base a los indicadores EvalCourse no genera esta tabla Listado del desempe o de los equipos de estudiantes en planificaci n y trabajo en equipo ae ana a VII Parte I Proleg meno Cap tulo 1 Introducci n 1 1 Motivaci n Las universidades hacen cada d a m s nfasis en la importancia de las competencias como elemen to central del desarrollo del alumno Pero estas competencias no son siempre f ciles de evaluar por parte del profesorado Hoy en d a se disponen de potentes sistemas de aprendizaje herramientas online que los profesores utilizan para gestionar sus asignaturas El resultado de la aplicaci n de esta herramienta como normal general proporciona y facilita el trabajo al docente a la hora de evaluar corregir y medir num ricamente en base a un resultado el trabajo de un alumno Sin embargo consideramos que la informaci n contenida en una base de datos de un sistema de este tipo podr a ser mucho m s aprovechada Realizando un an lisis de los datos se podr a conocer gran cantidad de informaci n que nos podr a servir de indicador para medir el trabajo del alumno y el desarrollo de ciertas competencias La realizaci n de este trabajo comprende por tanto no nicamente el desarrol
51. 09 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 lt name gt STEPNAME lt name gt lt field gt lt field gt lt id gt STEP COPY lt id gt lt enabled gt Y lt enabled gt lt name gt STEP COPY lt name gt lt field gt lt field gt lt id gt LINES READ lt id gt lt enabled gt Y lt enabled gt lt name gt LINES_ READ lt name gt lt field gt lt field gt lt id gt LINES WRITTEN lt id gt lt enabled gt Y lt enabled gt lt name gt LINES WRITTEN lt name gt lt field gt lt field gt lt id SLINES_UPDATED lt id gt lt enabled gt Y lt enabled gt lt name gt LINES UPDATED lt name gt lt field gt lt field gt lt id gt LINES_INPUT lt id gt lt enabled gt Y lt enabled gt lt name gt LINES INPUT lt name gt lt field gt lt field gt lt id gt LINES_OUTPUT lt id gt lt enabled gt Y lt enabled gt lt name gt LINES_ OUTPUT lt name gt lt field gt lt field gt lt id gt LINES_REJECTED lt id gt lt enabled gt Y lt enabled gt lt name gt LINES_ REJECTED lt name gt lt field gt lt field gt lt id gt ERRORS lt id gt lt enabled gt Y lt enabled gt lt name gt ERRORS lt name gt lt field gt lt field gt lt id gt LOG_FIELD lt id gt lt enabled gt N lt enabled gt lt name gt LOG_ FIELD lt name gt lt field gt lt step log table gt
52. 7 additional terms to the whole of the work and all its parts regardless of how they are packaged This License gives no permission to license the work in any other way but it does not invalidate such permission if you have separately received it d If the work has interactive user interfaces each must display Appropriate Legal Noti ces however if the Program has interactive interfaces that do not display Appropriate Legal Notices your work need not make them do so A compilation of a covered work with other separate and independent works which are not by their nature extensions of the covered work and which are not combined with it such as to form a larger program in or on a volume of a storage or distribution medium is called an aggregate if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation s users beyond what the individual works permit Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate Conveying Non Source Forms You may convey a covered work in object code form under the terms of sections 4 and 5 provided that you also convey the machine readable Corresponding Source under the terms of this License in one of these ways a Convey the object code in or embodied in a physical product including a physical distribution medium accompanied by the Corresponding Source fixed on a durable phy
53. Acceso a las actividades Caso de uso Participaci n en foros Descripci n Solicitud de informaci n sobre los alumnos qu escriben en el foro Esta consulta puede ir dirigida a un conjunto de actividades referenciadas por su id o a todas las actividades del curso Cuadro 4 6 Caso de uso general Participaci n en foros entre qu queremos obtener y en qu registro de Moodle nos proporcionaria dicha informaci n Los lenguajes especificos de dominio DSL son herramientas para abordar problemas concretos Para construir un DSL partiendo de un enfoque MDE lo primero que hemos de hacer es dise ar el metamodelo El metamodelo es el modelo del modelo es el conjunto de conceptos del dominio a modelar metaclases y las relaciones entre ellos Nuestra metamodelo deber abarcar el pro blema de la evaluaci n de evidencias asi como las reglas y las restricciones a aplicar 4 3 1 Moodle Moodle cuenta con 186 tablas Puede ver su diagrama en la figura 4 8 Una estructura de base de datos de un tamano bastante considerable EvalCourse solo necesitar parte de la informaci n ahi almacenada Por esto ser necesario un estudio de las estructuras de datos que almacenan dicha informaci n En los siguientes puntos se detallar n estos almacenes Gesti n de usuarios Toda la informaci n que obtenemos del sistema es siempre sobre un conjunto de usuarios Esos usuarios pertenecer n a un curso concreto supue
54. CF UCA Universidad de Cadiz ESCUELA SUPERIOR DE INGENIERIA INGENIERIA INFORMATICA EvalCourse un Lenguaje Especifico de Dominio para obtener indicadores del desarrollo de competencias a trav s de un LMS Antonio Balderas Alberico 12 de julio de 2013 CF UCA Universidad de Cadiz ESCUELA SUPERIOR DE INGENIERIA INGENIERIA EN INFORMATICA EvalCourse un Lenguaje Especifico de Dominio para obtener indicadores del desarrollo de competencias a trav s de un LMS Departamento Ingenieria Inform tica Directores del proyecto Ivan Ruiz Rube y Juan Manuel Dodero Beardo Autor del proyecto Antonio Balderas Alberico Cadiz 12 de julio de 2013 Fdo Ivan Ruiz Rube Fdo Juan M Dodero Beardo Fdo Antonio Balderas Alberico Agradecimientos A mi familia Resumen Hoy en d a es casi tan importante que un estudiante adquiera los conocimientos necesarios para ser un buen profesional en lo que estudia como que adquiera las competencias necesarias gen ricas y especificas que a un profesional la rama objeto de estudio se le deben suponer Pero la evaluaci n de estas competencias no es una tarea sencilla y muchas veces puede basarse en la simple observaci n que el docente hace sobre el trabajo del alumno en clase llegando a ser una evaluaci n muy subjetiva Con EvalCourse se pretende proporcionar una herramienta que otorgue al docente unos criterios cuantificables para evaluar el desempe o de los estudiantes en b
55. NAME lt name gt lt field gt lt field gt lt id SOBJECT_ID lt id gt lt enabled gt Y lt enabled gt lt name gt OBJECT_ID lt name gt lt field gt lt field gt lt id gt OBJECT_REVISION lt id gt lt enabled gt Y lt enabled gt lt name gt OBJECT_REVISION lt name gt lt field gt lt field gt lt id gt PARENT CHANNEL ID lt id gt lt enabled gt Y lt enabled gt lt name gt PARENT CHANNEL ID lt name gt lt field gt lt field gt lt id gt ROOT CHANNEL ID lt id gt lt enabled gt Y lt enabled gt lt name gt ROOT CHANNEL ID lt name gt lt field gt lt channel log table gt lt step log table gt lt connection gt lt schema gt lt table gt lt timeout days gt lt field gt lt id gt ID_BATCH lt id gt lt enabled gt Y lt enabled gt lt name gt ID_BATCH lt name gt lt field gt lt field gt lt id gt CHANNEL_ID lt id gt lt enabled gt Y lt enabled gt lt name gt CHANNEL ID lt name gt lt field gt lt field gt lt id gt LOG DATE lt id gt lt enabled gt Y lt enabled gt lt name gt LOG DATE lt name gt lt field gt lt field gt lt id gt TRANSNAME lt id gt lt enabled gt Y lt enabled gt lt name gt TRANSNAME lt name gt lt field gt lt field gt lt id gt STEPNAME lt id gt lt enabled gt Y lt enabled gt 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 3
56. a tabla almacena toda la informaci n de los cursos Sera necesaria para relacionarla en consultas posteriores con la pertenencia de los usuarios actividades foros etc con respecto al curso que se est evaluando mdl role y mdl role assignments Estas tablas son necesarias para conocer el rol del usuario que se eval a No habr a otra forma de saber si un usuario es profesor o alumno mdl context Indica hasta qu nivel puede actuar un usuario con un rol dado Gesti n de foros La informaci n que se necesita del sistema es de tipo cuantitativa Por tanto lo que los alumnos escriban en el foro no ser de inter s para la aplicaci n Al menos teniendo en cuenta su alcance actual El nico requisito necesario es que debemos saber qui n escribe y d nde lo escribe El Acceso al campus Participaci n activa en el campus Seguimiento del campus Figura 4 7 Herencia de casos de usos de consultar evidencias en campus Figura 4 8 Diagrama de Moodle V 2 Caso de uso Participaci n en actividades en workshop Descripci n Solicitud de informaci n sobre las realizaci n de actividades en el taller Esta consulta puede ir dirigida a un conjunto de actividades referenciadas por su id o a todas las actividades del curso Cuadro 4 9 Caso de uso general Participaci n en actividades en workshop Caso de uso Acceso al workshop Descripci n Solicitud de informaci
57. aM eee EJ Marques Note 2 objects E Pae Abs as EPackage SE a E instanceClassName EString Eclass ing S instanceClass ElavaClass E EDataType Fen a String Eclassiher on defaultValue EJavaObject SES El EAttribute gt EStructuralFeatur AA e amp El Efnnotation gt EModelement 3 getClassifierIDQ Elnt Ma EAnnotation 4 E Eclass gt EClassifler a E EOperat n a E EClassifer gt ENamedElement co EAttribute amp E EDataType gt EClassfier ee da El EEnum gt EDataType E sa El EEnunliteral gt ENamedelemer Decs E EDataType meet Entry dEl Eractory gt EModelElement 53 abstract EBoolean amp Serializable EBoolean connections E EModelElement gt EObject ox interface EBoolean EReference 41 B ENamedElement gt EModelElem isSuper TypeOf EClass EBoolean 4 Inheritance SE Eobject getestructuralFeature Elnt EstructuralFeature o EAnnotation link S El Operation gt ETypedElement dk getEStructuralFeature EStrIng EStructuralFeature El Package gt ENamedelement E EParameter gt ETypedElement amp El Reference gt EStructuralFeat Eenum ture gt ETypedE Y tan a 5_ lt i ES properties 53 6372 OP seach 22 S RR BED EM B classifier gt ENamedelement Ecore Normal Text Search for Ecore Textual Query in workspace 1 match jrestjecore ecore 1 match Model Name Eclassfier Appearance E EClassifier gt ENamed lement Instance Class Name Extend
58. able gt lt connection gt lt schema gt lt table gt lt timeout days gt lt field gt lt id gt ID_BATCH lt id gt lt enabled gt Y lt enabled gt lt name gt ID_BATCH lt name gt lt field gt lt field gt lt id gt CHANNEL_ID lt id gt lt enabled gt Y lt enabled gt lt name gt CHANNEL ID lt name gt lt field gt lt field gt lt id gt LOG DATE lt id gt lt enabled gt Y lt enabled gt lt name gt LOG DATE lt name gt lt field gt lt field gt lt id gt LOGGING OBJECT TYPE lt id gt lt enabled gt Y lt enabled gt lt name gt LOGGING OBJECT TYPE lt name gt lt field gt lt field gt lt id gt OBJECT_NAME lt id gt lt enabled gt Y lt enabled gt lt name gt OBJECT_NAME lt name gt lt field gt lt field gt lt id gt OBJECT_COPY lt id gt lt enabled gt Y lt enabled gt lt name gt OBJECT_COPY lt name gt lt field gt lt field gt 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 lt id gt REPOSITORY DIRECTORY lt id gt lt enabled gt Y lt enabled gt lt name gt REPOSITORY DIRECTORY lt name gt lt field gt lt field gt lt id gt FILENAME lt id gt lt enabled gt Y lt enabled gt lt name gt FILE
59. aci n o resoluci n de problemas espec fica Este concepto no es nuevo ya que desde siempre existieron lenguajes de programaci n de prop sito espec fico Model Driven Engineering 21 Lo opuesto a un lenguaje especifico de dominio son los lenguajes de programaci n de prop sito general como C o Java y los lenguajes de modelado de prop sito general como UML Los DSL se crean especificamente para resolver problemas dentro de un dominio en particular y no est n pensados para resolver problemas fuera de este dominio aunque pueda ser t cnicamen te posible En cambio los lenguajes de prop sito general se crean para resolver problemas en muchos dominios Un dominio tambi n puede ser un rea de negocio especifica En ocasiones es dificil discernir las ventajas y desventajas entre las construcciones de los DSL y de los lenguajes de prop sito general Ventajas de los DSL Los DSL permiten expresar soluciones usando los t rminos y el nivel de abstracci n apro piado para el dominio del problema En consecuencia los mismos expertos de dominio pueden comprender validar modificar y a menudo desarrollar programas en DSL Es c digo auto documentado Los DSL mejoran la calidad productividad confianza mantenibilidad portabilidad y reusabilidad de las aplicaciones a Los DSL permiten validaciones a nivel del dominio Mientras las construcciones del lenguaje est n correctas cualquier sentencia escrita puede considera
60. acquired that would be infringed by some manner permitted by this License of making using or selling its contributor ver sion but do not include claims that would be infringed only as a consequence of further modification of the contributor version For purposes of this definition control includes the right to grant patent sublicenses in a manner consistent with the requirements of this License Each contributor grants you a non exclusive worldwide royalty free patent license under the contributor s essential patent claims to make use sell offer for sale import and otherwise run modify and propagate the contents of its contributor version In the following three paragraphs a patent license is any express agreement or commit ment however denominated not to enforce a patent such as an express permission to practice a patent or covenant not to sue for patent infringement To grant such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party If you convey a covered work knowingly relying on a patent license and the Corresponding Source of the work is not available for anyone to copy free of charge and under the terms of this License through a publicly available network server or other readily accessible means then you must either 1 cause the Corresponding Source to be so available or 2 arrange to deprive yourself of the benefit of the patent lic
61. algunos lo enviaban tarde Los resultados obtenidos de las diferentes aplicaciones de EvalCourse de estos dos ejemplos y de otros cuantos creados coinciden con los datos almacenados en el campus virtual Por tanto podemos concluir que el DSL funciona conforme a los requisitos establecidos y por tanto el resultado de las pruebas funcionales son satisfactorios 7 4 Pruebas de aceptaci n 7 4 1 Recopilaci n de informaci n Para las pruebas de aceptaci n vamos a utilizar datos reales obtenidos de un curso del campus virtual de la asignatura Procesadores de Lenguajes II del ltimo curso de la titulaci n Inge nier a en Inform tica de la Universidad de C diz Despu s instalamos en nuestro ordenador la plataforma virtual Moodle e importamos dicho curso Esto debi ser as porque obviamente no te nemos permiso para conectarnos directamente a la base de datos de la plataforma en producci n Durante el curso los estudiantes tuvieron que realizar varias tareas obligatorias y un examen al final del semestre Estas proporcionan una nota sobre el conocimiento de los estudiantes Utili zamos EvalCourse para obtener indicadores que ayudan en la evaluaci n de las competencias A continuaci n se describen los indicadores extra dos utilizando EvalCourse Cuadro 7 8 Tabla explicativa de c mo calificamos las competencias en base a los indicadores EvalCourse no genera esta tabla Hitos a tiempo Enviados 5 actividades Planificac
62. ante fichero externo Mejoras en la compilaci n permiti ndose el uso de m s operadores de Pentaho Pruebas Peque os retoques en la sintaxis del metamodelo Se mejora la compilaci n del DSL Se exporta el plugin creado y se personaliza Se estudia el software Gephi para su integraci n con EvalCourse y la generaci n de gr ficos a Do D6 a D7 DS Integraci n de bibliotecas de Pentaho Generaci n de XML Gephi Refactorizaci n del c digo fuente de todo el DSL Realizaci n de bateria de pruebas ta 3 23 Ta ov Ss ev a cw me wv TTOZ OT TI zroz so tz zroz so to Figura 2 1 Diagrama de Gantt 01 09 2012 21 09 2012 11 10 2012 31 10 2012 Al A2 EEE A3 me A4 B1 E B2 a BS ci c5 D1 D2 D3 El E2 E3 E4 Figura 2 2 Diagrama de Gantt Parte 1 Al A2 A3 A4 B1 B2 E1 E2 E3 E4 20 11 2012 10 12 2012 Figura 2 3 Diagrama de Gantt Parte 2 30 12 2012 Al A2 A3 A4 B1 B2 B5 ci cs D1 D2 D3 El E2 E3 E4 19 01 2013 08 02 2013 28 02 2013 Figura 2 4 Diagrama de Gantt Parte 3 20 03 2013 Actividades Inicio Duraci n d as Fin AL 01 09 2012 3 04 09 2012 A2 05 09 2012 5 110 09 2012 A3 11 09 2012 8 19 09 2012 A4 20 09 2012 8 28 09 2012 B1 29 09 2012 3 02 10 2012 B2 07 10 2012 B3 08 10 2012 6 14 10 2012 B4 15 10 2012 6 21 10 2012 B5 22 10 2012 5 27 10 2012
63. as amp don au we EG A ede ae eh Bee deed Caley EM more oen AA e Eh AA Oh we pe RES Ge Pe EO a 11 3 SPANSTONMIA GION le ms ae ow ek wee ek a ae oe ATA Ao LA Resultados en xml oo amp 2 aar ene ma EE oe BRE Oe ee ed 7 1 5 Resultados en grafico samien do Io AI ee fez Pruebas de MtESTACI N a as sor rd dw eka de eae ag dw E E 1 3 Pruebas de sistema x ca 208 4 8 a oe ALR RA Ra Rw nad Tad Pruebas funcionales 2 2 0 4 24 Bee Baw Dakar A Pruebas de ACEPTACI N e a2 aas 2 wa a Bee eh a aw eda hehe 7 4 1 Recopilaci n de informaci n e TA An lisis de tesultados 4 1 64 vaars doa da ad a vel Hls HI Ep logo 8 Manual de usuario Sul IMTEOU CI N e eae u au a dee O A A A a vere 8 2 Caracteristicas Ya ua san BY ae a a a a q a Be Sd REQuisitOs PR VIOS ata a ad a bey a ane a Ge ele Sila UNIZACI N 00d ria ia B Doa dora a e RAS Oe eA Be dos ee qd 45 45 45 45 47 48 49 50 50 57 59 59 59 59 63 67 71 71 71 71 71 72 72 73 73 73 77 TT 79 83 9 Manual de instalaci n y explotaci n 93 Ol mtroducon an a ee ER A ME oe a erh 93 9 2 REQUISITOS PR VIOS zu aa nb ebay oe Re eee eee RANG Se E 93 9 3 Procedimientos de instalaci n 94 10 Conclusiones 97 VOEL ODIELVOS is E a A He Wen 97 10 2 Lecciones aprendidas se s pagas a mend eed di ER a en 98 10 2 1 Pl niheaten dw is a da dew a PETS Be ER EES Cems 98 WOEDHOE o enen
64. ase a dichas competencias EvalCourse se va a implementar como un Lenguaje de Dominio Espec fico DSL Un DSL es un lenguaje de programaci n orientado a un problema espec fico y con una sem ntica orientada al dominio para el que se dise a En nuestro caso este dominio es la evaluaci n de indicadores de competencias de los estudiantes El objetivo de EvalCourse es ayudar al docente en la eva luaci n del desempe o de los alumnos en las competencias que stos deben desarrollar a lo largo del curso Para llevar a cabo esta funci n tomar los datos que necesite de un LMS Learning Management System Estos datos deber n servir al docente como indicadores del desarrollo de dichas competencias El LMS para el que se ha creado este software inicialmente es Moodle ya que es la plataforma virtual que se utiliza en la Universidad de C diz y con el que todos estamos m s familiarizados De todas formas la idea inicial con la que se ha desarrollado este proyecto es que el DSL sea gen rico y pueda ser utilizado con otros sistemas no s lo de tipo LMS sino tambi n con sistemas que fomenten el trabajo colaborativo como pueden ser los wikis Por ejemplo MediaWiki es utilizado tambi n en el mbito de la docencia en nuestra Universidad Para su desarrollo utilizaremos Eclipse Modeling Framework EMF EMF es el n cleo de la herramienta Eclipse para el desarrollo dirigido por modelos El metamodelo de EvalCourse ser desarrollado con Ecore Y para
65. ation and get the results to the query We will illustrate language usage with a simple example on assessing Planning competence performance of different stu dents along a course Using EvalCourse we have to ask for the information with the code showed in listing 2 The eval uator declares an evidence called Milestones_list that re trieves the indicator about students performance in assign ments by writing this code The produces the information shown in table 1 Evidence Milestone_list get students show milestones in assignment Listing 2 Code to retrieve students performance in assignments The first row of table 1 starts with two columns identifying the student by her Moodle internal identifier and her name Then the Total column indicates the number of activities that students had to submit during the course The In time column indicates that Studentl submitted three activities before their deadline Overdue column indicates that she submitted no activities after deadline and Pending indicates that two activities had not been submitted yet Finally as we can work with this data in a spreadsheet we added a new derived column In time Rate which indicates the ratio of completed activities in time in relation to the total On the other hand we are also provieded a graph figure 2 The central vertex represents the activity we are consider ing In this case activity is the delivery of assignments by students Each ot
66. ca en que en este caso puedes establecer diferentes formas de evaluaci n Puedes indicar que sean otros alumnos los que eval en a sus compafieros o que cada alumno eval e a varios alumnos y luego hacer la media de esta nota Esta actividad que es mucho m s potente de lo que aqu se describe permite al docente un gran abanico de posibilidades a la hora de evaluar competencias del alumnado El m dulo del diagrama que interviene en el taller es el del Figura 4 10 Diagrama del m dulo de roles de Moodle V 2 Caso de uso Acceso al campus Descripci n Solicitud de informaci n sobre los accesos al campus virtual Cuadro 4 13 Caso de uso general Acceso al campus TAL UTR hi iii iii IH rra TE Forums Figura 4 11 Diagrama del m dulo de foros de Moodle V 2 workshop 4 13 Aunque dada su complejidad se disponen de m s tablas que en las actividades corrientes para nuestro caso las tablas cumplen la misma funci n que las anteriores mdl workshop assessments Almacena informaci n general de las tareas su relaci n con el curso las fechas disponibles de entrega etc mdl workshop submission Esta tabla almacena informaci n concreta sobre la entrega de cada usuario y sobre el usuario que la corrige En qu fecha lo hizo qu entreg etc Gesti n de accesos Uno de los aspectos a controlar por parte de la herramienta es la cantidad de veces que acceden los
67. cada alumno ha creado es decir creaci n de nuevas discusiones o debates en el foro Mientras que Debate participaci n mide la participaci n del alumno en las conversaciones para resolver problemas Vamos a utilizar estos valores como indicadores de desempe o de los estudiantes en la competencia Tambi n obtenemos un gr fico mostrado en la figura 7 3 Aqu podemos ver las dos actividades representadas como nodos cada uno en un lado de la gr fica A cada estudiante se representa como un nodo que est vinculado con las actividades Cuanto m s gruesa sea la relaci n m s par ticipaci n de dicho estudiante En nuestro caso s lo tres estudiantes comenzaron alg n debate Ellos son los nicos Student3 Student5 y Student7 con l neas unidas al nodo del lado derecho debate starter En cuanto a los enlaces en el lado izquierdo hasta cinco estudiantes participaron en los debates debate participaci n Podemos observar c mo las l neas m s gruesas muestran una mayor actividad Student3 en el debate de arranque y Student6 en debate participaci n Student2 Student1 Figura 7 3 Gr fico del desempe o de los estudiantes en la participaci n en el foro An lisis de resultados Los resultados obtenidos son los esperados Est n basados en una instalaci n local de Moodle en la que manualmente se metieron varios estudiantes y se crearon varios mensajes de estos es tudiantes Tambi n se crearon actividades y se simul como
68. carpeta plugins ubicada en la carpeta raiz de Eclipse figura 9 2 e Ya puede ejecutar Eclipse y seleccionar un proyecto de tipo EvalCourse Si no dispone de Eclipse instalado se puede descargar la versi n de Eclipse que incorpora ya EvalCourse Enlaces de inter s Las aplicaciones las puede descargar de los siguientes enlaces EvalCourse https www assembla com spaces evalcourse documents Pentaho http www pentaho com Gephi https gephi org evalcourse 4 Source SVN MP Team W Stream Admin 4 Standup search G Upload a File Add a Google Docs File ments ourse plugin File 3 EvalCourseplugins zip E Size 6 MB Details A Edit Close File URL Author Created at Last modified Description New version of your file Labels dsl emf plugin EvalCourse Download abalderas 2013 07 08 2013 07 08 by abalderas Plugin for EvalCourse in EMF EvalCourseplugins zip by abalderas at 2013 07 08 Figura 9 1 Pagina de descarga de EvalCourse TE a Programas eclipse gt gt Incluir en biblioteca w Nombre d configuration Compartir con v Grabar Nueva Fecha de modifica 08 07 2013 21 27 J dropins 08 06 2012 21 56 Ji features 26 04 2013 19 31 IB pa 14 09 2012 13 55 do plugins 26 04 2013 19 31 Lo readme 26 04 2013 19 31 _ eclipseproduct 04 02 2013 12 25 3 artifactsxml 26 04 2013 19 31 El dbconexion csv 11 01 2013 13 28
69. chero de transformaci n Pentaho para utilizar el XSL Construcci n de fichero Java para ejecutar las trans formaciones Cuadro 4 1 Caso de uso Interacci n Evidencias en actividades Evidencias en foros Evidencias en campus Figura 4 3 Herencia de casos de usos del s per caso de interacci n 4 2 1 Caso de uso general interacci n Interacci n es un s per caso de uso A partir de l se describir n el resto de casos de uso en base a las consultas que se podr n realizar Esta situaci n es la que se conoce como herencia de casos de uso Un s per caso general del que heredan los dem s casos de uso se detalla en la figura 4 3 4 2 2 Caso de uso consultar evidencias en actividades El caso de uso consultar evidencias en actividades es el caso de uso general para las consultas que extraer n informaci n referente a actividades De ste heredar n otros tres casos de uso figura 4 4 Entrega de hitos cuadro 4 3 Participaci n en actividades cuadro 4 4 Acceso a las actividades cuadro 4 5 Caso de uso Realizar informes Descripci n El usuario ejecuta el fichero de transformaci n que obtiene como salida a la consulta y recibe como salida dos ficheros un listado con la informaci n solicitada y una representaci n gr fica de dicha informaci n Actores Docente Precondiciones Deben haberse generado el fichero de transformaci n en Pen taho de extension ktr y el fichero Java nec
70. cilidad de generaci n de c digo para cons truir herramientas y otras aplicaciones basadas en un modelo de datos estructurado Desde una especificaci n del modelo descrita en XMI EMF suministra herramientas y soporte para pro ducir un conjunto de clases Java para el modelo asi como un conjunto de clases que permitan visualizaci n y edici n bas ndose en comandos del modelo y un editor b sico Los Modelos pue den ser especificados usando Anotaci n Java documentos XML o herramientas de modelado y despu s ser importados a EMF Lo mas importante de todo EMF suministra las bases para la interoperabilidad con otras herramientas y aplicaciones basadas en EMF Steinberg et al 2009 Sus caracteristicas principales son las siguientes Framework para el desarrollo de metamodelos sintaxis abstractas Permite generar autom ticamente clases de implementaci n en Java para los elementos de nuestros metamodelos Demf LING FRAMEWORK rvalCourse a Xtes lt t Figura 5 4 Diagrama de componentes de la arquitectura l gica de EvalCourse Java test Ecore ecorediag Eclipse SDK Fie Edt Diagram Navigate Search Project Run Window Help Dr HOG i BHC er or cala e Tahoma vlo SB I A7 Bs gt gt Biv oge Hee E 100 a E Project Explorer 33 ES E BE outine 2 E ale O ag E Sh A 7 T A Palette F Ar SB test ae Ecore ecore
71. cripci n del sistema actual Hablar del sistema actual como tal no tendr a sentido ya que no existe un sistema que realice esta tarea Pero s de un modo u otro los profesores tratan de evaluar dichas competencias Quiz s en algunos casos de una forma un tanto manual se establecen indicadores del trabajo de los estudiantes tanto de la participaci n de los alumnos en clase presencial como en los sistemas online Pero esta forma de medir el desempeno de un alumno con respecto a competencias no es fiable Se te pueden escapar muchas consideraciones Uno no puede saber a ciencia cierta si el es fuerzo en un trabajo en grupo ha sido desarrollado de una manera equitativa por los miembros del equipo Por ejemplo podemos basarnos en las competencias de Proyecto Tuning Tuning 2012 Entre ellas aparece la competencia n mero 17 Teamwork trabajo en equipo Si un compa ero entrega las tareas del grupo fuera del tiempo establecido por el profesor y se supone que otro compa ero necesita estas tareas para completar la suya el primer no estar siendo un buen compa ero En este caso el profesor deber mirar en el campus virtual la fecha de las entregas para ver si son o no posteriores Por esto con EvalCourse trataremos de encontrar indicadores dentro de los sistemas de apren dizaje que ayuden al docente a valorar el esfuerzo y desempe o de los estudiantes en dichas competencias En la Universidad de C diz hemos desarrollado algunas her
72. d to work in small teams of two or three members Every team had to carry out several milestones during the course These milestones were parts of a software development project that they had to code o Table 1 List of students performance in assignments id username Total In time Overdue Pending In time Rate Student 1 Student2 Student3 Student4 Student5 Student6 Student7 Students Student9 or w O O YO EWE Ot OT OT OT OT OT OT OT w w w CO www 60 20 60 60 60 60 60 60 60 o bo ON DO DO er IND NN O ocooorooo gt and upload into the appropriate activity Every milestone had a deadline although system allowed students to submit these activities after this deadline For each team only one member had to upload each activity For example if we have a team with members S1 S2 and S3 they can submit the activities distributing them as desired S1 submits the five handouts but S2 and S3 do not submit anything or S1 submits the first handout S2 submits the second one and S3 the rest etc What is important is that all the activities are submitted in each team no matter who does it All the teammates will share the team grade The competences we wanted to assess were Planning and Teamwork and for this purpose all the activities that had been submitted in time add up Those teams who submitted all their milestones in time and submitted exactly the five activities were evaluated in th
73. de forma que sea valido no s lo para Moodle sino tambi n para futuras versiones del DSL utilizables en otros sistemas La sintaxis de nuestro DSL deber ser sencilla y cercana al lenguaje humano Investigar qu informaci n seria de importancia desde el punto de vista de las competencias en un sistema Moodle para generar en nuestro DSL las consultas que nos devuelvan dicha informacion Investigar la estructura de los ficheros fuente del software Kettle de Pentaho para que nuestro DSL pueda proporcionar como salida un fichero v lido para este software Integrar el software como un todo Eclipse EvalCourse y Kettle para facilitar al usuario la instalaci n e implantaci n del sistema 1 5 Organizaci n del documento En el documento presentamos primero la planificaci n levada a cabo para el desarrollo del pro yecto tanto la estimada a priori como la efectiva a posteriori asi como los costes del mismo En el siguiente apartado y para cerrar el proleg meno se introduce el enfoque MDE Model Driven Engineering que es el que ha sido el utilizado en este trabajo En el apartado de desarrollo se comienza con el an lisis de requisitos incluyendo un an lisis del sistema Moodle y del proceso de selecci n de los datos necesarios para obtener los posibles indicadores de competencias En el quinto capitulo se trata el diseno del sistema y en el sexto la implementaci n del mismo Concluyendo esta parte con el capitulo de pruebas
74. de los conocimientos y las actividades que rigen en un dominio de aplicaci n particular y no en la conceptos o algoritmos inform ticos Stahl et al 2006 Este enfoque se utiliza para aumentar la productividad al maximizar la compatibilidad entre los sistemas a trav s de la reutilizaci n de modelos estandarizados lo que simplifica el proceso de dise o a trav s de los modelos de los patrones de dise o recurrentes en el dominio de aplicaci n y promover la comunicaci n entre los individuos y los equipos que trabajan en el sistema a trav s de la estandarizaci n de la terminolog a y de las mejores pr cticas aplicadas en el dominio de aplicaci n Un paradigma de modelado para el MDE se considera eficaz si sus modelos tienen sentido des de el punto de vista de un usuario que est familiarizado con el dominio y si pueden servir de base para los sistemas de aplicaci n El modelo se debe desarrollar a trav s de una amplia comunicaci n entre los jefes de producto dise adores desarrolladores y usuarios del dominio de aplicaci n A medida que los modelos se acercan a la terminaci n que permiten el desarrollo de software y sistemas 3 2 DSL Lenguaje de Dominio Espec fico En el desarrollo de software un lenguajes espec fico de dominio domain specific language DSL Fowler and Parsons 2011 dosideas com 2009 es un lenguaje de programaci n dedica do a un problema de dominio en particular o una t cnica de represent
75. del Creation Wizards gt amp Git gt E MDE gt Java gt Java Emitter Templates gt gt Maven gt Modeling Workflow Engine gt Plug in Development gt gt User Assistance gt E Xcore gt XML Figura 6 2 Creaci n diagrama en Ecore EvalCourse 53 gt Palette E aa i kzen onz Bons 2 E Student id Ent 1 EPadage E participation E Eclass milestones 0 access students assessment EDataType L EEnum fia EAnnotation nn Target E indication operator Operator T type Sign es A 7 tool Tool gt EAttribute T date ini EDate Elina date end EDate campus E Details Entry 71 R workshop amp Connections target indicator EReference E Inheritance be ad E Evidence Annotation link ETA RESET Atities name EString dbconnection Es amp server Estring en type EStrin see YP g id Ent access EString database Estring port Elnt username EString e password Estring Figura 6 3 Vista gr fica del metamodelo EvalCourse ecore 5 4 gt platform resource evalcourse model model EvalCourse ecore 4 W evalcourse H Indication Operator E Connection Sign 2 Tool Figura 6 4 Archivo del metamodelo Ecore utilizaremos Ecore diagram 6 2 Dentro crearemos una carpeta model que ser el lugar en el que se guardar el metamodelo El
76. dents perfor mance in competences is a complex and time consuming task because of the different aspects to take into account As a re sult lecturers usually do not find enough time for explaining the whole established subjects even less with other evalu ation tasks to be assessed Even supposing that students can perform a number of distinct assignments the solely observation does not guarantee that they have got the com petences specified in the syllabus Therefore here there is a major gap The scope of our work is related to the virtual places spe cially designed for collaborative tasks on LMS which they are widely used nowadays Each file access or assignment done by a student is registered in the system Usually re searchers can analyze Technology Enhanced Learning TEL situations by collecting interaction traces produced by these environments 5 However taking advantage of this infor mation stored about course activities requires filtering before it can be used for higher level processing 7 This collected information would be used as indicators of students work Indicators are statements that determine if the competence level is met They have been designed so that every student will be able to demonstrate their competence regardless of their grade As we see later we have defined several indica tors to measure different competences We have developed a generative computer language to cus tomize online learn
77. dor del metamodelo m nn nn 63 6 1 Proyecto del metamodelo os ssaa raa 6844 EMEA ak UR ab 64 6 8 Creaci n de proyecto Xtext basado en Ecore o o e a 64 6 9 Generaci n infraestructura DSL 22 2 2 2 CHE oa a nn 66 6 10 Generaci n infraestructura DSL CH En ee ee 67 6 11 Transformaci n en Pentaho s i e s e pea as aa ea a n e 67 6 12 Componentes de la transformaci n en Pentaho ie Lu LL LL LL LL 68 6 13 Clases que conforman el paquete utils ue e e a LL a 69 6 14 Creaci n del plugin del DSL s aasi d muat eee 69 7 1 Validaci n de un modelo conforme al metamodelo de EvalCourse 71 7 2 Gr fico del desempe o de los estudiantes en la entrega de actividades 75 7 3 Gr fico del desempe o de los estudiantes en la participaci n en el foro 77 7 4 Gr fico del desempe o de los estudiantes en el trabajo en el foro 81 8 1 Creaci n de un nuevo proyecto de EvalCourse o o nn 89 8 2 Dando nombre a un nuevo proyecto de EvalCourse o o o o 89 8 3 Estructura de ficheros que crea se crea con un nuevo proyecto de EvalCourse 90 8 4 Cosulta escrita en fichero process evc 2 222 22 Hm ee 90 8 5 Ficheros creados en Carpeta src gen aooaa e 91 8 6 Ficheros de salida s se aa u am 0 E ude aa a rd 91 8 7 Resultado gr fico en software Gephi 0 o 0200022 eee 92 8 8 Resultado textual en xml lado izquierdo o o
78. duca tion pages 225 229 Kurtev et al 2006 Kurtev I B zivin J Jouault F and Valduriez P 2006 Model based dsl frameworks In Companion to the 21st ACM SIGPLAN symposium on Object oriented programming systems languages and applications OOPSLA 06 pages 602 616 Palomo Duarte et al 2012 Palomo Duarte M Dodero J Medina Bulo I and Rodriguez Posada E 2012 Assessment of collaborative learning experiences by graphical analysis of wiki contributions Interactive Learning Environments Palomo Duarte et al 2011 Palomo Duarte M Dodero J Medina Bulo I Rodr guez Posada E Palomo F Garcia A and Tocino J 2011 Statmediawiki Stahl et al 2006 Stahl T Voelter M and Czarnecki K 2006 Model Driven Software Development Technology Engineering Management John Wiley amp Sons Steinberg et al 2009 Steinberg D Budinsky F Paternostro M and Merks E 2009 EMF Eclipse Modeling Framework 2 0 Addison Wesley Professional 2nd edition Tuning 2012 Tuning P 2012 Competences Parte IV Ap ndice 107 o JOS SR CO IO Tomo BR BR PK KBE KK BWWWWWWWWWWNNDNNYNMYNNNNMNNN HPP en en en en Pe RPwWNrF OMAN DOR WNFrFOHOANDTOBWNHNRFOKHAMOANDOTOKRWNMNFOTOWOANDTAKRWNrR O O 1 Contenido de fichero xml de Pentaho ejemplo Contenido de fichero xml de Pentaho Ejemplo indicadores hitos ktr lt transformation gt lt info gt lt name gt indicador hitos
79. e 1 3 Descripci n del problema En este apartado vamos a describir cuales consideramos que son los problemas o necesidades que nos han empujado a desarrollar este proyecto Como se ha comentado con anterioridad todo gira alrededor de la evaluaci n de competencias gen ricas 1 3 1 Diagn stico del problema La evaluaci n de competencias gen ricas por parte del docente es una tarea dif cil Por un lado por el car cter subjetivo de la misma sujeto a criterios no establecidos a priori y que debe re solver el docente Segundo por lo no escalable de la tarea Si ya es dificil en muchas ocasiones llegar a poder impartir todo el temario a tiempo m s dificil lo puede ser si es labor del docente disenar y corregir tareas para evaluar las competencias En este trabajo se propone la utilizaci n de los registros de interacci n de los alumnos con Moodle Por tanto podriamos afiadir como otro problema derivado de la pretensi n de uso de estos registros el hecho de que el acceso a la informaci n de los registros de Moodle no est al alcance de un usuario no experimentado En resumen podemos decir que son tres los problemas principales Subjetividad de las evaluaciones de competencias a Escalabilidad del trabajo de evaluaci n de competencias Complejidad de procesar la informaci n contenida en los registros de Moodle 1 3 2 Propuesta de estrategia En este apartado vamos a describir cada una de las estrategias a seguir para
80. e competences with a positive grade If a team submitted exactly five activities but not in time then they were evaluated in Teamwork with a positive grade but not in Planning If they submitted all milestones in time but more than five activities because more than one teammate uploaded the same activity they were evaluated positively in Planning but negatively in Teamwork 4 2 Analysis of results In Table 2 we can see the final result of teams performance in competences according to indicators There are eight teams that obtained the positive mark in both Planning and Teamwork competences because they submitted all the milestones in time and they made exactly five submissions There are five other teams that have a negative mark in both competences because they did not submit all the activities Informally the course supervisor confirmed that these indi cators were closed to the grades he manually calculated for every student in the course 5 RELATED WORKS There are some works related to skills development For instance a module that helps in working and assessing the competence of teamwork is presented in 10 Since Eval Course works as a standalone tool this module is integrated into Moodle However although EvalCourse only works with an instance of Moodle is devised to be implemented in others LMS Other related work is described in 6 it uses a DSL for extracting data models out of databases This work is focus
81. e de datos sin tener conocimientos t cnicos en programaci n utilizando una sintaxis muy sencilla Tenemos dos lineas de trabajo futuro Primero identificaremos otros indicadores contenidos en Moodle y lo incluiremos en la sintaxis En segundo lugar nuestro lenguaje puede expresar consultas que valdrian para otros LMS Aunque de momento el DSL s lo trabaja con Moodle pensamos expandirlo para ser utilizados en otros LMS Bibliografia Balderas et al 2012a Balderas A Palomo Duarte M Dodero J and Ruiz Rube I 2012a Qualitative assessment of wiki based learning processes Balderas et al 2013a Balderas A Ruiz I Dodero J and Palomo Duarte M 2013a A generative computer language to customize online learning assessments Balderas et al 2013b Balderas A Ruiz I Dodero J Palomo Duarte M and Berns A 2013b A generative computer language to customize online learning assessments Balderas et al 2012b Balderas A Tocino J Palomo Duarte M Dodero J and Ruiz Rube I 2012b Assessmediawiki Bettini Bettini L Implementing Domain Specific Languages with Xtext and Xtend Bouman and Dogen Bouman R and Dogen J Pentaho Solutions Business Intelligence and Data Warehousing with Pentaho and MySQL Britton and Tesser 1991 Britton B K and Tesser A 1991 Effects of time management practices on college grades Journal of Educational Psychology 83 3 405 410 Cabot
82. e that term If a license document contains a further restriction but per mits relicensing or conveying under this License you may add to a covered work material governed by the terms of that license document provided that the further restriction does not survive such relicensing or conveying If you add terms to a covered work in accord with this section you must place in the relevant source files a statement of the additional terms that apply to those files or a notice indicating where to find the applicable terms Additional terms permissive or non permissive may be stated in the form of a separately written license or stated as exceptions the above requirements apply either way Termination You may not propagate or modify a covered work except as expressly provided under this License Any attempt otherwise to propagate or modify it is void and will automatically terminate your rights under this License including any patent licenses granted under the third paragraph of section 11 However if you cease all violation of this License then your license from a particular copy right holder is reinstated a provisionally unless and until the copyright holder explicitly and finally terminates your license and b permanently if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation Moreover your license from a particular copyright holder is reinstated permanentl
83. ecesario para poder visualizar los gr ficos Para que la aplicaci n funcione correctamente ser necesario configurar el acceso a la base de datos Este se consigue mediante la definici n de los par metros de conexi n en el fichero dbco nexion csv 9 1 que se encuentra en la carpeta ra z de Eclipse Un ejemplo de fichero se ve en el fragmento de c digo 9 2 Listing 9 1 Esquema del archivo dbconexion csv name of the connection db server db engine db mode db name db port db username encrypted password Listing 9 2 Ejemplo de fichero dbconexion csv mudel localhost MYSQL Native moodle 3306 moodle Encrypted 2e7fad9850be9c1869b2fad76e9b487ee 93 9 3 name of the connection Nombre de la conexi n de la base de datos El usuario del programa puede poner el nombre que quiera db_ server Nombre del servidor que contiene la base de datos Podra ser una direcci n IP o localhost db_ engine Motor de base de datos La Aplicaci n solo ha sido probada con el sistema MYSQL db mode Modo de conexi n Por defecto Native db name Nombre de la base de datos que contiene la base de datos de Moodle db port Puerto por el que nos conectaremos a la base de datos db username Usuario de la base de datos encrypted_ password Encrypted la clave encriptada Procedimientos de instalaci n Si dispone de Eclipse instalado e Descargar los plugins de EvalCourse figura 9 1 e Copiar los plugins de EvalCourse en la
84. ed to generate install and for an executable work run the object code and to modify the work including scripts to control those activities However it does not include the work s System Libraries or general purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work For example Corresponding Source includes interface definition files associated with source files for the work and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require such as by intimate data communication or control flow between those subprograms and other parts of the work The Corresponding Source need not include anything that users can regenerate automati cally from other parts of the Corresponding Source The Corresponding Source for a work in source code form is that same work Basic Permissions All rights granted under this License are granted for the term of copyright on the Program and are irrevocable provided the stated conditions are met This License explicitly affirms your unlimited permission to run the unmodified Program The output from running a covered work is covered by this License only if the output given its content constitutes a covered work This License acknowledges your rights of fair use or other equivalent as provided by copyright law You may make run and propagate covered works tha
85. ed Metadata Advanced hs Abstract los Interface n Figura 5 5 Vista del editor gr fico de Ecore 5 3 2 Ecore Tools El componente Ecore Eclipse b proporciona un entorno completo para crear editar y mantener modelos Ecore Este componente facilita la manipulaci n de modelos Ecore con un Editor Ecore gr fico y puentes con otras herramientas Ecore existentes El Editor Ecore v ase figura 5 5 es el que vamos a utilizar en el proyecto implementa soporte multi diagrama una vista de propiedades por pesta as personalizada evaluaciones de validaci n las capacidades de refactorizaci n Los metamodelos se serializan en ficheros XML con extensi n ecore El diagrama visual del metamodelo se almacena en el fichero ecore_ diagram Permite el intercambio de meta modelos Los principales componentes 5 6 de Ecore son EObject 4 EModelElement ENamedElement EPackage EClassifier EEnumLiteral ETypedElement EDataType EStructuralFeature EEnum EAttribute EReference Figura 5 6 Jerarquia de componentes Ecore EPackage componente que permite organizar clases y tipos de datos EClass conceptos en el metamodelo EReference asociaci n entre conceptos EAttribute propiedades de los conceptos EDataType tipo de un atributo 5 3 3 Xtext Xtext es un framework para el desarrollo de lenguajes de programaci n y lenguajes espec fic
86. emotesteps gt lt GUD lt xloc gt 310 lt xloc gt lt yloc gt 150 lt yloc gt lt draw gt Y lt draw gt lt GUI gt lt name gt percentage lt name gt lt type gt Calculator lt type gt lt description gt lt distribute gt Y lt distribute gt lt copies gt 1 lt copies gt lt partitioning gt lt method gt none lt method gt lt schema_name gt lt partitioning gt lt calculation gt lt field name gt Pending lt field name gt lt cale type gt SUBTRACT lt calc type gt lt field a gt Max lt field a gt lt field b gt Milestones lt field b gt lt field c gt lt value type gt Integer lt value type gt lt value_length gt 1 lt value_length gt lt value_precision gt 1 lt value_precision gt lt remove gt N lt remove gt lt conversion mask gt lt decimal symbol gt lt decimal symbol gt lt grouping symbol gt lt currency symbol gt lt calculation gt lt calculation gt lt field name gt Percentage lt field name gt lt calc_type gt PERCENT_1 lt calc_type gt lt field a gt In time lt field a gt lt field b gt Max lt field b gt lt field c gt lt value type gt Number lt value type gt lt value_length gt 1 lt value_length gt lt value_precision gt 1 lt value_precision gt lt remove gt N lt remove gt lt conversion mask gt lt decimal symbol gt lt decimal symbol gt 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654
87. ense for this particular work or 3 arrange in a manner consistent with the requirements of this License to extend the patent license to downstream recipients Knowingly relying means you have actual knowledge that but for the patent license your conveying the covered work in a country or your recipient s use of the covered work in a country would infringe one or more identifiable patents in that country that you have reason to believe are valid If pursuant to or in connection with a single transaction or arrangement you convey or propagate by procuring conveyance of a covered work and grant a patent license to some of the parties receiving the covered work authorizing them to use propagate modify or convey a specific copy of the covered work then the patent license you grant is automatically extended to all recipients of the covered work and works based on it 12 13 14 A patent license is discriminatory if it does not include within the scope of its coverage prohibits the exercise of or is conditioned on the non exercise of one or more of the rights that are specifically granted under this License You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software under which you make payment to the third party based on the extent of your activity of conveying the work and under which the third party grants to any of the parties who wou
88. es el curso al que pertenece el docente que est usando el DSL Fiabilidad EvalCourse trabajar con una gran cantidad de informaci n La interacci n de un grupo de 30 alumnos con un curso del campus virtual genera much simos registros Registros a los que tendr acceso EvalCourse y que ha de manejar de forma fiable Los resultados han de ser los que se esperan y deben representar la realidad del curso De ah lt lt enumeration gt gt H Student Y sign id Elnt grade participation k milestones 0 access students assessment lt lt enumeration gt gt H Target H indication 2 i le ze eration gt gt Operator operator Operator T type Sign s get tool Tool Too count KT a date ini EDate assignment a date end EDate forum N campus 1 workshop N target indicator 0 1 H Evidence entities H Connection name EString A name EString dbconnection A O server EString En type EString 4 ity access EString id Elnt A database EString e port Elnt username EString password EString Figura 4 15 Metamodelo de EvalCourse la importancia de un buen an lisis de la base de datos de Moodle para que la posterior recolecci n de informaci n sea fiable Comunicaciones con sistemas externos EvalCourse
89. esario para eje cutar la transformaci n Pasos a Ejecuci n fichero Java a Generaci n listado en formato xml a Generaci n gr fico en formato Gephi Cuadro 4 2 Caso de uso Realizar informes Evidencia en actividades Participaci n en actividades Acceso a las actividades Figura 4 4 Herencia de casos de usos de consultar evidencias en actividades 4 2 3 Caso de uso consultar evidencias en foros El caso de uso consultar evidencias en foros es el caso de uso general para las consultas que extraer n informaci n de los foros De ste heredar n otros dos casos de uso figura 4 5 Participaci n en foros Acceso al foro 4 2 4 Caso de uso consultar evidencias en workshops El caso de uso consultar evidencias en workshops es el caso de uso general para las consultas que extraer n informaci n referente a workshops De ste heredar n otros tres casos de uso figura 4 5 Entrega de hitos en workshop cuadro 4 8 Participaci n en actividades en workshop cuadro 4 9 Acceso al workshop cuadro 4 10 Caso de uso Entrega de hitos Descripci n Solicitud de informaci n sobre la entrega a tiempo de las actividades Esta consulta puede ir dirigida a un conjunto de actividades referenciadas por su id o a todas las actividades del curso Cuadro 4 3 Caso de uso general Entrega de hitos Caso de uso Participaci n en actividades De
90. ework de Ecore Model Ti EMF Project 15 Empty EMF Project gt Mapping gt Ecore Tools gt EvalCourse DSL gt Example EMF Model Creation Wizards O mn Cee Figura 6 5 Creaci n fichero de generaci n de modelo E EvalCourse genmodel 3 a fg EvalCourse 4 BB Evalcourse H Evidence E Target A Indication H Connection E Entity E Student Operator Sign Tool Figura 6 6 Generador del metamodelo Para generar el c digo Java habr que abrir el fichero EvalCourse genmodel 6 6 pinchar en la clase principal con el bot n derecho y darle Generate all Tras unos segundos se habr n generado todas las clases Java Finalmente nuestro directorio model con todas las carpetas necesarias para la creaci n del me tamodelo qued como se puede ver en la figura 6 7 6 4 DSL En esta fase generaremos el lenguaje Las etapas de las que se compone esta fase son dos Creaci n de nuevo proyecto Xtext basado en el metamodelo Ecore Generaci n de la infraestructura del lenguaje Debemos crear un proyecto Xtext basado en un modelo definido en Ecore 6 8 Al hacerlo as EMF nos crear una sintaxis del lenguaje por defecto a partir de la cual podremos empezar a trabajar y modelar la sintaxis seg n nuestro planteamiento La sintaxis de nuestro lenguaje debe ser la mostrada en 8 1 La explicaci n de la sintaxis es la siguiente En la primera l nea se declara el nombre de la evidencia o indicador termi
91. ficaci n y trabajo en equipo Team Total In time Overdue Pending Planning Teamwork Ot Ot o o team01 team02 team03 team04 team05 team06 team07 team08 team09 team10 teamll team12 team13 teaml4 Ot Ot Ot Ot Ot OT OT OF OL OT OT at OT Eee DDH OFF DO OTR Ot B amp B NO FP ORF O er DO ORF Or HE ODOrRroOonNwoOoOcCcCrROW OC O bl I I dos o m s debates tendr una calificaci n positiva en la competencia de liderazgo 7 4 2 An lisis de resultados Extracci n de indicadores de los hitos o actividades Moodle en su configuraci n permite la creaci n de grupos de trabajo Desafortunadamente no lo definimos explicitamente en el sistema Asi que tuvimos que obtener la lista de los estudiantes de las tareas usando EvalCourse y de forma manual destacar el equipo de cada estudiante En la tabla 7 9 podemos ver el resultado final del desempeno de los equipos en competencias de acuerdo a los indicadores Hay ocho equipos que obtuvieron la marca positiva en la competencia de planificaci n y gesti n del tiempo y en la de trabajo en equipo ya que presentaron todos los hitos en tiempo y presentaron exactamente los cinco hitos Hay cinco equipos que tienen una nota negativa en ambas competencias ya que no presentaron todas las actividades S lo un grupo tiene una calificaci n positiva en la competencia de planificaci n y gesti n del tiempo pero una calificaci n negativa en la competencia de trabajo en equipo Esto e
92. finiendo su sintaxis y el modo en el que interactuar n los operadores y tokens que participan Y por ltimo habr que definir las diferentes operaciones que se llevar n a cabo a partir de la utilizaci n de nuestro lenguaje Como y en qu se transformar el c digo que introduzca un usuario utilizando la sintaxis que definimos en el apartado anterior 6 2 Modelo Para crear el modelo se siguieron los siguientes pasos Creaci n de proyecto EMF Creaci n de metamodelo mediante Ecore Generaci n del c digo Java 6 3 Proyecto EMF Para la creaci n del metamodelo que vamos a utilizar en nuestro DSL ser necesario crear un proyecto EMF vac o 6 1 Ahora debemos crear las clases Java de nuestro modelo Pero como hemos dicho para el modelo vamos a utilizar Ecore y del conjunto de herramientas que conforman el componente Ecore 99 Select a wizard Create an empty Java plug in project with EMF dependencies Wizards type filter text 2S Java Project Java Project from Existing Ant Buildfile 58 Plug in Project gt General gt E CVS a gt Eclipse Modeling Framework EMF Project EM pty Project gt E Ecore Tools gt gt EvalCourse DSL Figura 6 1 Creaci n proyecto EMF Select a wizard Creates an Ecore diagram Wizards type filter text gt Eclipse Modeling Framework a 2 Ecore Tools Ti Ecore Tools Project 4 2 EvalCourse DSL EvalCourse Project gt Example EMF Mo
93. gramming like language to express a number of required indicators Such indicators are automatically extracted from the activ ity logs generated by the LMS A case study with Moodle LMS based courses is carried out to explain how such indi cators can be obtained and how to analyze the assessment results Categories and Subject Descriptors K 3 1 COMPUTERS AND EDUCATION Computer Uses in Education Computer assisted instruction CAI General Terms Measurement Performance Design Languages Keywords online learning competence assessment technological sup port in online education domain specific languages learning analytics 1 INTRODUCTION The interest on higher education learning has shifted from knowledge to competences Although the importance of building up and developing subject specific knowledge and skills as the basis for university degree programs is widely acknowledged it is a fact that time and attention should also be devoted to the development of generic competences or transferable skills They are becoming more and more relevant for preparing students well for their future role in society in terms of employability and citizenship Unfortunately assessing certain competences is usually a subjective task being problematic for both evaluators and evaluated Unless the competences were clearly linked to a specific assignment or aspect they are difficult to grasp Developing a detailed process for assessing stu
94. her vertex represents a student enrolled in the course Each student is linked to the central vertex activity The thickness of the link indicates students per formance in the indicator A visual representation gives an overview of the results that can support the interpretation of the data In the example the link of the first student is thinner than that of the rest That means that her perfor Student student2 Student1 Students Student4 H Student6 Performance in Student7 9 assignments Student8 Student9 Y Figure 2 Graph of students performance in assign ments mance was lower than that of the other students 4 CASE STUDY The case study we analyze was developed in University of Cadiz Spain In particular in a compulsory course on Lan guage Processors II of its degree on Computer Science 36 students enrolled the course in 2012 13 academic year The course was developed in its first semester of the fifth and last year The course evaluation was done manually and we later applied EvalCourse This course was taught by one of the EvalCourse project member Student had several compulsory tasks over the course and an exam at the end of the semester They provide a grade about students knowledge We use EvalCourse to get indicators that assist in competence assessment Next we describe the extracted indicators using EvalCourse 4 1 Information retrieved During the semester students ha
95. ho para actividades input table Realiza consulta a la base de datos para obtener la informaci n de las activi dades group by Obtiene dos agrupamientos en base a la consulta anterior Por un lado calcula cu ntas entregas han hecho los alumnos y por otro lado cu ntas han sido a tiempo group by Obtiene el m ximo n mero de entregas que hab a que hacer Join Rows Se realiza un producto cartesiano entre el campo m ximo y todos los registros de la consulta calculator Calcula la cantidad de actividades pendientes de entrega y el porcentaje que supone del total XML Output Devuelve la informaci n en fichero XML Transformaciones en Pentaho para talleres workshop input table Realiza consulta a la base de datos para obtener la informaci n de los talleres Qu alumno corrige a cada estudiante XML Output Devuelve la informaci n en fichero XML Transformaciones en Pentaho para foros input table Realiza consulta a la base de datos para obtener la informaci n de los foros group by Suma por una lado las participaciones de los alumnos en los foros y opr otro la cantidad de debates que han iniciado calculator Calcula el total de intervenciones sumando las participaciones y los inicios de debates XML Output Devuelve la informaci n en fichero XML Transformaciones en Pentaho para campus E co DO COS O ONS CO IO input table Realiza la consulta de la base de datos para obtener informaci n del log de
96. i n Trabajo en equipo S S no Si S no no no Extracci n de indicadores de los hitos o actividades Durante el semestre los estudiantes ten an que trabajar en pequefios equipo de dos o tres miem bros Cada equipo tuvo que realizar varios hitos durante el curso Estos hitos son partes de un proyecto de software que tuvieron que desarrollar y subir a la actividad correspondiente Cada hito ten a una fecha l mite aunque el sistema permite a los estudiantes que presenten estas acti vidades despu s de este plazo Para cada equipo s lo uno de los miembros tuvo que cargar cada actividad Por ejemplo si tenemos un equipo con miembros de la S1 S2 y S3 podr an presentar las actividades con las siguientes distribuciones S1 presenta las cinco actividades pero S2 y 53 no presentan nada o S1 presenta la primera actividad S2 presenta la segunda y S3 el resto etc Lo que es importante es que todas las actividades se presentan en cada equipo no importa qui n lo haga Todos los compa eros de equipo compartir n la calificaci n Las competencias que quer amos evaluar fueron planificaci n y gesti n del tiempo y trabajo en equipo y para ello tuvimos en cuenta si las actividades se hab an entregado o no a tiempo Como podemos ver en la tabla 7 8 aquellos equipos que hayan presentado todos sus hitos en el tiempo y que entregaron exactamente las cinco actividades fueron evaluadas en las competencias con una cal
97. i n Pentaho tabla 7 3 Todas las pruebas generan unos resultados que se han verificado conforme a los datos reales del campus luego se han pasado las pruebas unitarias para este m dulo 7 1 5 Resultados en gr fico En este apartado se eval an los ficheros gr ficos obtenidos a partir la ejecuci n de la transfor maci n XSL del resultado XML tabla 7 4 Todas las pruebas generan unos resultados que se han verificado conforme a los datos reales del campus luego se han pasado las pruebas unitarias para este m dulo Cuadro 7 3 Listado de resultados de ficheros xml Listados XML Funcionamiento Listado de entrega de hitos Listado de la evaluaci n por pares en workshops Listado de la participaci n en los foros Listado de la interacci n con el campus Listado de acceso a los foros SS Cuadro 7 4 Listado de resultados de ficheros xml Gr fico Funcionamiento Gr fico de entrega de hitos Gr fico de la evaluaci n por pares en workshops Gr fico de la participaci n en los foros Gr fico de la interacci n con el campus Gr fico de acceso a los foros Sr TE Cuadro 7 5 Pruebas de integraci n de los m dulos M dulos Integraci n lt Metamodelo Editor Xtext Metamodelo Editor Xtext Transformaci n Xtend Y Transformaci n Xtend Resultados en xml Y Resultados en xml Resultados en gr fico Y Metamodelo Editor Transformaci n Resultados xml Resultados gr f
98. i n se hayan presentado los dia gramas de Gantt no deja de ser cierto que el trabajo se ha visto intercalado con la lectura de mucho material para los articulos He disfrutado con el desarrollo del DSL y voy a seguir trabajando en l como parte de mi tesis doctoral 10 3 Trabajo futuro En la educaci n el enfoque en la evaluaci n de experiencias de aprendizaje est cambiando del conocimiento a las competencias Las competencias son la pr ctica las habilidades y los atributos que podemos desarrollar en todos los aspectos de nuestra vida El desarrollo tanto de compe tencias gen ricas como claves deben integrarse en los planes de estudio junto a las competencias especificas La evaluaci n de ciertas competencias suele ser una tarea subjetiva Por ejemplo la obtenci n de un enfoque objetivo de evaluar una capacidad de estudiante en la competencia de trabajo en equipo puede ser muy dif cil Esto se vuelve a n m s problem tico cuando el n mero de estu diantes es elevado Utilizando un LMS los profesores podrian analizar la interacci n producida por el alumno Los LMS almacenan informaci n acerca de las actividades del curso que requiere un filtrado antes de que se pueda utilizar Los datos recogidos se utilizar n como indicadores del trabajo de los estudiantes En este proyecto se ha desarrollado EvalCourse un DSL para definir procedimientos de eva luaci n Los profesores podr n disponer de informaci n contenida en la bas
99. icadores se actuar sobre el con cepto con dicha o dichas identidades Si no se especifica se actuar sobre todas las del curso La finalizaci n de la consulta se indica con un punto in assignment workshop forum campus list of ids Evidence name of the indicator get students show milestones participation access in assignment workshop forum campus list of ids Listing 6 1 Sint xis del lenguaje y palabras reservadas Debemos crear un fichero en formato Xtext en el caso de nuestro proyecto el fichero se denomina EvalCourse xtext refcode xtext en el que se define nuestro DSL automatically generated by Xtext grammar evalcourse dsl EvalCourse with org eclipse xtext common Terminals import http evalcourse 1 0 import http www eclipse org emf 2002 Ecore as ecore Evidence returns Evidence Evidence name EString target Target students indicator Indication dbconnection dbconnection Connection 9 Ta il H Entity returns Entity Entity id EInt Target returns Target Target operator Operator students Student students Student x Student returns Student Student id EInt EString returns ecore EString STRING ID Indication returns Indication Indication show type Sign 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 Refre
100. icense An entity transaction is a transaction transferring control of an organization or subs tantially all assets of one or subdividing an organization or merging organizations If 11 propagation of a covered work results from an entity transaction each party to that tran saction who receives a copy of the work also receives whatever licenses to the work the party s predecessor in interest had or could give under the previous paragraph plus a right to possession of the Corresponding Source of the work from the predecessor in interest if the predecessor has it or can get it with reasonable efforts You may not impose any further restrictions on the exercise of the rights granted or affir med under this License For example you may not impose a license fee royalty or other charge for exercise of rights granted under this License and you may not initiate litiga tion including a cross claim or counterclaim in a lawsuit alleging that any patent claim is infringed by making using selling offering for sale or importing the Program or any portion of it Patents A contributor is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based The work thus licensed is called the contributor s contributor version A contributor s essential patent claims are all patent claims owned or controlled by the contributor whether already acquired or hereafter
101. ico Y 7 2 Pruebas de integraci n Este tipo de pruebas tienen por objetivo localizar errores en m dulos o subsistemas completos analizando la interacci n entre varios artefactos software Los distintos m dulos se fueron inte grando hasta conseguir el funcionamiento del sistema completo A continuaci n se muestra un cuadro tabla 7 5 que muestra la verificaci n de la interacci n entre varios de sus componentes pero sera en el siguiente apartado en las pruebas de sistema donde se vea el sistema funcionando al completo 7 3 Pruebas de sistema En esta actividad se realizan las pruebas del sistema de modo que se asegure que el sistema tanto el software como el hardware cumplan con todos los requisitos establecidos 7 3 1 Pruebas funcionales Para las pruebas funcionales se eligieron dos competencias a evaluar Planificaci n y gesti n del tiempo Soluci n de problemas A continuaci n se describen los indicadores utilizados en cada uno de los casos y los resultados obtenidos Los datos sobre los que se trabajan son unos datos de prueba generadores de manera aleatoria A co DO Planificaci n y gesti n del tiempo La capacidad del alumno para gestionar su tiempo de una manera eficaz y productiva est directamente relacionado con su desempe o acad mico cu nto mejor gestiona su tiempo un es tudiante mejor nota obtiene Adem s estar menos estresado no s lo en lo relacionado a su vida acad mica sino tambi
102. ield gt lt field gt lt id gt LINES WRITTEN lt id gt lt enabled gt Y lt enabled gt lt name gt LINES WRITTEN lt name gt lt field gt lt field gt lt id gt LINES UPDATED lt id gt lt enabled gt Y lt enabled gt lt name gt LINES UPDATED lt name gt lt field gt lt field gt lt id gt LINES_INPUT lt id gt lt enabled gt Y lt enabled gt lt name gt LINES INPUT lt name gt lt field gt lt field gt lt id SLINES_OUTPUT lt id gt lt enabled gt Y lt enabled gt lt name gt LINES_OUTPUT lt name gt 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 lt field gt lt field gt lt id gt LINES_REJECTED lt id gt lt enabled gt Y lt enabled gt lt name gt LINES_ REJECTED lt name gt lt field gt lt field gt lt id gt ERRORS lt id gt lt enabled gt Y lt enabled gt lt name gt ERRORS lt name gt lt field gt lt field gt lt id gt INPUT_BUFFER_ROWS id gt lt enabled gt Y lt enabled gt lt name gt INPUT_BUFFER_ROWS lt name gt lt field gt lt field gt lt id SOUTPUT_BUFFER_ROWS lt id gt lt enabled gt Y lt enabled gt lt name gt OUTPUT BUFFER ROWS name gt lt field gt lt perf log table gt lt channel log t
103. ificaci n positiva Si un equipo presenta exactamente cinco actividades pero no en tiempo entonces se evaluaron en trabajo en equipo con una calificaci n positiva pero no en planificaci n y gesti n del tiempo Si enviaron todos los hitos a tiempo pero m s de cinco actividades porque m s de un compa ero haya subido la misma actividad ser n evaluados positivamente en la planificaci n y gesti n del tiempo pero negativamente en trabajo en equipo Por supuesto si los hitos no se presentaron a tiempo y m s o menos de cinco actividades fueron presentadas por un grupo ambas competencias fueron evaluadas como negativas Extracci n de indicadores del foro Como se ha comentado antes los estudiantes trabajan en equipos peque os Cada equipo en el curso tuvo un foro para la comunicaci n interna Se utiliz el foro para obtener indicadores para evaluar un par de competencias habilidades interpersonales y de liderazgo Las habilidades interpersonales de cada estudiante se calculan utilizando como indicador la par ticipaci n total en el foro Un estudiante que tiene tres o m s participaciones en el foro tendr calificaci n positiva en la competencia de habilidad interpersonal Como indicador del liderazgo tomamos en cuenta la cantidad de debates que cada estudiante comenz Es decir se utiliza el valor debate stater para evaluarlo Un estudiante que ha iniciado Cuadro 7 9 Listado del desempeno de los equipos de estudiantes en plani
104. ing assessments in Moodle In technical terms it is a Domain Specific Language DSL 13 a for mal language that can be automatically processed to exe cute simple sentences written using an assessment vocabu lary This language has a simple syntax oriented to learning assessment We implemented EvalCourse a computer sys tem that runs queries written in this language providing in its output the information requested This way lecturers can easily retrieve indicators from information in the Moo dle logs without any technical knowledge on databases or computer programming The rest of this paper is organized as follows the second section describes the indicators and how they are connected to competences The third section introduces EvalCourse the domain specific language that we have used to work in the case study we will show in the fourth section with an analysis of the results The fifth section comments related works In the last one we provide a discussion along with conclusions and future research lines 2 INDICATORS FOR COMPETENCE ASSESSMENT In order to obtain a meaningful data collection about stu dent learning outcomes we need to focus on student achieve ment of the specific performance indicators that define the course program outcome 8 Through experience a lecturer can know that there are certain characteristics that can be considered as reliable indicators that a certain student has achieved a specific learning
105. iography SIGPLAN Not 35 6 26 36 June 2000
106. izaci n de la MDA Model Driven Architecture la ingenieria de DSL puede ser visto como una generalizaci n de MDE Haan figura 3 1 de Cabot Parte II Desarrollo Cap tulo 4 An lisis de Requisitos 4 1 Cat logo de actores Profesor El actor profesor docente o investigador que utilizar la herramienta para obtener las evidencias del desarrollo de competencias de sus alumnos mediante la interacci n de estos con el curso de Moodle LMS El actor LMS ser el sistema del que se capturar n los datos susceptibles de ser analizados y procesados En este caso LMS siempre ser Moodle 4 2 Requisitos funcionales Existen dos casos de uso principales a Interacci n Realizar informes Interacci n tabla 4 1 Al tratarse este proyecto de un lenguaje de programaci n el escenario de los diferentes casos de uso que nos podemos encontrar es simple La variedad radica en el conjunto de consultas que el lenguaje admite pero la interacci n es siempre la misma Por eso se va a establecer un caso de uso general aplicable en sus pasos a todos los casos de uso En este caso de uso figura 4 1 el profesor ingresa una consulta en el sistema El sistema procesa la consulta y genera un fichero de transformaci n para el programa Pentaho un fichero XSL para la posterior traducci n del listado en xml a Gephi y un fichero en Java para ejecutar el siguiente paso Realizar informes tabla 4 2 Una vez que se ha obtenido el
107. kage Explorer 5 A RA process eve X a i prueba JE a EB src gt This is an example process for EvalCourse El Generator mwe2 S dE processeve E sre gen EA JRE System Library J25E 1 5 BA Plug in Dependencies Bp snc ME e BR MANIFEST MF ES build properties Figura 8 3 Estructura de ficheros que crea se crea con un nuevo proyecto de EvalCourse E process evc 23 This is an example process for EvalCourse Syntax Evidence NAME EVIDENCE get students show milestones assessment participation access in assignment forum campus KARA Evidence participacion en foro get students show participation in forum Figura 8 4 Cosulta escrita en fichero process evc participacion en foro ktr Transformaci n en formato Pentaho para extraer la informaci n escrita en la consulta del sistema LMS participacion en foro xsl XSL que transforma la informaci n de un fichero xml a un fichero en formato Gephi participacion en foroToGephi ktr Transformaci n en formato Pentaho que utilzar la transformaci n XSL para obtener el fichero en formato Gephi Transformation java Programa escrito en Java que utilizando las bibliotecas de Penta ho permitir realizar las transformaciones desde EvalCourse y as no tener que abrir el programa Pentaho Para obtener los resultados debemos ejecutar el fichero Transformation java Pinchamos en l y le damos a ejecutar En este momento comenzar n a ejecutarse las t
108. ked as changed so that their problems will not be attributed erroneously to authors of previous versions Some devices are designed to deny users access to install or run modified versions of the software inside them although the manufacturer can do so This is fundamentally incompatible with the aim of protecting users freedom to change the software The systematic pattern of such abuse occurs in the area of products for individuals to use which is precisely where it is most unacceptable Therefore we have designed this version of the GPL to prohibit the practice for those products If such problems arise substantially in other domains we stand ready to extend this provision to those domains in future versions of the GPL as needed to protect the freedom of users Finally every program is threatened constantly by software patents States should not allow patents to restrict development and use of software on general purpose computers but in those that do we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary To prevent this the GPL assures that patents cannot be used to render the program non free The precise terms and conditions for copying distribution and modification follow TERMS AND CONDITIONS 0 Definitions This License refers to version 3 of the GNU General Public License Copyright also means copyright like laws that apply to other kinds of works such a
109. l campus group by Suma la cantidad de apariciones por estudiante XML Output Devuelve la informaci n en fichero XML Transformaciones para obtener gr fico Load file in content memory Carga en memoria el xml con los registros Load file in content memory Carga en memoria del xsl con el esquema de transformaci n Join Rows Unimos el contenido de ambos ficheros en un nico registro con un atributo para el contenido de cada fichero XSL Transformation Realizamos la transformaci n XSL sobre los registros contenido en el fichero XML a Text file output Asignamos el fichero transformado a un fichero de texto con extensi n gexf Formato de Gephi Mapeo A continuaci n se describe el mapeo que se realiza entre el c digo EvalCourse y el xml de Pen taho En el c digo 5 1 se puede ver las diferentes alternativas que ofrece el DSL Evidence name of the indicator get students show milestones participation access in assignment forum campus list of ids Listing 5 1 Formato y palabras reservadas La estructura del XML de Pentaho es la que se puede ver en la figura 5 2 lt transformation gt lt info gt lt info gt lt connection gt lt connection gt lt order gt lt order gt lt step gt lt step gt lt step gt lt step gt lt step gt lt step gt lt transformation gt A WN RA o JOSS EWE Listing 5 2 Estructura XML Pentaho Explicaci n del XML
110. l utils B Classpath xtend DBconnection xtend 3 gephixtend gt Hop xtend gt Step xtend gt Transformation xtend gt Xmlxtend gt B evalcourse dsl validation Figura 6 13 Clases que conforman el paquete utils aa A Export the selected plug ins and or fragments in a form suitable for deploying in an Eclipse product 3 Select an export destination type filter text gt amp General gt E Install E Java a Plug in Development f Deployable features 2 Deployable plug ins and fragments E Eclipse product T Target definition b amp Run Debug gt E Team gt XML A Figura 6 14 Creaci n del plugin del DSL Cap tulo 7 Pruebas del Sistema 7 1 Pruebas unitarias Las pruebas unitarias tienen por objetivo localizar errores en cada nuevo artefacto software desarrollado antes que se produzca la integraci n con el resto de artefactos del sistema 7 1 1 Metamodelo Una vez creado el metamodelo se generan autom ticamente utilizando el asistente de Eclipse varios modelos conforme a dicho Metamodelo Todos fueron validados utilizando el validador de Eclipse por lo que el metamodelo supero la pruebas unitarias figura 7 1 7 1 2 Editor El editor generado por la herramienta para EvalCourse indica cuando hay errores en la sintaxis Todas las consultas conforme a la gram tica que se han probado son admitidas por el DSL tabla Tal
111. ld receive the covered work from you a discriminatory patent license a in connection with copies of the covered work conveyed by you or copies made from those copies or b primarily for and in connection with specific products or compilations that contain the covered work unless you entered into that arrangement or that patent license was granted prior to 28 March 2007 Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law No Surrender of Others Freedom If conditions are imposed on you whether by court order agreement or otherwise that contradict the conditions of this License they do not excuse you from the conditions of this License If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations then as a consequence you may not convey it at all For example if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program Use with the GNU Affero General Public License Notwithstanding any other provision of this License you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General
112. lestone lt subject gt lt type gt COUNT_ALI lt type gt lt valuefield gt lt field gt lt field gt lt aggregate gt In time lt aggregate gt lt subject gt milestone lt subject gt lt type gt SUM lt type gt lt valuefield gt lt field gt lt fields gt lt cluster schema gt lt remotesteps gt lt input gt lt input gt lt output gt lt output gt lt remotesteps gt lt GUD 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 lt xloc gt 190 lt xloc gt lt yloc gt 150 lt yloc gt lt draw gt Y lt draw gt lt GUI gt lt step gt lt step gt lt name gt max lt name gt lt type gt GroupBy lt type gt lt description gt lt distribute gt Y lt distribute gt lt copies gt 1 lt copies gt lt partitioning gt lt method gt none lt method gt lt schema_name gt lt partitioning gt lt all rows gt N lt all rows gt lt ignore aggregate gt N lt ignore aggregate gt lt field ignore gt lt directory gt ava io tmpdir director y gt lt prefix gt grp lt prefix gt lt add linenr gt N lt add linenr gt lt linenr fieldname gt lt give back row gt N lt give back row gt lt group gt lt group gt lt fields gt lt field
113. lo de un sis tema software an lisis de requisitos dise o implementaci n etc sino tambi n la inmersi n en el mundo de las competencias Saber cu les son estimar c mo se pueden medir colaborar con otros profesores en qu es importante a la hora de valorar lo que han hecho los estudiantes y ver c mo puede estar plasmado todo eso en la informaci n contenida en la base de datos para aprovecharlo Con este proyecto no solo aplico y amplio los conocimientos adquiridos en estos a os de carrera adem s aprendo a gestionar y valorar estas competencias algo que me ser muy til en mi carrera docente La herramienta DSL que hemos desarrollado es EvalCourse EvalCourse surge en el contexto del aprovechamiento de la tecnolog a para la mejora del aprendizaje TEL Technology Enhanced Learning Este es un campo de la investigaci n que ha tra do consigo grandes cambios en colegios universidades y lugares de trabajo y que se encuentra envuelto en una revoluci n tecnol gica constante EvalCourse es una herramienta que ser utilizada para tomar datos que nos sirvan como indicadores del trabajo del desempe o de los alumnos en diversas competencias Los datos que se puedan tomar o la adaptaci n de estas herramientas para ser utilizada con otros sistemas entre otros son campos que quedan abiertos para futuros trabajos de investigaci n relacionados con este trabajo y que ser n explicados en mayor detalle en trabajos futuros 1 2 Des
114. local legal effect according to their terms reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program and you want it to be of the greatest possible use to the public the best way to achieve this is to make it free software which everyone can redistribute and change under these terms To do so attach the following notices to the program It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty and each file should have at least the copyright line and a pointer to where the full notice is found lt one line to give the program s name and a brief idea of what it does gt Copyright C lt textyear gt lt name of author gt This program is free software you can redistribute it and or modify it under the terms of the GNU General Public License as published by the Free Software Foundation either version 3 of the License or at your option any later version This program is distributed in the hope that it will be useful but WITHOUT ANY WARRANTY without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE See the GNU General Public License for more details
115. lt name gt lt description gt lt extended description gt lt trans version gt lt trans type gt Normal lt trans type gt lt trans status gt 0 lt trans status gt lt directory gt amp 47 lt directory gt lt parameters gt lt parameters gt lt log gt lt trans log table gt lt connection gt lt schema gt lt table gt lt size limit lines gt lt interval gt lt timeout days gt lt field gt lt id gt ID_BATCH lt id gt lt enabled gt Y lt enabled gt lt name gt ID_BATCH lt name gt lt field gt lt field gt lt id gt CHANNEL_ID lt id gt lt enabled gt Y lt enabled gt lt name gt CHANNEL ID lt name gt lt field gt lt field gt lt id gt TRANSNAME lt id gt lt enabled gt Y lt enabled gt lt name gt TRANSNAMEX lt name gt lt field gt lt field gt lt id gt STATUS lt id gt lt enabled gt Y lt enabled gt lt name gt STATUS lt name gt lt field gt lt field gt lt id gt LINES READ lt id gt lt enabled gt Y lt enabled gt lt name gt LINES_ READ lt name gt lt subject gt lt field gt lt field gt lt id gt LINES WRITTEN lt id gt lt enabled gt Y lt enabled gt lt name gt LINES WRITTEN lt name gt lt subject gt lt field gt lt field gt lt id gt LINES_UPDATED lt id gt lt enabled gt Y lt enabled gt lt name gt LINES_ UPDATED lt name gt 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
116. lusterschemas gt lt created user gt lt created_user gt lt created date gt 2012 amp 47 09 amp 47 06 12 04 05 323 lt created_date gt lt modified user gt lt modified user gt lt modified date gt 2012 amp 47 09 amp 47 06 12 20 41 039 lt modified_date gt lt name gt mudel lt name gt lt server gt localhost lt server gt lt type gt MYSQI lt type gt lt access gt Native lt access gt lt database gt moodle lt database gt lt port gt 3306 lt port gt lt username gt moodle lt username gt lt password gt Encrypted 2e7fad9850be9c1869b2fad76e9b487ee lt password gt lt servername gt lt data_tablespace gt lt index_tablespace gt lt attributes gt lt attribute gt lt code gt PORT_NUMBER lt code gt lt attribute gt 3306 lt attribute gt lt attribute gt lt attributes gt lt from gt query lt from gt lt to gt milestones lt to gt lt enabled gt Y lt enabled gt lt from gt percentage lt from gt lt to gt indicador hitos lt to gt lt enabled gt Y lt enabled gt lt from gt milestones lt from gt lt to gt max lt to gt 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 lt hop gt lt hop gt lt hop gt lt hop gt
117. me gt lt type gt XMLOutput lt type gt lt transformation gt Listing 5 4 Estructura steps de XML Pentaho para entrega de hitos textbfMapeo de evaluaci n de workshop El c digo que generar el fichero de transformaci n para la evaluaci n de los workshops es el que se ve en el c digo 5 5 Las etapas de la transformaci n se pueden ver en el c digo 5 6 Evidence indicador workshop get students show assessment in workshop o JOS SME CO IO AAA e co DN rr O O E Nhe oo SS O OS CO IO EE Listing 5 5 Consulta para el trabajo en los workshops lt transformation gt lt step gt lt name gt query lt name gt lt type gt TableInput lt type gt lt step gt lt step gt lt name gt indicador workshop lt name gt lt type gt XMLOutput lt type gt lt step gt lt transformation gt Listing 5 6 Estructura steps XML Pentaho para las actividades del workshop textbfMapeo de participaci n en foros El c digo que generar el fichero de transformaci n para la participaci n en foros es el que se ve en el c digo 5 7 Las etapas de la transformaci n se pueden ver en el c digo 5 8 Evidence indicador foro get students show participation in forum Listing 5 7 Consulta para la participaci n en foros lt transformation gt lt step gt lt name gt query lt name gt lt type gt TableInput lt type gt lt step gt
118. mienta tool que utilizaremos para evaluar Tambi n se puede definir entre qu fechas se obtendria la informaci n Entity este concepto que puede estar o no indica sobre qu entidades actuar la evidencia Si no se indica nada por ejemplo tomar los datos de todas las actividades Pero si se indican uno o varios identificadores actuar sobre las herramientas que tengan dichos identificadores Connection concepto que representa la conexi n con la base de datos del entorno de aprendizaje virtual Moodle Tiene como par metros todos los valores necesarios para esta blecer la conexi n El usuario deber conocer estos datos para poder conectar la herramienta y extraer la informaci n Requisitos no funcionales Otros requisitos no funcionales que debe satisfacer el sistema son los siguientes Portabilidad El software debe ser capaz de ejecutarse en las diferentes plataformas para PC que habitualmente utilizan los profesores El software ha sido desarrollado con Eclipse Modeling Framework y se utiliza como un plugin de Eclipse Por tanto si en la plataforma a ser utilizado el programa se puede instalar Eclipse entonces EvalCourse podra ser utilizado en los sistemas operativos m s utilizados en el mercado Linux Windows y Mac OS Seguridad EvalCourse se va a conectar a una plataforma en la que conviven muchos cursos EvalCourse solo debe poder tener acceso a la informaci n del curso al que est enlazada en ese momento que
119. mit null values gt lt date time format gt lt add to result filenames gt N lt add to result filenames gt lt zipped gt N lt zipped gt lt splitevery gt 0 lt splitevery gt lt file gt lt fields gt lt field gt lt name gt id lt name gt lt element gt lt type gt Integer lt type gt lt format gt lt currency gt lt decimal gt lt group gt lt nullif gt lt length gt 15 lt length gt 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 lt precision gt 0 lt precision gt lt field gt lt field gt lt name gt username lt name gt lt element gt lt type gt String lt type gt lt format gt lt currency gt lt decimal gt lt group gt lt nullif gt lt length gt 100 lt length gt lt precision gt 1 lt precision gt lt field gt lt field gt lt name gt firstname lt name gt lt element gt lt type gt String lt type gt lt format gt lt currency gt lt decimal gt lt group gt lt nullif gt lt length gt 100 lt length gt lt precision gt l lt precision gt lt field gt lt field gt lt name gt lastname lt name gt lt element gt lt type gt String lt type gt lt format gt lt cu
120. modelo lo creamos mediante un fichero de extension XMI El principal objetivo de XMI es permitir un intercambio de metainformaci n entre herramientas de modelado basados en UML y repositorios de metainformaci n basados en MOF en heterog neos entornos distribui dos Realizando este intercambio mediante streams o ficheros con formato est ndar basado en XML Gracias al componente Ecore no tendremos que utilizar el editor para escribir en XMI El metamodelo que crearemos usando Ecore diagram es el que aparece en la figura 6 3 Conforme vamos trabajando y guardando automaticamente se actualiza el fichero Ecore que contiene realmente el metamodelo figura 6 4 Si abrimos este fichero podremos comprobar como se listan los conceptos que hemos representado en el metamodelo Detr s de esta representaci n del fichero como se coment anteriormente est la implementaci n en XMI Ver en ap ndice 2 Para poder utilizar el modelo necesitamos las clases Java y EMF nos proporciona una herra mienta para generar las clases Java a partir de nuestro modelo Ecore EMF Generator Model Creamos un fichero generador basado en nuestro metamodelo Ecore 6 5 Select a wizard Create an EMF generator model and if needed the underlying Ecore model Wizards type filter text G Class amp Interface WE Java Project SE Java Project from Existing Ant Buildfile G Plug in Project gt General gt amp b3 gt E CVS 4 gt Eclipse Modeling Fram
121. n ICEED2009 Embracing New Challenges in Engineering Education pages 225 229 2009 4 Arie van Deursen Paul Klint and Joost Visser Domain specific languages an annotated bibliography SIGPLAN Not 35 6 26 36 June 2000 A generative computer language to customize online learning assessments Antonio Balderas Ivan Ruiz Rube Juan M Dodero University of Cadiz University of Cadiz University of Cadiz Spain Cadiz C Chile 1 CP Spain Cadiz C Chile 1 CP Spain Cadiz C Chile 1 CP 11002 11002 11002 34 956 015 692 antonio balderas uca es 34 956 015 784 ivan ruiz uca es 34 956 015 784 juanma dodero uca es Manuel Palomo Duarte University of Cadiz Spain C diz C Chile 1 CP 11002 34 956 015 483 manuel palomo uca es ABSTRACT The focus on assessment of learning experiences has shifted from knowledge to competences Unfortunately assessing certain competences is mainly a subjective task being prob lematic for both the evaluators and the evaluated Addition ally when the learning process is computer supported and the number of students increases traditional assessment pro cedures suffer from scalability problems In this paper we propose a methodology that supports grading learning com petences according to students performance in an online course We automatically extract different objective indi cators about students AZ work in a Learning Management System LMS Evaluators can use a computer pro
122. n of this License for material you add to a covered work you may if authorized by the copyright holders of that material supplement the terms of this License with terms a Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License or b Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it or c Prohibiting misrepresentation of the origin of that material or requiring that modified versions of such material be marked in reasonable ways as different from the original version or d Limiting the use for publicity purposes of names of licensors or authors of the material or e Declining to grant rights under trademark law for use of some trade names trade marks or service marks or f Requiring indemnification of licensors and authors of that material by anyone who conveys the material or modified versions of it with contractual assumptions of liability to the recipient for any liability that these contractual assumptions directly impose on those licensors and authors 10 All other non permissive additional terms are considered further restrictions within the meaning of section 10 If the Program as you received it or any part of it contains a notice stating that it is governed by this License along with a term that is a further restriction you may remov
123. nado en dos pun tos para indicar que desde ah comienza la declaraci n Evidence name of the indicator En la segunda l nea lo que se escribe es una cadena constante No interviene en el resultado pero de cara a que la consulta resulte m s clara se decidi a adir get students En la tercera l nea se define qu operador queremos que nos devuelva la evidencia Puede ser la entrega de hitos milestones la participaci n participation o el acceso access show milestones workshop participation access 4 1 5 evalcourse model gt EM JRE System Library JavaSE 1 6 gt BA Plug in Dependencies gt EB src gt E META INF a 2 model EvalCourse ecore EvalCourse ecorediag E EvalCourse genmodel fa build properties plugin properties B plugin xml Figura 6 7 Proyecto del metamodelo Create an Xtext project from existing Ecore models Wizards type filter text gt gt EvalCourse DSL gt E Java gt gt Maven gt Plug in Development gt E Xcore gt E Xtend 4 gt Xtext BS Xtext Project gt 3 Continuous Integration gt Examples gt Examples Figura 6 8 Creaci n de proyecto Xtext basado en Ecore wm m oo krumm a En la cuarta l nea se indica sobre qu concepto actuar el operador anterior Puede ser sobre las tareas assignment talleres workshop foros forum o plataforma virtual campus Adem s si se indican a continuaci n uno o varios identif
124. nection containment true gt lt eClassifiers gt lt eClassifiers xsi type ecore EClass name Target gt lt eStructuralFeatures xsi type ecore EAttribute name operator eType Operator gt lt eStructuralFeatures xsi type ecore EReference name students upperBound 1 eType Student containment true gt lt eClassifiers gt lt eClassifiers xsi type ecore EClass name Indication gt lt eStructuralFeatures xsi type ecore EAttribute name type lowerBound 1 eType Sign gt lt eStructuralFeatures xsi type ecore EAttribute name tool lowerBound 1 eType Tool gt lt eStructuralFeatures xsi type ecore EAttribute name date_ini eType ecore EDataType http www eclipse org emf 2002 Ecore EDate gt lt eStructuralFeatures xsi type ecore EAttribute name date_end eType ecore EDataType http www eclipse org emf 2002 Ecore EDate gt lt eStructuralFeatures xsi type ecore EReference name entities upperBound 1 eType Entity containment true gt lt eClassifiers gt lt eClassifiers xsi type ecore EEnum name Operator gt lt eLiterals name get gt lt eLiterals name count value 1 gt lt eClassifiers gt lt eClassifiers xsi type ecore EClass name Connection gt lt eStructuralFeatures xsi type ecore EAttribute name name eType ecore EDataType http www eclipse org emf 2002 Ecore EString gt lt eStructuralFeatures xsi type ecore EAt
125. o output Co mo se ha mencionado la salida ser n en formato xml por lo que el componente esXML output Es XML Output Group by te permite calcular valores sobre un grupo definido de campos Funcionamiento similar a la cl usula group by de una consulta SQL Este componente es de tipo Statistics Group by El paso calculadora calculator proporciona funciones predefinidas que se pueden ejecutar en los valores de campo de entrada Adem s de los argumentos campos A By C tambi n se debe especificar el tipo de retorno de la funci n FEF 44 Calculator El paso Join Rows cartesian product realiza un producto cartesiano entre los datos provenientes de varias entradas Join Rows cartesian product Load file in content memory carga el contenido de un fichero cualquiera en memoria Load file content in memory XSL Transformation es un componente que se encarga de realizar una transformaci n XSL Re cibe dos ficheros por un lado el XML a transformar y por otra el XSL que tiene el esquema de transformaci n xst XSL Transformation Text file output es un componente de salida output Su finalidad es devolver como salida la informaci n de la transformaci n en un fichero de texto D Text file output Componentes necesarios para cada transformaci n Pentaho A continuaci n se describen los componentes necesarios para la generaci n de cada fichero de transformaci n Pentaho Transformaciones en Penta
126. o para Moodle sino tambi n para futuras versiones del DSL utilizables en otros sistemas se ha creado un metamodelo cuya ltima versi n consideramos que es apta para ser utilizada en cualquier LMS 4 15 Desde luego en Moodle nos ha sido de utilidad Para verificar su viabilidad para otros LMS habr que esperar a ver los resultados de su aplicaci n en trabajos futuros La sintaxis de nuestro DSL deber ser sencilla y cercana al lenguaje humano se ha creado una sintaxis compuesta por palabras del idioma ingl s cuya construcci n literal indica claramente qu se pretende obtener Por tanto consideremos que el objetivo de que sea de sencilla utilidad para personas no familiarizadas con el entorno tecnol gico se ha conseguido Investigar qu informaci n ser a de importancia desde el punto de vista de las competen cias en un sistema Moodle para generar en nuestro DSL las consultas que nos devuelvan Technology Enhanced Learning 97 dicha informaci n se hizo una consulta a varios profesores del Departamento de Ingenie ria Informatica para conocer su opini n y qu par metros creian v lidos para evaluar las competencias a trav s de la informaci n de Moodle Con esta informaci n se adoptaron para esta primera versi n del software los indicadores de los foros actividades accesos al campus y talleres Investigar estructura de los ficheros fuente del software Kettle de Pentaho para que nuestro DSL pueda proporcionar com
127. o salida un fichero v lido para este software mediante la realizaci n de muchos ejemplos y estudio del xml que hay detr s de las transformaciones de Pentaho se consiguieron crear varios algoritmos para mapear las consultas de EvalCourse a un formato v lido y funcional de dichos ficheros Integrar el software como un todo Eclipse EvalCourse y Kettle para facilitar al usuario la instalaci n e implantaci n del sistema Con la ayuda de EMF y la bibliotecas de Kettle conseguimos el objetivo de integrar todo en un nico IDE 10 2 Lecciones aprendidas 10 2 1 Planificaci n Se muestra un diagrama de Gantt del tiempo que se ha empleado figura 10 1 en el desarrollo del proyecto y otro con la comparaci n entre el tiempo planificado y el que en realidad se ha empleado figura 10 2 El tiempo esperado para la realizaci n del proyecto era de 160 d as figura 2 5 Sin embargo se tard en completar 207 d as figura 10 3 El retraso de 47 d as se debe sobre todo a labores de investigaci n que llevaron m s tiempo del que se pensaba inicialmente Las reas que m s retraso supusieron fueron por un lado la integraci n de las librer as de Pentaho con el DSL para poder ejecutar la transformaci n desde el propio DSL y por otra parte el estudio y mapeo de los ficheros XML para Pentaho Bouman and Dogen y Gephi 10 2 2 Costes Vamos a comparar la diferencia de costes entre los calculados a priori y los que han sido realmente
128. ores son muy parecidas a las que l calcul de forma manual para cada estudiante en el curso Figura 7 4 Gr fico del desempeno de los estudiantes en el trabajo en el foro Parte III Ep logo Cap tulo 8 Manual de usuario Las instrucciones de uso del sistema se detallan a continuaci n 8 1 Introducci n EvalCourse es un DSL creado para ayudar al docente en la obtenci n de indicadores en el desem peno de sus alumnos en competencias gen ricas Estos indicadores los tomar del trabajo de los estudiantes en un curso de la plataforma virtual Moodle Medir las competencias gen ricas de un alumno puede ser un trabajo demasiado subjetivo y poco escalable Saber c mo es un alumno trabajando en equipo o c mo se organiza el trabajo son competencias dif ciles de medir con una mera observaci n C mo estas dos hay otras muchas competencias en la misma situaci n Son caracteristicas que conoces de una persona cuando realmente la conoces Es imposible saber c mo son todos tus alumnos y menos aun cuando el numero de estudiantes es muy grande Moodle almacena gran cantidad de informaci n acerca de la interacci n de cada alumno con el curso Esta interacci n nos puede dar pistas sobre c mo trabaja un alumno en diferentes com petencias Es cuesti n de definir indicadores de dichas competencias en base a dicha interacci n Es trabajo del docente declaras sus indicadores Con EvalCourse se da la opci n a los docentes de e
129. os de dominio DSL Bettini liderados por la empresa Itemis AG Xtext genera autom ticamente los componentes necesarios para trabajar con los DSL parser analizador est tico formateador de c digo generador de c digo etc Pueden utilizarse desde dentro de Eclipse o de forma independiente Xtext incluye un lenguaje para dise ar gram ticas y una amplia API para definir los diferentes aspectos de los DSL Utiliza Google Guice un framework ligero para la inyecci n de dependencias con el cual podemos sustituir f cilmente cualquier comportamiento por defecto Se basa en ANTLR para generar los parsers LL k Xtext construye autom ticamente la infraestructura software necesaria para dar soporte a los nuevos lenguajes Para configurar la generaci n autom tica del c digo de soporte Xtext utiliza un DSL especial denominado MWE2 MWE2 permite componer objetos en Java pero de forma declarativa y sin tanta verbosidad Abarca todos los aspectos de una infraestructura completa del lenguaje desde los analizadores enlazador compilador o int rprete Finalmente se integra con el IDE de Eclipse Algunas de sus caracter sticas son Coloreado de sintaxis Autocompletar Integraci n con Java a Integraci n con otras herramientas de Eclipse Validaci n y correcci n r pida 5 3 4 Xtend Xtend es un lenguaje de programaci n de alto nivel de prop sito general para la m quina virtual de Java Xtend tiene
130. outcome As the initial step in the present study we have detected several specific per formance criteria that can be used as evidence of program learning outcomes Planning and time management 4 is the studentaAZs abil ity to manage their time successfully and productively and it is explicitly related to academic performance In the rest of the paper we refer to this competence as Planning Students must submit the activities before a dead line defined by the lecturer But LMS usually accepts them submissions after this deadline expired We con sider each one of these submissions as a milestone At the end of the course we can measure the amount of milestones that have been submitted in time and the amount of them that have been submitted out of time Teamwork 9 is an assignment done by several students with each doing a part that must be coordinated with that of the other members In many cases the tasks they have to do have interdependent Thus a stu dent could had to wait that her teammate finishes her previous task so she can start hers In this case if that student does not finish the milestone in time she can affect the whole group In a LMS like Moodle we can use the deadline of the interdependent activities to set when the different teammates have to submit their tasks DT EN HH Interpersonal skills are the life skills we use every day to communicate and interact with other people individ ually and in gro
131. ramientas que ayudan al docente en la evaluaci n de competencias Estas herramientas se han utilizado en su mayor a aplicadas a wi kis Por un lado tenemos StatMediaWiki Palomo Duarte et al 2011 herramienta que recopila informaci n de una instalaci n MediaWiki y la resume en tablas y gr ficos que permitan analizar su desarrollo y estado Esta herramienta permite medir cuantitativamente el trabajo de los alum nos en base a la cantidad de informaci n que ha introducido cada uno en los diferentes art culos del wiki La experiencia llevada a cabo con esta herramienta ha sido descrita en este art culo Palomo Duarte et al 2012 Por otro lado tratando de buscar un punto de vista cualitativo a la informaci n aportada por los alumnos se desarroll AssessMediaWiki Balderas et al 2012a AssessMediaWiki se conectaba tambi n a una instalaci n de MediaWiki permitiendo la evalua ci n de los cambios realizados por los estudiantes entre dos ediciones de un art culo de la wiki dando la posibilidad de realizar heteroevaluaci n autoevaluaci n y la evaluaci n entre iguales Balderas et al 2012b Estas aplicaciones resuelven en cierto modo la problem tica para MediaWiki de c mo evaluar las aportaciones a este sistema realizadas por los estudiantes Pero EvalCourse va m s all ya que su aplicaci n va orientada a la b squeda de indicadores en cualquier sistema LMS Aunque en este proyecto para empezar se ha desarrollado para Moodl
132. ransformaciones y finalmente obtendremos los ficheros con los resultados solicitados al inicio 8 6 Los dos ficheros de que dispondremos tendr n el nombre de la evidencia que declaramos en el c digo y dos extensiones El primero de ellos es gexf para el gr fico Si abrimos este fichero con el programa Gephi veremos algo as 8 7 Cada v rtice representa un estudiante o una actividad Cada estudiante est unido con las dos actividades que se eval an y dependiendo del grosor de la arista que los une el desempe o del estudiante en esa actividad habr sido mayor o menos Por otro lado tenemos el fichero de extensi n xml que ser el listado textual con la misma informaci n figuras 8 8 y 8 9 fs Package Explorer 52 E 4 ES prueba a B src E Generator mwe2 process evc 4 B src gen gt EH default package X participacion en foro ktr X participacion en foroxsl X participacion en foroToGephi ktr gt EM JRE System Library J2SE 1 5 gt BA Plug in Dependencies gt B Pentaho gt 3 META INF ai build properties Figura 8 5 Ficheros creados en carpeta src gen 4 B prueba a src E Generator mwe2 process evc 4 8 src gen 4 default package b D Transformation java X participacion_en_foro ktr X participacion_en_foro xsl X participacion en foroToGephi ktr gt EA JRE System Library J2SE 1 5 gt BA Plug in Dependencies gt B Pentaho gt gt META INF 4 gt output participacion en foro gexf
133. ren ante a Dre far ar ay ADE a ay Sra No gator ee Be 98 10 232 Experience u eter aod ed ae AD et O ae ear ee Beten Blend 102 10 3 Trabajo Tuturo wox irs d rined a a ee EA a 102 Bibliografia 105 IV Ap ndice 107 1 Contenido de fichero xml de Pentaho ejemplo o o o o 109 2 Contenido del fichero EvalCourse ecore 2 2 2 m mn nn 123 3 GNU General Public License 0000000000008 125 Articulo enviado a EC TEL 2013 137 Art culo enviado a ISELEAR 13 139 Indice de figuras 2 1 2 2 22 2 4 2 5 3 1 4 1 4 2 4 3 4 4 4 5 4 6 4 7 4 8 4 9 4 10 4 11 4 12 4 13 4 14 4 15 4 16 5 1 5 2 5 3 5 4 5 5 5 6 9 1 6 1 6 2 6 3 6 4 6 5 Diagrama de Gantt a ee och Ka a a re A oe Va te 14 Diagrama de Gantt Partel asana a2 so ss KK au eiaa do ed duns 15 Diagrama de Gantt Parte 2 ag 40524 kace d aa ee a ee ee 16 Diagrama de Gantt Parte3 o o 17 Resumen de fechas planificadas para el desarrollo del proyecto 18 Gr fico de relaciones entre los modelos dirigidos o o 23 Casos de uso Interacci n qd de doa de RAE do A B A re 30 Casos de uso Realizar Informes eee 30 Herencia de casos de usos del s per caso de interacci n 31 Herencia de casos de usos de consultar evidencias en actividades 32 Herencia de casos de usos de consultar evidencia en foros o 33
134. rrency gt lt decimal gt lt group gt lt nullif gt lt length gt 100 lt length gt lt precision gt l lt precision gt lt field gt lt field gt lt name gt P ercentage lt name gt lt element gt lt type gt Number lt type gt lt format gt lt currency gt lt decimal gt lt decimal gt lt group gt lt nullif gt lt length gt 1 lt length gt lt precision gt 1 lt precision gt lt field gt lt field gt lt name gt Milestones lt name gt lt element gt lt type gt Integer lt type gt lt format gt lt currency gt lt decimal gt lt group gt 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 lt step gt lt transformation gt lt nullif gt lt length gt 10 lt length gt lt precision gt 0 lt precision gt lt field gt lt field gt lt name gt In time lt name gt lt element gt lt type gt Integer lt type gt lt format gt lt currency gt lt decimal gt lt group gt lt nullif gt lt length gt 1 lt length gt lt precision gt 0 lt precision gt lt field gt lt field gt lt name gt P ending lt name gt lt element gt lt type gt Number lt type gt lt format gt lt currency gt lt decimal gt lt group gt lt nullif gt lt length gt 1 lt length gt
135. rse correcta Desventajas de los DSL El costo de aprender un nuevo lenguaje vs su aplicaci n limitada El costo de dise ar implementar y mantener un DSL y las herramientas para trabajar con l a Encontrar establecer y mantener el alcance adecuado 3 2 1 Fases en el desarrollo de un DSL externo Dise o del metamodelo Desarrollo del formato de representaci n Generaci n de transformaciones a Construcci n de un IDE Metamodelado es el an lisis dise o y construcci n de los metamodelos necesarios para cubrir un determinado tipo de problemas as como las reglas y restricciones aplicables Un metamodelo es el conjunto de conceptos del dominio a modelar metaclases y las relaciones entre ellos meta asociaciones El objetivo es definir los conceptos y relaciones del dominio del problema que queremos abordar mediante un diagrama de clases Estos se definen de forma abstracta independientemente del formato de representaci n deseado Los metamodelos definir n la sintaxis abstracta de nuestro lenguaje Figura 3 1 Gr fico de relaciones entre los modelos dirigidos 3 3 MDE y DSL Despu s de leer la informaci n anterior o como se puede leer en Model Based DSL Frame works Kurtev et al 2006 se aprecia como MDE y DSL convergen en varios aspectos La noci n de dominio es com n a estas dos reas de estudio y comparten una gran cantidad de objetivos y pr cticas comunes Del mismo modo que MDE es una general
136. s semiconductor masks The Program refers to any copyrightable work licensed under this License Each licensee is addressed as you Licensees and recipients may be individuals or organizations y To modify a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission other than the making of an exact copy The resulting work is called a modified version of the earlier work or a work based on the earlier work A covered work means either the unmodified Program or a work based on the Program To propagate a work means to do anything with it that without permission would make you directly or secondarily liable for infringement under applicable copyright law except executing it on a computer or modifying a private copy Propagation includes copying distribution with or without modification making available to the public and in some countries other activities as well To convey a work means any kind of propagation that enables other parties to make or receive copies Mere interaction with a user through a computer network with no transfer of a copy is not conveying An interactive user interface displays Appropriate Legal Notices to the extent that it includes a convenient and prominently visible feature that 1 displays an appropriate copyright notice and 2 tells the user that there is no warranty for the work except to the ex
137. s unless such uses represent the only significant mode of use of the product Installation Information for a User Product means any methods procedures authori zation keys or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source The information must suffice to ensure that the continued functioning of the modified ob ject code is in no case prevented or interfered with solely because modification has been made If you convey an object code work under this section in or with or specifically for use in a User Product and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term regardless of how the transaction is characterized the Corresponding Source conveyed under this section must be accompanied by the Installation Information But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product for example the work has been installed in ROM The requirement to provide Installation Information does not include a requirement to continue to provide support service warranty or updates for a work that has been modi fied or installed by the recipient or for the User Product in which it has been modified or installed Access to a network ma
138. s as porque no estaban bien coordinados y presentaron actividades repetidas Extracci n de indicadores del foro S lo 18 alumnos de la 36 matriculados en el curso participaron en el foro Esto no significa que no hayan trabajado estas competencias s lo significa que no han demostrado que lo hi cieron con el uso de la herramienta Podemos analizar los resultados del uso de EvalCourse en el trabajo en el foro con la tabla 7 10 y en el grafico 7 4 Muy pocos estudiantes pudieron ser evaluados de estas competencias Hay muchos que destacaron sobre resto A pesar de que el foro haya sido utilizado por un grupo reducido de alumnos hemos observado que los estudiantes que obtuvieron buena nota en estos indicadores realmente tuvieron un buen desempeno durante el Cuadro 7 10 List of students performance in forum participation in case study id username Debate starter Debate participation Total 43 S2 0 1 1 44 53 3 4 7 45 S4 2 2 4 46 S5 0 1 1 48 S7 4 3 7 50 59 6 8 14 51 S10 1 1 2 93 S12 0 1 1 55 S14 1 1 2 59 S18 1 2 3 60 S19 2 0 2 61 S20 0 2 2 62 S21 0 1 1 67 S26 0 1 1 70 529 0 1 1 71 530 2 1 3 75 534 1 5 6 78 537 2 4 6 curso en la consecuci n de estas competencias Por lo tanto podemos decir que los indicadores que hemos elegido parecen buenas evidencias sobre las competencias logradas por los estudiantes En conclusi n y de manera informal el profesor del curso confirm que las notas obtenidas mediante los indicad
139. s equivalent copying facilities provided you maintain clear directions next to the object code saying where to find the Co rresponding Source Regardless of what server hosts the Corresponding Source you remain obligated to ensure that it is available for as long as needed to satisfy these requirements e Convey the object code using peer to peer transmission provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d A separable portion of the object code whose source code is excluded from the Corres ponding Source as a System Library need not be included in conveying the object code work A User Product is either 1 a consumer product which means any tangible personal property which is normally used for personal family or household purposes or 2 anything designed or sold for incorporation into a dwelling In determining whether a product is a consumer product doubtful cases shall be resolved in favor of coverage For a particular product received by a particular user normally used refers to a typical or common use of that class of product regardless of the status of the particular user or of the way in which the particular user actually uses or expects or is expected to use the product A product is a consumer product regardless of whether the product has substantial commercial industrial or non consumer use
140. scribir sus indicadores y ejecutarlos frente a su curso del campus virtual 8 2 Caracter sticas Las principales funcionalidades del sistema son Consulta de indicadores del desempe o de los estudiantes en los siguientes conceptos e Actividades e Foro e Campus e Talleres a En dichos conceptos se podr consultar lo siguiente 87 E co DO e Acceso e Participaci n e Entrega de hitos a Creaci n de fichero de transformaci n de Pentaho a Ejecuci n de transformaci n de Pentaho y obtenci n de e Listado de desempe o de alumnos en competencias en formato XML e Gr fico de desempe o de alumnos en formato Gephi 8 3 Requisitos previos Requisitos software a Eclipse Herramienta EMF Pentaho necesario si desea ejecutar las transformaciones fuera de EvalCourse Gephi necesario para poder visualizar los graficos 8 4 Utilizaci n Para comenzar debemos abrir Eclipse y crear un nuevo proyecto Tras seleccionar EvalCourse project como el tipo de proyecto EvalCourse 8 1 deberemos dar a siguiente y darle un nombre al proyecto EvalCourse 8 2 Ahora pulsamos en finalizar y esperamos a que se cree toda la es tructura de archivos del proyecto EvalCourse Se crea una estructura de carpetas Entre estas carpetas hay una de ella que es src Ah estar el fichero process evc que ser el fichero en el que debemos escribir la consulta Nos damos cuenta que al crear el proyecto el editor nos marca un error en el
141. scripci n Solicitud de informaci n sobre la participaci n de los alum nos en las actividades Esta consulta puede ir dirigida a un conjunto de actividades referenciadas por su id o a todas las actividades del curso Cuadro 4 4 Caso de uso general Participaci n en actividades 4 2 5 Caso de uso evidencias de campus El caso de uso consultar evidencias en campus es el caso de uso general para las consultas que extraer n informaci n referente a la actividad en el campus virtual De ste heredar n otros tres casos de uso figura 4 7 Participaci n activa en el campus cuadro 4 11 Seguimiento del campus cuadro 4 12 Acceso al campus cuadro 4 13 4 3 Requisitos de informaci n Los datos que EvalCourse necesita gestionar son los registros que almacenan informaci n sobre la interacci n de los alumnos con Moodle Por esto el diagrama conceptual que estudiaremos es el del entorno de aprendizaje virtual Moodle A partir de ste es necesario realizar un mapeo Evidencias en foros Figura 4 5 Herencia de casos de usos de consultar evidencia en foros Participaci n en foros Caso de uso Acceso a las actividades Descripci n Solicitud de informaci n sobre el acceso de los alumnos a las actividades Esta consulta puede ir dirigida a un conjunto de actividades referenciadas por su id o a todas las actividades del curso Cuadro 4 5 Caso de uso general
142. sh ps Ptthistime Assign Working Sets Run As Debug As Team Compare With Replace With D 1 Generate Xtext Artifacts External Tools Configurations vw Properties Alt Enter Figura 6 9 Generaci n infraestructura DSL in tool Tool between date ini EDate and date end EDate entities Entity entities Entity y Connection returns Connection Connection Connection name EString EN server server EString type type EString access access EString database database EString 3 3 port port Elnt username username EString password password EString np I Operator returns Operator get count Elnt returns ecore Elnt 2 2 INT EDate returns ecore EDate INT INT INT Tool returns Tool assignment forum campus workshop Sign returns Sign grade participation milestones access assessment Listing 6 2 EvalCourse xtext Una vez terminado el fichero Xtext generaremos la infraestructura del lenguaje pinchando con el bot n derecho sobre el fichero EvalCourse xtert Run As gt Generate Xtext Artifacts 6 9 Se generan ficheros Java y una infraestructura de lenguaje ejecutable con un editor de Eclipse en el que utilizar nuestro lenguaje 4 15 evalcourseDSL a src EB evalcourse dsl fB
143. si type ecore EEnum name Tool gt lt eLiterals name assignment gt lt eLiterals name forum value 1 gt lt eLiterals name campus value 2 gt lt eLiterals name workshop value 3 gt lt eClassifiers gt lt eClassifiers xsi type ecore EClass name Entity gt lt eStructuralFeatures xsi type ecore EAttribute name id eType ecore EDataType http www eclipse org emf 2002 Ecore EInt gt lt eClassifiers gt lt eClassifiers xsi type ecore EClass name Student gt lt eStructuralFeatures xsi type ecore EAttribute name id eType ecore EDataType http www eclipse org emf 2002 Ecore EInt gt lt eClassifiers gt lt ecore EPackage gt Listing 2 Fichero Ecore XMI 3 GNU General Public License Copyright 2007 Free Software Foundation Inc http fsf org Everyone is permitted to copy and distribute verbatim copies of this license document but changing it is not allowed T he GNU General Public License is a free copyleft license for software and other kinds of works The licenses for most software and other practical works are designed to take away your freedom to share and change the works By contrast the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program to make sure it remains free software for all its users We the Free Software Foundation use the GNU General Public License for most of our software it applies also
144. sical medium customarily used for software interchange b Convey the object code in or embodied in a physical product including a physical distribution medium accompanied by a written offer valid for at least three years and valid for as long as you offer spare parts or customer support for that product model to give anyone who possesses the object code either 1 a copy of the Corresponding Source for all the software in the product that is covered by this License on a durable physical medium customarily used for software interchange for a price no more than your reasonable cost of physically performing this conveying of source or 2 access to copy the Corresponding Source from a network server at no charge c Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source This alternative is allowed only occasionally and noncom mercially and only if you received the object code with such an offer in accord with subsection 6b d Convey the object code by offering access from a designated place gratis or for a charge and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge You need not require recipients to copy the Corresponding Source along with the object code If the place to copy the object code is a network server the Corresponding Source may be on a different server ope rated by you or a third party that support
145. sint ctica y sem nticamente sus ra ces en el lenguaje de programaci n Java pero se centra en una sintaxis m s concisa y alguna funcionalidad adicional como la inferencia de tipos m todos de extensi n y la sobrecarga de operadores Se podr a decir que Xtend es un dialecto flexible y expresivo de Java de hecho as lo pone en su p gina web Eclipse c Adem s de ser un lenguaje orientado a objetos tambi n integra caracter sticas conocidas de la programaci n funcional por ejemplo expresiones lambda Xtend utiliza sistema de tipos de Java Se integra perfectamente con todas las bibliotecas de Java existentes 5 3 5 Transformaciones a Pentaho Para poder realizar el proceso de transformaci n de las consultas a ficheros de Pentaho hay que conocer los componentes de que consta ste Todos los pasos de los casos de uso descritos en el cap tulo anterior tienen una etapa en la que se construye la transformaci n Pentaho En este apartado vamos a describir por un lado los pasos de Pentaho que se van a utilizar y despu s mostraremos c mo deber ser cada fichero de transformaci n seg n la consulta Componentes de Pentaho El primero componente que tendr cualquiera de las transformaciones es un Table input En l se define la consulta SQL que extraer la informaci n de la base de datos de Moodle Este componente es de tipo input Table input Otro componente que tendr n todas las transformaciones ser el de salida de tip
146. sks on LMS which they are widely used nowadays Each file access or assignment done by a student is registered in the system 1 This collected information properly filtered 2 would be used as indicators of students work 2 EvalCourse EvalCourse is the domain specific language 4 that we have developed to get indicators Language syntax and reserved words are listed in 1 1 The first line specifies the name of the evidence or indicator The second line is a constant that indicates that we want to get information about students The third one indicates the kind of information to be retrieved milestones participation or access And the last one if it is collected from assignments forums or campus activity In case one or more activity identifiers are provided list of ids only information on those assignment forum or campus will be provided If not specified the query acts on all activities of the indicated type EW NO re N Evidence name of the indicator get students show milestones participation access in assignment forum campus list of ids Listing 1 1 Language syntax Reserved words are highlighted in bold format We will illustrate language usage with a simple example on assessing problem solving competence We can assess students performance in this competence using their participation in forums 3 in which lecturers set out problems We ask for the information with the code shown in 1 2 obtaining res
147. stamente al curso que imparte el profesor que est usando la herramienta Adem s esos usuarios en el curso cumplen un rol en particular el Ee Acceso al workshop Entrega de hitos en workshop Participaci n en workshop Figura 4 6 Herencia de casos de usos de consultar evidencias en workshops Caso de uso Acceso al foro Descripci n Solicitud de informaci n sobre los alumnos qu acceden en el foro Esta consulta puede ir dirigida a un conjunto de actividades referenciadas por su id o a todas las actividades del curso Cuadro 4 7 Caso de uso general Acceso al foro Caso de uso Entrega de hitos en workshop Descripci n Solicitud de informaci n sobre las entrega de actividades en el taller Esta consulta puede ir dirigida a un conjunto de actividades referenciadas por su id o a todas las actividades del curso Cuadro 4 8 Caso de uso general Entrega de hitos en workshop rol de estudiantes Estos datos hay que tenerlos en cuenta a la hora de filtrar la informaci n Los fragmentos del diagrama que intervienen son los de los m dulos de usuarios 4 9 y de roles 4 10 Las tablas que se necesitan son las siguientes mdl user Esta tabla almacena toda la informaci n de los usuarios Sera necesaria para relacionarla en consultas posteriores con los usuarios a los que pertenecen las evaluaciones obtenidas de otras fuentes de informaci n mdl course Est
148. stores infor mation about course activities that requires filtering before it can be used for higher level processing This information will be used as indicators of students work We have developed and applied EvalCourse in our case study We assessed students performance in the competences of Planning and Teamwork We automatically obtained in dicators that assisted as in the assessment of these compe tences The interpretation that we did about indicators were closely related to the results that the lecturer noticed during the course Of course this is just a case study needing fur ther study to get a strong conclusion on the validity of the specific usage of the information retrieved by EvalCourse We have two future lines of work ahead First we will iden Table 2 List of teams performance in assignments in case study Team Total In time Overdue Pending Planning Teamwork or al team01 0 team02 team03 team04 team05 team06 team07 team08 team09 team10 teaml1 team12 team13 team14 Ot Ot OT OT OT OT OT OT OT OT OT OT OT EE ONO RENEE OLB DO RriOrrOornorror o fi T fi T OHOVDOOHOowooo m 1 1 tify others indicators stored in LMS that can be used to assess competences and include them in our syntax Sec ondly our language can express sentences that are general for almost any LMS But at the moment the generative computer language just allows lecturers to work with Moo dle So
149. t you do not convey without conditions so long as your license otherwise remains in force You may convey covered works to others for the sole purpose of having them make modifications exclusively for you or provide you with facilities for running those works provided that you comply with the terms of this License in conveying all material for which you do not control copyright Those thus making or running the covered works for you must do so exclusively on your behalf under your direction and control on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you Conveying under any other circumstances is permitted solely under the conditions stated below Sublicensing is not allowed section 10 makes it unnecessary Protecting Users Legal Rights From Anti Circumvention Law No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996 or similar laws prohibiting or restricting circumvention of such measures When you convey a covered work you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work and you disclaim any intention to limit operation or modification of the work as a means of enforcing against the work s
150. te participation gt lt Debate participation gt 3 lt Debate participation gt lt Debate participation gt 1 lt Debate participation gt lt Debate participation gt 1 lt Debate participation gt lt Debate participation gt 1 lt Debate participation gt lt Total gt lt Total gt lt Total gt lt Total gt lt Total gt lt Total gt lt Total gt 2 lt Total gt 1 lt Total gt 1 lt Total gt 3 lt Total gt 2 lt Total gt 1 lt Total gt 1 lt Total gt lt Row gt lt Row gt lt Row gt lt Row gt lt Row gt lt Row gt lt Row gt Figura 8 9 Resultado textual en xml lado derecho Cap tulo 9 Manual de instalaci n y explotaci n Las instrucciones de instalaci n y explotaci n del sistema se detallan a continuaci n 9 1 Introducci n El principal objetivo de EvalCourse es un DSL es la obtenci n de indicadores en el desempe o de sus alumnos en competencias gen ricas Estos indicadores se extraer n del trabajo de los estudiantes en un curso de la plataforma virtual Moodle El mbito de aplicaci n de EvalCourse es la docencia universitaria Los profesores lo podr n utilizar para evaluar el desarrollo de competencias de aquellos de sus estudiantes que intervengan en el campus virtual 9 2 Requisitos previos Requisitos software Eclipse con la herramienta EMF y el plugin de EvalCourse Pentaho necesario si desea ejecutar las transformaciones fuera de EvalCourse Gephi n
151. tent that warranties are provided that licensees may convey the work under this License and how to view a copy of this License If the interface presents a list of user commands or options such as a menu a prominent item in the list meets this criterion 1 Source Code The source code for a work means the preferred form of the work for making modifications to it Object code means any non source form of a work A Standard Interface means an interface that either is an official standard defined by a re cognized standards body or in the case of interfaces specified for a particular programming language one that is widely used among developers working in that language The System Libraries of an executable work include anything other than the work as a whole that a is included in the normal form of packaging a Major Component but which is not part of that Major Component and b serves only to enable use of the work with that Major Component or to implement a Standard Interface for which an implementation is available to the public in source code form A Major Component in this context means a major essential component kernel window system and so on of the specific operating system if any on which the executable work runs or a compiler used to produce the work or an object code interpreter used to run it The Corresponding Source for a work in object code form means all the source code need
152. ting models from web 2 0 databases Software and Systems Modeling 12 1 15 34 2013 2 4 5 7 B Florian C Glahn H Drachsler M Specht and R Fabregat Gesa Activity based learner models for learner monitoring and recommendations in moodle volume 6964 LNCS of Lecture Notes in Computer Science including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics 2011 8 Rogers G Do grades make the grade for program pages 8 9 2012 9 J Kay N Maisonneuve K Yacef and P Reimann The big five and visualisations of team work activity volume 4053 LNCS of Lecture Notes in Computer Science including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics 2006 10 R E Mohedano A G Segador and J A Varo Moodle module for the management and assessment of teamwork First results In Proceedings of the IADIS International Conference e Learning 2011 Part of the IADIS Multi Conference on Computer Science and Information Systems 2011 MCCSIS 2011 volume 2 pages 408 410 2011 11 S Ozgen O S nchez Galofr J R Alabart M Medir and F Giralt Assessment of engineering students leadership competencies Leadership and Management in Engineering 13 2 65 75 2013 12 D C Schmidt Model driven engineering Computer 39 2 25 31 2006 13 Arie van Deursen Paul Klint and Joost Visser Domain specific languages an annotated bibl
153. tratar EvalCourse es el nombre y apellidos de los alumnos El resto de datos Seleccione los registros que desea ver E Todos los participantes ef Hoy 1 de julio de 2013 ES Todas las actividades Todas las acciones Mostrar en p gina Conseguir estos registros Figura 4 16 Filtros para la obtenci n de informes en Moodle personales aun estando muchos de ellos disponibles en Moodle No son del mbito del DSL desarrollado pues como se especific con anterioridad la recogida de datos es meramente con fines cuantitativos Por esto el contenido de mensajes en correos en foros datos geogr ficos y toda aquella informaci n que pueda relacionar a un usuario queda fuera del mbito del proyecto 4 5 Estudio de alternativas tecnol gicas La alternativa tecnol gica a EvalCourse est en el propio Moodle Tal y c mo se indic en los requisitos no funcionales una de las caracter sticas m s importantes es la usabilidad EvalCourse va a ser utilizado por docentes no tecn logos stos han de poder usar la herramienta con facilidad Moodle ofrece mecanismos para obtener gran parte de la informaci n que aqu se detalla Si vamos a la zona lateral del campus veremos un enlace que es informes Si pinchamos ah iremos a la pantalla 4 16 de los informes Podremos aplicar una serie de filtros y obtener informaci n sobre el acceso de alumnos a curso actividades foros documentos etc Adem s se puede ver desde d nde
154. tribute name server eType ecore EDataType http www eclipse org emf 2002 Ecore EString gt lt eStructuralFeatures xsi type ecore EAttribute name type eType ecore EDataType http www eclipse org emf 2002 Ecore EString gt lt eStructuralFeatures xsi type ecore EAttribute name access eType ecore EDataType http www eclipse org emf 2002 Ecore EString gt lt eStructuralFeatures xsi type ecore EAttribute name database 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 eType ecore EDataType http www eclipse org emf 2002 Ecore EString gt lt eStructuralFeatures xsi type ecore EAttribute name port eType ecore EDataType http www eclipse org emf 2002 Ecore Elnt gt lt eStructuralFeatures xsi type ecore EAttribute name username eType ecore EDataType http www eclipse org emf 2002 Ecore EString gt lt eStructuralFeatures xsi type ecore EAttribute name password eType ecore EDataType http www eclipse org emf 2002 Ecore EString gt lt eClassifiers gt lt eClassifiers xsi type ecore EEnum name Sign gt lt eLiterals name grade gt lt eLiterals name participation value 1 gt lt eLiterals name milestones value 2 gt lt eLiterals name access value 3 gt lt eLiterals name assessment value 4 gt lt eClassifiers gt lt eClassifiers x
155. ults in an XML file that can be imported in most popular spreadsheets Evidence Participation list get students show participation in forum Listing 1 2 Code to retrieve students performance in forum participation 3 Conclusions and future work Using our system the lecturer without any technical knowledge on system pro gramming and using a very simple syntax can automatically assess the per formance in several competences for any student justifying it with objective figures At the moment our system only works with an instance of Moodle so our future work is implement support for other LMS Acknowledgements This work has been funded by the PAIDI programme of the Andalusian Gov ernment ASCETA project P09 TIC 5230 and University of Cadiz programme for Researching and Innovation in Education References 1 H Chebil J Girardot and C Courtin An ontology based approach for sharing and analyzing learning trace corpora In Proceedings IEEE 6th International Conference on Semantic Computing ICSC 2012 pages 101 108 2012 2 B Florian C Glahn H Drachsler M Specht and R Fabregat Gesa Activity based learner models or learner monitoring and recommendations in moodle volume 6964 LNCS of Lecture Notes in Computer Science 2011 3 S M Jacob B Lee and G R Lueckenhausen Measuring critical thinking skills in engineering mathematics using online forums 2009 International Conference on Engineering Educatio
156. un XML con la informaci n mostrada en la tabla 7 6 En cada fila se muestra los hitos que tiene que completar cada estudiante Total la cantidad de estos que se han entregado a tiempo In time y la cantidad de estos que no han sido entregados atin Pending La primera fila del listado comienza con dos columnas identificando al estudiante con su iden tificador interno de Moodle y su nombre de usuario La columna Total indica el n mero de actividades que los estudiantes tienen que subir durante el curso cinco en nuestro caso La cuarta columna In time indica que Student envi tres actividades antes de la fecha l mite Overdue indica que no ha enviado actividades fuera de tiempo mientras que Pending indica que dos actividades no han sido a n entregadas Finalmente In rate indica el porcentaje de activi dades que se han entregado antes de la fecha limite con respecto al total que deberian haber entregado En el segundo fichero tenemos un grafico que proporciona una visi n complementaria de la in formaci n del desempe o de los estudiantes figure 7 2 El v rtice central del gr fico representa la actividad que estamos considerando en este caso la actividad es la entrega de las asignacio nes de los estudiantes Los otros v rtices representas los estudiantes inscritos en el curso Cada Cuadro 7 6 Listado del desempeno de los estudiantes en la entrega de actividades id username Total In time Overdue Pending In time Rate
157. ups Communication interpersonal and decision making skill are essential for engineering work and should be explicitly incorporated in engineer ing curricula 1 We use the student participation in forums as an indicator of performance in interpersonal skills Leadership is organizing a team to achieve a common goal Its development has become increasingly important in engineering education as companies looking for engi neers with leadership communication and teamwork skills 11 We can take the number of initiated debates as a indicator of the leadership competence 3 EVALCOURSE EvalCourse is the domain specific language that we have developed to get indicators It follows a model driven ap proach 12 for modeling procedures in order to obtaining performance indicators of competences EvalCourse is pro vided freely as open source software under the terms of the GNU GPL In Figure 1 we can see the EvalCourse diagram The user re quests information about an indicator a then EvalCourse extracts the necessary information from the LMS database b to meet the request for indicators This information is collected using Pentaho libraries c and an intermediate Pentaho transformation d Finally it returns the data in two formats e On the one hand the raw data in an XML file that can be processed with a analytics software and on the other hand a graph on a specific file for the Gephi soft ware Gephi is an open source soft
158. usuarios a los cursos Para eso es necesario acceder al m dulo de logging 4 14 La tabla que necesitaremos es la siguiente mdl log Almacena informaci n acerca de la acci n qu realiz el usuario en qu fecha y desde d nde lo hizo Importante para saber si los alumnos acceden al campus virtual si acceden al foro a los documentos etc Figura 4 12 Diagrama del m dulo de actividades de Moodle V 2 Figura 4 13 Diagrama del m dulo de workshop de Moodle V 2 Figura 4 14 Diagrama del m dulo de logging de Moodle V 2 4 3 2 Metamodelo El metamodelo de EvalCourse 4 15 define los conceptos y relaciones del dominio del problema de la evaluaci n de evidencias del desempeno de los alumnos en el campus virtual Los conceptos que formar n parte del mismo son los siguientes 4 4 Evidence es el concepto que identifica la evidencia que queremos evaluar Se trata del concepto raiz del que todos parten Su nico atributo es el nombre de la evidencia que a su vez dar nombre a los ficheros de salida que generar el sistema Student representa a los elementos qu queremos evaluar En este caso ser n los estu diantes Target representa el objetivo qu queremos extraer de los estudiantes obtenerlos como tal o contarlos Indication representa el elemento con el que vamos a evaluar al concepto Student Por un lado necesita que se defina con qu indicio sign evaluaremos Por otro lado hay que definir la herra
159. ware for visualizing and analyzing large networks graphs It must be installed to view the charts Language syntax and reserved words are listed in 1 The first line specifies the name of the evidence or indicator name of the indicator It will be used to name the differ ent files produced by EvalCourse The second line is a con stant that indicates that we want to get information about students The third one indicates the kind of information to be retrieved milestones participation or access And the last one if it is collected from assignments forums or campus activity In case one or more activity identifiers are provided list of ids only information on those assignment forum or campus will be provided If not specified the query acts on all activities of the indicated type Bellow two examples using synthetic information will be described Evidence name of the indicator get students show milestones participation access in assignment forum campus list of ids Listing 1 Reserved words and format EvalCourse works as a Eclipse plugin You have to create an EvalCourse project Then you write a query in a file with https www assembla com spaces evalcourse wiki SN outputs Figure 1 EvalCourse scheme an EVC extension When you save this file EvalCourse transforms the query in a Pentaho Extract Transform and Load ETL process From the program itself can execute the transform
160. y be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network Corresponding Source conveyed and Installation Information provided in accord with this section must be in a format that is publicly documented and with an implementation available to the public in source code form and must require no special password or key for unpacking reading or copying Additional Terms Additional permissions are terms that supplement the terms of this License by making exceptions from one or more of its conditions Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License to the extent that they are valid under applicable law If additional permissions apply only to part of the Program that part may be used separately under those permissions but the entire Program remains governed by this License without regard to the additional permissions When you convey a copy of a covered work you may at your option remove any additional permissions from that copy or from any part of it Additional permissions may be written to require their own removal in certain cases when you modify the work You may place additional permissions on material added by you to a covered work for which you have or can give appropriate copyright permission Notwithstanding any other provisio
161. y if the copyright holder notifies you of the violation by some reasonable means this is the first time you have received notice of violation of this License for any work from that copyright holder and you cure the violation prior to 30 days after your receipt of the notice Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License If your rights have been terminated and not permanently reinstated you do not qualify to receive new licenses for the same material under section 10 Acceptance Not Required for Having Copies You are not required to accept this License in order to receive or run a copy of the Program Ancillary propagation of a covered work occurring solely as a consequence of using peer to peer transmission to receive a copy likewise does not require acceptance However nothing other than this License grants you permission to propagate or modify any covered work These actions infringe copyright if you do not accept this License Therefore by modifying or propagating a covered work you indicate your acceptance of this License to do so Automatic Licensing of Downstream Recipients Each time you convey a covered work the recipient automatically receives a license from the original licensors to run modify and propagate that work subject to this License You are not responsible for enforcing compliance by third parties with this L
162. y not lgpl html A generative computer language to customize online learning assessments Antonio Balderas Ivan Ruiz Rube Juan M Dodero Manuel Palomo Duarte and Anke Berns University of C diz Spain C diz C Chile 1 CP 11002 antonio balderas uca es ivan ruiz uca es juanma dodero uca es manuel palomo uca es anke berns uca es Abstract The focus on assessment of learning experiences has shifted from knowledge to competences Unfortunately assessing certain com petences is mainly a subjective task being problematic for both the evaluators and the evaluated Additionally when the learning process is computer supported and the number of students increases traditional assessment procedures suffer from scalability problems In this paper we propose a query language that supports grading learning competences according to students performance in an online course Using it we au tomatically extract different objective indicators about students work in a Learning Management System LMS Evaluators can use this com puter programming like language to express a number of required indi cators Such indicators are automatically obtained from the activity logs generated by the LMS Keywords online learning competence assessment technological sup port in online education domain specific languages learning analytics 1 Introduction The scope of our work is related to the virtual places specially designed for col laborative ta
Download Pdf Manuals
Related Search
Related Contents
H&K P9S User Manual を押してスタートする Polar FT80 User's Manual s. Mode d`emploi pour le prélèvement de la créatinine novembre-décembre - Bibliothèque municipale de Lyon MATERIEL NECESSAIRE : Kit GPI-S Prins 6 cylindres (ref : 696202 取扱説明書 - シャープ Hochschulbibliotheken des Landes Sachsen-Anhalt LDW 702-1003- 1404 - lombardini service Copyright © All rights reserved.
Failed to retrieve file