Content Integration Matt Turley Lead Software Instructor Content Integration - Objectives Identify the content communication standards supported by SuccessFactors Learning Expose the LMS Communication for learning and troubleshooting Identify common content integration issues Define COTS application best practices Practice common troubleshooting techniques 1
Content Integration - Introductions Name Organization Role Experience with SuccessFactors Learning Experience with other LMS COTS applications used in content development Goal for course Content Integration - Agenda Overview of AICC, SCORM, and SuccessFactors Tracking Functions Expose the LMS for direct interaction Common Content Integration Issues COTS Application Best Practices Content Troubleshooting Tips and Techniques The Content Integration Resources and Services 2
Content Integration AICC & SCORM AICC Aviation Industry CBT Consortium Direct HTTP Communication (HACP) Client-side API Communication SCORM Sharable Content Object Reference Model ADL took AICC s Client-side API Communication Model SCORM 2004 diverged from the original AICC standard Content Integration AICC & SCORM Comparing AICC and SCORM AICC - Direct HTTP Communication (HACP) SCORM 1.2 - Client-side API Communication AICC and SCORM 1.2 share the same data model. They only differ in their method of communication. SCORM 2004 diverged from AICC Still uses client-side API communication, but new data elements were added and many of the old data elements were renamed. Sequencing & Navigation standard added. 3
Content Integration AICC & SCORM Two parts of the AICC and SCORM 1.2 standards Importing Content to an LMS Content Communication with an LMS AICC/SCORM import files provide an easy way to set up content objects, items, content packages, and objectives, but do not do anything that cannot be done manually in the LMS (except SCORM 2004 import). The LMS does not reference the import files after the import process. Content Integration AICC Import AICC Import uses comma separated value files. *.crs Course Information *.cst Content structure *.des Descriptive information for content objects/objectives *.au Technical information for content objects *.ort Objective relation 4
Content Integration SCORM Import SCORM Import uses xml files. Main file is imsmanifest.xml Organizations section Course structure(s) Resources section Content object definition Supporting metadata SF LMS Import assistant imports a zip file. The imsmanifest.xml must reside at the root of the zip file. In LMS version 5.8 and greater, the imsmanifest should contain a metadata tag specifying the SCORM version (1.2 or 1.3). Content Integration SCORM Import SCORM bulk importer was introduced in LMS version 6.3 Allows admins to upload numerous courses at once. Content may be auto-deployed to the server. Can auto-generate items for imported content. 5
Content Integration AICC & SCORM AICC Communication Content Integration AICC AICC post comprised of the following parameters: Command putparam, getparam, exitau Version version of AICC standard Session_id this is the AICC_SID AICC_Data url-encoded list of all the name value pairs being sent to the LMS. http://lms.successfactors.com/plateau/pwsaicc?command=put Param&version=2.2&session_id=C66M423S&aicc_data=[core] %0D%0Alesson_location%3Dend%0D%0Alesson_status%3DI %0D%0Ascore%3D87%0D%0Atime%3D00:23:15 http://lms.successfactors.com/learning/pwsaicc?command=get Param&version=2.2&session_id=C66M423S 6
Content Integration AICC & SCORM SCORM Communication Content Integration SCORM SCORM content uses the following API methods: LMSInitialize ("") Opens communication session LMSSetValue ("name", "value") Sets a value to the API LMSGetValue("name") Retrieves data from the API LMSCommit("") Sends data from API to LMS LMSFinish("") Commits data and closes communication session LMSGetLastError("") Retrieves error code for last API call LMSGetErrorString(code) Retrieves error text LMSGetDiagnostic(code) Retrieves LMS-specific description 7
Content Integration SCORM 2004 Sequencing SCORM 2004 Introduced a new sequencing and navigation standard. This allows for complex rules that define how a learner may progress through the content. An LMS-provided navigation bar allows learners to navigate between multiple content objects without returning to the course structure. Sequencing rules are defined in the imsmanifest.xml SCORM 2004 support: Release 2 support introduced under v. 5.8. Release 4 support introduced under v. 6.2 Content Integration SF Tracking Functions Success Factors s Custom Tracking Functions Direct HTTP Communication Client-side API Tighter Integration with the LMS External Exam Information Question-level Data One-Way Communication from content to LMS Only 8
Content Integration SF Track vs. AICC & SCORM SF Tracking vs. AICC and SCORM AICC and SCORM Communicate at the Content Object level only SF Tracking Functions Communicate at the Content Object, Item, and Exam Iteration level AICC/SCORM and the SF Tracking Functions can be used in the same Content Object Content Integration SF Tracking What data does SuccessFactors LMS support? SF Tracking Functions 9
Content Integration Knowledge Check Name the content communication methods supported by SuccessFactors Learning. Which method communicates using the HTTP POST method? True or False: SuccessFactors tracking allows for multiple iterations of content scoring Content Integration LMS Exposure Content communications can be exposed in one of the following ways Content Objects that allow direct interaction with the LMS (e.g., Ostyn Diagnostic SCO) Content Test pages enabled in the LMS (LMS_ADMIN) /learning/user/onlineaccess/test/aicc_testpage.jsp /learning/user/onlineaccess/test/scorm12_testpage.html /learning/user/onlineaccess/test/scorm2004_testpage.html /learning/user/onlineaccess/test/tracking_function_test.jsp /learning/user/onlineaccess/test/url_question_testpage.jsp 10
Content Integration Potential Issues Potential issues with, and misconceptions about, content integration in SuccessFactors Cross-Domain Restriction Time Tracking Behavior Max Normal Behavior Objective Data Tracking AICC/SCORM-based Exam Behavior SCORM 2004 Restrictions Environment Related Issues Content Integration Potential Issues Cross-Domain Restriction 11
Content Integration Potential Issues Cross-Domain Restriction - Content is unable to access the SCORM or SF Tracking APIs when the content and the LMS do not share the same DNS. The cross-domain restriction is not a SuccessFactors specific issue. Must share the full DNS name (machine.something.com) not just the same domain (something.com) ADL wrote a paper outlining nine potential work-arounds http://www.adlnet.org/downloads/files/210.cfm Content Integration Potential Issues Cross-Domain Restriction SuccessFactors recommends the following solutions: Host the content on the same server as the LMS If you only have a few SCORM titles and a small learner population, this is the easiest route to take. Reverse Proxy Network based solution which requires no configuration in the LMS or the content. Discussed in detail in a white paper from ADL. SF Proxlet solution Fully LMS-based solution which requires some configuration in the LMS. 12
Content Integration Potential Issues Reverse Proxy Solution Content Integration Potential Issues SF Proxlet Solution 13
Content Integration Potential Issues Cross-Domain Restriction Some AICC content may also be subject to the cross-domain restriction. For AICC, the cross-domain restriction only applies when the content attempts to retrieve data from the LMS. For AICC, it is the responsibility of the content vendor to resolve the cross-domain restriction. A crossdomain.xml policy file can permit the following to act outside of the standard browser security model. Flash player JRE 1.6.0_10 + (no support for specific domains) MS Silverlight player Content Integration Potential Issues Time Tracking Behavior - AICC and SCORM time data is added to any previous content object time value in the LMS for the learner. Each time value post is processed independently. Multiple time value posts in a single content session can result in erroneously large time records in the LMS. Changed under the following builds to track only one time value per content session: LMS 5.8 sp4 p17 LMS 5.8 sp5 p5 LMS 6.1 PutParam time = 1 minute GetParam ExitAU 14
Content Integration Potential Issues Max Normal Behavior The total number of objects in an item structure that are allowed to be incomplete at any time. Max Normal accepts a value from 1-99 and is set at the Item level. If null, it defaults to 1. The completion status of all objects in an item structure are included in the Max Normal check. This includes exams. If exceeded, all AICC and SCORM 1.2 objects in the item will have their Lesson_Status and Score data elements locked. New default in Global Variables - 99 Content Integration Potential Issues Objective Data Tracking - AICC and SCORM Objective data is not tracked unless the objective exists in the LMS database and is associated with the content object. Objectives are automatically set up during the SCORM import process, but not during the AICC import process. The AICC or SCORM 1.2 objective ID value must match the LMS secondary objective value, not the autogenerated numeric objective ID. 15
Content Integration Potential Issues AICC/SCORM-based Exam Behavior AICC and SCORM-based exams are treated as content objects. Overall Score is tracked at the content object level. SCORM 2004 content can also track question-level data. The SF LMS has no concept of Failure for a content object. AICC and SCORM-based exams can not record a failed learning event. The SF LMS only stores AICC/SCORM exam data for the latest attempt. The SF LMS can not limit attempts. Content Integration Potential Issues SCORM 2004 Import SCORM 2004 content must be imported using the import assistant and must be associated with an item via the content package. The SF LMS does not offer an interface to edit or view the sequencing or navigation rules for a course. 16
Content Integration Potential Issues SCORM 2004 Administration The SF LMS only allows one SCORM 2004 package per item A SCORM 2004 package may be used with other objects in a course structure, but the SCORM 2004 package must be assigned under its own folder. It is not possible to edit a SCORM 2004 course structure in the LMS. If you need to make changes to a course, the changes must be made in the imsmanifest and reimported. Content Integration Potential Issues SCORM 2004 Run-time SCORM 2004 content must be suspended (cmi.exit=suspend) to have the data persist between sessions. SCORM 2004 Sequencing engine will autocomplete a sco if the completion status is unknown Can be prevented with sequencing rule completionsetbycontent = true 17
Content Integration Potential Issues SCORM 2004 Run-time When SCORM 2004 Control Mode Choice=false, users must use the Suspend button to maintain access to the item material. It is possible to hide the Exit button. Start/Resume navigation button introduced in LMS version 6.2. When SCORM 2004 Control Mode Flow=false (default setting), users can not use the Continue or Previous buttons to navigate between SCOs. It is possible to hide these buttons for each SCO. Buttons auto-hide in 5.8 SP5 + Content Integration Potential Issues Environment Related Issues Firewall issues with server-side AICC communication. Browser support for java applets (communication APIs). Load balancers and the AICC_URL SSL client certificate needed for server-to-server communication. Network latency related issues with dropped communication (use of the unload event) JRE navigation of Network Proxies 18
Content Integration COTS Tools COTS applications are the most common form of development. SuccessFactors recommends the following. Publish to AICC or SCORM standard (AICC preferred) Report Score and Interaction For exams built in COTS tools, do not send resume data Update manifest where appropriate Validate content in appropriate test suite Content Integration Troubleshooting The Content Integration Guide contains troubleshooting suggestions for commonly occurring AICC and SCORM issues. http://content.plateausystems.com/ ContentIntegration/index.htm?cso=1 19
icontent Purchase Third-Party Courses - Choose from thousands of topics including compliance, professional development and industry specific course titles. Manage Custom Content Hosting, deployment and validation of custom content. More information can be found at http://www.successfactors.com/learningmanagement/icontent/ 20