Learning Management Systems


Sphere Engine for Education allows programming problems to be embedded in learning management systems (e.g. Canvas, Blackboard, Moodle). More precisely, it allows you to integrate the Sphere Engine's Problems module with learning management systems (LMS). Sphere Engine Problems is a service that allows you to manage programming problems and automatically verify solutions to these problems. Detailed information about the Sphere Engine Problems module can be found in the introduction.

After integration, it is possible to supplement the materials provided by the LMS platform with interactive programming problems that can then be solved by students.

Programming problems can be used as:

  • homework,
  • exercises for lessons or lectures,
  • an additional task for active students,
  • a contest assignment.

More information about the possibilities of Sphere Engine for Education (including access to the demo version of the system) can be found on education.sphere-engine.com.

See how it works

The following programming problem has been presented in the student mode. In the teacher mode, additional configuration features, as well as the ability to view the submissions, are available. Demo version available on education.sphere-engine.com presents the programming problem in the teacher mode.

Does my system allow for integration?

The only requirement that must be met by the LMS is to have support for the LTI standard. Most of today's learning management systems implement this standard, and thus they are compatible with Sphere Engine for Education.

The most popular systems that support integration:

D2L
https://www.d2l.com

The description of how to configure integration through the LTI interface is available to members of the D2L community. After logging in, the information can be found by going through the following subpages: Documentation > 10.1 > Learning Environment > LTI.

Generating configuration data

Creating a new integration

First, in the Sphere Engine panel, create a new set of configuration data for the LMS system that will enable integration with the Sphere Engine for Education in a way compliant with the LTI standard.

In the Sphere Engine panel on the Menu > Problems > Education page (link: list of configurations) click the button Add a new LMS (1). This will generate the configuration data for the LTI integration: customer key and shared secret. After clicking the configuration name (2) that appeared on the list, we will be transferred to the page with detailed information.

Fig. 1. List of configurations
Fig. 2. New configuration on the list

Note: The In use / Unused label (3) indicates whether the given configuration has been used for configuration in the LMS. This information can be useful for identifying configurations that can be safely removed.

Configuration data

The SE panel's page with detailed information (Menu > Problems > Education > #ID CODE) presents, among others, configuration data needed for integration with the LMS system:

  • consumer key (1),
  • shared secret (2),
  • tool URL (HTTP (3) or HTTPS (4)).
Fig. 3. Configuration data

Some LMS (e.g. Canvas and Moodle) allow for an automated configuration process based on data in the XML format. The XMLconfig tab (5) contains all the information required to complete the configuration procedure.
The XML data needed for the automated configuration can be used in two ways:

  • through a dedicated URL (6),
  • by copying it directly from the text field (7).
Fig. 4. XML data for automated configuration
Fig. 5. Additional settings

Note: We recommend using a separate configuration for each LMS. The use of a common configuration for many systems is possible after deselecting the Safe mode option (8).

Warning: Configuration removal procedure (delete this LMS button (9)) is irreversible. Sphere Engine for Education will become inactive in all LMS that use the deleted configuration data.

LMS Configuration

Setting up integration with Sphere Engine for Education in an LMS is similar for all systems. Key for configuration are the parameters discussed in the previous section (mainly the customer key and shared secret parameters).

Note: Due to the dynamic development of LMS, which often involves a reorganization of the user interface, the following descriptions may slightly differ from the actual appearance of the LMS in their newer versions.

Moodle

Integration with the system (global preconfiguration)

The Moodle system offers the ability to configure an external tool (e.g. Sphere Engine for Education) in such a way that the programming problem becomes globally available in the list of resources. The settings you will need for this process require administrator rights and are available in Site Administration > Plugins > Activity modules > External tools > Manage tools. If it's impossible to use the administrator's rights, there is an alternative configuration method that allows you to use Sphere Engine for Education through the configuration of the course.

Moodle provides an automated configuration process. In Moodle go to the Tool URL field (1) and enter the URL available in the appropriate field of the XML Configuration tab (Sphere Engine) and press the Add button (2) (Moodle). Then, for security reasons, it is necessary to enter the consumer key (3) and shared secret (4) data.

Fig. 6. Adding LTI configuration in the Moodle system

After successful configuration, a Sphere Engine for Education item (5) should appear on Moodle's tool list. After opening the tool's settings (6), it is possible to set a configuration for which Sphere Engine for Education will be present when adding resources. To do this, select Show in activity chooser and as a preconfigured tool for theTool configuration usage option (7). From now on, when adding a resource to the course, it will be possible to select a programming problem and the configuration data will be downloaded automatically based on the data provided during the preconfiguration.

