HCI Bibliography Home | HCI Journals | About VLC | Journal Info | VLC Journal Volumes | Detailed Records | RefWorks | EndNote | Hide Abstracts
VLC Tables of Contents: 16171819202122232425

Journal of Visual Languages & Computing 18

Editors:S.-K. Chang; Stefano Levialdi
Dates:2007
Volume:18
Publisher:Elsevier
Standard No:ISSN: 1045-926X
Papers:34
Links:Table of Contents
  1. VLC 2007-02 Volume 18 Issue 1
  2. VLC 2007-04 Volume 18 Issue 2
  3. VLC 2007-06 Volume 18 Issue 3
  4. VLC 2007-08 Volume 18 Issue 4
  5. VLC 2007-10 Volume 18 Issue 5
  6. VLC 2007-12 Volume 18 Issue 6

VLC 2007-02 Volume 18 Issue 1

TimeLine and visualization of multiple-data sets and the visualization querying challenge BIBAKFull-Text 1-21
  David A. Aoyama; Jen-Ting T. Hsiao; Alfonso F. Cárdenas; Raymond K. Pon
Data in its raw form can potentially contain valuable information, but much of that value is lost if it cannot be presented to a user in a way that is useful and meaningful. Data visualization techniques offer a solution to this issue. Such methods are especially useful in spatial data domains such as medical scan data and geophysical data. However, to properly see trends in data or to relate data from multiple sources, multiple-data set visualization techniques must be used. In research with the time-line paradigm, we have integrated multiple streaming data sources into a single visual interface. Data visualization takes place on several levels, from the visualization of query results in a time-line fashion to using multiple visualization techniques to view, analyze, and compare the data from the results. A significant contribution of this research effort is the extension and combination of existing research efforts into the visualization of multiple-data sets to create new and more flexible techniques. We specifically address visualization issues regarding clarity, speed, and interactivity. The developed visualization tools have also led recently to the visualization querying paradigm and challenge highlighted herein.
Keywords: Data visualization; Visualization architecture; Visual querying; Multi-platform visualization; Remote processing
What You See Is What You Code: A "live" algorithm development and visualization environment for novice learners BIBAKFull-Text 22-47
  Christopher D. Hundhausen; Jonathan L. Brown
Pedagogical algorithm visualization (AV) systems produce graphical representations that aim to assist learners in understanding the dynamic behavior of computer algorithms. In order to foster active learning, computer science educators have developed AV systems that empower learners to construct their own visualizations of algorithms under study. Notably, these systems support a similar development model in which coding an algorithm is temporally distinct from viewing and interacting with the resulting visualization. Given that they are known to have problems both with formulating syntactically correct code, and with understanding how code executes, novice learners would appear likely to benefit from a more "live" development model that narrows the gap between coding an algorithm and viewing its visualization. In order to explore this possibility, we have implemented "What You See Is What You Code," an algorithm development and visualization model geared toward novices first learning to program under the imperative paradigm. In the model, the line of algorithm code currently being edited is reevaluated on every edit, leading to immediate syntactic feedback, along with immediate semantic feedback in the form of an AV. Analysis of usability and field studies involving introductory computer science students suggests that the immediacy of the model's feedback can help novices to quickly identify and correct programming errors, and ultimately to develop semantically correct code.
Keywords: Algorithm visualization; Novice programming environments; Live programming environments; Usability studies; Field studies
A dimensionality reduction algorithm and its application for interactive visualization BIBAKFull-Text 48-70
  Jiyuan An; Jeffrey Xu Yu; Chotirat Ann Ratanamahatana; Yi-Ping Phoebe Chen
