Open Access. Powered by Scholars. Published by Universities.®

Software Engineering Commons™

Open Access. Powered by Scholars. Published by Universities.®

Singapore Management University

Discipline
Keyword
Publication Year
Publication
Publication Type

Articles 1921 - 1950 of 2211

Full-Text Articles in Software Engineering

Designing Low-Cost Mobile Websites For Libraries, Tiffini Travis, Chee Hsien Aaron (Zheng Zhixian) Tay Oct 2011

Designing Low-Cost Mobile Websites For Libraries, Tiffini Travis, Chee Hsien Aaron (Zheng Zhixian) Tay

Research Collection Library

As smartphone ownership rises, usage patterns are expanding. Libraries face an increasing demand for online content delivered in a mobile compatible format while being constrained by financial and staffing limitations. Solutions are readily available through free and low-cost products to create mobile web pages and existing design models from which to draw inspiration. Platform-specific apps can easily support the kinds of content most commonly delivered on library mobile pages: basic contact information and outbound links to the catalog, databases, and other resources. Two software platforms for creating simple pages were tested, the free software from WordPress with mobile detection formatting …


Verification Of Orchestration Systems Using Compositional Partial Order Reduction, Tian Huat Tan, Yang Liu, Jun Sun, Jin Song Dong Oct 2011

Verification Of Orchestration Systems Using Compositional Partial Order Reduction, Tian Huat Tan, Yang Liu, Jun Sun, Jin Song Dong

Research Collection School Of Computing and Information Systems

Orc is a computation orchestration language which is designed to specify computational services, such as distributed communication and data manipulation, in a concise and elegant way. Four concurrency primitives allow programmers to orchestrate site calls to achieve a goal, while managing timeouts, priorities, and failures. To guarantee the correctness of Orc model, effective verification support is desirable. Orc has a highly concurrent semantics which introduces the problem of state-explosion to search-based verification methods like model checking. In this paper, we present a new method, called Compositional Partial Order Reduction (CPOR), which aims to provide greater state-space reduction than classic partial …


Prts: An Approach For Model Checking Probabilistic Real-Time Hierarchical Systems, Jun Sun, Yang Liu, Songzheng Song, Jin Song Dong, Xiaohong Li Oct 2011

Prts: An Approach For Model Checking Probabilistic Real-Time Hierarchical Systems, Jun Sun, Yang Liu, Songzheng Song, Jin Song Dong, Xiaohong Li

Research Collection School Of Computing and Information Systems

Model Checking real-life systems is always difficult since such systems usually have quantitative timing factors and work in unreliable environment. The combination of real-time and probability in hierarchical systems presents a unique challenge to system modeling and analysis. In this work, we develop an automated approach for verifying probabilistic, real-time, hierarchical systems. Firstly, a modeling language called PRTS is defined, which combines data structures, real-time and probability. Next, a zone-based method is used to build a finite-state abstraction of PRTS models so that probabilistic model checking could be used to calculate the probability of a system satisfying certain property. We …


Towards A Model Checker For Nesc And Wireless Sensor Networks, Manchun Zheng, Jun Sun, Yang Liu, Jin Song Dong, Yu Gu Oct 2011

Towards A Model Checker For Nesc And Wireless Sensor Networks, Manchun Zheng, Jun Sun, Yang Liu, Jin Song Dong, Yu Gu

Research Collection School Of Computing and Information Systems

Wireless sensor networks (WSNs) are expected to run unattendedly for critical tasks. To guarantee the correctness of WSNs is important, but highly nontrivial due to the distributed nature. In this work, we present an automatic approach to directly verify WSNs built with TinyOS applications implemented in the NesC language. To achieve this target, we firstly define a set of formal operational semantics for most of the NesC language structures for the first time. This allows us to capture the behaviors of sensors by labelled transition systems (LTSs), which are the underlying semantic models of NesC programs. Secondly, WSNs are modeled …


Differencing Labeled Transition Systems, Zhenchang Xing, Jun Sun, Yang Liu, Jin Song Dong Oct 2011

Differencing Labeled Transition Systems, Zhenchang Xing, Jun Sun, Yang Liu, Jin Song Dong

Research Collection School Of Computing and Information Systems

