Browsing by Author "Seyam, Mohammed Saad"
Now showing 1 - 4 of 4
Results Per Page
Sort Options
- Disseminating Learning Tools Interoperability StandardsManzoor, Hamza (Virginia Tech, 2019-06-27)Until recently, most educational tools have worked in silos. If a teacher wanted her students to complete small programming exercises, record videos, and collaborate through discussion boards, three disconnected tools were probably needed. Learning Tools Interoperability (LTI) is a communication protocol that enables different learning tools to talk to each other and share scores with a Learning Management System (LMS). While most commercial LMS now support LTI, most educational software developed by small research efforts do not. This is often because of the lack of resources needed to understand the working of LTI and the process of using LTI in their applications. Our aim is to encourage the use of LTI within the CS Education community. We have developed tutorials that include example applications. We also provide a use case of how LTI is implemented in the OpenDSA eTextbook system. As another use case, we have enabled auto-grading of Jupyter Notebook assignments by providing immediate feedback to students and updating scores to the Canvas gradebook. We provide a Jupyter plugin to upload notebook files to the Web-CAT auto-grading system. We integrate Aalto University's ACOS content into OpenDSA as a third use case.
- Improving the Interoperability of the OpenDSA eTextbook SystemWonderly, Jackson Daniel (Virginia Tech, 2019-10-07)In recent years there has been considerable adoption of the IMS Learning Tools Interoperability (LTI) standard among both Learning Management Systems (LMS), and learning applications. The LTI standard defines a way to securely connect learning applications and tools with platforms like LMS, enabling content from external learning tools to appear as if it were a native part of the LMS, and enabling these learning tools to send users' scores directly to the gradebook in the LMS. An example of such a learning tool is the OpenDSA eTextbook system which provides materials that cover a variety of Computer Science-related topics, incorporating hundreds of interactive visualizations and auto-graded exercises. Previous work turned OpenDSA into an LTI tool provider, allowing for OpenDSA eTextbooks to be integrated with the Canvas LMS. In this thesis, we further explore the problem of connecting educational systems while documenting challenges, issues, and design rationales. We expand upon the existing OpenDSA LTI infrastructure by turning OpenDSA into an LTI tool consumer, thus enabling OpenDSA to better integrate content from other LTI tool providers. We also describe how we expanded OpenDSA's LTI tool provider functionality to increase the level of granularity at which OpenDSA content can be served, and how we implemented support for several LMS, including challenges faced and remaining issues. Finally, we discuss the problem of sharing analytics data among educational systems, and outline an architecture that could be used for this purpose.
- Interactive Multimedia in Digital Courses: Design and Evaluation of Concept Maps Glossary and Narration SupportElgendi, Ehsan Sami Ismaiel Ali (Virginia Tech, 2019-07-09)Multimedia content, e.g., sound files, interactive demos, and video files, has been widely used in digital courses to provide an easy to use format and to emphasize the ideas. In this work, we address aspects of generating multimedia contents automatically in digital courses. In particular, we focus on two types of automatically generated multimedia: interactive glossaries and sound files. Glossaries play a major role in enhancing students' comprehension of the course core concepts. Glossary terms have complex interrelationship that cannot be fully illustrated by standard approaches, e.g., including all the terms as a linear, alphabetized list. To overcome this limitation, we introduce an interactive design for the glossary terms using concept maps. Glossary terms are visualized as nodes in graphs and their relationships are included on the edges. We implement these concept maps within the OpenDSA e-textbook system. A concept map associated with the selected term is generated on demand. We evaluate the effectiveness of our design by comparing student use of our concept-map based glossary to the traditional alphabetized list. We have designed new exercises that target the comprehension of the glossary terms to make students familiar with the concept maps. Our other work generates sound files automatically to supplement text narration in slide shows. This is made feasible by the widespread availability of text-to-speech generators in web browsers. To this end, we designed an interactive narration tool and integrated it into the OpenDSA library. In this way, all slide shows automatically have their text augmented with narration.
- Multifaceted Approach for Teaching Mobile Software Development: Class Experiences With Lectures, Tutorials, and Pair ProgrammingSeyam, Mohammed Saad (Virginia Tech, 2017-04-17)The currently mainstream mobile application development became part of several programming classes, and courses are being developed focused on mobile app development. There are fundamental differences in programming topics for mobile, including the small screen and finger-based interactions, connectivity using different communication channels, and a large number of sensors. Because of these differences, there is a need to explore different approaches to teach the concepts of mobile development. Integrated approaches and collaborative learning are key to handle the multi-platform environment of mobile development and the diversity of its devices. One practice that has been used in educational contexts for collaborative learning is Pair Programming (PP); an approach that features two developers working on the same development task. Since it became popular in the 1990s, Pair Programming (PP) has been used by developers who worked on desktop and web applications. During the past two decades, PP has been studied in both industrial and classroom settings. Several studies have shown that PP is a pedagogical tool that can help students enhance their productivity and performance. However, PP has not been studied for mobile development courses before. With the challenging nature of mobile development topics, we saw potential benefits for pair-based learning. To cover the challenges of mobile development, we developed an approach that integrates Lectures, hands-on Tutorials, and in-class Pair Programming (PP) sessions (the LTP approach). Although PP has been studied previously in classroom settings, LTP provides an adapted version that better fits the requirements of mobile application development. Integrating PP as a core element of mobile development classes aims at giving opportunities to students to collaborate, share experiences, and solve problems together. Moreover, providing multiple teaching approaches ensures that students would benefit from the variety of education methods. The LTP approach aims at helping Computer Science (CS) educators to develop curricula and manage classes for teaching mobile app development.