Supporting Multi-device Interaction in the Wild by Exposing Application State
We are at the verge of living in a world where computing has become ubiquitous. However, ubiquitous computing has not developed as expected, where computing devices are embedded in the things that surround us making them smart. Instead, computing capabilities are accessed ubiquitously through a manifold of small interactive devices that people carry with them at all times and use and combine opportunistically. In consequence, the need to interact with multiple devices arises in unexpected ways, or as called in this thesis "in the wild".
The main goal of this thesis is to raise awareness of the unique properties of multi-device interaction in the wild and the misalignment between these properties and current efforts in academia and industry. To this end, the thesis classifies possible types of multi-device interaction as simultaneous or sequential use towards a common or distinct tasks. To support these types of interaction in the wild, systems must enable the opportunistic rearrangement of devices where transitions are robust and can be performed in ad-hoc situations.
The second part of the thesis explores how application state can serve as a conceptual model for users and designers to enable multi-device interaction in the wild. The concept supplies users with a first-class interactive object representing the state of applications, similar to how the file represents the state of information, which can be manipulated with tools that are separated from the task. It is this separation that allows application state to be used in unexpected situations, making it a good fit for multi-device interaction in the wild.
The final part of the thesis elaborates on how the concept of application state can be integrated into current interactive systems. A simple programming interface was developed that separates state extraction from state sharing: The task applications provide the functionality needed to extract and restore their state into a standardized container, which is then managed and shared through designated state management tools. After describing the state exchange system architecture, the thesis explores how to support legacy applications in implementing state extraction and restoration up to complete automation. There is, however, a trade-off between automating state extraction and providing a semantically meaningful state that can be shared between different applications of the same type to transition tasks between device classes.
Nomadic Applications Nomadic applications are software applications that can be transferred to a separate device without interrupting the user interacting with it. We have transformed a sketching application into a collaborative brainstorming tool (by Mario Fraikin). Further, we have developed a multi-device personal desktop environment that supports effortless transitioning of application (by Sören Busch), a design space of gestures that can be used to control such cross-device operations and evaluated the impact on user preference of the dimensions of this space (by Ying Zhang), and classroom support based on Nomadic Applications (by Ahsan Nazir Sheikh).
HCI & Hospitality Hotels, restaurants, and other hospitality providers are an exciting venue for innovative mobile technology to improve the guest experience and the efficiency of service personell and manager. We have designed and evaluated an interactive tablet application for ordering food at a restaurant that has lead to higher guest rating of the dishes compared to a common paper menu (by Julian Meichsner).
Driver Safety Driver Inattention is a leading cause of driving accidents. In cooperation with the P3 Group, we have investigated and modeled human attention when driving to support designing better in-car systems (e.g., for entertainment) that provide fewer distractions (by Dominik van Engelen). Further, we have designed a social, mobile application to provide incentives to drivers to drive safer (by Christoph Vobis).
Supporting Source-Code Navigation Developers spend most of their time navigating source-code to understand connections or research APIs. We have visualized all test-cases that touch each line of source-code to assist developers especially for test-driven development (by Henning Kiel). In Stacksplorer, we visualize the possible stacks of any active method in the IDE and allow navigating it.
Supporting Physical Operations with Augment Reality In a study, we have shown that the human performance of general physical operations (on buttons, knobs, and sliders) can be significantly improved with AR overlays, if the overlays provide real-time feedback (by Can Liu).
Improving Input with Hidden Input Properties Multi-touch and pressure provide hidden cues that can improve interacting with everyday objects. We have built a prototype of a Pressure-Sensitive Scroll Ring (similar to the iPod's scroll ring), which uses pressure to improve list selection performance. Further, we have designed multi-touch authentication gestures that are easy to perform and safe against shoulder-surfing (by Andreas Hüttig).
Mobile Phone Usability Study We conducted a controlled user test with 34 participants on 6 typical mobile phone tasks, a GOMS analysis of 3 tasks, and an ergonomic review of the devices. The results were published in connect magazine Vol. 9, September 2007, and for a special issue in 2008. In 2010, we ran a second study comparing the Apple iPhone with an Android mobile phone, which appeared in connect magazine Vol. 11, November 2010.
Usability Verification Usability Testing is a laborious process that does not integrate well with automated device testing, if computational methods, such as GOMS, are not sufficient. We have created a new process for validating the usability of devices with a fixed set of capabilities that can be performed by the unskilled personell. This method was deployed and tested at a major cell-phone operator in cooperation with the P3 Group. Further, we have shown that HCI design patterns can be used to communicate domain-oriented usability knowledge to developers and product managers (by Marcus Reul).
Flight Attendant Panel Redesign In cooperation with the P3 Group, we have redesigned the Airbus cabin operations system, consisting of multiple interactive elements (e.g. temperature, lighting, etc.), used by flight personnel to control the cabin during a flight.
Workstation Independent Desktop Environment Web applications typically provide their own information management system, which is separate from other applications, making it tedious to transfer information from one application to another. On the desktop, on the other hand, this is easily possible through the file system. We have designed and developed a backend infrastructure for web applications that replicates this file system for distributed web applications, and evaluated it by adapting several well-established web applications to this system (by Noriyasu Vontin).
The Associative PDA Information on the desktop is typically organized in folders (file system) or tags (web). The human brain, on the other hand, works with associations, which are links between individual information items that are traversable in both directions. With the Associative PDA, we have designed a prototype that applies this organization concept to personal information management on a mobile device. In a consecutive long-term user study on an improved prototype, we have shown that associations can be beneficial for organizing notes (by Eileen Falke).
- AsyncNetwork: Cocoa and iOS Networking Evolved, CocoaHeads Aachen, Sept. 2012
- Working with Running Applications: Live Development for the Web and Migrating Tasks Between Devices, Adobe Advanced Technology Labs, April 2012
- Teaching iOS Programming, iPhone DevCon 2011
- iOS Development, Apple Event: iOS Teaching in Lebanon 2011
- Nomadic Applications: Allowing Existing Applications to Move Between Devices, LRI insitu France 2011
- Aixplorer City Guide, Städte und Kulturforum, DTV, Aachen, 2011
- HCI and Hospitality: Challenges and Opportunities, HTMi Switzerland 2011
- Probevorlesung Usability für Studieninteressierte, Beratungstage RWTH Aachen 2011
- Tangible Windows: a new user interface metaphor for mobile devices, Information und Kommunikation NRW 2010
- iPhone Crash course and Android vs. iPhone Usability Showdown, World Usability Day Aachen 2010
- Experiences from Running the Apple Authorized Training Center for Education at RWTH Aachen, Apple AATC/e Conference 2010
- Best Practices for Publishing Educational Videos at Apple iTunes U, Apple iTunes U Conference Germany 2010 and Apple iTunes U Conference Switzerland 2010
TeachingMobile Application Development 2010 Introductory course about mobile usability and development on iOS and Android devices. I developed and taught this course for the RWTH MATSE program in cooperation with Hendrik Thüs.
iPhone Application Programming 2009 - 2010 Advanced programming class about mobile usability and software development on iOS devices. I developed and taught this course for the Media Computing Group in cooperation with Florian Heller under guidance of Prof. Jan Borchers.
Cocoa and iOS Socket Networking Evolved
I am an active contributor to the open source code editor Brackets.
Color Scheme for Sublime Text 2 and TextMate
The RWTH Mensa menu at your fingertips
|iPhone Touch Framework
Use the iPhone or iPod touch as an input device for interactive systems
Random Password Generator
The mobile schedule of the ACM Symposium on User Interface Software and Technology (UIST) 2012
Voluntary and Other Work
- World Usability Day: Organizer (2006 - 2011)
- Mobile HCI 2009: Poster Co-Chair
- Student Volunteers Portal (Open Source): Developer and Maintainer
- Apple Certified Training Center @ RWTH: Organizer and Trainer
- Apple Certified System Administrator Mac OS 10.6
- Certified ScrumMaster
Supervised Student Thesis Projects
- Ahsan Sheikh Nazir (2012): NoteCarrier - A Nomadic Application for Bi-Directional Class-Room Communication (co-supervised by Prof. Meier, Bonn University)
- Christopher Vobis (2012): Improving Driving Behavior Through Immediate Feedback
- Ying Zhang (2012): A Classification of Interaction Styles that Span Multiple Systems
- Julian Meichsner (2012): Evaluation of Interactive Tablets for Improving Customer Service in Restaurants
- Can Liu (2011): Exploring Mobile Augmented Reality Instructions to Assist Operating Physical Interfaces (co-supervised by Stéphane Huot, insitu, LRI, Paris)
- Sören Busch (2011): Nomadic Interfaces in UbiComp: Making everyday applications (on Mac OS X) nomadic.
- Andreas Hüttig (2011): Multitouch Authentication: Designing shoulder-surfing resistant authentication methods using multi-touch gestures
- Mario Fraikin (2011): Collaborating with Tangible Windows: A new interaction concept for cross-device computing demonstrated with a brainstorming prototype
- Dominik v. Engelen (2011): Attention Drivers! Analyzing driver distraction with task models (in cooperation with P3 Group)
- Marcus Reul (2009): Bringing Usability to Industrial Control Systems: Using HCI design patterns to promote usability in a highly-specialized domain (in cooperation with FEV GmbH Aachen)
- Henning Kiel (2009): Reducing Mental Context Switches During Programming: Supporting code comprehension with semantic links between source code and test cases
- Mei-Fang Liau (2008): DISCO: Disk-based Interface for Semantic Composition of Music
- Noriyasu Vontin (2008): Workstation Independent Desktop Environment: Towards a user-controlled, unified information space for web applications
- Sascha Beckers (2008): Time-Based Decision Trees in Interaction Design: An innovative user interface for conducting experiments in psychology (in cooperation with Ute Habel, UK Aachen)
- Eileen Falke (2008): The Associative PDA 2.0: Mobile personal information management based on associations
- Monika Wernerus (2007): Analyzing Net: A User Interface for Complex Systems Based on Mapping Principles (in cooperation with Siemens Power Transmission and Distribution, Aachen)
- Jonathan Diehl. Supporting Multi-device Interaction in the Wild by Exposing Application State. PhD Thesis, RWTH Aachen University, Aachen, November 2013.
- Jonathan Diehl and Jan Borchers. Tangible Windows. TechReport, June 2013.
- Can Liu, Stéphane Huot, Jonathan Diehl, Wendy E. Mackay and Michel Beaudouin-Lafon. Evaluating the Benefits of Real-time Feedback in Mobile Augmented Reality with Hand-held Devices. In CHI '12: Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, pages 2973–2976, ACM Press, Austin, TX, USA, May 2012.
- Can Liu, Jonathan Diehl, Stéphane Huot and Jan Borchers. Mobile Augmented Note-taking to Support Operating Physical Devices. In Mobile HCI 2011 Workshop on Mobile Augmented Reality, Workshop Paper, September 2011.
- Jonathan Diehl and Jan Borchers. Mobile HCI and Hospitality. In MobileHCI '11: Workshop on Mobile Interaction in Retail Environments, Workshop Paper, September 2011.
- Thorsten Karrer, Jan-Peter Krämer, Jonathan Diehl, Björn Hartmann and Jan Borchers. Stacksplorer: Call Graph Navigation Helps Increasing Code Maintenance Efficiency. In UIST '11: Proceedings of the 24th annual ACM Symposium on User Interface Software and Technology, pages 217–224,October 2011.
- Bernd Theiss, Jan Borchers, Markus Jordans and Jonathan Diehl. Gute Bedienung. In connect, pages 12–17,November 2010.
- Jan-Peter Krämer, Thorsten Karrer, Jonathan Diehl and Jan Borchers. Stacksplorer: Understanding Dynamic Program Behavior. In Extended Abstracts of the ACM UIST 2010 Symposium on User Interface Software and Technology,New York, NY, October 2010.
- Chatchavan Wacharamanotham, Jonathan Meyer, Jonathan Diehl and Jan Borchers. The Interactive Bracelet: An input device for bimanual interaction. In Mobile HCI 2010 Workshop on Ensembles of On-Body Devices, Workshop Paper, Lisbon, Portugal, September 2010.
- Jonathan Diehl, Thorsten Karrer and Jan Borchers. Interactive System Architecture for Layered Applications. In Interactive System Architecture Workshop, Misc, August 2010.
- Max Möllers, Jonathan Diehl, Markus Jordans and Jan Borchers. Towards Systematic Usability Verification. In CHI '09: Extended Abstracts of the SIGCHI Conference on Human Factors in Computing Systems, ACM Press, New York, NY, USA, April 2009.
- Jonathan Diehl. Associative Personal Information Management. In CHI '09: Extended Abstracts of the SIGCHI Conference on Human Factors in Computing Systems, ACM Press, New York, NY, USA, April 2009.
- Jonathan Diehl and Jan Borchers. Associative Information Spaces. In CSCW '08: Extended Abstracts of the Proceedings of the 2008 ACM Conference on Computer Supported Cooperative Work,November 2008.
- Jonathan Diehl, Max Möllers and Jan Borchers. Improving List Selection Performance with Pressure-Sensitivity on a Scroll Ring. In UIST '08: Extended Abstracts of the 21st Annual ACM symposium on User Interface Software and Technology,October 2008.
- Jonathan Diehl, Jan-Peter Krämer and Jan Borchers. A Framework for using the iPhone as a Wireless Input Device for Interactive Systems. In UIST '08: Extended Abstracts of the 21st Annual ACM symposium on User Interface Software and Technology,October 2008.
- Mei-Fang Liau, Jonathan Diehl and Jan Borchers. DISCO: Disk-based Interface for Semantic Composition. In Workshop Proceedings der Tagungen Mensch & Computer 2008, DeLFI 2008 und Cognitive Design 2008, pages 107–109, Logos Verlag, September 2008.
- Jonathan Diehl, Deniz Atak and Jan Borchers. Associative Information Spaces. In MobileHCI '08: Workshop on Mobile Interaction with the Real World (MIRW 2008), pages 127–138, Workshop Paper, September 2008.
- Bernd Theiss, Markus Eckstein, Jan Borchers, Jonathan Diehl and Markus Jordans. Systemkritik: Der Handy-Bedientest. In connect, pages 14–23,September 2007.
- Jonathan Diehl. The Associative PDA - An Organic User Interface for Mobile Personal Information Management. Diploma Thesis, RWTH Aachen University, Aachen, November 2006.
- Jonathan Diehl, David Holman, Thorsten Karrer and Jan Borchers. The Associative PDA: An organic user interface for mobile personal information management. In UbiComp '06: Extended Abstracts of the 2006 ACM Conference on Ubiquitous Computing,September 2006.