A website featuring interactive examples bused to teach introductory programming to both on-campus and, recently, distance students is described. On-line notes are created using a pair of tools, Web-Writer++, an autho...
详细信息
ISBN:
(纸本)9781424410835
A website featuring interactive examples bused to teach introductory programming to both on-campus and, recently, distance students is described. On-line notes are created using a pair of tools, Web-Writer++, an authoring system for programming instructors, and the Teaching Machine, a program animator which is used to interactively display the examples. The tools allow the instructor in the classroom or the student on their own to step through computer programs written in C++ or Java. The animations that unfold are designed to build a deep understanding of how computers process programs, consonant with the kind of mental models we believe professional programmers hold. In-class versus distance experience will be discussed.
This paper describes SSEA (System for Studying the Effectiveness of Animations), an environment designed to support the empirical study of program visualizations.
This paper describes SSEA (System for Studying the Effectiveness of Animations), an environment designed to support the empirical study of program visualizations.
This paper describes a learning environment that provides program division patterns for programming education. Receiving source codes drawn by learners, this environment analyzes data flow and detects the information ...
详细信息
ISBN:
(纸本)9783540748281
This paper describes a learning environment that provides program division patterns for programming education. Receiving source codes drawn by learners, this environment analyzes data flow and detects the information on active variables based on lexical, syntax, and semantic analyses. Then, this environment generates and evaluates module division patterns and finally shows visually to a learner module division patterns, active variables and their active scopes.
In this paper we introduce the concept of conflictive animations and discuss its applicability in programming and algorithm design courses. Conflictive animations are animations that deviate from the expected behaviou...
详细信息
ISBN:
(纸本)9781920682699
In this paper we introduce the concept of conflictive animations and discuss its applicability in programming and algorithm design courses. Conflictive animations are animations that deviate from the expected behaviour of the program or algorithm they are supposed to present. With respect to the engagement taxonomy, we propose several ways of learning with conflictive animations. We also initiate a discussion about their possible benefits and drawbacks.
This paper presents the results of an experiment aimed at investigating how different methods of viewing visual programs affect users' understanding. The first two methods used traditional flat and semantic zoomin...
详细信息
ISBN:
(纸本)0780381548
This paper presents the results of an experiment aimed at investigating how different methods of viewing visual programs affect users' understanding. The first two methods used traditional flat and semantic zooming models of program representation;the third is a new representation that uses semantic zooming combined with blending and proximity. The results of several search tasks performed by approximately 80 participants showed that the new method resulted in both faster and more accurate searches than the other methods.
We face the problem of simplifying automatically the visualization of expressions in an eager functional language. The problem is relevant for debugging in a programming environment, based on a rewriting model of expr...
详细信息
We face the problem of simplifying automatically the visualization of expressions in an eager functional language. The problem is relevant for debugging in a programming environment, based on a rewriting model of expression evaluation that displays large intermediate expressions. The simplification technique must filter automatically the parts of an expression which are not interesting for debugging/understanding. We propose the use of logical fisheye views because they provide a balance between showing global context and local information (focus). A straightforward implementation of fisheye views displays too simplified expressions. In the article, we identify five design requirements and describe how they are satisfied. We also include several examples, a discussion and related work.
program comprehension processes have previously been studied using methodologies such as think-aloud or comprehension summary analysis. Eye-tracking, however, has not been previously widely applied to studies of behav...
详细信息
ISBN:
(纸本)9781595933058
program comprehension processes have previously been studied using methodologies such as think-aloud or comprehension summary analysis. Eye-tracking, however, has not been previously widely applied to studies of behavioral aspects of programming. We present a study in which program comprehension was investigated with a help of a remote eye-tracker. Novice and intermediate programmers used a program visualization tool to aid their comprehension while the location of fixations, fixation durations and attention switching between the areas of interest were *** this paper 1) we propose an approach how to investigate trends in repeated-measures sparse-data of few cases captured by an eye-tracker and 2) using this technique, we characterize the development of program comprehension strategies during dynamic program visualization with help of eye-movement data.
This half-day tutorial gives an overview of the current state-of-the-art in software visualization. Software visualization encompasses the development and evaluation of methods for graphically representing different a...
详细信息
ISBN:
(纸本)9781581139631
This half-day tutorial gives an overview of the current state-of-the-art in software visualization. Software visualization encompasses the development and evaluation of methods for graphically representing different aspects of software, including its structure, its execution, and its evolution. In contrast to visual programming and diagramming for software design, software visualization is not so much concerned with the construction, but with the analysis of programs and their development process. Software visualization combines techniques from areas like software engineering, programming languages, data mining, computer graphics, information visualization and human-computer interaction. Topics covered in this tutorial include static program visualization, algorithm animation, visual debugging, as well as the visualization of the evolution of software. In particular we identify common principles illustrated by many examples and give pointers to tools available today.
Software development is difficult because software is complex, the software production process is complex and understanding of software systems is a challenge. In this paper we propose a 3D visual approach to depict s...
详细信息
ISBN:
(纸本)0769519881
Software development is difficult because software is complex, the software production process is complex and understanding of software systems is a challenge. In this paper we propose a 3D visual approach to depict software production cost related program information to support software maintenance. The information helps us to reduce software maintenance costs, to plan the use of personnel wisely, to appoint experts efficiently and to detect system problems early.
暂无评论