Course for Drupal Quiz - Presentation

35
Building a Learning Management System in Drupal Assessment, accreditation, and certificates - Using Course and other Drupal modules! Devin Zuczek (djdevin) Module maintainer, DLC Solutions Scott Rigby (scottrigby) Module maintainer

Transcript of Course for Drupal Quiz - Presentation

Page 1: Course for Drupal Quiz - Presentation

Building a Learning Management Systemin Drupal

Assessment, accreditation, and certificates - Using Course and other Drupal modules!

Devin Zuczek (djdevin)Module maintainer, DLC Solutions

Scott Rigby (scottrigby)Module maintainer

Page 2: Course for Drupal Quiz - Presentation

Hi.

We'll be talking about:● Course module and the problem space it

addresses● Initial approaches● Current state of Course module

○ Functionality■ Course objects■ Crediting■ Certificates

○ API○ Interoperability

● Demo/Q & A

Page 3: Course for Drupal Quiz - Presentation

The problem

● We wanted the flexibility of Drupal as a CMS and framework

● Plus, the learning capabilities of○ Moodle

■ Quiz, Questionnaire, HTML○ SCORM○ LTI

Page 4: Course for Drupal Quiz - Presentation

The (first) solution

● Build a module to create/manage external courses in Drupal, using Course as a wrapper

● Use Moodle (or another 3rd party) as the outline

Problems!● No control over

workflow● Learner in iframe

the whole time● Many intrusions

into 3rd party software

● Hard to tie in Drupal content

Page 5: Course for Drupal Quiz - Presentation

But hey!

Drupal already has everything we need!

The ingredients:● Quiz● Webform● Content (CCK)● Book● Registration/Signup● Commerce/Ubercart● Certificate

We just need something to glue it all together and bake up an LMS!

Page 6: Course for Drupal Quiz - Presentation

Course 1.0 - The (better) solution

● An object-oriented, pluggable module. Let modules provide course objects

● Use Drupal as the outline○ Treat every object individually○ Automatic instance creation of objects

● Only get important pieces of data from course objects○ Delivering the object○ Reporting/Completions

● Let Drupal and Course manage the objects in a configurable course outline

Page 7: Course for Drupal Quiz - Presentation

Building a courseIt's easy, really.

Page 8: Course for Drupal Quiz - Presentation

Course outline UI

Page 9: Course for Drupal Quiz - Presentation

Object configuration

Page 10: Course for Drupal Quiz - Presentation

Object access

Page 11: Course for Drupal Quiz - Presentation

Workflow

Page 12: Course for Drupal Quiz - Presentation

Workflow

Page 13: Course for Drupal Quiz - Presentation

Learning materialAdding objects to the course outline, look at all the built-in support for existing Drupal modules

Page 14: Course for Drupal Quiz - Presentation

Basic content

1. Use course_content module to expose content types

2. Create nodes of a specific type through the course outline

3. Completion happens when a user visits the node

Page 15: Course for Drupal Quiz - Presentation

Interactive content

● Quiz○ Checks for passing

grade

● Webform○ Checks for

submission

● Poll○ Checks for vote

● Book○ Checks for view,

custom requirements planned

● Ubercart○ selling access to

courses ○ blocking progress

Page 16: Course for Drupal Quiz - Presentation

Content privacy

● Restricting course content to enrolled users who have access to the course object

● Content Access (content_access)

● Access Control Lists (acl)○ Together, these allow Course to grant and revoke

access to content based on enrollment in an object.

Page 17: Course for Drupal Quiz - Presentation

Attendance and Manual Steps

● Course supports Signup as a course object

● Let users sign up (enroll) for courses, then block progress past certain points

● Signup's built in attendance tracking completes the object, and allows the learner to proceed.

● Similar to Signup, we can block access with a manual course object that does not fulfill itself.

Page 18: Course for Drupal Quiz - Presentation

CreditingAwarding credit on course completion

Page 19: Course for Drupal Quiz - Presentation

Crediting

● With Course Credit, we can award credit to learners when they complete a course

● Support for○ Variable credit○ Multiple credit types○ Expiration○ Eligibility

Page 20: Course for Drupal Quiz - Presentation

Credit claiming

Type mapping

Course settings

Page 21: Course for Drupal Quiz - Presentation

Credit claiming

Learner claim screen

Page 22: Course for Drupal Quiz - Presentation

CertificatesAwarding pretty PDF certificates on course completion

Page 23: Course for Drupal Quiz - Presentation

Certificates

● Certificate module can generate a PDF certificate on course completion

● PDF generation on top of Print module

● Tokenized, node-based templates

● Certificate snapshots

● Map certificate based on profile fields, type of credit claimed, Rules support

Page 24: Course for Drupal Quiz - Presentation

Certificate mapping

Page 25: Course for Drupal Quiz - Presentation

Reporting

● Course has a built in report area that aggregates all module-provided reports

Page 26: Course for Drupal Quiz - Presentation

Course APICreating new course objects

Page 27: Course for Drupal Quiz - Presentation

Inheritance Tree (replace with better image)

Page 28: Course for Drupal Quiz - Presentation

API Example (course_quiz)

● Course objects declare their class, and context functions

Page 29: Course for Drupal Quiz - Presentation

API Example (course_quiz)

Module provides own context ->

Module tracks completion

Page 30: Course for Drupal Quiz - Presentation

APIExample

Example from course_quiz

Page 31: Course for Drupal Quiz - Presentation

SCORM/LTI and Interoperability

● cck_scorm○ D6 only, uses Moodle functions. Supported by

course_scorm

● Moodle○ Use course_moodle to create Moodle SCORM

objects

● Course LTI (course_lti)○ Provide course as LTI object (provider), use lti

module○ Consume other courses as requirements

Page 32: Course for Drupal Quiz - Presentation

Live demo!

Page 33: Course for Drupal Quiz - Presentation

Q & A

Class - any questions?

anyone… anyone…?

Page 34: Course for Drupal Quiz - Presentation

Credits

Commercially Supported Drupal LMS!

Course is the result of the efforts for many organizations to build a flexible learning platform using Drupal.

Page 35: Course for Drupal Quiz - Presentation

Resources

● Course module - D6, D7○ http://drupal.org/project/course○ http://drupal.org/project/course_credit○ http://drupal.org/project/course_relationships

● Certificate module○ http://drupal.org/project/certificate

● Moodle object support○ http://drupal.org/project/course_moodle

● LTI (coming soon)○ http://drupal.org/project/lti

● Quiz○ http://drupal.org/project/quiz