La cuestión principal es la adecuación de una plataforma existente a SCORM. Soy nuevo en estos temas y ando perdido. Os comento. Actualmente dispongo de una plataforma Apache+PHP+MySQL, que no cumple ningún estandar. Los cursos van por fichas y el seguimiento se hace en base a visitas de estas fichas y tal...
Los últimos días he estado leyendo manuales y demás artículos relacionados con SCORM, pero a la hora de ponerme "manos a la obra", no sé por donde empezar. Necesito saber la lista de requisitos que debe cumplir toda plataforma para ser SCORM. He leido que sería bueno bajarse la demo Sample Run-Time Enviroment , que esuna mini plataforma funcional y tal. Pero ya me pierdo con las APIs y SDK y demas cosas, y además no se si voy por el buen camino. ¿ En qué me tengo que centrar en primer lugar para empezar con la adecuacion de la plataforma...?
Por favor, corregidme ni no estoy en lo cierto. Basicamente hay que conseguir que los cursos (aún se esta decidiendo de qué proveedor) se consigan ejecutar en el cliente, y que cuando éste cierrre la sesión, se envíen los datos referentes al identificacion del cliente, los reciba un parser programado, en este caso en PHP, y los introduzca en la BD MySQL, en las campos habilitados para tal efecto.
Por ahora no se plantea la posibiliad de elaborar los contenidos. De ahi que lo del proveedor de contenidos esté en el aire todavía.
Registrado: Jul 05, 2003 Mensajes: 1433 Ubicación: Madrid / España
Publicado: Jue Dic 04, 2003 12:41 pmAsunto:
Te copio una respuesta a un mensaje parecido, salio el otro dia.
Ademas esta claro que es impresindible de tener en el proyecto a un programador(mejor analista) experimentado.
Hola, en realidad lo perfecto seria desarrollar el LMS teniendo en cuenta SCORM desde el principio.
Yo te sugerirá lo siguiente:
- Estudiar los manuales de SCORM para poder realizar el análisis informático de la solución a desarrollar.
- Decidir cual es el soporte SCORM que va a tener tu LMS(por ejemplo solo importar materiales SCORM, o hacer el seguimiento)
-Adaptar las tablas de la BD que tengan que ver con el contenido para poder reflejar el modelo de contenidos basados en SCO.
-Diseñar la forma de importar paquetes SCORM en la BD de Contenidos modificada.
- Diseñar el soporte del entorno de tiempo de ejecución de SCORM
- Adaptar la gestión de lanzamiento de contenidos (en función a la nueva bd)
- Adaptar la BD de seguimiento teniendo en cuenta el DATAMODEL de SCORM
Antes de nada , gracias por contestar tan pronto. No obstante sigo con bastantes dudas. Voy poniendo los puntos que creo, he entendido para ver si adquiero unos sólidos conocimientos de base a partir de los cuales crear el LMS nuevo...
- El Soporte SCORM que va a tener tu LMS, en mi caso es ofertar publicar cursos y hacer el seguimiento de alumnos que van a hacer esos cursos.
- En cuanto a lo de adaptar las tablas de la BD que tengan que ver con el contenido, me imagino que te refierriras a modficiar las tablas que se usaban hasta la fecha, para que las nuevas tablas tengan los campos oportunos para los nuevos cursos...¿es así...?.
- A la hora de Diseñar la forma de importar paquetes SCORM en la BD de Contenidos modificada, eso dependerá de los contenidos que se adquieran...¿no?.
En los siguientes puntos no se realemnte a que te refieres:
- Diseñar el soporte del entorno de tiempo de ejecución de SCORM
- Adaptar la gestión de lanzamiento de contenidos (en función a la nueva bd)
- Adaptar la BD de seguimiento teniendo en cuenta el DATAMODEL de SCORM
Registrado: Jul 05, 2003 Mensajes: 1433 Ubicación: Madrid / España
Publicado: Jue Dic 04, 2003 10:13 pmAsunto:
Hola según las especificaciones de SCORM si quieres que tu plataforma sea compatible debe:
- Sabe Importar paquetes de Contenido, dentro del paquete se encuentran unos ficheros XML que describen la
a. Organización del curso : índice jerárquico de items del contenido
b. Metadatos descriptivos de los items de contenido.
c. Recursos(ficheros) de contenido
- Saber ofrecer el mecanismo de comunicación entre el Contenido y LMS, dentro de este mecanismo se fijan
a. Un conjunto de campos OBLIGATORIOS de datos en los guardar/leer seguimiento del contenido. Los campos por cada Alumno-Item de Contenido son por ejemplo Puntuación, Tiempo de Estudio, Estado del Item, etc.(DATAMODEL)
b. El mecanismo de comunicación en forma de un objeto ECMASCRIPT con un conjunto de funciones para poder realizar el intercambio de datos entre el contenido y la plataforma.
Ahora con respecto a tus preguntas:
>En cuanto a lo de adaptar las tablas de la BD que tengan que ver con el contenido, me imagino que te refierriras a >modficiar las tablas que se usaban hasta la fecha, para que las nuevas tablas tengan los campos oportunos para los >nuevos cursos...¿es así...?.
Date cuenta que el indice de contenidos puede estar descrito como un arbol sin ninguna limitacion, no se si las tablas que tiene permite esa organización. Este cambio podria implicar tambien el cambio de la tabla de seguimiento y de inscripciones.
Además los metadatos de los items también deberían estar importados en la tablas de DB de contenido.
>A la hora de Diseñar la forma de importar paquetes SCORM en la BD de Contenidos modificada, eso dependerá >de los contenidos que se adquieran...¿no?.
Pues según todo lo que te comento si la plataforma es SCORM DEBE de saber importar los contenidos con independencia de cómo se hayan generado.
>Diseñar el soporte del entorno de tiempo de ejecución de SCORM
>- Adaptar la gestión de lanzamiento de contenidos (en función a la nueva bd)
>- Adaptar la BD de seguimiento teniendo en cuenta el DATAMODEL de SCORM
Me refería diseñar el mecanismo de comunicación y como exponerlo a los contenidos(ver arriba)
A ver si esto te aclara mas las cosas:-)Espero tus preguntas!!!
Un Saludo
Jorge Dieguez
Registrado: Jul 05, 2003 Mensajes: 1433 Ubicación: Madrid / España
Publicado: Jue Dic 04, 2003 10:32 pmAsunto:
Hola según las especificaciones de SCORM si quieres que tu plataforma sea compatible debe:
- Sabe Importar paquetes de Contenido, dentro del paquete se encuentran unos ficheros XML que describen la
a. Organización del curso : índice jerárquico de items del contenido
b. Metadatos descriptivos de los items de contenido.
c. Recursos(ficheros) de contenido
- Saber ofrecer el mecanismo de comunicación entre el Contenido y LMS, dentro de este mecanismo se fijan
a. Un conjunto de campos OBLIGATORIOS de datos en los guardar/leer seguimiento del contenido. Los campos por cada Alumno-Item de Contenido son por ejemplo Puntuación, Tiempo de Estudio, Estado del Item, etc.(DATAMODEL)
b. El mecanismo de comunicación en forma de un objeto ECMASCRIPT con un conjunto de funciones para poder realizar el intercambio de datos entre el contenido y la plataforma.
Ahora con respecto a tus preguntas:
>En cuanto a lo de adaptar las tablas de la BD que tengan que ver con el contenido, me imagino que te refierriras a >modficiar las tablas que se usaban hasta la fecha, para que las nuevas tablas tengan los campos oportunos para los >nuevos cursos...¿es así...?.
Date cuenta que el indice de contenidos puede estar descrito como un arbol sin ninguna limitacion, no se si las tablas que tiene permite esa organización. Este cambio podria implicar tambien el cambio de la tabla de seguimiento y de inscripciones.
Además los metadatos de los items también deberían estar importados en la tablas de DB de contenido.
>A la hora de Diseñar la forma de importar paquetes SCORM en la BD de Contenidos modificada, eso dependerá >de los contenidos que se adquieran...¿no?.
Pues según todo lo que te comento si la plataforma es SCORM DEBE de saber importar los contenidos con independencia de cómo se hayan generado.
>Diseñar el soporte del entorno de tiempo de ejecución de SCORM
>- Adaptar la gestión de lanzamiento de contenidos (en función a la nueva bd)
>- Adaptar la BD de seguimiento teniendo en cuenta el DATAMODEL de SCORM
Me refería diseñar el mecanismo de comunicación y como exponerlo a los contenidos(ver arriba)
A ver si esto te aclara mas las cosas:-)Espero tus preguntas!!!
Un Saludo
Jorge Dieguez
Publicado: Mar Dic 09, 2003 8:49 pmAsunto: mas ayuda....
Hola otra vez:
La verdad es que sigo bastante liado con todo este tema. Se supone que todos los cursos que cumplen SCORM (independientemente del proveedor), tienen los ficheros XML, que describen la organización del curso, los metadatos y los recursos de contenido.
No se por donde empezar. ¿Qué tengo que programar y/o instalar en el servidor?¿Es necesario IIS o se puede tambien con el Apache?¿Es necesario programar la API, o ya están todas lsa funciones realizadas y sólo hay que saber llamarlas?. No se si ves por donde van mis dudas...
Es que depues de tanto leer, no se por donde empezar. Según me han comentado aqui, de todos los alumnos que va a haber, no todas vasn a curasr cursos SCORM. ¿será mejor una BD para lo de cursos SCORM y otra para los demás....?
Hasta ahora he entendido que hay 3 componentes en el Entorno de ejecución de SCORM: Launch, LMS y API.
Imáginate que estoy sentado delante del servidor. ¿Qué hago?
¿Tengo que conseguir el codigo de alguna plataforma de esas de codigo abierto para saber qué hace qué?
La comunicación entre el alumno y el servidor va en XML, supongo que habra que programar un parser en PHP, que coja los daots y los guarde/recupere en la BD..¿no?. Es que no se si voy bien encaminado.
El API, son un conjunto de funciones predefinidas que se ponen a disposición de los SCO. Supongo que se colocaran un alguna parte del servidor, pero hay que programarlas...?
<El mecanismo de comunicación en forma de un objeto ECMASCRIPT con <un conjunto de funciones para poder realizar el intercambio de datos <entre el contenido y la plataforma.
No se a que te refiereds con lo de ECMASCRIPT.
<Date cuenta que el indice de contenidos puede estar descrito como un <arbol sin ninguna limitacion, no se si las tablas que tiene permite esa <organización. Este cambio podria implicar tambien el cambio de la tabla <de seguimiento y de inscripciones.
¿cuales son las tablas realmente necesarias?
Alumnos, Contenidos, Seguimineto, Inscirpciones?
A ver si empiezo a ver la luz, porque lo veo todo oscuro....
Registrado: Jul 05, 2003 Mensajes: 1433 Ubicación: Madrid / España
Publicado: Mar Dic 09, 2003 10:14 pmAsunto:
Hola de nuevo, no te desanimes ya veras la luz
Lo primero, en realidad leyendo tus mensajes me ha surgido la siguiente dudas:
¿Por qué necesitas LMS SCORM? ¿Es un negocio? ¿De que inversión se trata? ¿Tienes un equipo de programadores? ¿Realmente tu necesitas SCORM?
Tienes muchas dudas, intentare contestarte algunas:
1: Donde conseguir un LMS SCORM:
- Desarrollarlo: Puedes desarrollarlo, debes tener en cuenta que deberias de al menos contar con un programador senior Cliente-Servidor en entornos Internet, el desarrollo podría durar 1-2 meses.
- Comprar: LA verdad que los LMS comerciales son caras, bueno es cuestión de buscar, en este misma comunidad había un mensaje de Jorge Villa sobre el tema.
- Buscar una solución OpenSource : Puedes buscar un LMS que soporte SCORM(yo no conozco ninguno), también puedes coger un LMS Open Source sin SCORM y adaptarlo(yo dudo que sea mas fácil que hacer uno desde 0)
2:ECMA SCRIPT, puedes buscar en Google, básicamente es un estándar(otro) por ejemplo JavaScript se puede considerar ECMA SCRIPT
Si te planteas desarrollar, te digo por experiencia no es una cuestión compleja, pero no se puede tomar como la elaboración de unas cuantas paginas, es un poco mas que eso y precisa de uno que otro profesional de desarrollo
Sigo esperando tus preguntas:-)
Un Saludo
Jorge DIeguez
Estoy con Jorge en muchas de las preguntas que te hace y me resisto a responder porqué es como dar palos de ciego. No me malinterpretes, pero al leer tus preguntas y el nivel de desasosiego que muestras me surgen muchas preguntas más, entre ellas las que te hace Jorge.
Creo que hay decisiones que no deberías tomar tu, o por lo menos no tu solo, que estáis obviando y que son de tipo estratégico. Como ves, estoy cayendo en mi propia trampa y estoy empezando a dar palos al agua (estoy asumiendo que tu eres el técnico y te han "largao" el marrón).
Jorge te da algunas alternativas, pero también él responde lo mejor que sabe. Yo te confirmo que ninguna solución Open Source cumple SCORM, aunque algunas lo harán durante el 2004.
Lo de que soy el técnico y me ha caido el marrón ni lo dudes...es cierto. Soy el "informatico", el que se tiene que encargar de todo esto y evidentemente, no tengo un equipo de programadores ni nada por el estilo; estoy yo solito.
A ver. No es ninguna inversión ni proyecto personal. Mi misión es adapatar una plataforma Apache-PHP-MySQL para que cumpla SCORM, porque los de más arriba han decidido comprar cursos SCORM para algunas materias. Este es mi cometido. Por ahora nada de contenidos. La plataforma actual organizaba los cursos de otra manera, y el seguimiento de los alumnos también se realizaba de otra manera, en base a fichas visitadas, y en correción de algunos ejercicios.
Pero ahora, con estos nuevos cursos (de los que no sabía nada hace 20 días), y está nueva manera de entender la comunicación, pues me surgen estas mil dudas, que gracias a vosotros, pues consiguiendo aclarar, eso si, poco a poco.
No hay que ser ningún lince para deducir todo esto. Creo, y probablemente Jorge Dieguez estará de acuerdo conmigo, que te están metiendo en un berenjenal de tres pares de narices.
¿Esta plataforma Apache-PHP-MySQL es una plataforma Open Source? ¿tiene nombre? ¿o es un desarrollo propio?
Yo no tengo un perfil técnico y no te podré ayudar en lo que se refiere a programación, pero si puedo hacerlo en cuanto a estrategia. Creo que esos de arriba no han valorado lo que te han metido encima y creo que hay soluciones de conveniencia (dependiendo de cuál sea la respuesta a las preguntas anteriores) mucho más eficientes.
En lo que podamos te ayudaremos que para eso están estos foros.
Jorge Vila
Administrador Comunidad eLearning WORKSHOPS
Socio Calvet, Vila & Arriaga Consulting
jvila@cva-consulting.com
Ok. La plataforma ésta, si es de desarrolo propio y no tiene ningún nombre propio, aunque no he sido yo el que la ha realizado. Ya casi estoy 100% familiarizado con ella.
A ver si se puede realizar alguna de esas soluciones "de conveniencia". De todas maneras, y gracias a vosotros, poco a poco voy viendo cómo funciona todo esto del SCORM y la magnitud del mismo, lasdiferentes partes y todo eso...gracias.
Registrado: Jul 05, 2003 Mensajes: 1433 Ubicación: Madrid / España
Publicado: Jue Dic 11, 2003 11:30 pmAsunto:
Con respecto a la parte técnica estaré encantado de ayudarte, podríamos empezar por que expongas como se gestionan los cursos(que estructura tienen) a nivel de BD así podré sugerir te las adaptaciones que debes de hacer.
Un Saludo
Jorge Dieguez
Publicado: Vie Dic 12, 2003 1:04 pmAsunto: Lo primero: instalar el sample run time environment...
Bien. Me han recomendado, antes de empezar con el mogollón, que me baje de ADL, el Sample Run time Environment version 1.2.1 para una primera toma de contacto. El caso es que me pide que baje e instale el SDK Standard Edition V1.3.1 antes de instalar el sample RTE.
Mi pregunta es ¿todo esto lo tengo que ahcer en un ordenador cliente, servidor o en los dos?. Es que no lo veo claro en las instrucciones. Si que pone la parte cliente y la parte servidora, pero en el apartado instalación no me indica en dónde. Supongo que será en el servidor, pero no estoy seguro...
Registrado: Jul 05, 2003 Mensajes: 1433 Ubicación: Madrid / España
Publicado: Vie Dic 12, 2003 9:26 pmAsunto:
Hola veo que estas avanzando:-)Instala el J2SE en el cliente(lo necesita el api) y en el Servidor lo usa el servidor Tomkat que sirve las paginas JSP.
Tambien te recomiendo el Reload SCORM Player(buscalo en google) y importa en el el curso de ejemplo del RTE asi podras hacer un completo seguimiento de todo.
Un Saludo
Jorge Dieguez
Publicado: Lun Dic 15, 2003 10:52 amAsunto: mas sobre la demo...
Ok. Ya tengo instalado eL J2SE tanto en el cliente como en el servidor. Tambien me he bajdo el Reload SCORM Player. Supongo que tanto éste como el Run Time Enviroment, hay que instalarlo en el servidor. Un pregunta, este "Run-time" está desarrollado con Java2, assets, applets, servlets, jsp etc.... , en este caso es así, pero se puede desarrollar con XML, otros lenguajes WEB , no?. O, ¿al ser cliente-servidor, tiene que ir obligatoriamente en Java...?. Igual es una tontería de pregunta....
SAlu2.
Registrado: Jul 05, 2003 Mensajes: 1433 Ubicación: Madrid / España
Publicado: Lun Dic 15, 2003 11:05 amAsunto:
Hola, la parte servidora se puede desarrollar con cualquier tecnología destinada a ese fin, se usa java normalmente por serla plataforma mas estándar en los servidores. El API se puede desarrollar en Java, JavaScript o incluso en Flash.
En XML difícilmente se pueda desarrollar nada:-) ya que no es un lenguaje de programación sino de descripción, a lo que me refiero que el XML se usa en muchísimas plataformas tecnológicas pero como soporte y no como lenguaje de programación.
Un Saludo
Jorge Dieguez
Publicado: Lun Dic 22, 2003 7:51 pmAsunto: run time ....
Hola de nuevo. Sigo de pruebas con el run-time.environment. El caso es que como bien sabrás, usa bd MS Acces. Echando un vistazo a las tablas, se puede intuir los campos necesarios para la comunicación. EL caso es que, una vez que he visto que me me funcionaba, he hecho el cambio a MySQL. He exportado todas las tablas de Acces a Mysql. He cambiado el origen de datos, para que SampleRTE, en lugar de ser un driver para Acces, lo sea para MySQL. Previamente, ya habia instalado el odbc para MySQL. El caso es qeu me funciona bien, me arranaca LMSMain, y me deja entrar con "admin admin", y me deja crear nuevos usuarios. Me deja importar el curso de ejemplo "maritime", pero cuando luego entro con las claves de un usuario que he creado, a la hora de registrar el curso, no me aparece el curso y no sale nada. No se que he podido hacer mal, seguramente habre obviado algo y no se muy bien lo que puede ser, ya que todos los datos los carga perfectamente en los campos de las tablas.
Yo me temo que tiene que ser algo relacionado con el campo LAUNCH de las tablas ITEMINFO e USERSCOINFO, pero no estoy seguro.
Salu2.
Registrado: Jul 05, 2003 Mensajes: 1433 Ubicación: Madrid / España
Publicado: Vie Dic 26, 2003 12:03 pmAsunto:
Hola, la verdad es que nunca he tratado de hacer lo que comentas:-)
He leido en el foro de ADL que se ha tocado la SampleRTE para ejecutarlo en Linux con Tomcat y MySQL y al parecer hay que tocar algunas cosas referentes a las rutas (sustituir / por \ o algo asi), siento no poder ayudarte en esto intenta plantear tu pregunta en los foros que te comento.
¿Por cierto para que quieres hacer todo eso?
Un Saludo
Jorge Dieguez
Publicado: Lun Ene 05, 2004 11:42 amAsunto: aclaracion esquema SCORM....
Hola de nuevo y Feliz Año.
El caso es que si la parte servidora está en java, para que se conecte con MySQL, pues es necesario instalar JDBC y el classpath, a parte del ODBC de MySQL, en "origenes de datos".
He estado leyendo en estas navidades, y me han surgido algunas dudas generales En parte porque como esta todo en inglés...pues como que no me entero de igual manera... Principalmente me refiero al esquema de la arquitectura SCORM, diferencias entre el API ADPATER y el API, lo que tiene que ir en el servidor, y lo que tiene que ir el cliente. Me imagino que tendrás el esquema en la cabeza, sino me estoy refiriendo a la figura 3.1a del libro THE SCORM RUN TIME ENVIRONMENT Version 1.2.
EL LMS se compone del LMS SERVER (en el servidor) + API Adapter (en el cliente). El API Adapter esta dentro del browser y se comunica con el SCO por medio de la API.
La API son unas librerias de funciones que se encuentran , supongo, en el servidor, y que permiten la comunicación entre el LMS y el SCO, es decir, una librería de funciones a las que el SCO puede acceder.
Me puedes aclarar, por favor, que tiene que ir en cada sitio y como tiene que estar implementado. El caso es que algunos dicen que las librerías estan ya codificadas y no se deben modificar nunca.....y yo me pierdo entre lo que esstá codificado, lo que hay que modificar y lo que hay que programar desde cero.
Hola Feliz Año,
El API es el mecanismo que tiene el LMS para controlar el estado de los recursos(SCO’s), el API es usado por los SCO’s para leer/escribir datos contra el LMS.
El API es algo abstracto, el API ADAPTER es la pieza de Sftware en si, la que expone las funcionalidades del API al SCO.
El API esta descrito en el documento SCORM, ahora solo debes implementar el APIADAPTER, las funciones las debes implementar tu, eso si no debes cambiar el inetrface (nombre, parámetros y valor devuelto).
¿Me explico?
Un Saludo
Jorge Dieguez
Buenas.
Sigo con dudas sobre la estructura del LMS. Según he entendido, el API es abstracto y lo único que realmente se codifica es al APiAdapter. ¿Pero las funciones que componen la API no deben estar en alguna parte del servidor?.El APiAdpater se puede codificar de tres maneras, applet de java, flash y javascript., de las cuales la más recomendada es un applet de java, lo cual implica que el cliente tenga instalado el JRE. ¿se puede desarrollar en PHP?
Este ApiAdpater tendra pues tal forma :
public class API extends Applet {...
Este applet se lanza en una frame "oculto" o algo asi...y dentro de este applet tienen que estar , como mínimo LMSInitialize y LMSFinish.
Lo de como el SCO busca y encuentra el APIAdapter, es cosa de los desarrolladores de contenidos.
La comunicación entre el ApiAdapter y el LMS se hace mediante HTTP POST. Entonces en el lado del servidor tiene que existir un script (en mi caso en PHP) que reciba esa informacion ¿no?. Según el artículo tuyo "aspectos practicos de scorm", lo nombras como tracking script.
Ya he leido todo lo referente al Data Model y todos los tipos de datos y demás, todos los requisitos....Pero realmente no se en que punto se conecta todo esto con la BD, no se que campos debo añadir a las tablas ni que tablas añadir. ¿En que parte esta todo lo relacionado con la BD?.¿Donde se realiza toda la comunicación con la BD? Es que en los libros no pone nada sobre ello (al menos yo no lo he encontrado).
En este mismo foro, incluyes una API , que espero me sirva de gran ayuda. Me refiero a "Un ejemplo del API SCORM en JAVA, Copiar y Pegar"
Cuando te refieres a que falta la parte del servidor, te refieres al script PHP que reciba la informacion?
Supongo que te habras dado cuenta, que cuanto más leo, más dudas me surgen...
Registrado: Jul 05, 2003 Mensajes: 1433 Ubicación: Madrid / España
Publicado: Mie Ene 07, 2004 12:16 pmAsunto:
Hola, no te preocupes por tener dudas, es normalJ
>>¿Pero las funciones que componen la API no deben estar en alguna parte del servidor?.
Las funciones deben estar expuestas por el APIADAPTER y deben de estar en el Cliente!!!
El contenido desde JavaScript(Cliente) debe poder localizar el API y realizar llamadas a las funciones(estas funciones deben tener el nombre y los parámetros tal y como lo especifica ADL).
Date cuenta que las funciones aunque estén en el cliente solo son el Interface que puede redirigir la información al Servidor. Por eso el APIADAPTER debe realizarse con tecnología CLIENTE, evidentemente PHP no vale por ser una tecnología Servidor.
>La comunicación entre el ApiAdapter y el LMS se hace mediante HTTP POST. Entonces en el lado del servidor >tiene que existir un script (en mi caso en PHP) que reciba esa informacion ¿no?. Según el artículo tuyo >"aspectos practicos de scorm", lo nombras como tracking script.
Exacto, por un lado tienes algo en el cliente(apiadapter) que capta llamadas del contenido, este algo debe ponerse en contacto con el servidor para pasarle la información. En el servidor puedes usar PHP o cualquier tecnología Servidor.
>Ya he leido todo lo referente al Data Model y todos los tipos de datos y demás, todos los requisitos....Pero >realmente no se en que punto se conecta todo esto con la BD, no se que campos debo añadir a las tablas ni >que tablas añadir. ¿En que parte esta todo lo relacionado con la BD?.¿Donde se realiza toda la comunicación >con la BD? Es que en los libros no pone nada sobre ello (al menos yo no lo he encontrado).
El DataModel describe los campos que debes conservar, como y donde los conservas es cuestión del diseño de tu sistema.
>Cuando te refieres a que falta la parte del servidor, te refieres al script PHP que reciba la información?
Exacto el código es un Applet de Java para poder interceptar las llamadas SCORM del contenido, ahora debes de crear el SCRIPT PHP que reciba la llamada de ese applet y lo trate(abra conexión a la BD, busque el registro, lea/escriba los datos).
Espero ir resolviendo tus dudas:-)
Un Saludo
Jorge Dieguez
Sigo con mil dudas. A ver, según he entendido, el contenido debe localizar el API y realizar llamadas a las funciones.
Supongo que esto sera tema para los desarrolladores de contenidos. Estas funciones, sólo son el Interface que puede redirigir
la información al Servidor. Bien.
El caso es que en el documento tuyo "aspectos practicos de SCORM" pones que se lanaza el conetindo en un frame y el applet
(API) en otro frame de tamaño 0. Esta es la misión del launch, que supongo que será una simple pagina HTML o PHP con un
frameset y tal..
Cuando el contenido encuentra el applet, el applet identifica los registros que se actualizaran en la BD. Aqui me pierdo
realmente. Según tengo entendido, el API solo muestra las funciones para facilitar la comunicacion contenido-LMS.
¿Quien se encarga de la comunicacion HTTP POsT con el "trackingscript" (lo llamo asi para que me entiendas) del servidor?¿Es
el propio API el que se comunica o por el contrario hace falta codificar otro script en el cliente?. Es que en el Ejemplo de API que proporcionas en "Un ejemplo del API SCORM en JAVA, Copiar y Pegar", que es el que más me esta ayudando e a entender, no veo nada de enviar datos ni nada....Supongo que estará incompleto o algo....
No se, creo que me dejo cosas...no logro encajar todas las piezas del puzzle.
Por ahora la informacion que voy a manejar es la siguiente:
- Identificacion del alumno
- puntuación obtenida en la sesión
- estado (incompleta/completa, fallada/pasada)
- sitio en el que se quedó el usuario (bookmark)
En cuanto a los datos (datamodel), según especifica ADL, como mínimo deben tratarse unos datos (creo que son 14). Ya sabes,
cmi.core._children, cmi.core.student_id....
¿Son estos los datos que tengo que tener en cuenta, a la hora de modificar la estructura de la BD?. Como el standar no
especifica nada, acerca de ello, daraigual las tablas, campos, y demas....
Una cosa. Me podrías facilitar algún ejemplo de "trackinscript" , no importa en que lenguaje esté codificado.Es para verl a
estructura que debe tener. En primer lugar deberá conectarse con la BD y tal, noy hay problema. Luego vendran las updates,
selects, inserts y todo eso..., pero no tengo claro cómo...
Registrado: Jul 05, 2003 Mensajes: 1433 Ubicación: Madrid / España
Publicado: Vie Ene 09, 2004 2:07 pmAsunto:
Hola, segun veo has optado por desarrollar el APIADAPTER en Java, me preguntas si es quien se encarga de enviar la información, es asi si te fijas en el codigo localizaras la siguiente funcion:
esta funcion se usa de la siguiente forma:
sendData( "LMSSET", "cmi.core.score", "99" )
y eso hace que el applet envie al servidor por POST lo siguiente:
LMSSET=cmi.core.score|99
ahora en el servidor tan solo debes de extraer el dato en ASP sera algo asi:
Código:
if Request.Form("LMSSET")<>null
{
//Estamos realizando un SET
var CampoAModificar=Request.Form("LMSSET").split("|")[0]
var Valor=Request.Form("LMSSET").split("|")[1]
ModificoDB(CampoAModificar,Valor)
}
Espero que me haya explicado bien:-)
Por cierto este enfoque tiene una desventaja, por cada llamada Set/Get del contenido,estas realizando una peticion al servidor, abriendo la BD, etc. Eso no es lo mas eficiente, y lo mejor seria tener un Cache en el Applet y enviar todas las modificaciones en paquete al hacer el LMSCommit
Un Saludo
Jorge Dieguez
Teniendo en cuenta que la hora de codificar el applet hay que elegir entre estras tres opciones : FLASH, JAVASCRIPT y JAVA, al final me decanté por esta última. Entre otras cosas, porque ando fatal de tiempo y para reutilizar en la medida de lo posible el API que nos facilitas.
Sigo con mis dudas. El SCO se comunica con el LMS por medio de la API. Bien. La forma en que lo haga, no es cosa mía ¿no?.
Quiero decir con esto, que no se donde está el límite entre lo que hace el SCO y lo que hace el LMS. Según lo que he entendido hasta ahora:
- el SCO debe incluir el imsmanifest.xml, que define la estructura del curso...
- el SCO se encarga de buscar el APIAdpater
- el SCO interactua con el LS por medio de las llamadas LMSSetValue y LMSGetValue.
En tu mensaje anterior, me pones como funiocna el SendData y pones que fucniona asi:
sendData( "LMSSET", "cmi.core.score", "99" )
Mi duda surge aqui. Segun he entendio, el propio SCO, hará las llamadas oportunas a LMSInitialize()...LMSSetValue()..etc..., y le pasará los parametros. Ya he visto como llamas a SenData() en la codificación de cada una de estas funciones.
¿Cómo se yo los datos que le van a llegar al script?. Para que me entiendas mejor, si el ApiAdapter sólo facilita las funciones y envía los datos vía http, serás los cursos los que realemente manden los datos y sus valores, ¿no?.Igual esta pregunta es más complicada de lo que parece a simple vista, pero es que no logro entender bien, cómo viajan los datos...cómo identificarlos en el script para guardarlos/recuperarlos... No se si me he expresado lo suficientemente claro ....
Por ahora no he analizado ningun SCO (creo que no debo hacerlo), sólo me he cerciorado que realmente todos tienen el imsmanifest.xml, pero nada más..
Gracias por todo, (eres mi único apoyo a parte de los libros....)
Registrado: Jul 05, 2003 Mensajes: 1433 Ubicación: Madrid / España
Publicado: Lun Ene 12, 2004 9:32 pmAsunto:
Hola, Buenas Tardes, como siempre te intento responder:
- el SCO debe incluir el imsmanifest.xml, que define la estructura del curso...
SI (aunque casi no influye en tema del API)
- el SCO se encarga de buscar el APIAdpater
SI(pero para que lo encuentre debes de exponerlo de la forma correcta)
- el SCO interactua con el LS por medio de las llamadas LMSSetValue y LMSGetValue.
Correcto
El API recibe los datos y los debe validar antes de hacer nada, despues dependiendo de que funcion es envía una petición al PHP en el Servior pasándole por POST los datos, el PHP solo tiene que extraer esta información (es como sacar un valor de FORM), lo que recibe en este caso es una string separada por "|" ahora debe de partir(split) el dato y decidir que hacer con el, por ejemplo si es SetValue pues ya sabe que hay que guardar y donde.
No se si me explico.
Otra cosa, es evidente que debes ver los ejemplos de ADL del contenido para comprender mejor todo esto.
Un Saludo
Jorge Dieguez
Acabo de comenzar con el tema del SCORM despues de mucho darle vueltas y haber revisado varios codigos hay una cosa que no me ha quedado clara del todo...
En mi caso tendriamos un servlet al otro lado, cuando hacemos un SetValue mediante un post se lo indicamos, pero claro... la funcion setvalue del api necesita retornar un true o false dependiendo de su tubo o no tubo exito no?, mi duda es... para que esa funcion pudiese retornar dicho valor deberia de saber si la operacion al otro lado se pudo ejecutar no?, es decir, si los datos han sido verdaderamente salvados en la base de datos, pero claro esto al no ser instantaneo como puede saberlo la funciona del api? y por consiguiente como puede saber si ha de retornar true o false? debe esperar un cierto tiempo hasta quela respuesta del servidor se ha confirmado?.
Mis dudas son basicamente en el envio de datos y en la recepcion de las mismas, comprendo todo lo de implementar la API, el tema del estandar y demas pero no se si es que he obviado algo importante o en realidad ha de ser de esa forma, es decir la api...
recibe un setvalue ok?, con lo cual manda el valor (en caso de que proceda) al servlet y este realiza sus operacion salva los valores y retorna un true, pero... debe el api estar esperando ese valor?.
Creo que se me esta escapando algo... si alguien puede contestar este mensaje le estare muy agradecido, si lo haces... no escatimas en texto de respuesta me gustaria que la cosa quedara totalmente clara.
Cuando haya conseguido hacer funcionar todo este standar realizare un documento con toda mi experiencia donde explicare como crear el tema para manejar el standar scorm y que los que vengan detras no se inunden con todas las dudas que me han surjido a mi en estos dias, muchas gracias por vuestra atencion y me quedo a espensas de vuestras respuestas.
Registrado: Jul 05, 2003 Mensajes: 1433 Ubicación: Madrid / España
Publicado: Vie Ene 23, 2004 11:10 amAsunto:
Hola, todo lo que expones es correcto, has comprendido todo perfectamente, y en cuanto al estándar no se te escapa nada! Realmente todas las funciones del API deben devolver valores.
Lo que pasa que estas pensando en HTML y en FORM, en HTML el POST enviá un FORM y el Servidor le devuelve una pagina HTML, esto no te sirve(de entrada) tu necesitas un valor, en JAVA o FLASH podrías hacer un envió POST y recibir ALGO del servidor pero en una variable con lo cual de allí podrías extraer datos y devolver algún valor en HTML no puedes hacer esoL.
¿No tenéis ninguna forma de hacer una parte del API en Java o Flash?, si lo haces en HTML te volverás loco inventándote la forma de obtener valores de retorno(es posible y se hace pero realmente es muy lioso)!!!
Un Saludo
Jorge Dieguez
Publicado: Vie Ene 23, 2004 11:35 amAsunto: Seguimos con las dudas...
Bueno, la idea que se esta barajando es la mas "standar" es decir, utilizar un applet, pero el problema sigue siendo el mismo no?.
Cuando yo mande un setvalue a mi servidor, este tarda un tiempo en realizar sus acciones tiempo en el que la funcion del api que ya deberia de haber retornado true o false... aun no sabe si el resultado de su accion fue positiva o no... o me estoy equivocando?.
Entonces mi terrible duda es si de verdad esto ha de ser asi o existe alguna otra manera de hacerlo?.
Registrado: Jul 05, 2003 Mensajes: 1433 Ubicación: Madrid / España
Publicado: Vie Ene 23, 2004 12:13 pmAsunto:
Lo bueno del applet de Java es que es sincrono, es decir que si le haces una llamada no devuelve control al JavaScrippt hasta que se termine de ejecutar esta funcion(es la solucion!)
Hay otra:-)No lanzar el contenido hasta que estes seguro que has inicializado y leido TODOS los datos al cliente(API) de esta forma tu API no tiene que esperar ninguna respuesta del servidor ya que ha copiado todos los valores al cliente¿me explico?
Un Saludo
Jorge Dieguez
Acabasemos... no tenia yo idea del detalle de que el Applet es Sincrono... ahora me queda todo mas claro... efectivamente si es asi no podremos continuar hasta que no tengamos un valor de retorno... ahora me surge otra dudilla...
Veamos... si el servlet esta caido o el applet no a sido inicializado... SCORM no me marca un tiempo limite en el cual la funcion deba esperar?, es decir se deberia de quedar esperando eternamente? o hay algo especificado en el estandar que hable sobre tiempos limites?.
Lo unico que he leido sobre tiempos han sido los tiempos de sesion, totales y parciales pero nada mas...
De verdad muchas gracias por las respuestas porque ya me estaba volviendo loco.
Registrado: Jan 20, 2004 Mensajes: 8 Ubicación: Rosario, Argentina
Publicado: Vie Ene 23, 2004 2:37 pmAsunto:
Voy a arriesgar una respuesta: si el applet no se inicializó, seguramente el APIWrapper (Javascript) no encuentre el objeto API, y de esta forma tirará el error correspondiente, y no debería continuar ninguna carga de nada
Registrado: Jul 05, 2003 Mensajes: 1433 Ubicación: Madrid / España
Publicado: Vie Ene 23, 2004 3:15 pmAsunto:
Alli hay otro problema, aunque el applet no se haya inicializado el objeto API si que existe y localizable por el contenido, esto causa muhos problemas cuando el applet aun no se ha cargado pero el contenido le hace un LMSInitialize, esto suele producir errores muy feos.
Por ello inisto en que mejor asegurarte antes que todo esta correcto y solo despues lanzar el SCO asi se evirtan poblemas.
Un Saludo
Jorge Dieguez
pues tras un fin de semana sabatico y muy placentero aqui estoy de nuevo para seguir la pelea particular con el SCORm .
Veamos... he estado tratando de probar el ejemplo que teneis en la web... el ejemplo adl ese pero cuando intento abrirlo me da un error el servlet porque parece ser que no encuentra el driver odbc... podrias echarme un cable de como solucionarlo?
Gracias...
PD: otra duda que me surje es... el SCO es un test o libro electronico? en caso afirmativo... como realiza este la comunicacion con el applet? mediante java script?... si yo respondo una de sus preguntas... como hace el para aumentar mi puntuacion, por ejemplo?.
Hola Jorge he copiado tu applet para usarlo como api y comenzar a hacer pruebas... tambien he pillado un aPIWrapper.js de otro lado y ahora ando tratando de montar el tema para que al menos se reconozcan entre ellos... como deberia de cargar tu applet?...
Me he creado una pagina con tres marcos... uno de ellos carga el applet, otro lo he dejado con un botoncito para hacer pruebas y en el otro cargo un curso.... que supuestamente necesita de una API.... pero me da error porque dice que no la encuentra... de que puede ser el asunto?.
Registrado: Jul 05, 2003 Mensajes: 1433 Ubicación: Madrid / España
Publicado: Lun Ene 26, 2004 2:59 pmAsunto:
Hola Anonimo, lo primero que te pido que te registres como usuario de la comunidad, no te preocupes por el proceso de alta, es rápido, y no implico el envió de publicidad ni nada pro el estilo.
No es obligatorio, pero a mi personalmente me gusta saber al menos el nombre de la persona con la que estoy hablando.
Hasta que lo hagas te doy una pista rápida:-) No se si has leído las especificaciones pero tu applet debe tener el id=”API”.
Un Saludo
Jorge Dieguez
lo del ID (no lo sabia) lo acabo de añadir ahora pero el resultado es el mismo... que no se carga. Sigue diciendome que no lo encuentra...
veamos... creo tres marcos... el primero de ellos carga el API, el segundo solo presenta el boton y el tercero... trata de abrir un curso que he cogido de la red y que necesita de la API... cuando habro el "index" me retorna un mensaje de que ha sido imposible encontrar la API y que por lo tanto no estaran disponibles las funciones... la API es el Applet que tu posteaste en otro de los mensajes de este foro. No se como demonios podria hacer para cargarla
El dia que consiga que todo esto funcione... tendre que montar una fiesta o algo asi... porque madre mia que cantidad de historias que tiene esto del SCORm eh?.
Registrado: Jul 05, 2003 Mensajes: 1433 Ubicación: Madrid / España
Publicado: Lun Ene 26, 2004 4:12 pmAsunto:
Estimado Luís, el tema de SCORM no es mas difícil que otros temas de programación, aunque puede asustar y se complica por ausencia de manuales en castellano.
El API que coloque un día en el foro es un ejemplo, sobre todo de carácter didáctico, hay por cierto otro ejemplo que esta desarrollado por mi en FLASH y JavaScript.
El Applet de ejemplo en realidad no hace nada mas que interceptar las llamadas SCORM, las verdaderas dificultades están en diseñar y desarrollar el lado SERVIDOR.
Al respecto de que tu contenido no encuentra el API, has mirado la función getAPI y findAPI , te sugiero que pongas alerts para poder seguir la búsqueda del objeto API en distintas ventanas y frames quizás eso te ayude localizar el problema.
Todas las horas son GMT + 2 Horas Ir a página 1, 2Siguiente
Página 1 de 2
Puede publicar nuevos temas en este foro No puede responder a temas en este foro No puede editar sus mensajes en este foro No puede borrar sus mensajes en este foro No puede votar en encuestas en este foro