Visualization is one of the most effective methods for analyzing how high-dimensional data are distributed. Dimensionality reduction techniques, such as PCA, can be used to map high dimensional data to a two- or three-dimensional space. In this paper, we propose an algorithm called HyperMap that can be effectively applied to visualization. Our algorithm can be seen as a generalization of FastMap. It preserves its linear computation complexity, and overcomes several main shortcomings, especially in visualization. Since there are more than two pivot objects in each axis of a target space, more distance information needs to be preserved in each dimension. Then in visualization, the number of pivot objects can go beyond the limitation of six (2-pivot objects × 3-dimensions). Our HyperMap algorithm also gives more flexibility to the target space, such that the data distribution can be observed from various viewpoints. Its effectiveness is confirmed by empirical evaluations on both real and synthetic datasets.
Keywords: Visualization; High-dimensional data; Dimensionality reduction
UCheck: A spreadsheet type checker for end users BIBAKFull-Text 71-95
  Robin Abraham; Martin Erwig
Spreadsheets are widely used, and studies have shown that most end-user spreadsheets contain non-trivial errors. Most of the currently available tools that try to mitigate this problem require varying levels of user intervention. This paper presents a system, called UCheck, that detects errors in spreadsheets automatically. UCheck carries out automatic header and unit inference, and reports unit errors to the users. UCheck is based on two static analyses phases that infer header and unit information for all cells in a spreadsheet.
   We have tested UCheck on a wide variety of spreadsheets and found that it works accurately and reliably. The system was also used in a continuing education course for high school teachers, conducted through Oregon State University, aimed at making the participants aware of the need for quality control in the creation of spreadsheets.
Keywords: Spreadsheet; Unit; Type; Automatic error detection; Debugging; End-user software engineering

VLC 2007-04 Volume 18 Issue 2

Special Issue on Selected Papers from VLC 2005 BIBFull-Text 97-98
  Philip Cox
Visual programming with analogical representations: Inspirations from a semiotic analysis of comics BIBAKFull-Text 99-125
  Mikael Kindborg; Kevin McGee
Analogical representations based on pictures of domain objects can be used in visual programming to provide a close mapping between the program and the resulting runtime display, which can make programming easier for children and other users. The use of graphical rewrite rules with before and after pictures is an example of this approach. Graphical rewrite rules have some similarities with comics strips, which also use picture sequences of graphical objects to describe dynamics in a static form. However, the visual language of comics is not used to its full potential in visual programming. We discuss how a semiotic analysis of comics can be used to address some of the limitations of graphical rewrite rules. We use a visual programming system we have designed to illustrate that comic strips can express more general computations and be more intuitive and flexible than traditional graphical rewrites. Our conclusion is that the visual language of comics has a strong potential for increasing the expressiveness and flexibility of visual programming with analogical representations of domain objects, while maintaining a direct mapping between the program representation and the runtime representation.
Keywords: Visual programming; Comics; Graphical rewrite rules; Semiotics; Children
Visual representations of executing programs BIBAKFull-Text 126-148
  Steven P. Reiss
Programmers have always been curious about what their programs are doing while it is executing, especially when the behavior is not what they are expecting. Since program execution is intricate and involved, visualization has long been used to provide the programmer with appropriate insights into program execution. This paper looks at the evolution of on-line visual representations of executing programs, showing how they have moved from concrete representations of relatively small programs to abstract representations of larger systems. Based on this examination, we describe the challenges implicit in future execution visualizations and methodologies that can meet these challenges.
Keywords: Software visualization; Execution visualization; Software tools; Programming environments
Transfer of problem-solving strategy using Covlan BIBAKFull-Text 149-164
  Jim Davies; Ashok K. Goel
Psychological evidence suggests that humans use visual knowledge and reasoning in solving complex problems. We present Covlan, a visual knowledge representation language for representing visual knowledge and supporting visual reasoning. We describe Galatea, a computer program that uses Covlan for analogical transfer of problem-solving procedures from known analogs to new problems. We present the use of Galatea to model analogical visual problem solving by four human experimental participants, and describe one of the four cases in detail. The Galatea model of human problem solving suggests that problem-solving procedures can be effectively represented with Covlan.
Keywords: Analogy; Visual reasoning; Problem-solving
Visual language implementation through standard compiler-compiler techniques BIBAKFull-Text 165-226
  Gennaro Costagliola; Vincenzo Deufemia; Giuseppe Polese
