16 research outputs found
Recommended from our members
Steering programs via time travel
Despite years of research into human computer interaction (HCI), the environments programmers must use for problem-solving today—with separate modes and tools for writing, compiling, testing, visualizing, and debugging— derive their basic structure from historical accident, and take little advantage of HCI research into the cognitive issues of programming. Neglecting these issues is an impediment to the programmers' ability to produce reliable, maintainable software. In this paper, we describe a system in which programmers can modelessly steer as they specify, visualize, explore, and alter the behavior of a program while traveling through the program's logical time. This approach supports two often-neglected cognitive principles that programmers need for problemsolving.Keywords: Visual programming, Development tools, Debugging, Steering, Psychology of programming, Programming environmentsKeywords: Visual programming, Development tools, Debugging, Steering, Psychology of programming, Programming environment
Time travelling animated program executions
Visualizations of program executions are often generated on the fly. This has many advantages relative to off-line generation of animated video files. Video files, however, trivially support flexible viewing via controls that include reverse and fast forward. Here we report on an implementation of time travel that combines the best of both techniques. In ToonTalk both the construction and execution of programs are animated. Time travel enables the user to move back in time and replay animated executions. The replay can be paused and the user can skip forward or further back in time. The implementation of time travel is based records of every input event and periodic snapshots of the state of the computation
VisCFSM: Visual, Constraint-Based, Frequent Subgraph Mining
Abstract-Graphs long have been valued as a pictorial way of representing relationships between entities. Contemporary applications use graphs to model social networks, protein interactions, chemical structures, and a variety of other systems. In many cases, it is useful to detect patterns within graphs. For example, one could be interested in identifying frequently occurring subgraphs, which is known as the frequent subgraph mining problem. A complete solution to this problem can result in numerous subgraphs and can be time-consuming to compute. An approximate solution is faster, but is subject to static heuristics that are beyond the control of the user. Herein we present VisCFSM, a visual, constraint-based, frequent subgraph mining system which allows the user to dynamically specify a variety of constraints on the subgraphs to be found while the mining algorithm is running. The constraint specification interactions are performed through a visual user interface, thereby facilitating a form of visual algorithm steering. This approach can be integrated with any frequent subgraph mining algorithm. Most importantly, this approach has the potential for the user to better, and more quickly, find the information that is of most interest to him/her in a graph
Recommended from our members
Similarity inheritance : a new model of inheritance for spreadsheet VPLs
Although spreadsheets can be argued to be the most widely-used visual programming languages (VPLs) today, most are very limited compared to other VPLs, supporting only p few built-in types and offering only primitive support for code reuse. The inheritance mechanisms of object-oriented programming might seem to offer help for the latter problem, but incorporating these mechanisms in a traditional way would introduce concepts foreign to spreadsheets, such as message passing. In this paper, we present similarity inheritance, a new approach to inheritance that is suitable for seamless integration into the spreadsheet paradigm. We first explain the model independently of any implementation, and then present a prototype implementation in the research spreadsheet VPL Forms/3. We show that bringing inheritance functionality to the spreadsheet paradigm can be done using the widely-understood idea of copy/paste. Further, we show why the approach requires the presence of a live, visual environment
Recommended from our members
Interactive, visual fault localization support for end-user programmers
End-user programmers are writing an unprecedented number of programs, primarily using languages and environments that incorporate a number of interactive and visual programming techniques. To help these users debug these programs, we have developed an entirely visual, interactive approach to fault localization. This paper presents the approach. We also present the results of a think-aloud study that examined the interactive, human-centric issues that arise in end-user debugging using a fault localization strategy. Our results provide insights into the contributions such strategies can make to the end-user debugging process.Keywords: visual fault localization, debugging, end-user software engineering, slicing, form-based visual programs, testing, end-user programmin