Concurrent programs often use Labeled Transition Systems (LTSs) as their operational semantic models, which provide the basis for automatic system analysis and verification. System behaviors (generated from the operational semantics) evolve as programs evolve for fixing bugs or implementing new user requirements. Even when a program remains unchanged, its LTS models explored by a model checker or analyzer may be different due to the application of different exploration methods. In this paper, we introduce a novel approach (named SpecDiff) to computing the differences between two LTSs, representing the evolving behaviors of a concurrent program. SpecDiff considers LTSs as Typed Attributed …


A Survey Of Techniques And Challenges In Underwater Localization, Hwee-Pink Tan, Roee Diamant, Winston K. G. Seah, Marc Waldmeyer Oct 2011

A Survey Of Techniques And Challenges In Underwater Localization, Hwee-Pink Tan, Roee Diamant, Winston K. G. Seah, Marc Waldmeyer

Research Collection School Of Computing and Information Systems

Underwater Wireless Sensor Networks (UWSNs) are expected to support a variety of civilian and military applications. Sensed data can only be interpreted meaningfully when referenced to the location of the sensor, making localization an important problem. While global positioning system (GPS) receivers are commonly used in terrestrial WSNs to achieve this, this is infeasible in UWSNs as GPS signals do not propagate through water. Acoustic communications is the most promising mode of communication underwater. However, underwater acoustic channels are characterized by harsh physical layer conditions with low bandwidth, high propagation delay and high bit error rate. Moreover, the variable speed …


Recommending People In Developers' Collaboration Network, Didi Surian, Nian Liu, David Lo, Hanghang Tong, Ee Peng Lim, Christos Faloutsos Oct 2011

Recommending People In Developers' Collaboration Network, Didi Surian, Nian Liu, David Lo, Hanghang Tong, Ee Peng Lim, Christos Faloutsos

Research Collection School Of Computing and Information Systems

Many software developments involve collaborations of developers across the globe. This is true for both open-source and closed-source development efforts. Developers collaborate on different projects of various types. As with any other teamwork endeavors, finding compatibility among members in a development team is helpful towards the realization of the team’s goal. Compatible members tend to share similar programming style and naming strategy, communicate well with one another, etc. However, finding the right person to work with is not an easy task. In this work, we extract information available from Sourceforge.Net, the largest database of open source software, and build developer …


An Exploratory Study Of Software Reverse Engineering In A Security Context, Christoph Treude, Fernando Figueira Filho, Margaret-Anne Storey, Martin Salois Oct 2011

An Exploratory Study Of Software Reverse Engineering In A Security Context, Christoph Treude, Fernando Figueira Filho, Margaret-Anne Storey, Martin Salois

Research Collection School Of Computing and Information Systems

Illegal cyberspace activities are increasing rapidly and many software engineers are using reverse engineering methods to respond to attacks. The security-sensitive nature of these tasks, such as the understanding of malware or the decryption of encrypted content, brings unique challenges to reverse engineering: work has to be done offline, files can rarely be shared, time pressure is immense, and there is a lack of tool and process support for capturing and sharing the knowledge obtained while trying to understand plain assembly code. To help us gain an understanding of this reverse engineering work, we report on an exploratory study done …


Cooperative Reinforcement Learning In Topology-Based Multi-Agent Systems, Dan Xiao, Ah-Hwee Tan Oct 2011

Cooperative Reinforcement Learning In Topology-Based Multi-Agent Systems, Dan Xiao, Ah-Hwee Tan

Research Collection School Of Computing and Information Systems

Topology-based multi-agent systems (TMAS), wherein agents interact with one another according to their spatial relationship in a network, are well suited for problems with topological constraints. In a TMAS system, however, each agent may have a different state space, which can be rather large. Consequently, traditional approaches to multi-agent cooperative learning may not be able to scale up with the complexity of the network topology. In this paper, we propose a cooperative learning strategy, under which autonomous agents are assembled in a binary tree formation (BTF). By constraining the interaction between agents, we effectively unify the state space of individual …


Concern Localization Using Information Retrieval: An Empirical Study On Linux Kernel, Shaowei Wang, David Lo, Zhenchang Xing, Lingxiao Jiang Oct 2011

Concern Localization Using Information Retrieval: An Empirical Study On Linux Kernel, Shaowei Wang, David Lo, Zhenchang Xing, Lingxiao Jiang

Research Collection School Of Computing and Information Systems