We present a technique for implementing visual language compilers through standard compiler generation platforms. The technique exploits eXtended Positional Grammars (XPGs, for short) for modeling the visual languages in a natural way, and uses a set of mapping rules to translate an XPG specification into a translation schema. This lets us generate visual language parsers through standard compiler-compiler techniques and tools like YACC. The generated parser accepts exactly the same set of visual sentences derivable through the application of XPG productions. The technique represents an important achievement, since it enables us to perform visual language compiler construction through standard compiler-compilers rather than specific compiler generation tools. This makes our approach particularly appealing, since compiler-compilers are widely used and rely on a well-founded theory. Moreover, the approach provides the basis for the unification of traditional textual language technologies and visual language compiler technologies.
Keywords: Compiler-compiler techniques; Conflict handling techniques; LR parsing; Visual grammars; Visual languages

VLC 2007-06 Volume 18 Issue 3

Introduction to the Special Issue on Visual Languages and Techniques for Human-GIS Interaction BIBFull-Text 227-229
  Monica Sebillo; Genny Tortora; Giuliana Vitiello
A visual tool for ontology alignment to enable geospatial interoperability BIBAKFull-Text 230-254
  Isabel F. Cruz; William Sunna; Nalin Makar; Sujan Bathala
In distributed geospatial applications with heterogeneous databases, an ontology-driven approach to data integration relies on the alignment of the concepts of a global ontology that describe the domain, with the concepts of the ontologies that describe the data in the distributed databases. Once the alignment between the global ontology and each distributed ontology is established, agreements that encode a variety of mappings between concepts are derived. In this way, users can potentially query hundreds of geospatial databases using a single query. Using our approach, querying can be easily extended to new data sources and, therefore, to new regions. In this paper, we describe the AgreementMaker, a tool that displays the ontologies, supports several mapping layers visually, presents automatically generated mappings, and finally produces the agreements.
Keywords: Ontology alignment; Information integration; Geospatial data
Exploratory spatio-temporal data mining and visualization BIBAKFull-Text 255-279
  P. Compieta; S. Di Martino; M. Bertolotto; F. Ferrucci; T. Kechadi
Spatio-temporal data sets are often very large and difficult to analyze and display. Since they are fundamental for decision support in many application contexts, recently a lot of interest has arisen toward data-mining techniques to filter out relevant subsets of very large data repositories as well as visualization tools to effectively display the results. In this paper we propose a data-mining system to deal with very large spatio-temporal data sets. Within this system, new techniques have been developed to efficiently support the data-mining process, address the spatial and temporal dimensions of the data set, and visualize and interpret results. In particular, two complementary 3D visualization environments have been implemented. One exploits Google Earth to display the mining outcomes combined with a map and other geographical layers, while the other is a Java3D-based tool for providing advanced interactions with the data set in a non-geo-referenced space, such as displaying association rules and variable distributions.
Keywords: Data mining; Spatio-temporal data; Exploratory visualization
A usability-driven approach to the development of a 3D web-GIS environment BIBAKFull-Text 280-314
  Vincenzo Del Fatto; Luca Paolino; Fabio Pittarello
The main goal of this work is to provide an advanced visual environment where users that are not skilled for what concerns the computer science domain may compose queries related to those geographical phenomena for which the third dimension is a relevant feature. Visual queries are composed in a 3D environment accessible from the web where the users manipulate geographical objects, called 3D geometaphors. The geometaphors represent the operands of an underlying algebra characterized by a set of topological, directional and metrical operators; such operators are expressed in the query environment in terms of visual relationships between the geographical objects. The introduction of the third dimension for querying the geographical databases has challenged the authors with a number of important issues related to the area of visualization, navigation and object manipulation. According to the principles of usability engineering, the authors have built different prototypes based on a client-server architecture that have been iteratively evaluated by experts and final users in order to discover drawbacks and to improve the quality of the proposal. The result is a coordinated user-friendly 3D visual metaphor for querying GIS on the web, where all the elements needed for composing a query have a visual, easy to understand, counterpart.
Keywords: Advanced visual interfaces; Geographical information systems; Visual environment; Visual query languages
A visual query language for dynamic processes applied to a scenario driven environment BIBAKFull-Text 315-338
  Karin Camara; Erland Jungert
