Features & Development

Blackboard integration

Blackboard integration

by Tim Prescott -
Number of replies: 6
I’m wanting to integrate WeBWorK with Blackboard on my campus.  The best option for this appears to be https://github.com/aubreyja/webworkBuildingBlock, but this was last updated two years ago, and is apparently not working with our Blackboard installation (9.1 sp 14).  Is there anyone currently using this building block?  Is there a more up to date version?

This building block has been mentioned on the forums before.  It looks like the most recent mention is from last summer, but the most recent comment from the building block’s author is two years earlier (and it appears he has since changed institutions).

https://github.com/openwebwork lists a Moodle integration.  Would we also want to host an “official” Blackboard integration there?

In reply to Tim Prescott

Re: Blackboard integration

by Michael Gage -
Others can chime in but I don't believe the Blackboard building block is being used anywhere anymore, certainly it is not used widely.

A good substitute which will give you all or most of the features of the Moodle/WeBWorK wwassignment link is to use LTI which is now supported by most LMSs.


If you use, this post back to the forum to let us know how it worked out for you.
In reply to Michael Gage

Re: Blackboard integration

by Tim Prescott -
We have indeed been setting up the LTI.  We've gotten authentication working, but grading seems to be having trouble.  It seems that students are always seeing
·        No LIS Outcome Service URL. Unable to report grades to the LMS. Are external grades enabled in the LMS? at /opt/webwork/webwork2/lib/WeBWorK/Authen/LTIAdvanced/SubmitGrade.pm line 60.
·        No LISSourceDID! Some LMS's do not give grades to instructors, but this could also be a sign that external grades are not enabled in your LMS. at /opt/webwork/webwork2/lib/WeBWorK/Authen/LTIAdvanced/SubmitGrade.pm line 91.

Even though "Allow configured tool providers to post grades" is set to "Yes" in Blackboard.  Do you know how we would be able to diagnose the problem?

By the way, I had to read http://webworkgoehle.blogspot.com/2016/03/webwork-lti-grading.html fairly closely before I realized that "Course Grade Mode" or "Homework Grade Mode" would be a Webwork-wide setting.  Is that correct?  Would a course-wide setting be achievable in a future release?
In reply to Tim Prescott

Re: Blackboard integration

by Michael Gage -
I believe that course-wide setting is possible.  One sets the 
variable $LTIGradeMode = '' in the course.conf file.  (One needs admin
privileges in the course to access this file from the web. ). This should override the setting in authen_LTI.conf although I haven't checked this. 

Setting $debug_lti_parameters = 1;  in authen_LTI.conf adds a number of debug messages indicating the data that is being passed from and back to Blackboard.  This may help with the diagnosis.  It may be that the key words used by your Blackboard and the ones used by WeBWorK don't match -- there is still some variability in setting on the correct key words.

Hope this helps.
In reply to Michael Gage

Re: Blackboard integration

by Danny Glin -
I did some basic testing of setting this variable in course.conf, and it appears to work at the course level.
In reply to Michael Gage

Re: Blackboard integration

by Tim Prescott -
We’ve gotten the grading LTI working with Blackboard (the trickiest thing is we needed Tomcat to redirect webwork.und.edu to https://webwork.und.edu/webwork2).

There is a notable exception.  One of my courses isn’t listening to the $LTIMassUpdateInterval.  The odd thing is that we have $LTIGradeOnSubmit set, and that is being followed.  So the LTI is able to work.  And a different course of mine is listening to the same $LTIMassUpdateInterval, and updating on the scheduled intervals (and using $LTIGradeMode = ‘homework’ in its course.conf - thanks).  And $debug_lti_parameters = 1; shows both courses are receiving the same information.

Do you know why a single course would not update on the scheduled $LTIMassUpdateInterval, even though it is able to send grades over the LTI?
In reply to Tim Prescott

Re: Blackboard integration

by Danny Glin -
The mass update is triggered by visiting a course page.  If no one visits a course page, then WeBWorK will never check if it is due for a mass update.

Has someone logged in to the course that is not updating?  If not, then that would explain why it's not happening.