Many software maintenance activities need to find code units (functions, files, etc.) that implement a certain concern (features, bugs, etc.). To facilitate such activities, many approaches have been proposed to automatically link code units with concerns described in natural languages, which are termed as concern localization and often employ Information Retrieval (IR) techniques. There has not been a study that evaluates and compares the effectiveness of latest IR techniques on a large dataset. This study fills this gap by investigating ten IR techniques, some of which are new and have not been used for concern localization, on a Linux kernel …


Code Search Via Topic-Enriched Dependence Graph Matching, Shaowei Wang, David Lo, Lingxiao Jiang Oct 2011

Code Search Via Topic-Enriched Dependence Graph Matching, Shaowei Wang, David Lo, Lingxiao Jiang

Research Collection School Of Computing and Information Systems

Source code contains textual, structural, and semantic information, which can all be leveraged for effective search. Some studies have proposed semantic code search where users can specify query topics in a natural language. Other studies can search through system dependence graphs. In this paper, we propose a semantic dependence search engine that integrates both kinds of techniques and can retrieve code snippets based on expressive user queries describing both topics and dependencies. Users can specify their search targets in a free form format describing desired topics (i.e., high-level semantic or functionality of the target code); a specialized graph query language …


An Efficient Algorithm For Learning Event-Recording Automata, Shang-Wei Lin, Étienne André, Jin Song Dong, Jun Sun, Yang Liu Oct 2011

An Efficient Algorithm For Learning Event-Recording Automata, Shang-Wei Lin, Étienne André, Jin Song Dong, Jun Sun, Yang Liu

Research Collection School Of Computing and Information Systems

In inference of untimed regular languages, given an unknown language to be inferred, an automaton is constructed to accept the unknown language from answers to a set of membership queries each of which asks whether a string is contained in the unknown language. One of the most well-known regular inference algorithms is the L* algorithm, proposed by Angluin in 1987, which can learn a minimal deterministic finite automaton (DFA) to accept the unknown language. In this work, we propose an efficient polynomial time learning algorithm, TL*, for timed regular language accepted by event-recording automata. Given an unknown timed regular language, …


Effective Communication Of Software Development Knowledge Through Community Portals, Christoph Treude, Margaret-Anne Storey Sep 2011

Effective Communication Of Software Development Knowledge Through Community Portals, Christoph Treude, Margaret-Anne Storey

Research Collection School Of Computing and Information Systems

Knowledge management plays an important role in many software organizations. Knowledge can be captured and distributed using a variety of media, including traditional help files and manuals, videos, technical articles, wikis, and blogs. In recent years, web-based community portals have emerged as an important mechanism for combining various communication channels. However, there is little advice on how they can be effectively deployed in a software project.In this paper, we present a first study of a community portal used by a closed source software project. Using grounded theory, we develop a model that characterizes documentation artifacts along several dimensions, such as …


Structural Complexity And Programmer Team Strategy: An Experimental Test, Narayan Ramasubbu, Chris F. Kemerer, Jeff Min Teck Hong Sep 2011

Structural Complexity And Programmer Team Strategy: An Experimental Test, Narayan Ramasubbu, Chris F. Kemerer, Jeff Min Teck Hong

Research Collection School Of Computing and Information Systems

This study develops and empirically tests the idea that the impact of structural complexity on perfective maintenance of object-oriented software is significantly determined by the team strategy of programmers (independent or collaborative). We analyzed two key dimensions of software structure, coupling and cohesion, with respect to the maintenance effort and the perceived ease-of-maintenance by pairs of programmers. Hypotheses based on the distributed cognition and task interdependence theoretical frameworks were tested using data collected from a controlled lab experiment employing professional programmers. The results show a significant interaction effect between coupling, cohesion, and programmer team strategy on both maintenance effort and …


Defending Against Cross Site Scripting Attacks, Lwin Khin Shar, Hee Beng Kuan Tan Aug 2011

Defending Against Cross Site Scripting Attacks, Lwin Khin Shar, Hee Beng Kuan Tan

Research Collection School Of Computing and Information Systems

Researchers have proposed multiple solutions to cross-site scripting, but vulnerabilities continue to exist in many Web applications due to developers' lack of understanding of the problem and their unfamiliarity with current defenses' strengths and limitations.


Automated Detection Of Likely Design Flaws In Layered Architectures, Aditya Budi, - Lucia, David Lo, Lingxiao Jiang, Shaowei Wang Jul 2011

Automated Detection Of Likely Design Flaws In Layered Architectures, Aditya Budi, - Lucia, David Lo, Lingxiao Jiang, Shaowei Wang