Query languages for multi-sensor data sources are generally dealing with spatial-temporal data that in many applications are of geographical type. Such applications are quite often concerned with dynamic activities where the collected sensor data are streaming in from multiple sensors. Data uncertainty is one of the most important issues, which the query language must deal with. Other aspects of concern are sensor data fusion but also association of multiple object observations. Demonstration of the dynamic aspects are generally difficult as scenarios in real-time cannot easily be set up, tested and run realistically. To overcome this problem the query language sigma query language (ΣQL) has been attached to a simulation framework. Together with this framework scenarios can be set up to form the basis for test and dynamic illustration of the query language. Eventually the query language can be used to support decision making as well. Within the simulation framework input data are coming from sensor models that eventually can be replaced by data from real sensors. Services can be integrated with the information system, used for various purposes and supported by the various capabilities of the query language. A consequence of this approach is that the information delivered by the services, including the query language, can be used as input to an operational picture that eventually can be used to demonstrate on-going dynamic processes. In this work, an extension to ΣQL, called VisualΣQL, will be discussed together with some other relevant services useful in dynamic situations as complements to the query language. Furthermore, the use of the system will be illustrated and discussed by means of a scenario that has been run in the simulation environment.
Keywords: Query language; Sensor datasources; Simulation framework; Scenario driven
Visual access to city websites: A challenge for PDA's GUI BIBAKFull-Text 339-355
  Robert Laurini; Sylvie Servigne
At the inception of the Internet, the websites were only textual. Now, with the graphic possibilities, more and more websites integrate visual aspects, essentially to access and to visualize information. The goal of this paper is to examine the use of some visual techniques in city websites. More particularly, we will examine the metaphor of virtual cities, hypermaps and geography-based accesses, news magazines, etc.
   In the last part of this paper, we will examine the implications of using those metaphors for small screens, and overall for Graphic User Interfaces (GUI) of Personal Digital Assistant (PDA). We will essentially argue that as the syntactic transformations, i.e., the syntactic adaptations are one face of the problem, the semantic adaptation, i.e., the transformation or the adaptation of the metaphors, is a very challenging issue.
Keywords: Visual access; Websites; Cities; Metaphors; PDA; GUI

VLC 2007-08 Volume 18 Issue 4

Visual Interactions in Software Artifacts: Guest Editors' Foreword BIBFull-Text 357-358
  Guido Wirtz; Kang Zhang
POSAML: A visual modeling language for middleware provisioning BIBAKFull-Text 359-377
  Aniruddha Gokhale; Dimple Kaul; Arundhati Kogekar; Jeff Gray; Swapna Gokhale
Next generation distributed applications are often hosted on heterogeneous platforms including different kinds of middleware. Due to the applications' growing functional complexity and their multiple quality of service (QoS) requirements, system developers are increasingly facing a substantial number of middleware provisioning challenges, which include configuring, optimizing and validating the middleware platforms for QoS properties. Traditional techniques for middleware provisioning tend to use non-intuitive, low-level and technology-specific approaches, which are tedious, error prone, and non-reusable across different technologies. Quite often the middleware provisioning activities are carried out by different actors without much interaction among them, which results in an iterative trial-and-error process to provisioning. Higher level abstractions, particularly those that use visual models, are effective in addressing these challenges. This paper describes the design of a visual modeling language called POSAML (pattern-oriented software architecture modeling language) and associated tools that provide an intuitive, higher level and unified framework for provisioning middleware platforms. POSAML provides visual modeling capabilities for middleware-independent configurations and optimizations while enabling automated middleware-specific validation of system QoS properties.
Keywords: Model-driven engineering; Visual domain-specific modeling languages; Generative tools
Pattern-based design evolution using graph transformation BIBAKFull-Text 378-398
  Chunying Zhao; Jun Kong; Jing Dong; Kang Zhang
