Documente Academic
Documente Profesional
Documente Cultură
Agradecimientos.
culmina
con
su
presentacin,
habran
quedado
abandonados
indefinidamente.
en
los
peores
momentos,
apoyndome
incondicionalmente.
A mi amigo Potter por haberme ayudado siempre sin pedir nada a cambio.
Gracias a todos.
RESUMEN
un
experto
es
capaz
de
proporcionar
servicios
de
ABSTRACT
ndice de contenido
1. INTRODUCCIN ....................................................................................... 27
1.1
Motivacin ........................................................................................... 27
1.2
Definicin ............................................................................................ 30
1.3
Objetivos ............................................................................................. 32
2.1.1
Sakai............................................................................................. 33
2.1.2
OntoSakai. .................................................................................... 34
2.2
2.3
2.3.1
2.3.2
2.3.3
3.2
3.2.1
3.2.2
4.1.1
4.1.2
4.1.3
4.2
4.2.1
Proteg. ........................................................................................ 64
4.2.2
Eclipse. ......................................................................................... 65
4.2.3
4.2.4
Apache Tomcat............................................................................. 66
4.2.5
4.2.6
DBVisualizer. ................................................................................ 67
5.2
5.2.1
5.3
5.4
5.4.1
5.4.2
5.4.3
5.5
6.1.1
6.1.2
6.1.3
6.1.4
6.1.5
6.1.6
6.1.7
6.1.8
6.1.9
6.2.1
6.2.2
6.2.3
6.2.4
6.3
6.3.1
6.3.2
6.3.3
6.3.4
6.4
6.4.1
6.4.2
6.4.3
7.1.1
7.2
8.2
8.3
ndice de figuras
Figura 1. Estructura LMS ................................................................................ 28
Figura 2. Visin general de OntoSakai ............................................................ 36
Figura 3. Alcance del proyecto ......................................................................... 40
Figura 4. Aplicaciones ms usadas en UCAM ................................................ 42
Figura 5. Desarrollo en cascada ...................................................................... 53
Figura 6. Modelo de desarrollo en espiral. ....................................................... 55
Figura 7. Modelo de desarrollo en cascada con prototipado rpido. ............... 56
Figura 8. Diagrama de Gantt General .............................................................. 79
Figura 9. Diagrama de Gantt real (A) ............................................................... 85
Figura 10. Diagrama de Gantt real (B) ............................................................. 85
Figura 11. Desviacin temporal del proyecto ................................................... 87
Figura 12. Diagrama de taxonoma herramienta .............................................. 94
Figura 13. Diagrama de taxonoma perfilado. .................................................. 94
Figura 14. Diagrama de taxonoma Participante .............................................. 95
Figura 15. Diagrama de taxonoma de ms alto nivel. ..................................... 95
Figura 16. Relacin Participante - Asignatura .................................................. 96
Figura 17. Relacin Evento - Participante ........................................................ 96
Figura 18. Relacin Evento - ToolElement ....................................................... 96
Figura 19. Relacin Estudiante - ToolElement ................................................. 97
Figura 20. Relacin Calificacin - Estudiante ................................................... 97
Figura 21. Relacin Calificacin - EvaluativeToolElement ............................... 97
Figura 22. Relacin Asignatura - Herramienta ................................................. 97
Figura 23. Relacin ToolElement - Herramienta .............................................. 98
Figura 24. Relacin ToolElement -TopicItem ................................................... 98
Figura 25. Relacin Topic - TopicItem .............................................................. 98
Figura 26. Relacin Perfil - ToolElement .......................................................... 98
Figura 27. Relacin Participante - Perfil ........................................................... 99
Figura 28. Relacin ToolElement ToolElement ............................................. 99
Figura 29. Ejemplo relacin isRelatedTo .......................................................... 99
Figura 30.Importacin Proteg ....................................................................... 105
Figura 31. ObjectProperties Protege .............................................................. 106
Figura 32. Detalle propiedades Proteg ......................................................... 107
ndice de tablas
Tabla 1. Sistemas LMS ms usados ................................................................ 37
Tabla 2. Eventos generados por la herramienta Recursos .............................. 43
Tabla 3. Puntos de funcin OntoSakaiWS ....................................................... 72
Tabla 4. Factor de complejidad OntoSakaiWS ................................................. 73
Tabla 5. Calculo PF OntoSakaiWS .................................................................. 73
Tabla 6. Puntos de funcin OntoSakai Resources ........................................... 74
Tabla 7. Factor de complejidad OntoSakai Resources .................................... 75
Tabla 8. Calculo PF OntoSakai Resources ...................................................... 75
Tabla 9. Puntos de funcin OntoSakai Browser ............................................... 76
Tabla 10. Factor de complejidad OntoSakai Browser ...................................... 77
Tabla 11. Calculo PF OntoSakai Browser ........................................................ 77
Tabla 12. Calculo tiempo total desarrollo ......................................................... 78
Tabla 13. Detalle de las tareas ......................................................................... 80
Tabla 14. Coste econmico material del proyecto. ........................................... 82
Tabla 15. Conste personal del proyecto ........................................................... 83
Tabla 16. Coste desglosado por tareas del proyecto ....................................... 83
Tabla 17. Coste total del proyecto .................................................................... 84
Tabla 18. Planificacin de tareas real .............................................................. 86
Tabla 19. Glosario de trminos ........................................................................ 93
Tabla 20. Diccionario de conceptos ............................................................... 101
Tabla 21. Relaciones Binarias ........................................................................ 102
Tabla 22. Atributos de instancia ..................................................................... 103
Tabla 23. Instancias ....................................................................................... 103
Tabla 24. Definicin Actor 1 OntoSakaiWS .................................................... 115
Tabla 25. Definicin actor 2 OntoSakaiWS .................................................... 115
Tabla 26. Casos de prueba OntoSakaiWS. .................................................... 122
Tabla 27. Pruebas de esfuerzo. ..................................................................... 123
Tabla 28. Definicin actor OntoSakai Resources ........................................... 131
Tabla 29. Casos de prueba OntoSakai Resources ........................................ 141
Tabla 30. Definicin actor 1 OntoSakai Browser ............................................ 148
Tabla 31. Casos de prueba OntoSakai Browser ............................................ 155
Tabla 32. Pruebas de integracin................................................................... 158
1. INTRODUCCIN
En este apartado ofrece una visin global sobre el proyecto que se
pretende desarrollar en este trabajo fin de grado. Abarca el proyecto
desde
tres
perspectivas,
motivacin,
definicin
objetivos
que
1.1
Motivacin
Los LMS (Learning Management System) se han consolidado, como
una herramienta flexible y dinmica para la enseanza universitaria a
nivel mundial. Podemos definir LMS o Entorno Virtual de Aprendizaje
como una plataforma, que administra, distribuye y controla las actividades
de formacin de una institucin u organizacin. Define, por tanto, un
entorno de trabajo para apoyar la gestin de contenidos y los procesos
acadmicos, tanto para enseanzas presenciales como a distancia.
Realizar evaluaciones
Generar informes
27
En
segundo
lugar,
un
LMS
debe
mostrar
tambin
un
1.2
Definicin
En el presente trabajo nos basamos en una de las principales
alternativas para llevar a cabo la personalizacin y recomendacin de
servicios en un LMS, basada en el modelado de contexto mediante
ontologas. Las ontologas ofrecen descripciones formales y comunes de
los trminos relacionados con un LMS. Estas descripciones pueden,
adems, ser procesadas y compartidas por otras aplicaciones. Adems,
permiten la extraccin de conocimiento implcito derivado de la
clasificacin y restricciones modeladas en la ontologa. Con todo, las
ontologas son esenciales en un escenario donde la informacin
semntica debe tenerse en cuenta. A medida que el LMS registra un gran
volumen de datos y eventos generados por los usuarios, la semntica de
dichos datos y eventos podran ser capturados y utilizados como entrada
en un sistema sensible al contexto integrado en cualquier LMS.
en la terminologa de
31
1.3
Objetivos
Los objetivos generales y especficos que se pretenden conseguir
mediante la realizacin de este trabajo fin de grado son:
32
2.1.1 Sakai.
33
Los alumnos, por su parte, pueden hacer uso de esta herramienta para
visualizar los recursos contenidos en los sitios a los que tengan acceso y,
en caso de que as lo requieran, descargarlos.
2.1.2 OntoSakai.
OntoSakai es la denominacin que adopta el modelo ontolgico que
pretendemos construir como ncleo del presente trabajo fin de grado.
Estar construido sobre la base de informacin de contexto de Sakai
(aplicable, con mnimas modificaciones a otros LMS) para lograr las
caractersticas de personalizacin y recomendacin. El objetivo de este
modelo ontolgico es representar y razonar sobre el proceso de
aprendizaje basado en la clasificacin de todo el material educativo
disponible en el Campus Virtual (por ejemplo, recursos, tareas,
exmenes, foros de discusin, chats, etc.), teniendo en cuenta su
contenido, adecuacin y uso, entre otros, y la generacin de perfiles de
usuario (tanto para estudiantes como para docentes), teniendo en cuenta
los eventos generados por los mismos. Estos eventos son almacenados
automticamente por Sakai dentro de la tabla Events de la base de datos.
34
35
2.2
36
Comerciales
Blackboard/Angel/WEBCT (1997)
Moodle (2002)
Desire2Learn (1999)
Sakai (2004)
de
indicadores
de
uso
el
rendimiento,
siendo
previamente
etiquetados
con
informacin
semntica).
Existen otros trabajos que tratan los sistemas expertos como base para
habilitar servicios de recomendacin en LMS. Por ejemplo, en un reciente
trabajo [15], se presentan dos sistemas basados en reglas expertas cuyo
objetivo es recomendar cursos para estudiantes de pregrado. Una
plataforma de e-learning, basada en sistemas expertos, fue propuesta en
[32] para ensear probabilidad en el mbito de la escuela secundaria y
recomendar tareas de acuerdo con currculo turco para el curso de
matemticas en escuela secundaria. Por ltimo, existen otros trabajos
donde los problemas con el uso de sistemas de e-learning se mejoran
utilizando sistemas expertos, especialmente orientada a la solucin de la
sobrecarga cognitiva y los problemas de desorientacin [19] y los
comportamientos de resolucin de dudas online de los docentes [20].
Cabe destacar que estas soluciones se enfocan a resolver problemas
concretos, mientras que OntoSakai propone una solucin general y
personalizable. Adems, estos trabajos no tienen en cuenta la informacin
semntica disponible dentro de un LMS, mientras que, para OntoSakai,
esta informacin es la base.
2.3
Estudio de viabilidad.
39
40
41
2.3.2.1
El uso diario que los usuarios hacen del LMS queda registrado dentro
del mismo en forma de eventos, estos eventos son almacenados en la
base de datos de Sakai, de forma que cada evento realizado por un
usuario concreto en una herramienta determinada genera una nueva
ocurrencia en la tabla destinada a este fin.
42
Herramienta
Create/New
Resources
Delete
Revise
Read
Response
Submit
2.3.2.2
o bien por designacin directa por parte de este, y al alumno recibir dichas
recomendaciones de forma sencilla y clara.
experto
que
pueda
interactuar
con
las
diferentes
herramientas.
2.3.3.1
44
Finalmente, y tras analizar las posibles opciones para esta etapa del
desarrollo, nos hemos decidido por usar Proteg, ya que consideramos
que nos ofrece las opciones de edicin suficientes para nuestro objetivo,
amn de ser muy til a la hora de eludir posibles fallos y errores que
podran darse mediante la edicin manual de las ontologas. Adems,
Proteg nos ofrece un motor de consulta SPARQL que nos ser de gran
utilidad a lo largo del desarrollo de nuestra aplicacin, ya que SPARQL es
el lenguaje de consulta que emplearemos para interrogar el modelo
ontolgico con el fin de obtener la informacin semntica necesaria para
el desarrollo de nuestra aplicacin.
2.3.3.2
2.3.3.3
46
47
3. METODOLOGIAS USADAS
En esta seccin vamos a estudiar diferentes metodologas disponibles
para cada fase del desarrollo de este proyecto y analizaremos, en cada
caso, la metodologa escogida destacando los motivos de esta eleccin.
3.1
48
Sirve
como
referencia
para
validar
probar
el
software
desarrollado.
No ambiguo.
Completo.
Verificable.
Consistente.
Clasificado.
Modificable.
Exportable.
49
3.2
una
percepcin
informal
del dominio
en
una
notaciones
50
La
actividad
de
implementacin
construye
modelos
3.2.2.1
modelo
en
cascada,
es
el
enfoque
metodolgico
que
ordena
1. Anlisis de requisitos.
2. Diseo del Sistema.
3. Diseo del Programa.
4. Codificacin.
5. Pruebas.
6. Implantacin.
7. Mantenimiento.
52
anteriormente diseados.
53
3.2.2.2
54
3.2.2.3
Para evitar este efecto vamos a adoptar una variante del modelo de
desarrollo en cascada, conocida como Modelo en cascada con
prototipado rpido.
55
56
4.1
Tecnologas empleadas.
En este apartado vamos a definir los diferentes lenguajes de
programacin, modelos de datos, protocolos y frameworks que hemos
necesitado en el desarrollo del presente trabajo fin de grado.
RDF.
El modelo de datos RDF [23] es similar a los enfoques de modelado
57
4.1.1.2
OWL.
OWL (W3C Web Ontology Language) [26] es un lenguaje web
58
4.1.1.3
SPARQL.
SPARQL [34] es un lenguaje estandarizado para la consulta de grafos
RDF, normalizados por el RDF Data Access Working Group (DAWG) del
World Wide Web Consortium (W3C). Es una tecnologa clave en el
desarrollo de la Web Semntica que se constituy como Recomendacin
oficial del W3C el 15 de enero de 2008.
Apache Jena.
Apache Jena [3] es un framework Java para construir aplicaciones
basadas en ontologas.
Su arquitectura incluye:
4.1.2.2
Java EE.
Java Platform, Enterprise Edition o Java EE [31] es una plataforma de
4.1.2.3
Apache Axis.
Apache Axis [12] es un framework de cdigo abierto, basado en XML
pueden
crear
aplicaciones
computacionales
4.1.2.4
SOAP.
SOAP [8] es un protocolo estndar que define cmo dos objetos en
60
4.1.2.5
Servicio Web.
Para garantizar la interoperabilidad entre el entorno LMS y nuestro
HTML5
CSS3.
CSS [25] es un lenguaje usado para definir y crear la presentacin de
un documento estructurado escrito en HTML o XML (y por extensin en
XHTML). El World Wide Web Consortium (W3C) es el encargado de
formular la especificacin de las hojas de estilo que servirn de estndar
para los agentes de usuario o navegadores.
62
4.1.3.2
Java EE.
Esta tecnologa ya ha sido detallada en la seccin 4.1.2.2.
Spring Framework.
Spring [21] es un framework para el desarrollo de aplicaciones y
contenedor de inversin de control, de cdigo abierto para la plataforma
Java.
Javascript y jQuery.
Utilizamos jQuery [22] para gestionar la lgica de negocio desde el lado
del cliente.
MySQL.
Hemos utilizado MySQL como base sobre la que montar la base de
datos de Sakai.
4.2
Herramientas empleadas.
4.2.1 Proteg.
Hemos utilizado Proteg [17] para todo lo relacionado con el
tratamiento de las Ontologas. Proteg es una aplicacin de software libre,
creada y soportada por la universidad de Stanford que nos proporciona un
editor de ontologas y un potente framework con el que trabajar sobre las
mismas.
64
4.2.2 Eclipse.
Hemos usado este conocido IDE tanto para el desarrollo de
OntoSakaiWS como para el desarrollo de las herramientas de Sakai.
4.2.6 DBVisualizer.
Hemos utilizado DBVisualizer [36] como aplicacin principal para
trabajar con la base de datos de Sakai.
67
68
5.1
69
70
5.2
Estimaciones utilizadas.
En esta seccin analizaremos los costes y dimensiones del proyecto
utilizando la tcnica de estimacin por puntos de funcin.
Hace
71
5.2.1.1
OntoSakaiWS
Hemos incluido en este clculo, por simplicidad y, porque realmente
Tipo
elemento
Dificultad
Peso
Cantidad
Simple
3
Media
4
Entradas
Compleja
5
Total Entradas
Simple
4
Media
5
Salidas
Compleja
7
Total Salidas
Simple
3
1
Media
4
2
Ficheros
Compleja
6
1
Internos
Total Ficheros Internos
Simple
5
0
Media
7
4
Ficheros
Compleja
10
0
Externos
Total Ficheros externos
Simple
5
3
Media
7
2
Consultas
Compleja
10
1
externas
Total Consultas externas
Total puntos de funcin sin ajustar (PFSA)
Total
1
1
2
3
4
10
17
0
0
0
0
0
0
3
8
6
17
0
28
0
28
15
14
10
39
72
Total
Elemento
101
Factor de complejidad
Peso Valor Factor
Sistema distribuido
2
1
2
Tiempo de respuesta
2
1
1
Eficiencia por el usuario
1
3
3
Proceso interno complejo
1
3
3
Reusabilidad
1
2
2
Facilidad de instalacin
0.5
2
1
Facilidad de uso
0.5
1
0.5
Portabilidad
2
5
10
Facilidad de cambio
1
5
5
Concurrencia
1
5
5
Seguridad
1
1
1
Acceso directo por terceras
1
2
2
partes
Facilidades especiales de
1
1
1
entrenamiento a usuarios
finales
Factor de complejidad
36.5
Tabla 4. Factor de complejidad OntoSakaiWS
PF=PFSA*ACT
ACT
ACT
0,65+0,01*36,5=1,015
PF
101*1.015=102,5
Tabla 5. Calculo PF OntoSakaiWS
73
5.2.1.2
OntoSakai Resources.
En la tabla 6 se ha realizado el clculo de los puntos de funcin sin
Tipo elemento
Total
3
4
10
12
0
0
12
6
8
0
14
0
0
0
10
7
0
17
74
Total Elemento
17
60
Factor de complejidad
Peso Valor
Sistema distribuido
2
1
Tiempo de respuesta
2
1
Eficiencia por el usuario
1
1
Proceso interno complejo
1
2
Reusabilidad
1
1
Facilidad de instalacin
0.5
1
Facilidad de uso
0.5
1
Portabilidad
2
2
Facilidad de cambio
1
5
Concurrencia
1
3
Seguridad
1
2
Acceso directo por terceras
1
2
partes
Facilidades especiales de
1
1
entrenamiento a usuarios
finales
Factor de complejidad
Factor
2
1
1
2
1
0.5
0.5
4
3
3
2
2
1
25
PF=PFSA*ACT
ACT
ACT
0,65+0,01*25=0,9
PF
60*0,9=54
Tabla 8. Calculo PF OntoSakai Resources
75
5.2.1.3
OntoSakai Browser
En la tabla 9 se ha realizado el clculo de los puntos de funcin sin
Tipo elemento
Total
3
0
0
8
0
0
3
12
6
21
0
0
0
20
7
0
27
76
Total Elemento
3
59
#
1
2
3
4
5
6
7
8
9
10
11
12
13
Factor de complejidad
Sistema distribuido
Tiempo de respuesta
Eficiencia por el usuario
Proceso interno complejo
Reusabilidad
Facilidad de instalacin
Facilidad de uso
Portabilidad
Facilidad de cambio
Concurrencia
Seguridad
Acceso directo por terceras partes
Facilidades especiales de
entrenamiento a usuarios finales
Factor de complejidad
Peso
2
2
1
1
1
0.5
0.5
2
1
1
1
1
1
Valor
1
1
1
1
1
1
1
2
3
2
2
2
1
Factor
1
1
1
1
1
0.5
0.5
4
3
2
2
2
1
20
PF=PFSA*ACT
ACT
ACT
0,65+0,01*20=0,85
PF
59*0,85=50,15
Tabla 11. Calculo PF OntoSakai Browser
77
5.2.1.4
en la tabla 12.
Desarrollo
Tiempo
OntoSakaiWS
102
OntoSakai Resources
54
OntoSakai Browser
50
Total: 206 das.
Tabla 12. Calculo tiempo total desarrollo
5.3
78
79
Como puede verse la fase de estudio previo ocupa una gran parte del
tiempo de desarrollo del proyecto. Esto es debido a que partamos con
unos conocimientos de bas bastante bsicos y a las dificultades que
hemos encontrado a la hora de documentarnos sobre Sakai. Debido a su
farragosa plataforma con informacin obsoleta e incompleta.
5.4
Coste econmico
En este apartado, vamos a detallar el coste derivado del desarrollo de
este proyecto.
81
Concepto
Coste
970
230
179
Apache Tomcat
Apache Maven
Eclipse
Sublime Text
Proteg
Sakai LMS
TOTAL
1399
Tabla 14. Coste econmico material del proyecto.
82
Recurso
Coste
Analista
12.00/hora
Programador
10.00/hora
8.00/hora
Tcnico de implantacin
Tabla 15. Conste personal del proyecto
83
Concepto
Coste
Materiales
1399
Humanos
18592
1977
Costes Indirectos
Total
21968
Tabla 17. Coste total del proyecto
5.5
84
85
86
Estimacion Inicial
50
100
150
200
250
300
350
400
450
500
Das
Estudio Previo
Analisis y diseo
Implementacion y desarrollo
Parada
Pruebas
Puesta en marcha
Figura 11. Desviacin temporal del proyecto
87
88
6.1
Nombre
Sinnimos
Descripcin
Tipo
Participant
Usuario
Student
Estudiante
Lecturer
Docente
Qualificacin
Calificacin
Resultado
obtenido
por
un Concepto
Asignatura
su
vez
representan
Herramienta
89
Nombre
Sinnimos
Descripcin
Tipo
sitio
EvaluativeTo Herramienta
Herramienta
ol
evaluable
Tests
--
Assignments Tareas
susceptible
de Concepto
Colaborative
Herramientas
tool
colaborativas
Sakai
Chat
--
Discussion
Foro
Forum
Resources
Recursos
Annuncement Anuncios
Sakai.
ToolElement
Elemento
herramienta
Evaluative
Elemento
ToolElement
herramienta
de
evaluativa
determinada
--
TopicItem
EvaluativeTool
--
Concepto
Event
Evento
Profile
Perfil
StudentProfil Perfil
e
estudiante
LecturerProfil Perfil
docente
docentes.
DNI
--
Atributo
de
instancia
90
Nombre
Nombre
Sinnimos
--
Descripcin
Tipo
Nombre descriptivo
Atributo
de
instancia
Apellidos
--
Atributo
de
instancia
UsuarioID
--
Atributo
de
instancia
Nota
--
Valor
numrico
que
indica
la Atributo
calificacin obtenida
de
instancia.
Crditos
--
Nmero de crditos de
Atributo
de
instancia
Descripcin
--
Atributo
de
instancia
ToolID
--
ID
dentro
de
Sakai
para
una Atributo
herramienta
de
instancia
EventID
--
Atributo
de
instancia
Hora
--
Fecha
--
de
instancia
Ocurrences
--
PerfilID
--
ID de un perfil determinado.
91
Atributo
Nombre
Sinnimos
Descripcin
Tipo
de
instancia.
belongsTo
--
(ToolElement,
El elemento de la
herramienta Relacin
Tool)
consistsOf
--
(Topic,
El
topic
est
compuesto
por Relacin
Relacin
topicItems.
TopicItem)
IsContainedIn -(TopicItem,
Topicl)
IsEnrolled
--
(Participant,
Subject)
isObtainedBy --
La
calificacin
(Student,
estudiante
pertenece
un Relacin
Qualification)
isRelatedToT --
oolElement
otro ToolElement
(ToolElement,To
olElement)
profileRequire --
ToolElement
este perfil.
recomendado
para Relacin
(Profile,
ToolElement)
referrersTo
--
(ToolElement,
TopicItem)
hasProfile
--
--
La
Relacin
(Participant,
Profile)
Incorporates
(Subject, Tooll)
isObtainedIn
asignatura
incorpora Relacin
herramientas
--
(Qualification,
Subjectl)
isProducedBy --
(Event,
usuario concreto
Participant)
92
Nombre
Sinnimos
Descripcin
Tipo
isProducedO --
contexto
(Event,
concreto.
de
un
ToolElement
ToolElement)
Tabla 19. Glosario de trminos
93
94
95
96
97
98
99
Concepto
Atributos de Atributos de
clase
Participant
--
Relaciones
instancia
Nombre
isEnrolled
Apellidos
hasProfile
DNI
Student
--
Nombre
isObtainedBy
Apellidos
studentRequires
DNI
Lecturer
--
Nombre
--
Apellidos
DNI
Qualificacin
--
Nota
isObtainedBy
IsObtainedIn
Subject
--
Nombre
isEnrolled
Crditos
incorporates
Descripcin
Tool
--
--
Incorporates
belongsTo
Evaluative Tool --
--
isObtainedIn
Tests
--
--
--
Assignments
--
--
--
Colaborative
--
--
--
Chat
--
--
--
Discussion
--
--
--
--
--
--
tool
Forum
Resources
100
Concepto
Atributos de Atributos de
clase
Relaciones
instancia
Annuncements --
--
--
ToolElement
--
belongsTo
--
isRelatedTo
refersTo
studentRequires
profileRequires
Evaluative
--
--
isObtainedIn
--
--
refersTo
ToolElement
TopicItem
consistsOf
Topic
--
--
consistsOf
Event
--
Hora
isProducedOn
Fecha
isProducedBy
Ocurrencias
Profile
--
hasProfile
profileRequires
StudentProfile
--
--
--
LecturerProfile
--
--
--
Relacin
Origen
Cardinalida
Destino
Relacin
Inversa
isEnrolled
Participant
Subject
hasEnrolled
isProducedBy
Event
Participant
Produces
isProducedOn Event
ToolElement
Produces
studentRequir Student
ToolElement
RequiredBy
Obtains
es
isObtainedBy
Qualification N
Student
isObtainedIn
Qualification 1
EvaluativeToolEle Has
101
ment
Incorporates
Subject
Tool
isIncorporatedI
n
belongsTo
ToolElement 1
Tool
Contains
refersTo
ToolElement N
TopicItem
isReferedby
consistsOf
Topic
TopicItem
isContainedIn
profileRequires Profile
ToolElement
isRequiredBy
hasProfile
Participant
Profile
belongsTo
isRelatedTo
ToolElement N
ToolElement
isRelatedTo
Atributo
Concepto
Tipo
Rango de
Cardinalidad
valores
DNI
Student
String
--
(1,1)
String
--
(1,1)
String
--
(1,1)
String
--
(1,1)
Lecturer
Nombre
Student
Lecturer
Subject
Apellidos
Student
Lecturer
UsuarioID
Student
Lecturer
Nota
Qualification
Float
0.0-10.0
(1,1)
Creditos
Subject
Float
0. 0
(1,1)
Descripcin
Subject
String
--
(1,1)
ToolID
Tool
String
--
(1,1)
EventID
Event
String
--
(1,1)
Hora
Event
String
--
(1,1)
Fecha
Event
String
--
(1,1)
Ocurrences
Event
Int
(1,1)
102
PerfilID
Profile
String
--
(1,1)
Instancia
5e2f19fe-96c7-4d23-9089-
Concepto
Asignatura
0847b2ca2358
Atributo
Valor
Nombre
IC
Descripcin
Ingeniera
conocimiento
Creditos
ToolElement
--
--
Resources
--
--
Ontologies
Topic
--
--
SPARQL
TopicItem
--
--
5e2f19fe-96c7-4d23-90890847b2ca2358/Portada.png
5e2f19fe-96c7-4d23-90890847b2ca2358/Resources
103
del
studentRequires:
Necesario
para
recomendaciones
104
105
106
107
6.2
OntoSakaiWS
6.2.1.1
Propsito
del
servicio
web
OntoSakaiWS
para
uso
de
los
desarrolladores de software.
108
que
sirven
para
intercambiar
datos
entre
de
informacin
entidades.
109
entre
diferentes
sistemas
6.2.1.2
Descripcin general
un modelo
110
6.2.1.2.4 Restricciones
Este servicio web se desarrolla como base sobre la que construir una
integracin completa de OntoSakai con el LMS Sakai.
6.2.1.3
Requisitos especficos.
Esta seccin especificar con detalle los requisitos que debe poseer
esta aplicacin.
6.2.1.3.2 Funciones
113
114
6.2.1.4
OntoSakai Resources
Versin
1.0
Autor
Descripcin
Comentarios
ACT-02
OntoSakai Browser
Versin
1.0
Autor
Descripcin
Comentarios
115
6.2.1.5
Casos de uso
En este apartado se muestra un diagrama de casos de uso (figura 34)
6.2.1.6
Diagramas de secuencia
116
Modelo de clases
En el presente apartado detallaremos el modelo de clases de
OntoSakaiWS.
117
118
Las clases de la API que hemos usado para el desarrollo han sido:
QueryExecution:
Encargada
de
ejecutar
las
consultas
SPARQL.
6.2.2.2
Diseo de la interfaz.
OntoSakaiWS carece de interface grfica propia.
6.2.2.3
119
ID
Descripcin
Caso de
Propsito
Superada
uso
CP-001
Creacin
nuevas
Asignatura
Asignaturas
el S
correcto
funcionamiento de la
insercin
de
asignaturas a travs
del servicio web
CP-002
Creacin
nuevas
Herramienta
herramientas
el S
correcto
funcionamiento de la
insercin
de
herramientas
travs
del
a
servicio
web
CP-003
Creacin
nuevos topics
Topic
el S
correcto
funcionamiento de la
insercin de topics a
travs
del
servicio
web
CP-004
Creacin
nuevos topicItem
TopicItem
el S
correcto
funcionamiento de la
insercin
de
topicItems a travs
del servicio web
CP-005
Creacin
nuevos recursos
Recurso
el S
correcto
funcionamiento de la
insercin de recursos
a travs del servicio
web
CP-006
Comprobar
los
correcto listado de
topics Obtener
existentes en el topics
todos
120
los
el S
topics
sistema
del
servicio
Web
CP-007
Comprobar
los
correcto listado de
recursos Obtener
los
el S
existentes en el recursos
todos
recursos
sistema
CP-08
Comprobar
los
correcto listado de
topicItems Obtener
un
contenidos
topic
en contenidos
particular
CP-09
el S
en Topic
en
un
topic.
Comprobar
los
correcto listado de
topicItem Obtener
los
el S
topicItems
particular.
un recursos
recursos
en
particular
CP-010
Comprobar
correcta
un
Obtener
los
pertenece
est
topicItem
topicItem
todos CU-11
recursos Obtener
una asignatura
Obtener
contenido
un
Comprobar
el S
correcto listado de
CP-012
devolucin
topicItem
CP-011
la S
los
recursos
una
pertenecientes a una
asignatura
asignatura concreta
el CU-12
Comprobar
la S
correcta
asignatura
travs de su ID
a nombre
asignatura
asignatura a travs
de su ID
121
devolucin
CP-013
Obtener
un CU-013
Comprobar
el S
correcto listado de
las asignaturas
Asignaturas
existentes
en
el
modelo ontolgico
CP-014
Obtener
de
listado CU-14
recursos Obtener
relacionados
partir
de
a recursos
Comprobar
el S
correcto listado de
recursos
un relacionados relacionados
recurso concreto
con recurso
partiendo
de
un
recurso en particular
CP-015
Obtener
un CU-15
Comprobar
listado
de Obtener
correcto listado de
recursos
recursos
relacionados
partir
de
el S
recursos
topicItem
topicItem
CP-016
Crear
consistsOf
CP-017
Crear
CP-018
Crear
Crear
correcta creacin de
consistsOf
la relacin
correcta creacin de
refersTo
la relacin
la S
relacin
correcta creacin de
isRelatedTo
la relacin
belongsTo
la S
relacin
isRelatedTo
CP-019
relacin
refersTo
la S
la S
relacin
correcta creacin de
belongsTo
la relacin
122
ID
CP-001
Descripcin
Propsito
Inserciones
masivas de
datos simples.
Superada
S
prolongado de tiempo.
CP-002
Inserciones
masivas de
datos y creacin
de relaciones
de los mismos.
relacionarlas entre s.
CP-003
Inserciones
masivas de
datos y creacin
de relaciones
de los mismos.
Posterior
eliminacin de
entidades y
comprobacin
de las
relaciones.
Tabla 27. Pruebas de esfuerzo.
123
6.2.4 Despliegue
En este apartado vamos a detallar el despliegue de este servicio Web
mediante el uso de un diagrama de despliegue UML mostrado por la
figura 36.
6.3
OntoSakai Resources
6.3.1.1
Propsito
124
proporcionado
por
el
docente
como
la
OntoSakai
Recommended
Practice
Resources
for
Software
segn
el
estndar
Requirements
"IEEE
Specications
6.3.1.2
Descripcin general
de
dotarlos
de
informacin
semntica.
Requiere
127
6.3.1.2.4 Restricciones
128
6.3.1.3
Requisitos especficos.
Esta seccin especificar con detalle los requisitos que debe poseer
esta aplicacin.
Debemos
incluir
tambin
formularios
topics/TopicItems.
129
para
la
creacin
de
6.3.1.3.2 Funciones
130
Deber
poder
instalarse
en
cualquier
entorno
Sakai,
independientemente de su configuracin.
6.3.1.4
ACT-01
Docente
Versin
1.0
Autor
Descripcin
Comentarios
as
como
asociarlos
con
informacin semntica.
131
6.3.1.5
Casos de uso
132
6.3.1.6
Diagramas de secuencia
6.3.2.1
Modelo de clases
En este apartado veremos el modelo de clases de OntoSakai
Resources.
Esta herramienta cuenta con dos modelos bien diferenciados, por una
parte, la funcionalidad programada en J2EE. Cuya funcionalidad principal
es la de ofrecer informacin de contexto a travs de la API de Sakai.
133
134
La
figura
39
muestra
el
diagrama
de
componentes
de
las
funcionalidades en el cliente.
OntoClient:
Encargado
de
las
funciones
principales
6.3.2.2
Diseo de la interface.
En este apartado se observar el diseo de la interfaz, as como cada
136
En primer lugar nos encontramos con un elemento de tipo File, que nos
permite seleccionar el archivo que deseamos subir, el cual se muestra en
el formulario una vez ha sido seleccionado, como muestra la figura 42.
137
Cabe destacar tambin los dos botones que podemos ver en la parte
inferior izquierda de la imagen. Estos botones nos permiten crear un
nuevo topic o bien un nuevo topicItem, tal y como se muestra a
continuacin.
138
139
ID
Descripcin
Caso de
Propsito
Superada
uso
CP-001
Crear
nuevo CU-01
recurso
Comprobar
la S
un nuevo recurso
recurso
CP-002
Creacin
nuevos topics
de CU-02
Crear
Comprobar
el S
correcto
Creacin
de CU-03
Comprobar
el S
nuevos
Crear
correcto
topicItem
TopicItem
funcionamiento de la
insercin
de
topicItems.
CP-004
Crear
relacin CU-04
Comprobar
que
la S
diferentes
topicItems
topicItems
se
produce
CP-005
Crear
relacin CU05
Comprobar
CP-006
que
la S
diferentes
recursos
recursos
existentes
recursos deseados.
Crear
relacin CU-06
se
Comprobar
produce
que
la S
un
creado
topic
concreto
en topicItem
con topic
140
se
produce
correctamente con el
topicItem deseado.
CP-007
Comprobar
recursos
correcto
filtrados
Listar
por recursos
asignatura
todos
el S
listado
los
de
recursos
filtrados
por
asignatura.
CP-008
topicItems
por
correcto
listado
el S
de
topic
6.3.4 Despliegue
En este apartado vamos a detallar el despliegue de esta herramienta
mediante el uso de un diagrama de despliegue UML mostrado por la
figura 47.
141
6.4
OntoSakai Browser
6.4.1.1
Propsito
142
proporcionado
por
el
docente
como
la
143
6.4.1.2
Descripcin general
genrico puede ser cualquier usuario del LMS Sakai con acceso a esta
herramienta.
6.4.1.2.4 Restricciones
145
6.4.1.3
Requisitos especficos.
Esta seccin especificar con detalle los requisitos que debe poseer
esta aplicacin.
146
6.4.1.3.2 Funciones
Deber
poder
instalarse
en
cualquier
entorno
Sakai,
independientemente de su configuracin.
147
6.4.1.4
Usuario
Versin
1.0
Autor
Descripcin
Comentarios
como
con
particular.
Tabla 30. Definicin actor 1 OntoSakai Browser
148
los
un
recursos
recurso
en
6.4.1.5
Casos de uso
En este apartado se muestra un diagrama de casos de uso (figura 48)
Cabe destacar que las relaciones existentes entre el caso de uso CU03
y los casos de uso CU05, CU06 y CU07 es una relacin de
generalizacin, esto es as debido a que estos ltimos, son casos
especficos de Visualizar recursos relacionados.
6.4.1.6
Diagramas de secuencia
6.4.2.1
Modelo de clases
En este apartado veremos el modelo de clases de OntoSakai Browser.
Esta herramienta cuenta con dos modelos bien diferenciados, por una
parte, la funcionalidad programada en J2EE. Cuya funcionalidad principal
es la de ofrecer informacin de contexto a travs de la API de Sakai.
150
La
figura
50
muestra
el
diagrama
de
componentes
funcionalidades en el cliente.
151
de
las
6.4.2.2
Diseo de la interface
En este apartado se observar el diseo de la interfaz, as como cada
152
Como podemos observar, contamos con una tabla con los recursos
existentes para el sitio en el que nos encontremos y detalles sobre los
mismos.
153
6.4.2.3
pruebas para cada uno de los casos de uso, de forma que tengamos la
certeza de que, en cualquier caso, su funcionamiento es el esperado. La
tabla 31 muestra las pruebas unitarias planificadas.
ID
Descripcin
Caso de
Propsito
Superada
uso
CP-001
Comprobar
correcta visualizacin
sitio en curso
recursos
la S
del sitio.
CP-002
Descargar
CU-02
Comprobar
recursos
Descargar
correcta descarga de
recursos
los
154
la S
recursos
existentes en un sitio
concreto.
CP-003
Descargar
CU-04
Comprobar
recursos
Descargar
correcta descarga de
relacionados
recursos
relacionados a
travs
la S
de
las
relaciones.
CP-004
Comprobar
el S
recursos
Visualizar
directamente
recursos
recursos directamente
relacionados
CP-005
Comprobar
recursos
relacionados
travs
Visualizar
a recursos
recursos relacionados
de
la
a travs de inferencia
de
los
topicItem.
topicItem
CP-006
el S
topicItems
Comprobar
recursos
relacionados
Visualizar
a recursos
el S
recursos relacionados
relacionados obtenidos
de
la
155
6.4.3 Despliegue
En este apartado vamos a detallar el despliegue de esta herramienta
mediante el uso de un diagrama de despliegue UML mostrado por la
figura 56.
156
7.1
Plan de pruebas
En esta seccin detallaremos las pruebas de integracin, ya que otros
tipos
de
pruebas
han
sido
tratados
en
aparados
anteriores
ID
Descripcin
CP-001 Crear
nuevo
Propsito
Superada
(Asignatura
herramienta)
el
correcto S
funcionamiento de la creacin de
nuevos recursos, certificando que
se crea la instancia correspondiente
y las relaciones en la ontologa.
Adems de comprobar su correcta
insercin en la base de datos.
CP-003 Crear nuevo topic
Comprobar
157
el
correcto S
funcionamiento de la creacin de
nuevos topics, certificando que se
crea la instancia correspondiente en
la ontologa.
CP-004 Crear
nuevo Comprobar
topicItem
el
correcto S
funcionamiento de la creacin de
nuevos topicItems, certificando que
se crea la instancia correspondiente
y las relaciones en la ontologa.
topicItems
que
los
topics
creados
se
y S
listan
correctamente.
CP-006 Listado de recursos
Comprobar
que,
dada
una S
concreto,
se
listan
recursos
relacionados
todos
y
los
son
los
eventos
correspondientes en la base de
datos de Sakai.
Tabla 32. Pruebas de integracin
158
7.2
Integracin de la solucin
En este apartado vamos a detallar el proceso de integracin de la
solucin desarrollada.
160
8. CONCLUSIONES
8.1
Objetivos alcanzados
Al termino del desarrollo de este trabajo fin de grado, podemos afirmar
que hemos cumplido todos los objetivos propuestos al inicio del mismo.
8.2
162
8.3
Vas futuras
Debido a la enorme dimensin que supone adaptar todo un entorno
LMS para su funcionamiento conjunto con un sistema experto, este
proyecto fin de grado se ha centrado tan solo en desarrollar
principalmente una arquitectura que permita crear, en futuros desarrollos,
nuevas herramientas en Sakai que implementen estas funcionalidades.
En nuestro caso, hemos desarrollado dos herramientas, que permiten la
gestin de recursos con contenido semntico.
los
temas
nuevos
que
son
creados,
los
temas
Grosso modo podramos decir que las reglas a definir en este caso se
podran clasificar en tres grandes grupos:
164
165
166
9. BLIBLIOGRAFIA
1.
2.
http://blog.iedge.eu/tecnologia-sistemas-informacion/desarrollo/pabloalmunia-ciclo-de-vida-en-el-desarrollo-de-software-segunda-parte/
3.
4.
Barros, H., Silva, A., Costa, E., Bittencourt, I., Holanda, O., &
5.
Bhuasiri, W., Xaymoungkhoun, O., Zo, H., Rho, J., & Ciganek, A.
6.
7.
https://profvanessaborjas.wordpress.com/2012/05/10/metodologia-dedesarrollo-de-software/
8.
167
9.
Obtenido
de
https://www.eclipse.org/downloads/packages/eclipse-ide-java-eedevelopers/lunasr2
11. Fields, K., D., Kolb, M. A., & Bayern, S. (2001). Web Development
with Java Server Pages. Manning Publications Co.
168
19. Hickson, I., Berjon, R., Faulkner, S., Leithead, T., Navara, E. D.,
O'Connor, E., & Pfeiffer, S. (2014). HTML5: A vocabulary and associated
APIs for HTML and XHTML. W3C Recommendation.
20. Hwang, J., Chen, Y., Tsai, S., & Tsai, C. (2011). An expert system
for improving web-based problem-solving ability of students. Expert
Systems with Applications, 86648672.
21. Johnson, R., Hoeller, J., Donald, K., Sampaleanu, C., & Harrop, R.
(2012). Spring Framework Reference Documentation.
24. Kurt, S. (2011). The accessibility of university web sites: The case
of turkish universities. Universal Access in the Information Society(1), 101110.
26. McGuinness, L., D., & Harmelen, F. V. (2004). OWL web ontology
language overview. W3C recommendation.
169
28. Muoz, A., J. L., Capel, A., Cantabella, M., & Caballero, A. (2015).
OntoSakai: On the optimization of a Learning Management System using
semantics and user profiling. Expert Systems with Applications, 5995
6007.
29. MySQL.
(13
de
Mayo
de
2015).
Obtenido
de
https://www.mysql.com/
30. Natek, S., & Zwilling, M. (2014). Student data mining solution
knowledge management system related to higher education institutions.
Expert Systems with Applications, 64006407.
32. zyurt, ., zyurt, H., & Baki, A. (2013). Design and development
of an innovative individualized adaptive and intelligent e-learning system
for teachinglearning of probability unit: Details of UZWEBMAT. Expert
Systems with Applications, 29142940.
de
http://www.campuscomputing.net/item/2013-campus-
computing-survey-0
34. PrudHommeaux, Eric, & Seaborne., A. (2008). SPARQL query
language for RDF. W3C recommendation .
35. Rahimi, E., Berg, J. v., & Veen, W. (2015). Facilitating studentdriven constructing of learning environments using web 2.0 personal
learning environments. Computers & Education, 235-246.
170
38. Sublime
Text.
(13
de
Mayo
de
2015).
Obtenido
de
http://www.sublimetext.com/
39. UM.
(8
de
Mayo
de
2015).
Obtenido
de
http://ocw.um.es/ingenierias/fundamentos-de-ingenieria-delsoftware/material-de-clase-1/capitulo07.pdf
42. Petersen, K., Wohlin, C., & Baca, D. (2009). The waterfall model in
large-scale
development.
In
Product-focused
software
process
171
172
10. ANEXOS
10.1 Anexo A: Casos de uso
10.1.1 Anexo A1: OntoSakaiWS
10.1.1.1 CU01-Crear Asignatura
CU01
Versin
Autor
Fuentes
Descripcin
Precondicin
Secuencia normal
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
Crear Asignatura
1.0
Alberto Miguel Oliva
Definicin del sistema
Se debe poder dar de alta nuevas asignaturas en el
sistema en caso de que sea la primera vez que usen
una herramienta semantizada.
La asignatura debe existir dentro del sistema Sakai
Paso
Accin
1
El sistema recibe los
datos de la nueva
asignatura
2
Los datos son
formateados
correctamente
3
El sistema realiza la
escritura en el modelo
ontolgico.
La asignatura queda registrada y lista para albergar
contenido semntico.
Paso
Accin
1
El sistema pierde la
conexin con el servidor.
Se puede realizar de
nuevo la operacin una
vez se haya establecido
de nuevo la conexin con
el servidor
Media
Alta
Validado
Alta
Se debe garantizar la no duplicidad de datos
Tabla 33. Caso de uso OntoSakaiWS: CU01
173
Precondicin
Secuencia normal
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
Crear Herramienta
1.0
Alberto Miguel Oliva
Definicin del sistema
Se debe poder dar de alta nuevas herramientas en el
sistema en caso de que sea la primera vez que se usen
en el mbito de una asignatura concreta.
Debe existir una asignatura dentro del sistema con la
que podamos relacionar esta herramienta
Paso
Accin
1
El sistema recibe los
datos de la nueva
herramienta
2
Los datos son
formateados
correctamente
3
El sistema realiza la
escritura en el modelo
ontolgico.
4
El sistema crea la relacin
de la herramienta con la
asignatura indicada
La herramienta queda registrada y lista para albergar
contenido semntico.
Paso
Accin
1
El sistema pierde la
conexin con el servidor.
Se puede realizar de
nuevo la operacin una
vez se haya establecido
de nuevo la conexin con
el servidor
Media
Alta
Validado
Alta
Se debe garantizar la no duplicidad de datos
Tabla 34. Caso de uso OntoSakaiWS: CU02
174
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
Crear Topic
1.0
Alberto Miguel Oliva
Definicin del sistema
Dar de alta un nuevo topic dentro del modelo
ontolgico
-Paso
Accin
1
El sistema recibe los
datos del nuevo topic
2
Los datos son
formateados
correctamente
3
El sistema realiza la
escritura en el modelo
ontolgico.
El topic queda registrado en el sistema
Paso
Accin
1
El sistema pierde la
conexin con el servidor.
Se puede realizar de
nuevo la operacin una
vez se haya establecido
de nuevo la conexin con
el servidor
Media
Alta
Validado
Alta
Se debe garantizar la no duplicidad de datos
Tabla 35. Caso de uso OntoSakaiWS: CU03
175
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
Crear TopicItem
1.0
Alberto Miguel Oliva
Definicin del sistema
Dar de alta un nuevo topicItem dentro del modelo
ontolgico
Debe existir un Topic con el que relacionar el TopicItem
Paso
Accin
1
El sistema recibe los
datos del nuevo TopicItem
2
Los datos son
formateados
correctamente
3
El sistema realiza la
escritura en el modelo
ontolgico.
4
El sistema crea la relacin
entre el topicItem y el
topic indicado.
El topicItem queda registrado en el sistema
Paso
Accin
1
El sistema pierde la
conexin con el servidor.
Se puede realizar de
nuevo la operacin una
vez se haya establecido
de nuevo la conexin con
el servidor
Media
Alta
Validado
Alta
Se debe garantizar la no duplicidad de datos
Tabla 36. Caso de uso OntoSakaiWS: CU04
176
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
Crear Recurso
1.0
Alberto Miguel Oliva
Definicin del sistema
Se debe poder dar de alta nuevos recursos dentro del
modelo ontolgico
Debe existir en el sistema una herramienta dentro de
cuyo mbito daremos de alta los recursos
Paso
Accin
1
El sistema recibe los
datos del nuevo recurso
2
Los datos son
formateados
correctamente
3
El sistema realiza la
escritura en el modelo
ontolgico.
4
El sistema crea la relacin
del recurso con la
herramienta indicada.
El recurso queda registrado en el sistema
Paso
Accin
1
El sistema pierde la
conexin con el servidor.
Se puede realizar de
nuevo la operacin una
vez se haya establecido
de nuevo la conexin con
el servidor
Alta
Alta
Validado
Alta
Se debe garantizar la no duplicidad de datos
Tabla 37. Caso de uso OntoSakaiWS: CU05
177
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
Obtener Topics
1.0
Alberto Miguel Oliva
Definicin del sistema
Devolver un listado de todos los topics existentes en el
sistema
El sistema debe tener topics dados de alta
Paso
Accin
1
El sistema una peticin de
solicitud de datos
2
Realiza una lectura del
modelo ontolgico
3
Los datos son
formateados de modo que
puedan ser interpretados
por el cliente
4
El sistema devuelve los
datos formateados.
-Paso
Accin
1
El sistema pierde la
conexin con el servidor.
Se puede realizar de
nuevo la operacin una
vez se haya establecido
de nuevo la conexin con
el servidor
Alta
Alta
Validado
Alta
-Tabla 38. Caso de uso OntoSakaiWS: CU06
178
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
Obtener recursos
1.0
Alberto Miguel Oliva
Definicin del sistema
Devolver un listado de todos los recursos existentes en
el sistema
El sistema debe tener recursos dados de alta
Paso
Accin
1
El sistema una peticin de
solicitud de datos
2
Realiza una lectura del
modelo ontolgico
3
Los datos son
formateados de modo que
puedan ser interpretados
por el cliente
4
El sistema devuelve los
datos formateados.
-Paso
Accin
1
El sistema pierde la
conexin con el servidor.
Se puede realizar de
nuevo la operacin una
vez se haya establecido
de nuevo la conexin con
el servidor
Alta
Alta
Validado
Alta
-Tabla 39. Caso de uso OntoSakaiWS: CU07
179
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
180
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
181
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
182
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
183
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
184
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
Obtener asignaturas
1.0
Alberto Miguel Oliva
Definicin del sistema
Devolver un listado de todas las asignaturas
registradas en el sistema
Deben existir asignaturas registradas en el sistema
Paso
Accin
1
El sistema una peticin de
solicitud de datos
2
Realiza una lectura del
modelo ontolgico
3
Los datos son
formateados de modo que
puedan ser interpretados
por el cliente
4
El sistema devuelve los
datos formateados.
-Paso
Accin
1
El sistema pierde la
conexin con el servidor.
Se puede realizar de
nuevo la operacin una
vez se haya establecido
de nuevo la conexin con
el servidor
Alta
Alta
Validado
Alta
-Tabla 45. Caso de uso OntoSakaiWS: CU13
185
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
186
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
187
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
188
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
189
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
190
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
191
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
192
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
193
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
194
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
195
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
196
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
197
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
Listar asignaturas
1.0
Alberto Miguel Oliva
Definicin del sistema
Crear un listado de asignaturas y mostrarlas por
pantalla.
El usuario debe estar identificado.
Paso
Accin
1
Se realiza una peticin al
servicio Web
2
Se formatean los datos
recibidos.
3
Los datos previamente
formateados se muestran
por pantalla.
-Paso
Accin
Alta
Alta
Validado
Alta
--
198
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
Listar recursos
1.0
Alberto Miguel Oliva
Definicin del sistema
Crear un listado de recursos, clasificados por
asignatura y mostrarlos por pantalla.
El usuario debe estar identificado.
Paso
Accin
1
Se realiza una peticin al
servicio Web
2
Se formatean los datos
recibidos.
3
Los datos previamente
formateados se muestran
por pantalla.
-Paso
Accin
Alta
Alta
Validado
Alta
--
199
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
Listar topics
1.0
Alberto Miguel Oliva
Definicin del sistema
Crear un listado de topics y mostrarlos por pantalla.
El usuario debe estar identificado.
Paso
Accin
1
Se realiza una peticin al
servicio Web
2
Se formatean los datos
recibidos.
3
Los datos previamente
formateados se muestran
por pantalla.
-Paso
Accin
Alta
Alta
Validado
Alta
--
200
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
Listar topicItems
1.0
Alberto Miguel Oliva
Definicin del sistema
Crear un listado de topicItems, clasificados por topics y
mostrarlos por pantalla.
El usuario debe estar identificado.
Paso
Accin
1
Se realiza una peticin al
servicio Web
2
Se formatean los datos
recibidos.
3
Los datos previamente
formateados se muestran
por pantalla.
-Paso
Accin
Alta
Alta
Validado
Alta
--
201
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
Visualizar recursos
1.0
Alberto Miguel Oliva
Definicin del sistema
Mostrar los recursos de una asignatura concreta
El usuario debe estar identificado
Paso
Accin
1
El sistema realiza una
peticin de datos
enviando la asignatura
2
El sistema recibe y
formatea los datos.
3
El sistema muestra una
lista con los recursos
formateados
-Paso
Accin
1
El sistema pierde la
conexin con el servidor.
Se puede realizar de
nuevo la operacin una
vez se haya establecido
de nuevo la conexin con
el servidor
Alta
Alta
Validado
Alta
-Tabla 62. Caso de uso OntoSakai Browser: CU01
202
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
Descargar recursos
1.0
Alberto Miguel Oliva
Definicin del sistema
Descargar los recursos contenidos en la asignatura
El usuario debe estar
Paso
Accin
1
El usuario hace clic sobre
el enlace de descarga de
uno de los recursos
2
El sistema realiza una
peticin mediante
webDAV y comienza la
descarga del archivo
-Paso
Accin
2
El sistema pierde la
conexin con el servidor.
Se puede realizar de
nuevo la operacin una
vez se haya establecido
de nuevo la conexin con
el servidor
Alta
Alta
Validado
Alta
-Tabla 63. Caso de uso OntoSakai Browser: CU02
203
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
204
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
205
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
206
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
207
Postcondicion
Excepciones
Frecuencia esperada
Urgencia
Estado
Escalabilidad
Comentarios
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
Para
descargar
el
JDK
debemos
dirigirnos
http://www.oracle.com/technetwork/java/javase/downloads/java-archivedownloads-javase7-521261.html#jdk-7u76-oth-JPR.
231
232
233
234
-XX:NewSize=192m
Djava.awt.headless=true
-XX:MaxNewSize=384m
-Dhttp.agent=Sakai
Dorg.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING=false
Dsun.lang.ClassLoader.allowArraySyntax=true'.
235
236
Para
ello,
el
primer
paso
ser
descargarlo
desde
http://maven.apache.org/download.cgi.
237
'-Xms512m
-Xmx1024m
-XX:PermSize=256m
XX:MaxPermSize=512m -Djava.util.Arrays.useLegacyMergeSort=true'
Descargamos
Apache
Tomcat
desde
http://tomcat.apache.org/download-70.cgi.
238
la
siguiente
direccin
CATALINA_HOME C:\opt\apache-tomcat-7.0.62.
Aadimos
los
siguiente
la
lnea
que
comienza
con
common.loader=.
,${catalina.base}/common/classes/,${catalina.base}/common/lib/*.jar
Aadimos
lo
siguiente
la
linea
que
comienza
con
shared.loader=
${catalina.base}/shared/classes/,${catalina.base}/shared/lib/*.jar
Aadimos
lo
siguiente
la
linea
que
comienza
server.loader=
${catalina.base}/server/classes/,${catalina.base}/server/lib/*.jar
239
con
JAVA_OPTS=-server
-Xmx1028m
-XX:MaxPermSize=320m
Dorg.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING=fals
e -Djava.awt.headless=true -Dcom.sun.management.jmxremote
Dsun.lang.ClassLoader.allowArraySyntax=true
240
Para
ello,
nos
dirigimos
la
direccin
http://dev.mysql.com/downloads/connector/j/.
241
Para
ello
nos
dirigimos
la
https://dev.mysql.com/downloads/windows/installer/5.5.html.
242
direccin
243
244
245
246
Este proceso tardar unos minutos, una vez finalizado solo nos queda
arrancar Tomcat para comprobar que la instalacin se ha producido
correctamente.
247
248
Con este trabajo fin de grado se adjunta un disco con los desarrollos
llevados a cabo, dentro del disco encontramos 3 carpetas, OntoSakaiWS,
OntoSakai Resources y OntoSakai browser.
un
navegador
web
nos
dirigimos
http://localhost:8080/OntoSakaiWS/services.
250
251
clean
install
sakai:deploy
-Dmaven.tomcat.home=C:\opt\tomcat
Dsakai.home=C:\opt\tomcat\sakai -Djava.net.preferIPv4Stack=true
252
nuevamente
el
servidor.
253
La siguiente pantalla nos pide algunos datos bsicos sobre el sitio que
vamos a crear, como el ttulo, una breve descripcin, etc. Nosotros hemos
llamado a nuestro sitio DAD (Desarrollo de aplicaciones distribuidas). Una
vez rellenados estos campos, pulsamos sobre el botn Continuar.
254
255
256
257
OntoSakai Resources
OntoSakai Browser
Docente
Generador de contenido
Consumidor de contenido
Estudiante
--
Consumidor de contenido
Tabla 69. Roles de usuario
258
Una vez dentro de la aplicacin contamos con una interface que nos
permite subir recursos, relacionando cada recurso con topicItems o
recursos existentes en el sistema que deseemos.
259
Como
podemos
observar,
hemos
seleccionado
del
topic
260
Una
vez
tenemos el
recurso
seleccionado
y sus
relaciones
establecidas, solo nos resta pulsar sobre el botn Subir Recurso para
finalizar la subida.
261
262
263
264
266
Finalmente,
para
descargar
cualquier
recurso,
tanto
267
269
271
272