• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 33
  • 3
  • 3
  • 3
  • 2
  • 2
  • 1
  • 1
  • 1
  • Tagged with
  • 94
  • 94
  • 94
  • 25
  • 20
  • 18
  • 14
  • 13
  • 13
  • 12
  • 12
  • 12
  • 10
  • 10
  • 9
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
21

Design and Implementation of OpenDSA Interoperable Infrastructure

Shahin, Hossameldin L. 09 August 2017 (has links)
OpenDSA is a system for creating rich eTextbooks that combine quality text with visualizations and interactive, auto-graded exercises. As OpenDSA gains recognition, its use increases each year. This mandates a scalable, reliable, and sustainable infrastructure to accommodate the fast-growing demand for OpenDSA access. We implemented OpenDSA-LTI, an interoperable infrastructure which transforms OpenDSA from a standalone, self-contained eTextbook to an integrated learning tool communicating with a Learning Management System (LMS) through the Learning Tool Interoperability (LTI) protocol. OpenDSA-LTI delivers OpenDSA content and interactive materials to students through a reliable and secure LMS interface. LTI integration encourages OpenDSA adoption by providing easy, intuitive tools that help instructors to build and generate OpenDSA eTextbooks in their LMS courses. OpenDSA-LTI allows OpenDSA content developers to take advantage of various tools already provided by the LMS instead of reproducing these through their own proprietary services. The OpenDSA-LTI extendable design allows for adding new LTI-compliant exercises to OpenDSA books. This changes OpenDSA developers' efforts to searching for learning tools instead of reimplementing them. As an example, instead of maintaining the original OpenDSA programming evaluation engine, we could easily replace it with the Code Workout online drill-and-practice system. Since its launch in August 2016 until June 2017, OpenDSA-LTI has hosted 36 active courses offered by 25 different universities in 6 countries, 41 instructors have used OpenDSA-LTI to host their courses on the Canvas LMS, and the system has 2,729 registered students. / Master of Science
22

Multifaceted Approach for Teaching Mobile Software Development: Class Experiences With Lectures, Tutorials, and Pair Programming

Seyam, Mohammed Saad 17 April 2017 (has links)
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. / Ph. D.
23

Virtual Teaching Assistant to Support Students' Efforts in Programming

Manniam Rajagopal, Mukund Babu 14 August 2018 (has links)
Novice programmers often find learning programming difficult. They suffer from various misconceptions and difficulties in understanding the subject. The overall experience with programming can be negative for many students. They may feel isolated in the programming environment and think that programming is difficult for them. Many schools use automated grading tools to process student work and provide them with early feedback. Web-CAT, an open-source software system that is widely used by many universities, is an example of such an automated grading tool. We have developed a Virtual Teaching Assistant for Web-CAT, called Maria, who can support the students to help alleviate some of the negative emotions towards programming. We have used an animated pedagogical agent as the virtual assistant as certain characteristics of the agent can help with the students' perception about the virtual teaching assistant. Often, students have a fixed mindset about programming. But it is easy to master programming with practice. To promote a growth mindset, Maria also provides feedback recognizing the effort of the student in addition to the performance-oriented feedback of the students' programs. Maria can also provide motivating or encouraging comments to continue working on the assignment to get a good score. Maria can also provide information about the various errors displayed in student feedback. / Master of Science / Beginners often find learning computer programming difficult. They may suffer from various misconceptions and difficulties in understanding the subject. Also, there can be a negative experience surrounding programming for many students. They may feel isolated in the programming environment and think that programming is difficult for them. Many schools use automated software tools to grade student programs and provide them with early feedback. Web-CAT, a software system that is widely used by many universities, is an example of such an automated grading tool. We have developed a Virtual Teaching Assistant to reside within Web-CAT, called Maria, who can support the students to help alleviate some of the negative emotions towards programming. We have used an animated human-like character, known as pedagogical agent, for Maria as it is widely use in pedagogy to help students. Often, students think programming is an innate skill and it is difficult to acquire. But it is easy to master programming with practice. To encourage students to continue working, Maria also provides feedback recognizing the effort that the student has put in towards completing the programming assignment or project. In certain cases, Maria can also provide motivating or encouraging comments to the students to help them continue working on the assignment. Maria can also provide explanation about the various programming errors that students encounter during their submission to Web-CAT.
24