In recent years, design patterns gain more interest in software engineering communities for both software development and maintenance. As a template to solve a certain recurring problem, a design pattern documents successful experiences of software experts and gradually becomes the design guidelines of software development. Applying design patterns correctly can improve the efficiency of software design in terms of reusability and enhance maintainability during reverse engineering. Software can be evolved when developers modify their initial designs as requirements change. For instance, a developer may add/delete a set of design elements, such as classes and methods. Modifications on software artifacts can introduce conflicts and inconsistencies in the previously applied design patterns, which are difficult to find and time-consuming to correct. This paper presents a graph-transformation approach to pattern level design validation and evolution. Based on a well founded formalism, we validate a given design by a graph grammar parser and automatically evolve the design at pattern level using a graph-transformation system. Rules for potential pattern evolutions are predefined. The graph-transformation approach preserves the integrity and consistency of design patterns in the system when designs change. A prototype system is built and a case study on the Strategy pattern demonstrates the feasibility of pattern-based design validation and evolution using graph transformation techniques.
Keywords: Design pattern; Graph transformation; Graph grammar; Visual language; Software evolution
Supporting task-oriented modeling using interactive UML views BIBAKFull-Text 399-419
  Christian F. J. Lange; Martijn A. M. Wijns; Michel R. V. Chaudron
The UML is a collection of 13 diagram notations to describe different views of a software system. The existing diagram types display model elements and their relations. Software engineering is becoming more and more model-centric, such that software engineers start using UML models for more tasks than just describing the system. Tasks such as analysis or prediction of system properties require additional information such as metrics of the UML model or from external sources, e.g. a version control system. In this paper we identify tasks of model-centric software engineering and information that is required to fulfill these tasks. We propose views to visualize the information to support fulfilling the tasks. This paper reports on a large-scale controlled experiment to validate the usefulness of the proposed views that are implemented in our MetricView Evolution tool. The results of the experiment with 100 participants are statistically significant and show that the correctness of comprehension is improved by 4.5% and that the time needed is reduced by 20%.
Keywords: UML; Interactive views; Quality; Task-orientation; Metrics; Comprehension; Empirical validation
Modeling context in mobile distributed systems with the UML BIBAKFull-Text 420-439
  C. Simons; G. Wirtz
Context-awareness plays an important role in mobile distributed systems since it enables the adaptation of mobile devices to the users. However, one of the major challenges is the preservation of the users' privacy. Many different approaches of modeling the context of the user exist, but the incorporation of privacy restrictions into context models, which makes the protection of privacy apparent, is missing. This paper presents the Context Modeling Profile (CMP), a lightweight UML (Unified Modeling Language) extension, as a visual language for context models in mobile distributed systems. The resulting models embody metainformation of the context, i.e. source and validity of context information, and reflect privacy restrictions. The profile provides several well-formedness rules for context models and supports the development of context-aware mobile applications through an adequate visual modeling language. A case study is used to illustrate the approach.
Keywords: Context modeling; UML profile; Mobile distributed systems
Face alive icon BIBAKFull-Text 440-453
  Xin Li; Chieh-Chih Chang; Shi-Kuo Chang
In this paper, we propose a methodology to synthesize facial expressions from photographs for devices with limited processing power, network bandwidth and display area, which is referred as "LLL" environment. The facial images are reduced to small-sized face alive icons (FAI). Expressions are decomposed into the expression-unrelated facial features and the expression-related expressional features. As a result, the common features can be identified and reused across expressions using a discrete model constructed from the statistical analysis on training dataset. Semantic synthesis rules are introduced to reveal the inner relations of expressions. Verified by the experimental prototype system and usability study, the approach can produce acceptable facial expression images utilizing much less computing, network and storage resource than the traditional approaches.
Keywords: Facial expression synthesis; Face alive icons; Emoticons; Iconic visual language
Erratum to "A diagrammatic approach to investigate interval relations": [Journal of Visual Languages & Computing 17 (2006) 466-502] BIBFull-Text 454
  Zenon Kulpa