Research Collection School Of Computing and Information Systems

Layered architecture prescribes a good principle for separating concerns to make systems more maintainable. One example of such layered architectures is the separation of classes into three groups: Boundary, Control, and Entity, which are referred to as the three analysis class stereotypes in UML. Classes of different stereotypes are interacting with one another, when properly designed, the overall interaction would be maintainable, flexible, and robust. On the other hand, poor design would result in less maintainable system that is prone to errors. In many software projects, the stereotypes of classes are often missing, thus detection of design flaws becomes non-trivial. …


A Hybrid Agent Architecture Integrating Desire, Intention And Reinforcement Learning, Ah-Hwee Tan, Yew-Soon Ong, Akejariyawong Tapanuj Jul 2011

A Hybrid Agent Architecture Integrating Desire, Intention And Reinforcement Learning, Ah-Hwee Tan, Yew-Soon Ong, Akejariyawong Tapanuj

Research Collection School Of Computing and Information Systems

This paper presents a hybrid agent architecture that integrates the behaviours of BDI agents, specifically desire and intention, with a neural network based reinforcement learner known as Temporal DifferenceFusion Architecture for Learning and COgNition (TD-FALCON). With the explicit maintenance of goals, the agent performs reinforcement learning with the awareness of its objectives instead of relying on external reinforcement signals. More importantly, the intention module equips the hybrid architecture with deliberative planning capabilities, enabling the agent to purposefully maintain an agenda of actions to perform and reducing the need of constantly sensing the environment. Through reinforcement learning, plans can also be …


Optimizing Sensor Data Acquisition For Energy-Efficient Smartphone-Based Continuous Event Processing, Archan Misra, Lipyeow Lim Jun 2011

Optimizing Sensor Data Acquisition For Energy-Efficient Smartphone-Based Continuous Event Processing, Archan Misra, Lipyeow Lim

Research Collection School Of Computing and Information Systems

Many pervasive applications, such as activity recognition or remote wellness monitoring, utilize a personal mobile device (aka smartphone) to perform continuous processing of data streams acquired from locally-connected, wearable, sensors. To ensure the continuous operation of such applications on a battery-limited mobile device, it is essential to dramatically reduce the energy overhead associated with the process of sensor data acquisition and processing. To achieve this goal, this paper introduces a technique of "acquisition-cost" aware continuous query processing, as part of the Acquisition Cost-Aware Query Adaptation (ACQUA) framework. ACQUA replaces the current paradigm, where the data is typically streamed (pushed) from …


Kb-Anonymity: A Model For Anonymized Behavior-Preserving Test And Debugging Data, Aditya Budi, David Lo, Lingxiao Jiang, Lucia Lucia Jun 2011

Kb-Anonymity: A Model For Anonymized Behavior-Preserving Test And Debugging Data, Aditya Budi, David Lo, Lingxiao Jiang, Lucia Lucia

Research Collection School Of Computing and Information Systems

It is often very expensive and practically infeasible to generate test cases that can exercise all possible program states in a program. This is especially true for a medium or large industrial system. In practice, industrial clients of the system often have a set of input data collected either before the system is built or after the deployment of a previous version of the system. Such data are highly valuable as they represent the operations that matter in a client's daily business and may be used to extensively test the system. However, such data often carries sensitive information and cannot …


Real-Time Trip Information Service For A Large Taxi Fleet, Rajesh Krishna Balan, Nguyen Xuan Khoa, Lingxiao Jiang Jun 2011

Real-Time Trip Information Service For A Large Taxi Fleet, Rajesh Krishna Balan, Nguyen Xuan Khoa, Lingxiao Jiang

Research Collection School Of Computing and Information Systems