Improving and Evaluating Maria: A Virtual Teaching Assistant for Computer Science Education

Finch, Dylan Keifer 27 May 2020 (has links)
Many colleges face a lack of academic and emotional support for their computer science students. Previous research into this problem produced Maria, a virtual teaching assistant (TA). This initial version of Maria was able to answer student questions, provide error explanations, and praise students for effort on programming assignments. This research continues work on the Maria project with three design goals: (1) reducing obstacles to use of Maria, (2) allowing Maria to provide better academic support, and (3) allowing Maria to provide better emotional support (with less focus on this goal). Improvements were made to the initial version of Maria, including increasing the number of questions that Maria could answer, allowing Maria to suggest questions for students to ask, and adding longer back-and-forth dialogs between Maria and students. Following this, Maria was deployed to students for an evaluation. The evaluation revealed that certain features were popular (including the longer dialogs and easier access to error explanation) and that Maria was unable to provide relevant answers to many questions asked by students. Using data from the evaluation, more improvements were made to Maria to address some of her shortcomings and build on her popular features. Answers to more questions were added for questions about testing, general knowledge questions, questions about many other topics. Many of these new answers used the popular back-and-forth dialog feature. Additionally, this research discusses a system that could be used to automate the creation of new answers for Maria or any virtual teaching assistant using crowdsourcing. / Master of Science / Many colleges face a lack of academic and emotional support for their computer science students. Previous research into this problem produced Maria, a virtual teaching assistant (TA). This initial version of Maria was able to answer student questions, provide error explanations, and praise students for effort on programming assignments. This research continues work on the Maria project with three design goals: (1) reducing obstacles to use of Maria, (2) allowing Maria to provide better academic support, and (3) allowing Maria to provide better emotional support (with less focus on this goal). Improvements were made to the initial version of Maria, including increasing the number of questions that Maria could answer, allowing Maria to suggest questions for students to ask, and adding longer back-and-forth dialogs between Maria and students. Following this, Maria was deployed to students for an evaluation. The evaluation revealed that certain features were popular (including the longer dialogs and easier access to error explanation) and that Maria was unable to provide relevant answers to many questions asked by students. Using data from the evaluation, more improvements were made to Maria to address some of her shortcomings and build on her popular features. Answers to more questions were added for questions about testing, general knowledge questions, questions about many other topics. Many of these new answers used the popular back-and-forth dialog feature. Additionally, this research discusses a system that could be used to automate the creation of new answers for Maria or any virtual teaching assistant using crowdsourcing.
25

Code Reading Dojo: Designing an Educationally-oriented Mobile Application Aimed at Promoting Code Reading Skills

Ghaed, Zahra 07 June 2017 (has links)
In recent years, much attention has been directed to the use of educational games for learning computer science concepts. The motivation of game-based learning with positive experience has been deeply studied in the literature, but game design for improving code reading skills have much room for improvement. Being good at the reading code is important to a professional developer. To address this issue, we defined a new educationally-oriented mobile game application, aimed at promoting the development of code reading skills in a new and fun way. The strategy of this game is to find errors in pieces of codes. At each level, students should find all syntactic and semantic errors in the code in a certain time in order to advance to the next level. Of the numerous programming languages, we chose Java because it is one of the most popular programming languages. In many colleges, Java plays a major role in introductory courses. Our vision is to allow instructors to employ the game in their introduction to programming in Java course. In addition, we hope it could be adapted for use in introductory courses using different programming languages. Data collected during the project helps us evaluate the impact of game-based learning on code reading in programming languages. We asked undergraduate students at the department of computer science at Virginia Tech to play with the game during Spring 2017 semester. The collected data analyzed, and students believe that Code Reading Dojo improves their code reading skills in Java and overall programming ability, in additions to help them find errors in their own program. / Master of Science
26