VLC 2007-10 Volume 18 Issue 5

Introduction BIBFull-Text 455-457
  Tiziana Catarci; Maria Francesca Costabile; Piero Mussio
On the problem of placing names on a map BIBAKFull-Text 458-469
  Herbert Freeman
Probably the most difficult task of producing a map is that of placing the text for the point, line and area features that one expects to see depicted on a geographic map. This paper describes the problem, its subtleties, and challenges, and outlines a computerized approach to solving it. With the newly developed methods, it is now possible to produce fully labeled maps and charts with a quality that approaches that achievable only by an expert cartographer and to do so in tiny fraction of the time required when done manually.
Keywords: Text placement; Map generation; Cartography
Visual form processing BIBAKFull-Text 470-483
  Carlo Arcelli; Luigi P. Cordella; Gabriella Sanniti di Baja
The paper shortly describes some methods proposed for visual form processing of 2D and 3D digital objects spanning from low to high-level vision. In particular, both contour-based and medial representations are described, as well as techniques for object decomposition, description and classification.
Keywords: Image representation; Description; Classification
Future scenarios of parallel computing: Distributed sensor networks BIBAKFull-Text 484-491
  Virginio Cantoni; Luca Lombardi; Paolo Lombardi
Over the past few years, motivated by the accelerating technological convergence of sensing, computing and communications, there has been a growing interest in potential and technological challenges of Wireless Sensor Network. This paper will introduce a wide range of current basic research lines dealing with ad hoc networks of spatially distributed systems, data rate requirements and constraints, real-time fusion and registration of data from distributed sensors, cooperative control, hypothesis generation, and network consensus filtering. This technical domain has matured to the point where a number of industrial products and systems have appeared. The presentation will also describe the state of the art regarding current and soon-to-appear applications.
Keywords: Wireless Sensor Networks; Massively parallel processing; MEMS; Motes; Distributed sensor networks
Enhancing collaborative synchronous UML modelling with fine-grained versioning of software artefacts BIBAKFull-Text 492-503
  A. De Lucia; F. Fasano; G. Scanniello; G. Tortora
Software development teams are composed of people with different knowledge and skills, who contribute to a project from often widely dispersed locations. Software development in geographically distributed environments creates software engineering challenges due to the interaction among members of distributed teams and the management of consistency and concurrency among project artefacts. In this paper, we propose Synchronous collaborative modelling Tool Enhanced with VErsioning management (STEVE) a collaborative tool supporting distributed Unified Modelling Language (UML) modelling of software systems. The tool provides a communication infrastructure enabling the concurrent editing of the same UML diagram at the same time by distributed developers. Complex UML diagrams are decomposed and managed in a fine-grained hierarchy of sub-artefacts, thus providing change and configuration management functionalities for both the diagram and the graphical objects. Thus, software predefined diagram components can be consistently reused and shared across different diagrams of a given project.
Keywords: Collaborative synchronous visual modelling; Computer Supported Cooperative Work; Fine-grained artefact management; Distributed Software Development
Application of a transparent interface methodology to image processing BIBAKFull-Text 504-512
  Luigi Cinque; Sergio Sellers Cañzares; Steven Tanimoto
Many software engineering projects involve a significant design component in which an algorithm must be formulated as a sequence of processing steps that meets a solution criterion. As the problems tackled become more complex, it becomes increasingly important to create and use tools that help designers understand and manage the design process. We demonstrate the use of design tool called T-STAR in the domain of image processing, in which a toolkit called the TRAnsparent Image Problem Solving Environment (TRAIPSE) is extended to solve face-recognition problems. Key features of TRAIPSE are its visual interface to the space of partial image processing algorithms and its support for automatic assistance in exploring the space. The specific application we present is the analysis of human face images.
Keywords: Face detection; Image processing; Tree structure; State-space search; Graphical interface; Exploratory data processing; Image operator
Visual languages and quality evaluation in multichannel adaptive information systems BIBAKFull-Text 513-522
  C. Batini; E. Bertini; M. Comerio; A. Maurino; G. Santucci