In this paper, we describe the design, analysis, implementation, and operational deployment of a real-time trip information system that provides passengers with the expected fare and trip duration of the taxi ride they are planning to take. This system was built in cooperation with a taxi operator that operates more than 15,000 taxis in Singapore. We first describe the overall system design and then explain the efficient algorithms used to achieve our predictions based on up to 21 months of historical data consisting of approximately 250 million paid taxi trips. We then describe various optimisations (involving region sizes, amount of …


Adaptive Display Power Management For Mobile Games, Bhojan Anand, Karthik Thirugnanam, Jeena Sebastian, Pravein G. Kannan, Akhihebbal L. Ananda, Mun Choon Chan, Rajesh Krishna Balan Jun 2011

Adaptive Display Power Management For Mobile Games, Bhojan Anand, Karthik Thirugnanam, Jeena Sebastian, Pravein G. Kannan, Akhihebbal L. Ananda, Mun Choon Chan, Rajesh Krishna Balan

Research Collection School Of Computing and Information Systems

In this paper, we show how tone mapping techniques can be used to dynamically increase the image brightness, thus allowing the LCD backlight levels to be reduced. This saves significant power as the majority of the LCD’s display power is consumed by its backlight. The Gamma function (or equivalent) can be efficiently implemented in smartphones with minimal resource cost. We describe how we overcame the Gamma function’s non-linear nature by using adaptive thresholds to apply different Gamma values to images with differing brightness levels. These adaptive thresholds allow us to save significant amounts of power while preserving the image quality. …


High-Performance Composite Event Monitoring System Supporting Large Numbers Of Queries And Sources, Sangjeong Lee, Youngki Lee, Byoungjip Kim, K. Selcuk Candan, Yunseok Rhee, Junehwa Song Jun 2011

High-Performance Composite Event Monitoring System Supporting Large Numbers Of Queries And Sources, Sangjeong Lee, Youngki Lee, Byoungjip Kim, K. Selcuk Candan, Yunseok Rhee, Junehwa Song

Research Collection School Of Computing and Information Systems

This paper presents a novel data structure, called Event-centric Composable Queue (ECQ), a basic building block of a new scalable composite event monitoring (CEM) framework, SCEMon. In particular, we focus on the scalability issues when large numbers of CEM queries and event sources exist in upcoming CEM environments. To address these challenges effectively, we take an event-centric sharing approach rather than dealing with queries and sources separately. ECQ is a shared queue, which stores incoming event instances of a primitive event class. ECQs are designed to facilitate efficient shared evaluations of multiple queries over very large volumes of event streams …


On Combining State Space Reductions With Global Fairness Assumptions, Shao Jie Zhang, Jun Sun, Jun Pang, Yang Liu, Jin Song Dong Jun 2011

On Combining State Space Reductions With Global Fairness Assumptions, Shao Jie Zhang, Jun Sun, Jun Pang, Yang Liu, Jin Song Dong

Research Collection School Of Computing and Information Systems

Model checking has established itself as an effective system analysis method, as it is capable of proving/dis-proving properties automatically. Its application to practical systems is however limited by state space explosion. Among effective state reduction techniques are symmetry reduction and partial order reduction. Global fairness often plays a vital role in designing self-stabilizing population protocols. It is known that combining fairness and symmetry reduction is nontrivial. In this work, we first show that global fairness, unlike weak/strong fairness, can be combined with symmetry reduction. We extend the PAT model checker with the technique and demonstrate its usability by verifying recently …


Design And Performance Analysis Of Mac Schemes For Wireless Sensor Networks Powered By Ambient Energy Harvesting, Zhi Ang Eu, Hwee-Pink Tan, Winston K. G. Seah May 2011

Design And Performance Analysis Of Mac Schemes For Wireless Sensor Networks Powered By Ambient Energy Harvesting, Zhi Ang Eu, Hwee-Pink Tan, Winston K. G. Seah

Research Collection School Of Computing and Information Systems

Energy consumption is a perennial issue in the design of wireless sensor networks (WSNs) which typically rely on portable sources like batteries for power. Recent advances in ambient energy harvesting technology have made it a potential and promising alternative source of energy for powering WSNs. By using energy harvesters with supercapacitors, WSNs are able to operate perpetually until hardware failure and in places where batteries are hard or impossible to replace. In this paper, we study the performance of different medium access control (MAC) schemes based on CSMA and polling techniques for WSNs which are solely powered by ambient energy …


Configuring Global Software Teams: A Multi-Company Analysis Of Productivity, Quality, And Profits, Narayanasamy Ramasubbu, Marcelo Cataldo, Rajesh Krishna Balan, James Herbsleb May 2011

Configuring Global Software Teams: A Multi-Company Analysis Of Productivity, Quality, And Profits, Narayanasamy Ramasubbu, Marcelo Cataldo, Rajesh Krishna Balan, James Herbsleb

Research Collection School Of Computing and Information Systems

In this paper, we examined the impact of project-level configurational choices of globally distributed software teams on project productivity, quality, and profits. Our analysis used data from 362 projects of four different firms. These projects spanned a wide range of programming languages, application domain, process choices, and development sites spread over 15 countries and 5 continents. Our analysis revealed fundamental tradeoffs in choosing configurational choices that are optimized for productivity, quality, and/or profits. In particular, achieving higher levels of productivity and quality require diametrically opposed configurational choices. In addition, creating imbalances in the expertise and personnel distribution of project teams …


Prototyping Video Games With Animation, Richard C. Davis May 2011

Prototyping Video Games With Animation, Richard C. Davis

Research Collection School Of Computing and Information Systems

This paper outlines a proposed design for StorySketch, a new video game storyboarding system. StorySketch borrows ideas from the K-Sketch animation sketching system, which allows short animations to be created in minutes or seconds. We build on K-Sketch in four ways. key frame animation capabilities, a branching timeline view, microphone and web-cam support, and hooks to connect to online game design documents.


Measuring Api Documentation On The Web, Chris Parnin, Christoph Treude May 2011

Measuring Api Documentation On The Web, Chris Parnin, Christoph Treude

Research Collection School Of Computing and Information Systems

Software development blogs, developer forums and Q&A websites are changing the way software is documented. With these tools, developers can create and communicate knowledge and experiences without relying on a central authority to provide official documentation. Instead, any content created by a developer is just a web search away. To understand whether documentation via social media can replace or augment more traditional forms of documentation, we study the extent to which the methods of one particular API — jQuery — are documented on the Web. We analyze 1,730 search results and show that software development blogs in particular cover 87.9% …


How Do Programmers Ask And Answer Questions On The Web? (Nier Track), Christoph Treude, Ohad Barzilay, Margaret-Anne Storey May 2011

How Do Programmers Ask And Answer Questions On The Web? (Nier Track), Christoph Treude, Ohad Barzilay, Margaret-Anne Storey

Research Collection School Of Computing and Information Systems

Question and Answer (Q&A) websites, such as Stack Overflow, use social media to facilitate knowledge exchange between programmers and fill archives with millions of entries that contribute to the body of knowledge in software development. Understanding the role of Q&A websites in the documentation landscape will enable us to make recommendations on how individuals and companies can leverage this knowledge effectively. In this paper, we analyze data from Stack Overflow to categorize the kinds of questions that are asked, and to explore which questions are answered well and which ones remain unanswered. Our preliminary findings indicate that Q&A websites are …


Second International Workshop On Web 2.0 For Software Engineering (Web2se 2011), Christoph Treude, Margaret-Anne Storey, Arie Van Deursen, Andrew Begel, Sue Black May 2011

Second International Workshop On Web 2.0 For Software Engineering (Web2se 2011), Christoph Treude, Margaret-Anne Storey, Arie Van Deursen, Andrew Begel, Sue Black

Research Collection School Of Computing and Information Systems

Social software is built around an "architecture of participation" where user data is aggregated as a side-effect of using Web 2.0 applications. Web 2.0 implies that processes and tools are socially open, and that content can be used in several different contexts. Web 2.0 tools and technologies support interactive information sharing, data interoperability and user centered design. For instance, wikis, blogs, tags and feeds help us organize, manage and categorize content in an informal and collaborative way. Some of these technologies have made their way into collaborative software development processes and development platforms. These processes and environments are just scratching …


Sandcanvas: A Multi-Touch Art Medium Inspired By Sand Animation, Rubaiat Habib Kazi, Kien-Chuan Chua, Shengdong Zhao, Richard Christopher Davis, Kok-Lim Low May 2011

Sandcanvas: A Multi-Touch Art Medium Inspired By Sand Animation, Rubaiat Habib Kazi, Kien-Chuan Chua, Shengdong Zhao, Richard Christopher Davis, Kok-Lim Low

Research Collection School Of Computing and Information Systems

Sand animation is a performance art technique in which an artist tells stories by creating animated images with sand. Inspired by this medium, we have developed a new multitouch digital artistic medium named SandCanvas that simplifies the creation of sand animations. SandCanvas also goes beyond traditional sand animation with tools for mixing sand animation with video and replicating recorded free-form hand gestures. In this paper, we analyze common sand animation hand gestures, present SandCanvas’s intuitive UI, and describe implementation challenges we encountered. We also present an evaluation with professional and novice artists that shows the importance and unique affordances of …