Publication Date

Spring 2017

Degree Type

Master's Project

Degree Name

Master of Science (MS)


Computer Science

First Advisor

Cay Horstmann

Second Advisor

Thomas Austin

Third Advisor

Ronald Mak


Learning Management System, Codecheck


Learning management systems (LMS) such as Canvas and Blackboard use Learning Tool Interoperability (LTI) as their main integration point for external learning tools. Each external tool provider has to implement LTI specifications or follow LTI standards that is a time consuming and complex process as there is no easy to follow specification available. Through this project, I have developed a system that follows the LTI specifications and integrates the CodeCheck autograder and interactive exercises with any LMS. I developed a Java based web app named LTIHub that acts as a mediator between LMS and any Learning Tool Provider. The LTIHub takes care of the LTI specification. The Learning Tool Provider needs to provide URL for each problem and a callback URL. This application stores the information related to the status of assignments and passes the information back to the LMS when all problems of an assignment are done by a student. I have prepared this report on the architecture of the software and analysis of students data during a semester of deployment.