Multichannel Adaptive Information Systems (ISs) are becoming the new paradigm for building complex interorganization ISs based on the use of different devices, Web services, and XML specifications. Modeling Multichannel Adaptive ISs requires complex interactions between the users and the system front-end due to the different capabilities of existing devices. Unfortunately, the expressive power and effectiveness of visual languages have not been fully exploited in this new area. In this paper we address two related issues. First we propose a visual language that allows for adapting the presentation layer to different physical devices; then we describe a technique to evaluate possible tradeoffs between usability and other qualities of service in Web services design.
Keywords: Visual languages; Web service; Quality of service; Usability; Atomic interaction units; Service oriented architecture; Evaluation technique
Pointed pictures BIBAKFull-Text 523-536
  Paolo Bottoni; Anna Labella
We introduce the notion of entry and exit points for pictures and define a new operation on the resulting set of pointed pictures, which allows an algebraic description of them. This provides an alternative way for picture composition via a single operation, with respect to the classical use of pairs of operations. This can be used to impose a reading order in a picture resulting from the juxtaposition of several partial ones.
Keywords: Pictures; Operations; Category theory; Concatenation

VLC 2007-12 Volume 18 Issue 6

An experimental study of the impact of visual semantic feedback on novice programming BIBAKFull-Text 537-559
  Christopher D. Hundhausen; Jonathan Lee Brown
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. These results suggest that, at least in the case of novice imperative programming environments, the benefits of delivering a continuously updated visual representation of a program's execution may fail to justify the substantial costs of implementing such feedback. We recommend that programming environment designers instead direct their efforts toward carefully considering when programmers will be ready to take advantage of the feedback that is coming toward them, along with what content will be of most benefit to them.
Keywords: Experimental studies; Algorithm visualization; Novice programming environments; Liveness; Feedback self-selection
An approach to precisely specifying the problem domain of design patterns BIBAKFull-Text 560-591
  Dae-Kyoo Kim; Charbel El Khawand
The problem domain of a design pattern describes the problem context in which the pattern can be applied. In general, determining the applicability of a pattern to a particular problem heavily relies on the knowledge and experience the developer has with the pattern. This significantly limits the use of patterns. To address this issue, we propose an approach for rigorously specifying the problem domain of patterns. This approach systematically guides one to develop rigorous specifications of a pattern's problem domain using a precise notation. The resulting specifications can be used to develop tool support for automatic evaluation of pattern applicability. We describe the approach using the Visitor pattern, and show how the resulting specification can be used to evaluate pattern applicability for a particular problem model. We also demonstrate tool support for the approach.
Keywords: Design pattern; Formalization; Pattern applicability; Problem domain; Reuse; UML
Visualizing processes on the web BIBAKFull-Text 592-612
  Delfina Malandrino; Giuseppina Palmieri; Vittorio Scarano
In this paper, we describe 3WPS, a framework to build distributed systems that are able to monitor and interact with a process through a 3D interface that is accessible via the World Wide Web (WWW). The 3WPS is easily configurable, easily adaptable to different processes with high reuse of its software components and its distributed architecture leverages on off-the-shelf components of the WWW infrastructure such as Java applets and Virtual Reality Modeling Language (VRML) browsers. We describe the characteristics of 3WPS framework by mainly focusing on the issue of programmability and by contextually providing an example tour of its usage.
Keywords: Visualization systems; Monitoring; VRML

Book Review

P. Fishwick (Ed.) Aesthetic Computing, MIT Press, Cambridge, 2006, ISBN 0-262-06250-X BIBFull-Text 613-616
  Kang Zhang