Fig. 7. Editing the LTI configuration in Moodle
Adding a programming problem to the course

When adding a resource to the course, select the Sphere Engine for Education item (1) and confirm the selection with the Add button (2). You will be able to configure the resource in the next step.

Fig. 8. The "Sphere Engine for Education" resource available directly from the resource list

In this case (i.e. selecting a preconfigured resource), all you have to do is specify the following parameters:

  • the name of the resource (3),
  • privacy settings (4) (note: it is recommended to agree to disclose the username, e-mail address and provide the right to send grades).
Fig. 9. Configuration of the resource

After confirming the configuration of the resource with the Save and display button, we will be transferred to the configuration of the programming problem. Approving changes with the Save and return to course button will take you back to the list of resources attached to the course (configuration of the programming problem will be available later).

Integration from within the course (without global preconfiguration)

Although preconfiguring integration with the Sphere Engine for Education tool is

  • from the point of view of the course administrators - the most convenient, this method is not always available (or requires waiting for the system administrator to act).

Integration with Sphere Engine for Education can be done without administrator rights, through the course settings. When adding a resource, select the External tool item (1) and confirm the selection with the Add button (2).

Fig. 10. Adding an unspecified tool

Further configuration is analogous to global preconfiguration.

Canvas

Before using Sphere Engine for Education in Canvas, you must create a configuration in the course settings (1). In the Apps section (2) a +App button is available (3). Clicking it will allow you to configure Sphere Engine for Education.

Fig. 11. Adding an application
Fig. 12. Configuring the application

Fill in the fields in the dialogue box that appears. The Configuration Type field (4) allows you to choose one of three variants, all of which are supported by Sphere Engine for Education:

  1. manual entry (all configuration parameters must be entered manually),
  2. configuration using the file indicated by the URL (based on the URL provided in the XML config tab in the Sphere Engine system),
  3. configuration using data in the XML format (based on the data displayed in the XML config tab in the Sphere Engine system).

When choosing one of the automated configuration types (option 2 or 3), it will be necessary (for security reasons) to provide two parameters:

  • customer key (5),
  • shared secret (6).
Using a programming problem in a course

In Canvas, a programming problem can be attached to an assignment or module. Both scenarios are similar, therefore we will limit ourselves to managing the assignment component. To do so, go to the assignments list (1) and add a new assignment with the + button (2). Next, select the External Tool option in the dialogue box that appears (3) and go to the detailed settings using the More Options button (4).

Fig. 13. Adding an assignment

On the advanced settings page, simply enter the name of the assignment (5) and select the previously configured application by clicking the Find button (6).

Fig. 14. Configuration of the assignment

In the displayed list of applications, select the Sphere Engine for Education item (7) and confirm the selection with the Select button (8).

Fig. 15. List of applications

After returning to the main settings, the configuration is complete and can be confirmed with the Save or Save and Publish button.

Schoology

Before using Sphere Engine for Education in Schoology, you must create a configuration in the course settings. In the Course Options section (1) go to External Tool Providers (2).

Fig. 16. Adding the configuration

After clicking the Add External Tool Provider button (3), you will be able to configure the Sphere Engine for Education application.

Fig. 17. Configuration parameters

Fill in the fields in the dialogue box that appears. The Configuration Type field (4) allows you to choose one of two variants - both are supported by Sphere Engine for Education:

  • manual (all configuration parameters must be entered manually),
  • configuration using data in the XML format (based on the data displayed in the XML config tab in the Sphere Engine system).

When choosing an automated configuration (by providing XML data), you will only need to enter two parameters:

  • customer key (5),
  • shared secret (6).
Using a programming problem in a course

In Schoology, a programming problem can be included in the course as a so-called "material" after clicking the Add Materials button (1). Select an item from the available list Add File / Link / External tool (2).

Fig. 18. Adding a programming problem to the course

In the dialogue box that appears, select the External tool item (3). The next dialogue box is used to configure the tool. We add the programming problem to the course by selecting the Sphere Engine for Education option from the Tool provider list (4). In addition, the title of the attached material should also be specified (in the Title field (5)). Other configuration options are set automatically based on the data provided during the preconfiguration.

Fig. 19. Problem settings in the course

Note: Selecting the additional option called Enable grading (6) allows Sphere Engine for Education to send grades to the gradebook.

Other systems

The LTI standard is supported by most modern LMS. If you need confirmation of Sphere Engine for Education's compatibility with your system or have a configuration problem, please contact us at hello@sphere-engine.com.