VLDB 2026 Research / reviewers in the wild / expert
T. C. Nicholas Graham
dblp:g/TCNicholasGraham · also Thomas C. Nicholas Graham
· DBLP profile ↗
49ranked-venue papers
10as first author
11since 2021 · last 2025
0000-0001-6723-1936ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Human-computer interaction and ubiquitous computing · 39 · 7 first-author · 11 since 2021Software engineering, systems software and programming languages · 9 · 3 first-authorGraphics, computer vision, multimedia, augmented reality and games · 2
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2025 | Looking through the Lens: Contextualizing and Operationalizing Design Recommendations for Rehabilitation Games for Young PeopleabstractGames for physical therapy can motivate patients, and HCI research has provided various recommendations for their design. However, such recommendations often remain at a high level: They are rarely reviewed with patients or appraised through application to game design and analysis. We address this gap by refining and operationalizing existing lessons for therapeutic games for young people. First, we report on semi-structured interviews with young people (aged 7–16) and parents, reviewing the lessons. Second, we operationalize them using an established collection of game design patterns to provide concrete guidance for game design and analysis. We critically appraise our approach through application to two games for physical therapy, Liberi and Wii Fit. Results show that high-level design implications can be made actionable using existing game design patterns, and we contribute a practical approach for the analysis and design of games for physical therapy. Maria Aufheimer, Kathrin Maria Gerling, T. C. Nicholas Graham, André Rodrigues 0002, Zeynep Yildiz |
Proc. ACM Hum. Comput. Interact. | 3 |
| 2025 | Fake it 'til you load it: User Perceptions and Performance with Fast-Loading "False Front" Web PagesabstractLong page-load time for web applications is a common frustration for users – and despite substantial advances in web infrastructure, pages still regularly take more than a second to load. A potential solution to this problem is to show users a “false front” page that looks like the website (and loads quickly), and then switch to the real page once it has arrived. False front pages quickly show users the visual appearance of the page – but because they have not yet loaded the code for interaction, they may cause problems when users try to click on items or manipulate the interface. To provide a better understanding of how users perceive and perform with false-front pages, we developed a framework that specifies potential architectures and designs for several types of false front pages. Our false-front mechanism shows a realistic-looking version of a web application and allows users to “click ahead” before the full page has loaded (feedback shows users their click has been received, and clicks are queued for execution when the application becomes available). We provide details on how the different architectures can be implemented, and discuss two reference implementations that we have constructed. We carried out two crowdsourced studies that compared our false front pages to traditional representations of loading (an animated spinner and a skeleton screen), to see whether users were confused or frustrated by the false fronts, and to see how they perceived the pages’ loading time and responsiveness. Our results showed that false fronts led to better ratings of responsiveness and speed, faster task completion, and higher preference – suggesting that early loading of false fronts is a promising avenue to improve user experience with web applications. Taylan Dufresne, Carl Gutwin, T. C. Nicholas Graham |
Proc. ACM Hum. Comput. Interact. | 3 |
| 2025 | ScriptAR: No-Code Development of Augmented Reality Educational GamesabstractThere are significant barriers to the real-world adoption of educational games, including failing to match local curriculum, learning objectives, cultural norms, or student abilities. Ideally, teachers should be able to customize educational games for their classroom, but modification tools are too difficult and time-consuming to use, or not present at all. To address this problem, we present ScriptAR , a no-code tool that helps in the creation and modification of short educational stories without the need to program. ScriptAR supports easy transition from a narrative idea to the technical realization of a game using a simple spreadsheet interface. Feedback from ten teacher candidates and six elementary school students indicate that ScriptAR allows people with little technical background to rapidly develop augmented reality educational games that can be tailored to local curriculum and classroom environments. Robert Holford, Michaelah Wales, Lindsey J. Kelly, Steven Bednarski, Alison Bullock, Robin Harrap, Zack Macdonald, T. C. Nicholas Graham |
Proc. ACM Hum. Comput. Interact. | 8 |
| 2024 | Process, Roles, Tools, and Team: Understanding the Emerging Medium of Virtual Reality TheatreabstractVirtual reality (VR) theatre artists are combining theatre production and game development practices to create live performances in VR. To date, little is known about VR theatre creators’ experiences of this process or how staging a play in VR might affect the audience’s experience. To capture the experience of developing a VR theatre production we interviewed the production team behind the VR play You Should Have Stayed Home. Members of this team felt the process was a learning experience and shared the lessons they plan to incorporate into their future work. We report on the team’s efforts to understand the VR theatre medium, how this team was constructed, and challenges that they encountered. In this paper we present the opportunities that the production team members identified for creating novel experiences for VR audiences, and their own needs as creators. Michaelah Wales, Michael Wheeler, Gabriele Cimolino, Laura Levin, Jayna Mees, T. C. Nicholas Graham |
CHI | 6 |
| 2023 | An Examination of Motivation in Physical Therapy Through the Lens of Self-Determination Theory: Implications for Game DesignabstractWhile it is widely assumed that games can engage patients in therapy through their inherent ‘motivational pull’, relatively little attention has been paid to what HCI games research can learn from strategies employed by therapists. We address this gap by leveraging Self-Determination Theory (SDT) and its mini-theories Basic Psychological Needs Theory and Organismic Integration Theory as a theoretical lens on physical therapy for children and adolescents. Results from in-depth interviews with twelve therapists show that they carefully adjust sessions to allow patients to experience competence, making more comprehensive adjustments than currently offered by games. Additionally, we highlight how therapists leverage their relationship with patients to support motivation, but struggle to reconcile meaningful experiences of autonomy with therapeutic goals. On this basis, we reflect on implications for researchers and designers who create games for physical therapy, and the potential of SDT to provide a foundation for game design and therapeutic practice. Maria Aufheimer, Kathrin Maria Gerling, T. C. Nicholas Graham, Mari Naaris, Marco J. Konings, Elegast Monbaliu, Hans Hallez, Els Ortibus |
CHI | 3 |
| 2023 | Automation Confusion: A Grounded Theory of Non-Gamers' Confusion in Partially Automated Action GamesabstractPartial automation makes digital games simpler by performing game actions for players. It may simplify gameplay for non-gamers who have difficulty controlling and understanding games. However, the automation may make players confused about what they control and what the automation controls. To describe and explain non-gamers’ experiences of automation confusion, we analyzed gameplay, think-aloud, and interview data from ten non-gamer participants who played two partially automated games. Our results demonstrate how incorrect mental models, behaviours resulting from those models, and players’ attitudes towards the games led to different levels and types of confusion. Gabriele Cimolino, Renee (Xinyu) Chen, Carl Gutwin, T. C. Nicholas Graham |
CHI | 4 |
| 2023 | Supporting Aim Assistance Algorithms through a Rapidly Trainable, Personalized Model of Players' Spatial and Temporal Aiming AbilityabstractMultiplayer digital games can use aim assistance to help people with different levels of aiming ability to play together. Adrian L. Jessup Schneider, T. C. Nicholas Graham |
CHI | 2 |
| 2022 | Two Heads Are Better Than One: A Dimension Space for Unifying Human and Artificial Intelligence in Shared ControlabstractShared control is an emerging interaction paradigm in which a human and an AI partner collaboratively control a system. Shared control unifies human and artificial intelligence, making the human’s interactions with computers more accessible, safe, precise, effective, creative, and playful. This form of interaction has independently emerged in contexts as varied as mobility assistance, driving, surgery, and digital games. These domains each have their own problems, terminology, and design philosophies. Without a common language for describing interactions in shared control, it is difficult for designers working in one domain to share their knowledge with designers working in another. To address this problem, we present a dimension space for shared control, based on a survey of 55 shared control systems from six different problem domains. This design space analysis tool enables designers to classify existing systems, make comparisons between them, identify higher-level design patterns, and imagine solutions to novel problems. Gabriele Cimolino, T. C. Nicholas Graham |
CHI | 2 |
| 2021 | Beyond Fun: Players' Experiences of Accessible Rehabilitation Gaming for Spinal Cord InjuryabstractRehabilitation gaming—play of digital games that incorporate rehabilitation exercises—is a well-known and broadly applicable way to make physical rehabilitation more fun. It can motivate patients with spinal cord injury to engage in exercises that they find boring and can be as effective as traditional physiotherapy. However, patients’ needs are not only physical. Rehabilitation also needs to help patients overcome the psychological trauma of spinal cord injury. For patients coping with disability, hopelessness, depression, anxiety, or a loss of identity, rehabilitation gaming may provide benefits beyond making exercise more fun. We asked six participants with spinal cord injury to play three cycling-based rehabilitation games to determine how play might change their experiences of rehabilitation. They said that rehabilitation games may be able to help patients to actively participate in their rehabilitation, help them to rediscover who they are, and show them a better future living with spinal cord injury. Gabriele Cimolino, Sussan Askari, T. C. Nicholas Graham |
ASSETS | 3 |
| 2021 | Happy Driver: Investigating the Effect of Mood on Preferred Style of Driving in Self-Driving CarsabstractSelf-driving cars are around the corner, yet little is known about how users of self-driving cars will react to the car’s driving style, and whether the driver’s mood affects their driving style preference. This paper explores the impact of users’ mood on driving style preference in self-driving cars. An experiment was conducted online (N=182) to investigate participants’ preference for three driving styles (conservative, moderate, aggressive) under three induced moods (calm, neutral, excited). Measures of arousal, valence, and driving satisfaction were recorded. Overall, participants scored the aggressive driving style lowest, irrespective of driver mood. Participants’ mood impacted preference, where a mismatch between driving style and mood induced prior to the driving style predicted lower driver satisfaction scores. We conclude with the design recommendation that driving styles in self-driving cars should not be overly aggressive, and drivers’ mood should be taken into consideration when designing driving styles. Rachel Phinnemore, Gabriele Cimolino, Pritam Sarkar, Ali Etemad, T. C. Nicholas Graham |
HAI | 5 |
| 2021 | The Role of Partial Automation in Increasing the Accessibility of Digital GamesabstractDigital games are designed to be controlled using hardware devices such as gamepads, keyboards, and cameras. Some device inputs may be inaccessible to players with motor impairments, rendering them unable to play. Games and devices can be adapted to enable play, but for some players these adaptations may not go far enough. Games may require inputs that some players cannot provide with any device. To address this problem, we introduce partial automation, an accessibility technique that delegates control of inaccessible game inputs to an AI partner. Partial automation complements and builds on other approaches to improving games' accessibility, including universal design, player balancing, and interface adaptation. We have demonstrated partial automation in two games for the rehabilitation of spinal cord injury. Six study participants with vastly different motor abilities were able to play both games. Participants liked the increased personalization that partial automation affords, although some participants were confused by aspects of the AI's behaviour. Gabriele Cimolino, Sussan Askari, T. C. Nicholas Graham |
Proc. ACM Hum. Comput. Interact. | 3 |
| 2020 | Toward the Design of Enjoyable Games for Children with Fetal Alcohol Spectrum DisorderabstractFetal Alcohol Spectrum Disorder (FASD) is a heterogeneous and complex set of disorders caused by prenatal alcohol exposure, estimated to affect 2-5% of the North American population. Deficits associated with FASD affect social skill development and executive function, including emotional regulation and impulse control. These deficits can increase the difficulty of playing digital games. While considerable research has been performed in understanding how to design games for people with neurodevelopmental disorders in general, there is little data on how to design engaging games for children with FASD. We conducted a ten-week in-school gaming trial with eleven elementary-aged children with diagnosed or suspected FASD. Participants enjoyed playing together and responded well to the in-game reward system, while some game elements caused unexpected frustration. Based on our observations, we advise that games for FASD be designed to have low cost of failure, avoid retracting options, account for taking breaks when needed, show progression in rewards, and enable cooperative play. Adrian L. Jessup Schneider, Kathy Keiver, Alison Pritchard Orr, James N. Reynolds, Neven Golubovich, T. C. Nicholas Graham |
CHI | 6 |
| 2019 | Social Play in an Exergame: How the Need to Belong Predicts AdherenceabstractThe general trend in exercise interventions, including those based on exergames, is to see high initial enthusiasm but significantly declining adherence. Social play is considered a core tenet of the design of exercise interventions help foster motivation to play. To determine whether social play aids in adherence to exergames, we analyzed data from a study involving five waves of six-week exergame trials between a single-player and multiplayer group. In this paper, we examine the multiplayer group to determine who might benefit from social play and why. We found that people who primarily engage in group play have superior adherence to people who primarily play alone. People who play alone in a multiplayer exergame have worse adherence than playing a single-player version, which can undo any potential benefit of social play. The primary construct distinguishing group versus alone players is their sense of program belonging. Program belonging is, thus, crucial to multiplayer exergame design. Maximus Kaos, Ryan E. Rhodes, Perttu Hämäläinen, T. C. Nicholas Graham |
CHI | 4 |
| 2017 | How Game Balancing Affects Play: Player Adaptation in an Exergame for Children with Cerebral PalsyabstractPlayer balancing helps people with different levels of physical ability and experience play together by providing customized assistance. Player balancing is particularly important in exergames, where differences in physical ability can have a large impact on game outcomes, and in making games accessible to people with motor disabilities. To date, there has been little research into how balancing affects people's gameplay behaviour over time. This paper reports on a six-day study with eight youths with cerebral palsy. Two games incorporated algorithms to balance differences in pedaling ability and aiming ability. Balancing positively impacted motivation versus non-balanced conditions. Even in "blowout" games where one player won by a large margin, perceived fun and fairness were higher for both players when a player balancing algorithm was present. These results held up over six days, demonstrating that the results of balancing continued even after players had the opportunity to understand and adapt to the balancing algorithms. Susan Hwang, Adrian L. Jessup Schneider, Alexander MacIntosh, Lauren Switzer, Darcy Fehlings, T. C. Nicholas Graham |
Conference on Designing Interactive Systems | 7 |
| 2016 | Developing Compelling Repetitive-Motion Exergames by Balancing Player Agency with the Constraints of ExerciseabstractParticipation rates in repetitive-motion exercise programs, such as programs for muscle-strengthening and physical rehabilitation, are low. Exergames show promise in encouraging people to exercise, but it is challenging to build compelling games around repetitive exercises. Games involve players making meaningful choices, but repetitive-motion workout programs are rigidly structured, making it difficult to find opportunities for such choices. As such, there is a struggle between providing players with meaningful choices and meeting the constraints of the exercise program. We discuss methods for enhancing agency in repetitive-motion exergames while still meeting these rigid constraints. We illustrate these methods through Brains & Brawn, a novel strategy card game for muscle-strengthening. Playtesting with eight participants demonstrated that players experienced agency during gameplay, were incented to exercise with correct form, and showed favorable attitude toward the game. Chad Richards, T. C. Nicholas Graham |
Conference on Designing Interactive Systems | 2 |
| 2016 | Thighrim and Calf-Life: A Study of the Conversion of Off-the-Shelf Video Games into ExergamesabstractExergames are a fun and engaging way to participate in physical activity. Exergame users consistently require new content to maintain interest in the activity. One way to provide users with high quality content with minimal development work is to convert existing off-the-shelf digital games into exergames by using the game's "modding" interface. To explore the potential of converted exergames for inspiring high exertion levels we performed a conversion on two popular games: Half-Life 2 and The Elder Scrolls V: Skyrim. The conversions were performed in two stages. The first stage mimics existing conversion techniques and a second stage provides added incentive for players to reach higher exertion levels. A study of 18 participants found that the resulting games support anti-sedentary levels of exertion while falling slightly below national recommendations for cardiovascular exercise. Adding exercise to the games did not affect players' enjoyment. Mallory Ketcheson, Luke Walker, T. C. Nicholas Graham |
CHI | 3 |
| 2015 | TerraGuide: Design and Evaluation of a Multi-Surface Environment for Terrain Visibility AnalysisabstractTerrain visibility analysis is a challenging task that is currently supported by complex digital tools with cumbersome interfaces. In this paper, we present TerraGuide, a novel multi-surface environment for exploratory terrain analysis. TerraGuide provides three tightly coupled displays including a real-time viewshed, a 3D panoramic view, and a helicopter view controlled by an optically tracked tablet. A user study compared these techniques and identified users' strategies in solving a complex terrain analysis problem. Users overwhelmingly adopted a bi-manual use of the tabletop viewshed and tablet-based helicopter techniques. This paper gives insight into how multi-surface environments can be designed to allow complementary use of and fluid switching between techniques. Matthew Oskamp, Christophe Bortolaso, Robin Harrap, T. C. Nicholas Graham |
CHI | 4 |
| 2014 | Design and evaluation of a networked game to supportsocial connection of youth with cerebral palsyabstractYouth with cerebral palsy (CP) can experience social isolation, in part due to mobility limitations associated with CP. We show that networked video games can provide a venue for social interaction from the home. We address the question of how to design networked games that enhance social play among people with motor disabilities. We present Liberi, a networked game custom-designed for youth with CP. Liberi is designed to allow frictionless group formation, to balance for differences in player abilities, and to support a variety of play styles. A ten-week home-based study with ten participants showed the game to be effective in fostering social interaction among youth with CP. Hamilton A. Hernandez, Mallory Ketcheson, Adrian L. Jessup Schneider, Darcy Fehlings, Lauren Switzer, Virginia Wright, Shelly K. Bursick, Chad Richards, T. C. Nicholas Graham |
ASSETS | 10 |
| 2014 | The effects of consistency maintenance methods on player experience and performance in networked gamesabstractNetwork lag is a fact of life for networked games. Lag can cause game states to diverge at different nodes in the network, making it difficult to maintain the illusion of a single shared space. Traditional lag compensation techniques help reduce inconsistency in networked games; however, these techniques do not address what to do when states actually have diverged. Traditional consistency maintenance (CM) does not specify how to make game- critical decisions when players' views of the shared state are different, nor does it indicate how to repair inconsistencies. These two issues -- decision-making and error repair -- can have substantial effects on players' gaming experience. To address this shortcoming, we have characterized a range of algorithmic choices for decision- making and error repair. We report on a study confirming that these algorithms can have significant effects on player experience and performance, and showing that they are often more important than degree of consistency itself. Cheryl Savery, T. C. Nicholas Graham, Carl Gutwin, Michelle Brown |
CSCW | 2 |
| 2013 | Villains, architects and micro-managers: what tabula rasa teaches us about game orchestrationabstractPlayers of digital games are limited by the constraints of the game's implementation. Players cannot fly a kite, plant a tree or make friends with a dragon if these activities were not coded within the game. Game orchestration relaxes these restrictions by allowing players to create game narratives and settings as the game is being played. This enables players to express their creativity beyond the strictures of the game's implementation. We present Tabula Rasa, a novel game orchestration tool based on an efficient tabletop interface. Based on a study of 20 game orchestration sessions using Tabula Rasa, we identify five behavioural patterns adopted by orchestrators, and four styles of collaborative interaction between orchestrators and players. Finally, we present recommendations for designers of game orchestration systems. T. C. Nicholas Graham, Irina Schumann, Mrunal Patel, Quentin Bellay, Raimund Dachselt |
CHI | 1 |
| 2013 | Designing action-based exergames for children with cerebral palsyabstractChildren with cerebral palsy (CP) want to play fast-paced action-oriented videogames similar to those played by their peers without motor disabilities. This is particularly true of exergames, whose physically-active gameplay matches the fast pace of action games. But disabilities resulting from CP can make it difficult to play action games. Guidelines for developing games for people with motor disabilities steer away from high-paced action, including recommendations to avoid the need for time-sensitive actions and to keep game pace slow. Through a year-long participatory design process with children with CP, we have discovered that it is in fact possible to develop action-oriented exergames for children with CP at level III on the Gross Motor Function Classification Scale. We followed up the design process with an eight-week home trial, in which we found the games to be playable and enjoyable. In this paper, we discuss the design of these games, and present a set of design recommendations for how to achieve both action-orientation and playability. Hamilton A. Hernandez, T. C. Nicholas Graham, Darcy Fehlings, Lauren Switzer |
CHI | 3 |
| 2013 | When Paper Meets Multi-touch: A Study of Multi-modal Interactions in Air Traffic Control
Cheryl Savery, Christophe Hurter, Rémi Lesbordes, Maxime Cordeil, T. C. Nicholas Graham |
INTERACT (3) | 5 |
| 2013 | Timelines: simplifying the programming of lag compensation for the next generation of networked gamesabstractLag compensation algorithms used in networked games require programmers to manage the complexities of dealing with both time and shared state. This can make implementing lag compensation techniques challenging. The difficulties in expressing these algorithms limit experimentation with different algorithms and inhibit programmers from exploring the space of the algorithms and testing their effects. The solution is to have a programming model that is better able to deal with time. In this paper, we present such a programming model, timelines . Timelines dramatically reduce the time and effort required to implement lag compensation techniques by allowing for the explicit treatment of time. The timelines model has been implemented as part of the Janus toolkit. Cheryl Savery, T. C. Nicholas Graham |
Multim. Syst. | 2 |
| 2012 | Liberi and the racer bike: exergaming technology for children with cerebral palsyabstractChildren with cerebral palsy (CP) often have limited opportunities to engage in physical exercise and to interact with other children. We report on the design of a multiplayer exercise video game and a novel cycling-based exergaming station that allow children with CP to perform vigorous exercise while playing with other children. The game and the station were designed through an iterative and incremental participatory design process involving medical professionals, game designers, computer scientists, kinesiologists, physiotherapists, and eight children with CP. The station combines a physical platform allowing children with CP to provide pedaling input into a game, and a standard PC gamepad. With this station seven of eight children could play a cycling-based game effectively. The game is a virtual world featuring several minigames, group play, and an in-game money-based reward system. Abilities and limitations associated with CP were considered when designing the game. The data collected during the design sessions shows that the games are fun, engaging and allow the children to reach exertion levels recommended by the American College of Sports Medicine. Hamilton A. Hernandez, T. C. Nicholas Graham, Darcy Fehlings, Lauren Switzer, Md Ameer Hamza, Irina Schumann |
ASSETS | 3 |
| 2012 | Design of an exergaming station for children with cerebral palsyabstractWe report on the design of a novel station supporting the play of exercise video games (exergames) by children with cerebral palsy (CP). The station combines a physical platform allowing children with CP to provide pedaling input into a game, a standard Xbox 360 controller, and algorithms for interpreting the cycling input to improve smoothness and accuracy of gameplay. The station was designed through an iterative and incremental participatory design process involving medical professionals, game designers, computer scientists, kinesiologists, physical therapists, and eight children with CP. It has been tested through observation of its use, through gathering opinions from the children, and through small experimental studies. With our initial design, only three of eight children were capable of playing a cycling-based game; with the final design, seven of eight could cycle effectively, and six reached energy expenditure levels recommended by the American College of Sports Medicine while pedaling unassisted. Hamilton A. Hernandez, T. C. Nicholas Graham, Darcy Fehlings, Lauren Switzer, Quentin Bellay, Md Ameer Hamza, Cheryl Savery, Tadeusz Stach |
CHI | 2 |
| 2012 | DiscoTech: a plug-in toolkit to improve handling of disconnection and reconnection in real-time groupwareabstractDisconnection and reconnection are common problems for users of synchronous groupware, but these problems are not easy for developers to handle because of the wide range of scenarios and timeframes that must be considered. We have developed a new toolkit called DiscoTech that helps programmers deal with disconnection. The toolkit is based on five design dimensions that determine how stored information can be manipulated as the system waits for an absent user to rejoin, and how information should be replayed upon reconnection. DiscoTech provides a plug-in architecture to handle a wide variety of behaviours that developers may need during disconnection; these plug-ins range from fully generic tools to customized strategies with full knowledge of the groupware application. We present the design of the DiscoTech toolkit, show examples of its use, and provide evidence that it covers a broad range of situations, imposes minimal performance overhead, and is easy for programmers to learn. DiscoTech handles a wider range of issues than previous toolkits, without requiring undue effort, and provides a practical way to improve the real-world usability of synchronous groupware. Banani Roy, T. C. Nicholas Graham, Carl Gutwin |
CSCW | 2 |
| 2012 | Toward game orchestration: tangible manipulation of in-game experiencesabstractWe define game orchestration as the activity of creating experiences for game players at run-time. This paper presents a design space for game orchestration techniques, and describes two novel game orchestration systems. T. C. Nicholas Graham, Quentin Bellay, Irina Schumann, Amir Sepasi |
TEI | 1 |
| 2011 | Real-time groupware in the browser: testing the performance of web-based networkingabstractStandard web browsers are becoming a common platform for delivering groupware applications, but until recently, the only way to support real-time collaboration was with browser plug-ins. New networking approaches have recently been introduced - based on re-purposed techniques for delivering web pages (Comet), or integration of real-time communication directly into the browser (HTML5 WebSockets). Little is currently known, however, about whether these new approaches can support real-time groupware. We carried out a study to assess the performance of the three different networking approaches, based on a framework of groupware requirements, in several network settings. We found that web-based networking performs well - better than plug-in approaches in some cases - and can support the communication requirements of many types of real-time groupware. We also developed two groupware applications using Comet and WebSockets, and showed that they provided fast and consistent performance on the real-world Internet. Our studies show that web-based networking can support real-time collaboration, and suggest that groupware developers should consider the browser as a legitimate vehicle for real-time multi-user systems. Carl Gutwin, Michael Lippold, T. C. Nicholas Graham |
CSCW | 3 |
| 2011 | It's about time: confronting latency in the development of groupware systemsabstractThe presence of network latency leads to usability problems in distributed groupware applications. Example problems include difficulty synchronizing tightly-coupled collaboration, jarring changes in the user interface following the repair of conflicting operations, and confusion when participants discuss state that appears differently to each of them. Techniques exist that can help mitigate the effects of latency, both in the user interface and the groupware application. However, as these techniques necessitate the manipulation of state over time, the effort required to implement them can be significant. In this paper, we present timelines, a programming model allowing the explicit treatment of time in groupware applications. The model has been implemented as part of the Janus toolkit. Cheryl Savery, T. C. Nicholas Graham |
CSCW | 2 |
| 2011 | Scenarchitectures: The Use of Domain-Specific Architectures to Bridge Design and Implementation
T. C. Nicholas Graham, Emmanuel Dubois 0001, Christophe Bortolaso, Christopher Wolfe |
INTERACT (2) | 1 |
| 2011 | Exploring Haptic Feedback in Exergames
Tadeusz Stach, T. C. Nicholas Graham |
INTERACT (2) | 2 |
| 2010 | Gone but not forgotten: designing for disconnection in synchronous groupwareabstractSynchronous groupware depends on the assumption that people are fully connected to the others in the group, but there are many situations (network delay, network outage, or explicit departure) where users are disconnected for various periods. There is little research dealing with disconnection in synchronous groupware from a user and application perspective; as a result, most current groupware systems do not handle disconnection events well, and several user-level problems occur. To address this limitation, we developed the Disco framework, a model for handling several types of disconnection in synchronous groupware. The framework considers how disconnections are identified, what senders and receivers should do during an absence, and what should be done with accumulated data upon reconnection. We have implemented the framework in three applications that show the feasibility, generality, and functionality of our ideas. Our framework is the first to deal with a full range of disconnection issues for synchronous groupware, and shows how groupware can better support the realities of distributed collaboration. Carl Gutwin, T. C. Nicholas Graham, Christopher Wolfe, Nelson Wong, Brian de Alwis |
CSCW | 2 |
| 2010 | The human factors of consistency maintenance in multiplayer computer gamesabstractConsistency maintenance (CM) techniques are a crucial part of many distributed systems, and are particularly important in networked games. In this paper we describe a framework of the human factors of CM, to help designers of networked games make better decisions about its use. The framework shows that there is wide variance in the CM requirements of different game situations, identifies the types of requirements that can be considered, and analyses the effects of several consistency schemes on user experience factors. To further explore these issues, we carried out a simulation study that compared four CM algorithms. The experiment confirms many of the predictions of the framework, and reveals additional subtleties of the algorithms. Our work is the first to look comprehensively at the tradeoffs and costs of CM, and our results are a strong starting point that will help designers improve on the user's quality of experience in distributed shared environments. Cheryl Savery, T. C. Nicholas Graham, Carl Gutwin |
GROUP | 2 |
| 2009 | Heart rate control of exercise video games
Tadeusz Stach, T. C. Nicholas Graham, Jeffrey Yim, Ryan E. Rhodes |
Graphics Interface | 2 |
| 2009 | An Incremental Algorithm for High-Performance Runtime Model Consistency
Christopher Wolfe, T. C. Nicholas Graham, W. Greg Phillips |
MoDELS | 2 |
| 2008 | An Iterative Framework for Software Architecture Recovery: An Experience Report
Banani Roy, T. C. Nicholas Graham |
ECSA | 2 |
| 2008 | Experience applying the SPIN model checker to an industrial telecommunications systemabstractModel checking has for years been advertised as a way of ensuring the correctness of complex software systems. However, there exist surprisingly few critical studies of the application of model checking to industrial-scale software systems by people other than the model checker's own authors. In this paper we report our experience in applying the Spin model checker to the validation of the failover protocols of a commercial telecommunications system. While we conclude that model checking is not yet ready for such applications, we find that current research in the model checking community is working to address the difficulties we encountered. Barry Long, Jürgen Dingel, T. C. Nicholas Graham |
ICSE | 3 |
| 2007 | Beyond the lan: techniques from network games for improving groupware performanceabstractNetworked games can provide groupware developers with important lessons in how to deal with real-world networking issues such as latency, limited bandwidth and packet loss. Games have similar demands and characteristics to groupware, but unlike the applications studied by academics, games have provided production-quality real-time interaction for many years. The techniques used by games have not traditionally been made public, but several game networking libraries have recently been released as open source, providing the opportunity to learn how games achieve network performance. We examined five game libraries to find networking techniques that could benefit groupware; this paper presents the concepts most valuable to groupware developers, including techniques to deal with limited bandwidth, reliability, and latency. Some of the techniques have been previously reported in the networking literature; therefore, the contribution of this paper is to survey which techniques have been shown to work, over several years, and then to link these techniques to quality requirements specific to groupware. By adopting these techniques, groupware designers can dramatically improve network performance on the real-world Internet. Jeff Dyck, Carl Gutwin, T. C. Nicholas Graham, David Pinelle |
GROUP | 3 |
| 2007 | Agility and Experimentation: Practical Techniques for Resolving Architectural TradeoffsabstractThis paper outlines our experiences with making architectural tradeoffs between performance, availability, security, and usability, in light of stringent cost and time-to-market constraints, in an industrial web-conferencing system. We highlight the difficulties in anticipating future architectural requirements and tradeoffs and the value of using agility and experiments as a tool for mitigating architectural risks in situations when up front pen- and-paper analysis is simply impossible. T. C. Nicholas Graham, Rick Kazman, Chris Walmsley |
ICSE | 1 |
| 2006 | Quality Analysis of Distribution Architectures for Synchronous GroupwareabstractThis paper identifies a set of distribution architectures for the development of synchronous groupware and provides an analysis of their quality attributes. The architectures and their quality attributes provide insight on how to structure the implementation of synchronous groupware applications, providing developers with precise guidance on the trade-offs between various implementation techniques. In contrast to many proposed architectures for groupware, these architectures have been synthesized through analysis of successful groupware systems whose properties are well-understood T. C. Nicholas Graham, W. Greg Phillips, Christopher Wolfe |
CollaborateCom | 1 |
| 2003 | Visual Constraint Diagrams: Runtime Conformance Checking of UML Object Models versus ImplementationsabstractThis paper presents visual constraint diagrams (VCD), an extension to UML (Unified Modeling Language) object diagrams for expressing constraints over object models. VCD allows designers to express well-formedness constraints that cannot be expressed using class diagrams alone; an example of such a constraint is that a linked list data structure cannot have any loops. VCD offers two advances over existing techniques: (1) they allow constraints to be expressed within the visual notation of UML, without resorting to complex textual notations such as OCL; and (2) VCD can be checked at runtime, increasing the value of design documents to developers. An editor and a checker for VCD have been implemented as part of the Rosetta software design tool. Christopher J. Turner, T. C. Nicholas Graham, Christopher Wolfe, Julian Ball, David Holman, Hugh D. Stewart, Arthur G. Ryman |
ASE | 2 |
| 2000 | Dragonfly: linking conceptual and implementation architectures of multiuser interactive systemsabstractSoftware architecture styles for developing multiuser applications are usually defined at a conceptual level, abstracting such low-level issues of distributed implementation as code replication, caching strategies and concurrency control policies. Ultimately, such conceptual architectures must be cast into code. The iterative design inherent in interactive systems implies that significant evolution will take place at the conceptual level. Equally, however, evolution occurs at the implementation level in order to tune performance. This paper introduces Dragonfly, a software architecture style that maintains a tight, bidirectional link between conceptual and implementation software architectures, allowing evolution to be performed at either level. Dragonfly has been implemented in the Java-based TeleComputing Developer (TCD) toolkit. Gary E. Anderson, T. C. Nicholas Graham, Timothy N. Wright |
ICSE | 2 |
| 1998 | The Vista Environment for the Coevolutionary Design of User InterfacesabstractUser centered design requires the creation of numerous design artifacts such as task hierarchy, task-oriented specification, user interface design, architecture design and code. It is increasingly accepted that such artifacts cannot be created in isolation, but instead incrementally coevolve, where information obtained from the development of one artifact contributes to the development of the others. In user interface development, these artifacts are typically developed by different people with different backgrounds, hindering the communication necessary for coevolution. This paper demonstrates how different design artifacts can be linked, exposing their common elements. Such links can be developed despite the differing points of view and differing levels of detail of the design artifacts. This paper describes Vista, a prototype tool for examining the links between design artifacts, and demonstrates how making these links explicit supports coevolutionary design. Judy Brown, T. C. Nicholas Graham, Timothy N. Wright |
CHI | 2 |
| 1997 | Integrating Support for Temporal Media into an Architecture for Graphical User InterfacesabstractAs computers are increasingly used for communicating information, multimedia has become an important component of interactive applications.Effective communication with multimedia requires tight media integration, highly interactive control over multimedia, and the use of multimedia to support group interactions.This paper shows how the MVC paradigm for user interface development can be extended to support temporal media.The resulting framework allows easy specification of media-integrated interactive applications, including multimedia groupware.All examples in this paper have been implemented in Clock, a novel programming environment, and run on IBM, SGI, and Sun workstations. T. C. Nicholas Graham, Tore Urnes |
ICSE | 1 |
| 1997 | GroupScape: Integrating Synchronous Groupware and the World Wide Web
T. C. Nicholas Graham |
INTERACT | 1 |
| 1996 | Linguistic Support for the Evolutionary Design of Software Architectures
T. C. Nicholas Graham, Tore Urnes |
ICSE | 1 |
| 1996 | Efficient Distributed Implementation of Semi-Replicated Synchronous GroupwareabstractThe Model View Controller (MVC) architecture has proven to be an effective way of organizing synchronous groupware applications. Distributed implementations of MVC, however, can suffer from poor performance. This paper demonstrates how optimized semi-replication of MVC architectures can lead to good performance over both local and wide area networks. We present a series of optimizations to network communication based on specific communication properties of groupware. These optimizations have been implemented in the Clock groupware development toolkit, allowing programmers to develop applications directly in the high-level MVC style, with Clock automatically providing optimized performance. Timings of an application developed in Clock show that usable speed was obtained in a highly interactive groupware application running between Toronto and Calgary, with a typical latency of 190 ms per round trip message. The paper discusses the tradeoffs involved in the algorithms, and presents timings to demonstrate the effectiveness of the different approaches. The timings show that when running over a wide area network, the best optimization can achieve a factor 60 speedup over the naive implementation of distributed MVC. T. C. Nicholas Graham, Tore Urnes, Roy Nejabi |
ACM Symposium on User Interface Software and Technology | 1 |
| 1992 | Rational Views as a Model for Automatic Distributed Implementation of Multi-User ApplicationsabstractMulti-user applications support multiple users performing a related task in a distributed context. This paper describes Weasel, a system for implementing multi-user applications. Weasel is based on the relational view model, in which user interfaces are specified as relations between program data structures and views on a display. These relations are specified in RVL, a high-level, declarative language. Under this model, an application program and a set of RVL specifications are used to generate a multi-user application in which all issues of network communication, concurrency, synchronization, and view customization are handled automatically. These programs have a scalable distribution property, where adding new participants to a session does not greatly degrade over-all system performance. Weasel has been implemented, and was used to generate all examples in this paper. T. C. Nicholas Graham, Tore Urnes |
CSCW | 1 |
| 1987 | Design of an interpretive environment for TuringabstractThis paper presents the design of an interpreter structure for modern programming languages such as Turing and Modula II that is modular and highly orthogonal while providing maximal flexibility and efficiency in implementation. At the outermost level, the structure consists of a front end, responsible for interaction with the user, and a back end, responsible for execution. The two are linked by a single database consisting of the tokenized statements of the user program. Interfaces between the major modules of each part are defined in such a way as to maximize reusability, and each interface can service a range of plug-compatible modules implementing radically different semantics. The design accommodates a wide spectrum of interpreter types ranging from batch-oriented compiler-simulators to statement-by-statement interactive execution, and provides for a range of program editing tools from simple line editors through to modern language-directed programming environments. It has served as the basis for several interpretive systems including the production Turing interpreter, the Turing Programming Environment, and the Turing Tool software maintenance tool. James R. Cordy, T. C. Nicholas Graham |
PLDI | 2 |