The theoretical background to automata and formal languages represents a complex learning area for students. Computer tools for interacting with the algorithm and interfaces to visualize its different steps can assist...
详细信息
The theoretical background to automata and formal languages represents a complex learning area for students. Computer tools for interacting with the algorithm and interfaces to visualize its different steps can assist the learning process and make it more attractive. In this paper, we present a web application for learning some of the most common algorithms in an appealing way. They are specifically linked to the recognition of regular languages that are, taught in classes on both automata theory and compiler design. Although several simulators are available to students, they usually only serve to validate grammars, automata, and languages, rather than helping students to learn the internal processes that an algorithm can perform. The resource presented here can execute and display each algorithm process, step by step, providing explanations on each step that assist student comprehension. Additionally, as a web-based resource, it can be used on any device with no need for specific software installation.
Prior empirical studies of programming have shown that novice programmers tend to program by exploration, relying on frequent compilation and execution of their code in order to make progress. One way visual and end-u...
详细信息
Prior empirical studies of programming have shown that novice programmers tend to program by exploration, relying on frequent compilation and execution of their code in order to make progress. One way visual and end-user programming environments have attempted to facilitate this exploratory programming process is through their support of "live" editing models, in which immediate visual feedback on a program's execution is provided automatically at edit time. Notice that the notion of "liveness" actually encompasses two distinct dimensions: (a) the amount of time a programmer must wait between editing a program and receiving visual feedback (feedback delay);and (b) whether such feedback is provided automatically, or whether the programmer must explicitly request it (feedback self-selection). While a few prior empirical studies of "live" editing do exist, none has specifically evaluated the impact of these dimensions of "live" editing within the context of the imperative programming paradigm commonly taught in first-semester computer science courses. As a preliminary step toward that end, we conducted an experimental study that investigated the impact of feedback self-selection on novice imperative programming. Our within-subjects design compared the impact of three different levels of feedback self-selection on syntactic and semantic correctness: (a) no visual feedback at all (the No Feedback treatment);(b) visual feedback, in the form of a visualization of the program's execution state, provided on request when a "run" button is hit (the Self-Select treatment);and (c) visual feedback, in the form of a visualization of the program's execution state, updated on every keystroke (the Automatic treatment). Participants in the Automatic and Self-Select treatments produced programs that had significantly fewer syntactic and semantic errors than those of the No Feedback treatment;however, no significant differences were found between the Automatic and Self-Select treatments
This paper describes a prototypical system for tree and tree algorithm animations. The system allows the user to create his or her own tree from a selection of supported tree types by inserting and removing nodes. At ...
详细信息
This paper describes a prototypical system for tree and tree algorithm animations. The system allows the user to create his or her own tree from a selection of supported tree types by inserting and removing nodes. At any point in time, the user can ask for a visualization of the tree's generation to see the effects of the chosen actions. The user can also request embedded documentation on different levels of detail. The system may prompt the user to answer questions about the displayed contents. The online help further assists the user in learning about the tree types and operations. The package presented in this paper corresponds to the engagement levels viewing, responding, changing and also supports the presenting engagement level as defined in the engagement taxonomy [3].
Many computer science educators agree that the visualization or animation of dynamic systems, especially algorithms and data structures, should help students in learning about this central aspect of computer science. ...
详细信息
Many computer science educators agree that the visualization or animation of dynamic systems, especially algorithms and data structures, should help students in learning about this central aspect of computer science. However, most educators do not use algorithm visualization and animation (AV) systems in their teaching. One central reason for this is the time needed to find or generate "appropriate" content [ 3]. This paper tries to remedy this by illustrating an easy to use and yet flexible framework for generating content on-the-fly -but tailored to the end user's preferences.
This paper reports on the results of a two year project in which visual algorithm simulation exercises were developed for a spatial data algorithms course. The success of the project is studied from several point of v...
详细信息
This paper reports on the results of a two year project in which visual algorithm simulation exercises were developed for a spatial data algorithms course. The success of the project is studied from several point of views, i.e., from developer's, teachers's, and student's perspective. The amount of work, learning outcomes, and feasibility of the system has been estimated based on the data gathered during the project. The results are encouraging, which motivates to extend the concept also for other courses in the future.
We recap the results of an ITiCSE 2002 Working Group report [4], which set the stage for the work described here. That work has resulted in the newest release of a system called JHAVE, which fosters active engagement ...
详细信息
We recap the results of an ITiCSE 2002 Working Group report [4], which set the stage for the work described here. That work has resulted in the newest release of a system called JHAVE, which fosters active engagement on the part of learners by providing a set of standard support tools for certain types of algorithm visualization (AV) systems. These AV engines must implement the JHAVE Visualizer interface. In return, such engines have convenient access to the engagement-based tools offered by JHAVE. The details of adapting one such engine, Animal, are also described.
This paper investigates the visualization of geometric computing in heterogeneous distributed environments. We show how focusing in a well-defined domain makes it possible to develop a compact system that is accessibl...
详细信息
This paper investigates the visualization of geometric computing in heterogeneous distributed environments. We show how focusing in a well-defined domain makes it possible to develop a compact system that is accessible to even naive users. We present a conceptual model and a system, GASP-II, that realizes this model in the geometric domain. The system allows the presentation and interactive exploration of three-dimensional geometric algorithms over the network. (C) 2000 Academic Press.
Software visualization and algorithm animation have been tackled almost exclusively from the visual point of view;this means representation and control occur through the visual channel. This approach has its limitatio...
详细信息
Software visualization and algorithm animation have been tackled almost exclusively from the visual point of view;this means representation and control occur through the visual channel. This approach has its limitations. To achieve better comprehension, we deal with multimodal interfaces that include the extended facilities of interaction together with those of the standard systems for data visualization and algorithm animation. The notion of specific concept keyboards is introduced. As a consequence, modern information and learning systems for algorithm animation are enhanced in such a way that control and interaction take place through appropriate interfaces designed and semi-automatically generated for this special purpose. In this paper, we provide some examples and report on a thorough evaluation to show the relevance of this new approach. (C) 2007 Elsevier Ltd. All rights reserved.
In this paper we survey experiments with program and algorithm visualizations (PAVs) where learning improvements have been detected. We analyze these experiments based on the student's level of engagement with the...
详细信息
In this paper we survey experiments with program and algorithm visualizations (PAVs) where learning improvements have been detected. We analyze these experiments based on the student's level of engagement with the visualizations. There are some features present in most of these, successful, experiments. Therefore they should be taken into account as important factors affecting pedagogical effectiveness of PAVs, these features are: narrative and textual contents, feedback to students' answers and a student centered approach when designing PAV construction kits.
In this paper, first we present an educational system that assists students in learning and tutors in teaching search algorithms, an artificial intelligence topic. Learning is achieved through a wide range of learning...
详细信息
In this paper, first we present an educational system that assists students in learning and tutors in teaching search algorithms, an artificial intelligence topic. Learning is achieved through a wide range of learning activities. algorithm visualizations demonstrate the operational functionality of algorithms according to the principles of active learning. So, a visualization process can stop and request from a student to specify the next step or explain the way that a decision was made by the algorithm. Similarly, interactive exercises assist students in learning to apply algorithms in a step-by-step interactive way. Students can apply an algorithm to an example case, specifying the algorithm's steps interactively, with the system's guidance and help, when necessary. Next, we present assessment approaches integrated in the system that aim to assist tutors in assessing the performance of students, reduce their marking task workload and provide immediate and meaningful feedback to students. Automatic assessment is achieved in four stages, which constitute a general assessment framework. First, the system calculates the similarity between the student's and the correct answer using the edit distance metric. In the next stage, it identifies the type of the answer, based on an introduced answer categorization scheme related to completeness and accuracy of an answer, taking into account student carelessness too. Afterwards, the types of errors are identified, based on an introduced error categorization scheme. Finally, answer is automatically marked via an automated marker, based on its type, the edit distance and the type of errors made. To assess the learning effectiveness of the system an extended evaluation study was conducted in real class conditions. The experiment showed very encouraging results. Furthermore, to evaluate the performance of the assessment system, we compared the assessment mechanism against expert (human) tutors. A total of 400 students' answers wer
暂无评论