# Crossing the Borders: Re-Use of Smart Learning Objects in Advanced Content Access Systems
## 5 Discussion and Conclusions  
In this paper, we presented and explored a standards-based approach for broader re-use of smart learning content across multiple advanced content access tools. Our project was motivated by the need for content exchanged between two advanced tools, an online textbook system (OpenDSA) and a personalized content access interface (Mastery Grids). Each system was a centrepiece of its own infrastructure, providing access to various kinds of smart learning content. While the content provided by OpenDSA and Mastery Grids was complementary, there was no possibility to exchange the content across the systems due to the use of proprietary integration approaches. To make our infrastructures open and transparent for multiple kinds of learning content, we explored use of LTI protocol. While designed for a different context--integrating various tools into learning management systems--LTI offered a common ground for connecting different integration architectures. Figure 11: Mastery Grids interface prepared for a Java course. The available smart learning contents are shown for the topic Strings including integrated CodeWorkout coding exercises. Figure 12: An instance of a CodeWorkout exercise accessed from the Mastery Grids interface. When a correct solution is submitted, the Mastery Grids progress visualization is updated (shown as a green circle). By leveraging LTI communication, we implemented a standards-based approach to broadly re-use smart content between OpenDSA and Mastery Grids. We have extended OpenDSA to support Python programming exercises and animations. OpenDSA had Java programming exercises and animations for various computer science topics for CS2 and above. It took years of effort by many collaborators across multiple institutions to develop those animations and exercises. Using the new infrastructure made it immediately possible to support Python textbooks using various Python exercises and animations from the ACOS server. It also opened the way to support a Java-based CS1 course through ACOS-based Java animations. Similarly, Mastery Grids previously was not able to provide good support beyond CS1 due to the lack of more advanced exercises. Leveraging the LTI-based approach, we were able to re-use a large number of CodeWorkout programming problems for CS2 courses. We believe that the approach presented in this paper will open a way to a much broader re-use of smart leaning content across various advanced-content access systems. We implemented two proof-of-concept scenarios to connect two specific kinds of smart learning content with two host systems. Our goal is to encourage other developers of educational systems to make their tools more inter-operable. Our systems are open source and so publicly available and we encourage developers to make use of our methods. Our solution is easily generalizable and can be applied for any kind of Web-based learning content. Moreover, as the number of LTI-compatible platforms increases, the amount of necessary modifications to support smart content re-usability gradually decreases. At the same time, it is important to note that the LTI-based solution is not ideal for highly interactive smart content. The LTI protocol reports the final result of user work, for example, correctness of a problem solution or a percentage of explored animation. While this approach is sufficient for simple cases of integrating smart content learning objects (such as programming exercises) with an LMS, more advanced architectures are needed to deliver detailed learner analytics and to provide communications within an ecosystem of collaborating tools. To support such cases, a combination of LTI with other standards such as xAPI or CALIPER is required. We plan to explore these combinations in future work. This work was performed with NSF support in the context of the SPLICE project ([[http://cssplice.org](http://cssplice.org)]([http://cssplice.org](http://cssplice.org))). SPLICE is focused on developing technical infrastructure for Computer Science Education research.