Computer Science Project Courses : Contrasting Students’ Experiences with Teachers’ Expectations

Wiggberg, Mattias January 2010 (has links)
Including small or large project courses is widely recognized as important in preparing computer science students for a professional career. Typical examples are the capstone courses, which often are seen as the jewel in the crown since this is where students will bring their previous knowledge and skills together to show mastery of their craft. These courses are, however, quite complex with often contradictory ideas about how to actually run them in order to reach the learning objectives. This thesis deals with the contrast between students’ experiences and teachers’ expectations of such courses. The research presented in this thesis contributes to the field of knowledge of computer science project courses by investigating processes that are of importance in relation to the desired practices that the students’ should experience. A method is developed, based on the theory of communities of practice and an identification of key features in project work, for evaluating project courses in terms of setting up a learning environment suitable for its learning objectives. The method is focused on capturing the students’ experiences, which then are mapped onto desirable outcomes, as seen from the teachers’ point of view and expressed in terms of communities of practice theory. The result of the analysis is stories capturing the strengths and deficiencies that can be observed in computer science project courses. Key findings are that rewarding learning environments are not automatically created by following the project model; unclear goals and priorities, for example the choice between focusing on the result of the project or the learning process, can confound, or hinder, the learning outcome. Students may experience a difficult choice between using the project course as a way to become more specialized in a particular area or to develop skills that broaden their knowledge. The method developed throughout the thesis is a result in itself, allowing academics and institutions to reason systematically about the aims and learning outcomes of project coursework. The strength of the method lies in the insight gained from combining the concept of communities of practice with a series of studies that identify key features of project courses, in order to reveal and explain why students’ experience processes and learning outcomes in particular ways.
27

Learning computer systems in a distributed project course : The what, why, how and where

Berglund, Anders January 2005 (has links)
Senior university students taking an internationally distributed project course in computer systems find themselves in a complex learning situation. To understand how they experience computer systems and act in their learning situation, the what, the why, the how and the where of their learning have been studied from the students’ perspective. The what aspect concerns the students’ understanding of concepts within computer systems: network protocols. The why aspect concerns the students’ objectives to learn computer systems. The how aspect concerns how the students go about learning. The where aspect concerns the students’ experience of their learning environment. These metaphorical entities are then synthesised to form a whole. The emphasis on the students’ experience of their learning motivates a phenomenographic research approach as the core of a study that is extended with elements of activity theory. The methodological framework that is developed from these research approaches enables the researcher to retain focus on learning, and specifically the learning of computer systems, throughout. By applying the framework, the complexity in the learning is unpacked and conclusions are drawn on the students’ learning of computer systems. The results are structural, qualitative, and empirically derived from interview data. They depict the students’ experience of their learning of computer systems in their experienced learning situation and highlight factors that facilitate learning. The results comprise sets of qualitatively different categories that describe how the students relate to their learning in their experienced learning environment. The sets of categories, grouped after the four components (what, why, how and where), are synthesised to describe the whole of the students’ experience of learning computer systems. This study advances the discussion about learning computer systems and demonstrates how theoretically anchored research contributes to teaching and learning in the field. Its multi-faceted, multi-disciplinary character invites further debate, and thus, advances the field.
28

Novice Programming Students' Learning of Concepts and Practise

