Drupal compatibility with Flash and research in education

gradStudent - March 16, 2009 - 19:37

Hello all,

We conduct research in education and public health using interactive educational modules developed in Flash. We store in a database a variety of information collected from the Flash modules and from surveys that accompany the research projects. The stored information is used to personalize the delivery and assess the participant's progress/attainment. Supplementary educational tools such as polls and surveys are added in and used as necessary. We are considering integrating our system into a Content Management System and have looked into Drupal and Moodle. The Flash modules are not SCORM compliant yet but we are thinking about moving in that direction. We have been trying to assess the two platforms (Drupal and Moodle) based on a few issues that we can think of: (1) interactive interface design, (2) user screening/eligibility and information management, (3) user activity logging (custom if necessary), (4) system scalability, (5) SCORM compliance, etc. Do you have insight as to which platform may be a better fit for a research project like ours? We would really appreciate any form of suggestion. direction in terms of finding the best fit.

Thanks.

Our solution...

ezraw - March 17, 2009 - 18:30

We are doing something very similar, and I can give you insight into what we did. To answer your questions:

1. Drupal wins hands down. Moodle can be themed, but it's much less flexible than Drupal, especially if you need to break out of the default layout. Moodle is also bizarre in some of its interfaces, and fails my basic usability tests in other places. Once you learn it, its OK, but we had to modify things to make it work for us. There are some interfaces there that I would never put in front of a client. It's designed for educational institutions and their users may have no other choice :-)

2. Not sure what you mean by this.

3. Both applications provide logging and are extensible.

4. Both systems can scale and there are case studies, I think more on the Drupal side.

5. There is no SCORM module for Drupal, although I have seen some discussions of building one. Not sure the latest status.

Our solution was to use both. Drupal for content, user management and registrations, Moodle for SCORM delivery, testing and reporting.

Database

Both application's tables are installed in the same database and prepended with either "Drupal_" or "Moodle_" Using the same database is not strictly required, but made development much easier.

Views of Moodle data are created, and prepended with "Drupal_ " that allow Drupal to easily access the Moodle tables to pull data.

Data sharing

We make extensive use of the Views module and database views. Database views are created of course data in Moodle. That data is then Views-enabled allowing the creation of user and course dashboards and reports in Drupal.

Moodle also directly creates nodes in Drupal. Each time a course is created in Moodle, a course node is also created in Drupal. The course node contains fields that map to taxonomies and organic groups so that the course appears in the appropriate location. The data is purposely set up to go one way from Moodle > Drupal.

Single Sign on

Moodle uses external database authentication and points to the Drupal databases. Whenever a non-logged in user comes to moodle, they are redirected to the log-in page. A script on the log-in page reads their cookie and validates the data in it by doing a database lookup on the Drupal database. If the cookie is valid, a Moodle account and/or session is created for the user. Users are prohibited from logging directly into Moodle, they must go in the front door.

Using the same domain or subdomains of the main domain is required to allow for Single Sign On. There is another SSO modules out there that uses OpenID which would get around this, I believe.

Roles are mapped from Drupal to Moodle, and permissions must be set on each side.

Event registration

Event registration uses the sign-up module with the course node as the parent. Each sign-up has a course as a parent, and thus sign-ups are associated with a specific course.

User interface

We use iframes in Drupal to access Moodle courses within the Drupal interface. The course node accepts an argument ("visit") that activates the iframe and pulls in the Moodle course associated with that coursenode. Using an iFrame is not required, but allows for less theming on the Moodle side and for the navigation to be persistant across both applications.

There is a Moodle module available for Drupal, but it didn't meet our needs, so we rolled our own. We're trying to get something released soon, but since our work is fairly client specific, it's taking a while to clean things up. Let me know if you would like to learn more.

this is amazingly helpful.

gradStudent - March 17, 2009 - 21:25

this is amazingly helpful. thank you very much for the elaborate answer! a mix system might be the best solution indeed, we'll look into some of the things you mentioned and will let you know if there is more questions. once again, i really appreciate your help.

best

 
 

Drupal is a registered trademark of Dries Buytaert.