21 research outputs found

    Exploration and Practice of Blended Teaching Model Based Flipped Classroom and SPOC in higher University

    Get PDF
    SPOC is characterized by improving teaching effectiveness. Currently open teaching mode is the popular trend, which is mainly related to several aspects: how to carry out teaching practice by using MOOC proprietary, high-quality online teaching resources in open education, that is, deep integration of curriculum resources and teaching design. On the basis of SPOC development, combined with open education analysis of SPOC with instructional design theory and philosophy from flipped classroom as a guide, the present research try to propose instructional design model based on flipped classroom, including design of teaching content system, design of personalized learning strategies, design of teaching activities and teaching evaluation system. Four designs above contribute to the effective implementation of the open teaching activities based on the blended model of flipped classroom and SPOC teaching, so as to enhance the quality of education. Keywords: Teaching design model; SPOC; Teaching methods; Flipped classroo

    Designing Prototype Model of an Online Collaborative Learning System for Introductory Computer Programming Course

    Get PDF
    AbstractThis paper discusses the design of the prototype model of the online collaborative learning system for introductory computer programming course. The methodology used involves three phases which are the data collection, analysis and design and the implementation phase. Initially, fifty respondents from the first year students of the Diploma in Computer Science in Universiti Teknologi MARA (UiTM) Perlis, Malaysia have been randomly selected to participate in the data collection phase in order to investigate the students’ interests, learning styles as well as their learning preferences. The results have shown the need for the development of online small group discussions that could facilitate online communication and collaboration from dispersed location, hence encouraging distance learning education. A design of a structure model for an online collaborative learning system has been constructed in order to support the online collaborative learning activities in a virtual environment. The logical designs of the Online Collaborative Learning System or OCLS are being designed using the object-oriented models which are the use-case model and class diagram in order to show the concise processes of virtual “Think-Pair-Share” collaborative activities. The “Think-Pair-Share” collaborative learning technique that is being used in the design structures has been chosen because of its simplicity and relatively low-risk. Later, the physical design of the prototype model is being constructed using the Web-based technologies which are the MySQL database, PHP and Apache web server. This paper also discusses the impact of the online collaborative learning system towards the students’ performance where analysis has shown that the t-test result had a significant value of 0.01, which is less than 0.05 (sig. 2-tailed)

    Syntactic generation of practice novice programs in Python

    Get PDF
    Abstract: In the present day, computer programs are written in high level languages and parsed syntactically as part of a compilation process. These parsers are defined with context-free grammars (CFGs), a language recogniser for the respective programming language. Formal grammars in general are used for language recognition or generation. In this paper, we present the automatic generation of procedural programs in Python using a CFG. We have defined CFG rules to model program templates and implemented these rules to produce infinitely many distinct practice programs in Python. Each generated program is designed to test a novice programmer’s knowledge of functions, expressions, loops, and/or conditional statements. The CFG rules are highly generic and can be extended to generate programs in other procedural languages. The resulting programs can be used as practice, test or examination problems in introductory programming courses. 500,000 iterations of generated programs can be found at: https://tinyurl.com/ pythonprogramgenerator. A survey of 103 students’ perception showed that 93.1% strongly agreed that these programs can help them in practice and improve their programming skills

    A Perspective Of Automated Programming Error Feedback Approaches In Problem Solving Exercises

    Get PDF
    Programming tools are meant for student to practice programming. Automated programming error feedback will be provided for students to self-construct the knowledge through their own experience. This paper has clustered current approaches in providing automated error programming feedback to the students during problem solving exercises. These include additional syntax error messages, solution template mismatches, test data comparison, assisted agent report and collaborative comment feedback. The study is conducted based on published papers for last two decades. The trends are analyzed to get the overview of latest research contributions towards eliminating programming difficulties among students. The result shows that future direction of automated programming error feedback approaches may combine agent and collaborative feedback approaches towards more interactive, dynamic, end-user oriented and specific goal oriented. Such future direction may help other researchers fill in the gap on new ways of assisting learners to better understand feedback messages provided by automated assessment tool

    Programming assignments automatic grading: review of tools and implementations

    Full text link
    Automatic grading of programming assignments is an important topic in academic research. It aims at improving the level of feedback given to students and optimizing the professor time. Several researches have reported the development of software tools to support this process. Then, it is helpfulto get a quickly and good sight about their key features. This paper reviews an ample set of tools forautomatic grading of programming assignments. They are divided in those most important mature tools, which have remarkable features; and those built recently, with new features. The review includes the definition and description of key features e.g. supported languages, used technology, infrastructure, etc. The two kinds of tools allow making a temporal comparative analysis. This analysis infrastructure, etc. The two kinds of tools allow making a temporal comparative analysis. This analysis shows good improvements in this research field, these include security, more language support, plagiarism detection, etc. On the other hand, the lack of a grading model for assignments is identified as an important gap in the reviewed tools. Thus, a characterization of evaluation metrics to grade programming assignments is provided as first step to get a model. Finally new paths in this research field are proposed

    Recommending Tasks in Online Judges using Autoencoder Neural Networks

    Get PDF
    Programming contests such as International Olympiads in Informatics (IOI) and ACM International Collegiate Programming Contest (ICPC) are becoming increasingly popular in recent years. To train for these contests, there are several Online Judges available, in which users can test their skills against a usually large set of programming tasks. In the literature, so far few papers have addressed the problem of recommending tasks in online judges. Most notably, as opposed with traditional Recommender Systems, since the learners improve their skills as they solve more problems, there is an intrinsic dynamic dimension that has to be considered: when recommending movies or books, it is likely that the preferences of the users are more or less stable, whilst in recommending tasks this does not hold true. In order to help the learners, it is crucial to recommend them tasks that are challenging but not unsolvable compared with their current set of skills. In this paper we present a Recommender System (RS) for Online Judges based on an Autoencoder (Artificial) Neural Network (ANN). We also discuss the results of an experimental evaluation of our approach in both the scenarios in which we consider, or not, the intrinsic dynamic dimension of the problem. The ANNs are trained with the dataset of all the submissions in the Italian National Online Judge, used to train students for the Italian Olympiads in Informatics

    An online system for monitoring and assessing the programming process

    Get PDF
    Abstract: Traditional assessment of programming ability, as well as more recent automated assessment systems, consider only the completed program submitted by the student. We present a system which automatically monitors and assesses the codeproduction process as well as the final product, allowing adaptive feedback and assessment of programming competency. Our assessment system is based on open-source components which provide a full online programming environment and allows for a flexible scripting interface to the assessment process, which can monitor student actions during the programming task. The system was implemented for an introductory programming class of nearly 400 students, and an example of the automated assessment is presented

    Improving marking efficiency for longer programming solutions based on a semi-automated assessment approach

    Get PDF
    In recent years, many students in higher education have begun to learn programming languages. In doing so they will complete a variety of programming tasks of varying degrees of complexity. The students need to get consistent and personalised feedback to develop their programming skills. Human markers can provide personalised feedback using traditional manual approaches to assessment, but they may provide inconsistent feedback (especially for long programming solutions) since marking the programming solutions of multiple students can represent a significant workload for them. While full-automated assessment systems are the best to provide consistent feedback, they may not provide sufficiently personalised feedback for novice programmers. This study develops a novel semi-automated assessment approach in order to improve efficiency of human marker in the marking process and increase consistency of feedback (for both short and long programming solutions). It advocates the reuse of human marker’s comments for similar code snippets, defined as segmented marking in this study. New full and partial marking models are developed based on segmented marking and they are tested by expert markers. The findings show that the two models are similar in efficiency, but that a partial marking approach potentially offers an improved efficiency for longer programming solutions. Such a finding has significant potential to reduce time spent on marking throughout the sector, which would have significant impact on both resourcing and timeliness of feedback

    Educational crowdsourcing to support the learning of computer programming

    Get PDF
    Technology has been used in the last three decades to support teaching and learning. However, educational software has frequently been under investigation to check the validity of their benefits. There is a demand for increasingly intelligent pedagogically-grounded computer technology. In this paper, we discuss adaptive, crowd sourced, and primarily educational technology; targeted at software development students. The proposed technology caters for either individual or group learning. It differentiates itself from other tutoring and programming support technologies as it will continually monitor and assess students’ performance in each phase of the educating process. It will also guide them in their learning through interactive feedback and adaptive curriculum delivery that suits both their current levels of learning and preferred learning styles. Keywords: Technology and Education; Coding; Teaching and Learning; Computer Programming; Adaptive Software

    A Procedure for Extending Input Selection Algorithms to Low Quality Data in Modelling Problems with Application to the Automatic Grading of Uploaded Assignments

    Get PDF
    When selecting relevant inputs in modeling problems with low quality data, the ranking of the most informative inputs is also uncertain. In this paper, this issue is addressed through a new procedure that allows the extending of different crisp feature selection algorithms to vague data. The partial knowledge about the ordinal of each feature is modelled by means of a possibility distribution, and a ranking is hereby applied to sort these distributions. It will be shown that this technique makes the most use of the available information in some vague datasets. The approach is demonstrated in a real-world application. In the context of massive online computer science courses, methods are sought for automatically providing the student with a qualification through code metrics. Feature selection methods are used to find the metrics involved in the most meaningful predictions. In this study, 800 source code files, collected and revised by the authors in classroom Computer Science lectures taught between 2013 and 2014, are analyzed with the proposed technique, and the most relevant metrics for the automatic grading task are discussed.This work was supported by the Spanish Ministerio de Economía y Competitividad under Project TIN2011-24302, including funding from the European Regional Development Fund
    corecore