653 research outputs found

    Autograding and detecting plagiarism in student programming assignments

    Get PDF
    Applied project submitted to the Department of Computer Science and Information Systems, Ashesi University, in partial fulfillment of Bachelor of Science degree in Computer Science, April 2019In computer science, practical assignments ensure that students put the theory they learn in class into practice by writing computer programs to solve problems. Practical assignments also play a critical role in assessing students’ understanding of course materials. For course facilitators, grading programming assignments is a time-consuming task. The course facilitators must run each student’s submission. Moreover, some students copy the code from their friends and change the lexicon and structure. This makes it nearly impossible for the course facilitators to detect plagiarism. A possible solution to these problems is a system that allows course facilitators to write tests that apply automatically to all students’ submissions and consequently allocate grades based on test results. To curb the plagiarism issue, the system should have a component that calculates the peer plagiarism index and flags students’ submissions that may have plagiarism issues. This applied project is an attempt to develop, test and evaluate such a system. While designing the system, it became apparent that running students’ submission and instructors’ tests on the server would pose a security threat to the server. After evaluating possible workaround for the issue, we decided to run the submissions and tests on a docker sandbox within a virtual machine. The plagiarism index is calculated by quantifying the lexical and structural similarities. To integrate the two components, we developed an API. To test and demonstrate the workings of the system, we developed a frontend client to consume the critical endpoints of the API. This project is proof of concept that the solution for the problem can be developed and successfully deployed.Ashesi Universit

    Collaboration in Designing a Pedagogical Approach in Information Literacy

    Get PDF
    ​This Open Access book combines expertise in information literacy with expertise in education and teaching to share tips and tricks for the development of good information literacy teaching and training in universities and libraries. It draws on research, knowledge and pedagogical practice from academia, to teach students how to sift through information to be able to distinguish the important and correct from the unusable. It discusses basic concepts and models of information literacy, as well as strategies for accessing, locating and retrieving information and methods suitable for the assessment and management of information. The book explains many concepts connected to information literacy and discusses pedagogical issues with a view to supporting the practitioner. Each chapter examines one aspect of information literacy, discusses the pedagogical challenges involved and provides suggestions for best practice

    Codification Pedagogy for Introductory Procedural Programming Courses

    Get PDF
    Generally, students in introductory programming courses (CS1) do not devote time to designing solutions to their programming problems, even though it is a necessary part of the problem-solving process. Without the design process to reflect on a problem, students might haphazardly solve them, but with incomplete solutions. Students might skip the design process because they have limited design knowledge and lack the skills to help them identify goals and create a plan for solving a problem. Students might also ignore problem-solving information provided to them and instead rely on past problem-solving approaches, which keeps them from learning both new problem-solving strategies and new programming concepts. This research explores a pedagogical approach for procedural programming assignments facilitated within an online learning environment that encourages CS1 students to incorporate the design process into their problem-solving process. This thesis refers to the pedagogical approach as the Codification Pedagogy, a teaching approach for ordering rules corresponding to a plan. The pedagogy is designed to help students identify goals and create plans for solving problems. The pedagogy is comprised of three learning activities: 1. A scaffolded assignment presentation designed to help students better understand the programming problem. The assignment presentation helps students identify the problem’s goals and provides additional support for struggling students. This research produces a framework that educators can use to develop scaffolded presentations for CS1 programming assignments. 2. A questioning activity that encourages students to engage their internal knowledge to solve the current problem. This research produces a questioning framework. The framework contains instructional questions mapped to the Bloom’s Taxonomy cognitive levels. The framework can help educators construct learning activities through questioning to help elevate students’ cognitive level appropriate for their learning. 3. A Parsons problems activity designed to help students organise an implementation plan. Parsons problems is a learning tool that has students arrange code fragments to form a working program. The research demonstrates that Parsons problems can be used to help students organise plans to solve programming problems. The Codification Pedagogy is integrated into CS1 programming assignments. Studies were conducted for three semesters in an introductory programming course offered at the University of Adelaide. The research comprises quantitative studies using interactive analytics and variable-oriented analysis, along with qualitative studies using mixed methods that include pre-post tests, think-alouds, and interview sessions. The pedagogy is designed to help students better understand the programming problem and support their learning of problem-solving strategies for practical programming assignments. The results from this thesis demonstrates the pedagogy can support students during the design process. The studies presented in this thesis shows the pedagogy supporting students’ use of problem-solving strategies that help them to identify goals for the problems and enable them to validate their programming solutions. The results also show the learning activities encouraging students to analyse the assignment, promoting self-reflection that reduce misconceptions. Through its design-based support, the pedagogy can support students to successfully complete programming assignments.Thesis (Ph.D.) -- University of Adelaide, School of Computer Science, 202

    STUDENT COLLABORATION IN A HYBRID PBL ENVIRONMENT – DIVERSITY IN COLLABORATION PRACTICE

    Get PDF

    LISTEN! SIGNIFICANT SOUNDS OF SILENCE IN PROBLEM-BASED LEARNING

    Get PDF
    • …
    corecore