| TimeLine and visualization of multiple-data sets and the visualization querying challenge | | BIBAK | Full-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 | | BIBAK | Full-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 | | BIBAK | Full-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 | | BIBAK | Full-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 | |||
| Special Issue on Selected Papers from VLC 2005 | | BIB | Full-Text | 97-98 | |
| Philip Cox | |||
| Visual programming with analogical representations: Inspirations from a semiotic analysis of comics | | BIBAK | Full-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 | | BIBAK | Full-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 | | BIBAK | Full-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 | | BIBAK | Full-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 | |||
| Introduction to the Special Issue on Visual Languages and Techniques for Human-GIS Interaction | | BIB | Full-Text | 227-229 | |
| Monica Sebillo; Genny Tortora; Giuliana Vitiello | |||
| A visual tool for ontology alignment to enable geospatial interoperability | | BIBAK | Full-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 | | BIBAK | Full-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 | | BIBAK | Full-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 | | BIBAK | Full-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 | | BIBAK | Full-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 | |||
| Visual Interactions in Software Artifacts: Guest Editors' Foreword | | BIB | Full-Text | 357-358 | |
| Guido Wirtz; Kang Zhang | |||
| POSAML: A visual modeling language for middleware provisioning | | BIBAK | Full-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 | | BIBAK | Full-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 | | BIBAK | Full-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 | | BIBAK | Full-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 | | BIBAK | Full-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] | | BIB | Full-Text | 454 | |
| Zenon Kulpa | |||
| Introduction | | BIB | Full-Text | 455-457 | |
| Tiziana Catarci; Maria Francesca Costabile; Piero Mussio | |||
| On the problem of placing names on a map | | BIBAK | Full-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 | | BIBAK | Full-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 | | BIBAK | Full-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 | | BIBAK | Full-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 | | BIBAK | Full-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 | | BIBAK | Full-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 | | BIBAK | Full-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 | |||
| An experimental study of the impact of visual semantic feedback on novice programming | | BIBAK | Full-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 | | BIBAK | Full-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 | | BIBAK | Full-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 | |||
| P. Fishwick (Ed.) Aesthetic Computing, MIT Press, Cambridge, 2006, ISBN 0-262-06250-X | | BIB | Full-Text | 613-616 | |
| Kang Zhang | |||