Eckerdal, Anna January 2009 (has links)
Computer programming is a core area in computer science education that involves practical as well as conceptual learning goals. The literature in programming education reports however that novice students have great problems in their learning. These problems apply to concepts as well as to practise. The empirically based research presented in this thesis contributes to the body of knowledge on students' learning by investigating the relationship between conceptual and practical learning in novice student learning of programming. Previous research in programming education has focused either on students' practical or conceptual learning. The present research indicates however that students' problems with learning to program partly depend on a complex relationship and mutual dependence between the two. The most significant finding is that practise, in terms of activities at different levels of proficiency, and qualitatively different conceptual understandings, have dimensions of variation in common. An analytical model is suggested where the dimensions of variation relate both to concepts and activities. The implications of the model are several. With the dimensions of variation at the center of learning this implies that when students discern a dimension of variation, related conceptual understandings and the meaning embedded in related practises can be discerned. Activities as well as concepts can relate to more than one dimension. Activities at a higher level of proficiency, as well as qualitatively richer understandings of concepts, relate to more dimensions of variation. Concrete examples are given on how variation theory and patterns of variation can be applied in teaching programming. The results can be used by educators to help students discern dimensions of variation, and thus facilitate practical as well as conceptual learning.
29

Interaction of instructional material order and subgoal labels on learning in programming

Schaeffer, Laura M. 07 January 2016 (has links)
Expository instructions, worked examples, and subgoal labels have all been shown to positively impact student learning and performance in computer science education. This study examined whether learning and problem solving performance differed based on the sequence of the instructional materials (expository and worked examples) and the presence of subgoal labels within the instructional materials. Participants were 138 undergraduate college students, age 17-25, who watched two instructional videos on creating an application in the App Inventor programming language before completing several learning assessments. A significant interaction showed that when learners were presented with the worked example followed by the expository instructions containing subgoal labels, the learner was better at outlining the procedure for creating an application. These manipulations did not affect cognitive load, novel problem solving performance, explanations of solutions, or the amount of time spent on instructions and completing the assessments. These results suggest that the order instructional materials are presented have has little impact on problem solving, although some benefit can be gained from presenting the worked example before the expository instructions when subgoal labels are included. This suggests the order the instructions are presented to learners does not impact learning. Previous studies demonstrating an effect of subgoal labels used text instructions as opposed to the video instructions used in the present study. Future research should investigate how these manipulations differ for text instructions and video instructions.
30

The Effect of Problem-Solving Instruction on the Programming Self-Efficacy and Achievement of Introductory Computer Science Students

Maddrey, Elizabeth 01 January 2011 (has links)
Research in academia and industry continues to identify a decline in enrollment in computer science. One major component of this decline in enrollment is a shortage of female students. The primary reasons for the gender gap presented in the research include lack of computer experience prior to their first year in college, misconceptions about the field, negative cultural stereotypes, lack of female mentors and role models, subtle discriminations in the classroom, and lack of self-confidence (Pollock, McCoy, Carberry, Hundigopal, & You, 2004). Male students are also leaving the field due to misconceptions about the field, negative cultural stereotypes, and a lack of self-confidence. Analysis of first year attrition revealed that one of the major challenges faced by students of both genders is a lack of problem-solving skills (Beaubouef, Lucas & Howatt, 2001; Olsen, 2005; Paxton & Mumey, 2001). The purpose of this study was to investigate whether specific, non-mathematical problem-solving instruction as part of introductory programming courses significantly increased computer programming self-efficacy and achievement of students. The results of this study showed that students in the experimental group had significantly higher achievement than students in the control group. While this shows statistical significance, due to the effect size and disordinal nature of the data between groups, care has to be taken in its interpretation. The study did not show significantly higher programming self-efficacy among the experimental students. There was not enough data collected to statistically analyze the effect of the treatment on self-efficacy and achievement by gender. However, differences in means were observed between the gender groups, with females in the experimental group demonstrating a higher than average degree of self-efficacy when compared with males in the experimental group and both genders in the control group. These results suggest that the treatment from this study may provide a gender-based increase in self-efficacy and future research should focus on exploring this possibility.

Page generated in 0.125 seconds