Doctoral Thesis
Total Page:16
File Type:pdf, Size:1020Kb
Providing Architectural Support for Building Context-Aware Applications A Thesis Presented to The Academic Faculty by Anind K. Dey In Partial Fulfillment Of the Requirements for the Degree Doctor of Philosophy in Computer Science Georgia Institute of Technology November 2000 Copyright © 2000 by Anind K. Dey Providing Architectural Support for Building Context-Aware Applications Approved: ________________________________________ Gregory D. Abowd, Chairman ________________________________________ Mustaque Ahamad ________________________________________ Blair MacIntyre ________________________________________ Beth Mynatt ________________________________________ Terry Winograd, External Advisor Date Approved ___________________________ ii iii DEDICATION To my parents, For all the times you started, but were never able to complete your PhDs iv v ACKNOWLEDGEMENTS After four degrees, at two universities, in three different disciplines, I have learned one thing – I could never have done any of this, particularly the research and writing that went into this dissertation, without the support and encouragement of a lot of people. First, I would like to thank my advisor, Gregory Abowd. I owe you so much. You’ve been my friend, my mentor, my confidant, my colleague, and a never-ending fount of moral support. You have given so much of yourself to help me succeed. If I do take the academic path, I only hope that I can be half the advisor that you have been to me. Whatever path I do take, I will be prepared because of you. I would also like to thank the rest of my thesis committee for their support. Mustaque Ahamad, Blair MacInytre, Beth Mynatt and Terry Winograd provided me with invaluable advice and comments on both my research and my future research career plans. I’ve been very lucky throughout most of my life in graduate school, in that I’ve been able to concentrate mostly on my research. This is due in a large part to the gracious support of Motorola and its University Partnership in Research (UPR) funding program. I would particularly like to thank Ron Borgstahl who initiated my UPR funding back in 1996 and supported me for over three years. I would also like to thank Ken Crisler from the Applications Research group at Motorola Labs. I’ve also been fortunate to have a great group of friends at Georgia Tech. This includes my office mates in both the Multimedia Lab and in the CRB, the hardcore Happy Hour crew, and many other students and faculty, too numerous to name. Not only are you the people I can discuss my research with and goof off with, but also you are confidants who I can discuss my troubles with and who stand by me through thick and thin. This, I believe, is the key to getting through a Ph.D. program – having good friends to have fun with and complain to. I would also like to express my thanks to my research group, both the larger Future Computing Environments group and the smaller Ubiquitous Computing group. I have learned so much from all of you, from figuring out what research is, to choosing a research agenda, to learning how to present my work. Your constructive criticism and collaboration have been tremendous assets throughout my Ph.D. This work would not have been possible without the support of my best friend, Jennifer Mankoff. You’re always there for me, when I need help with my research and when I need moral support. You were instrumental in helping me find my dissertation topic and in helping me get past all the self-doubting that inevitably crops up in the course of a Ph.D. You’re the first person I turn to in good times and in bad. You have given me the courage to make the next transitions in my life. For all of this, I thank you. Finally, I would like to dedicate this work to my family: Santosh, Prabha, Amitabh and Anjuli. Without your unending support and love from childhood to now, I never would have made it through this process or any of the tough times in my life. Thank you. vi vii TABLE OF CONTENTS DEDICATION............................................................................................................................................... iv ACKNOWLEDGEMENTS........................................................................................................................... vi TABLE OF CONTENTS ............................................................................................................................viii LIST OF TABLES.......................................................................................................................................xiii LIST OF FIGURES ..................................................................................................................................... xiv SUMMARY................................................................................................................................................ xvii CHAPTER 1 INTRODUCTION AND MOTIVATION ................................................................................ 1 1.1 WHAT IS CONTEXT? ........................................................................................................................ 3 1.1.1 Previous Definitions of Context .............................................................................................. 3 1.1.2 Our Definition of Context .......................................................................................................4 1.2 WHAT IS CONTEXT-AWARENESS? ................................................................................................... 5 1.2.1 Previous Definitions of Context-Aware .................................................................................. 5 1.2.2 Our Definition of Context-Aware............................................................................................ 5 1.2.3 Categorization of Features for Context-Aware Applications.................................................. 6 1.3 WHY IS CONTEXT DIFFICULT TO USE? ............................................................................................ 8 1.4 THESIS CONTRIBUTIONS .................................................................................................................. 9 1.5 THESIS OUTLINE............................................................................................................................ 10 CHAPTER 2 BACKGROUND AND RELATED WORK .......................................................................... 11 2.1 CONTEXT USE ............................................................................................................................... 11 2.2 METHODS FOR DEVELOPING APPLICATIONS.................................................................................. 13 2.2.1 Tight Coupling ...................................................................................................................... 13 2.2.1.1 Manipulative User Interfaces............................................................................................................13 2.2.1.2 Tilting Interfaces...............................................................................................................................13 2.2.1.3 Sensing on Mobile Devices ..............................................................................................................13 2.2.1.4 Cyberguide .......................................................................................................................................14 2.2.2 Use of Sensor Abstractions ................................................................................................... 15 2.2.2.1 Active Badge ....................................................................................................................................15 2.2.2.2 Reactive Room .................................................................................................................................16 2.2.3 Beyond Sensor Abstractions ................................................................................................. 16 2.2.3.1 AROMA ...........................................................................................................................................16 2.2.3.2 Limbo ...............................................................................................................................................16 2.2.3.3 NETMAN.........................................................................................................................................17 2.2.3.4 Audio Aura .......................................................................................................................................17 2.3 OVERVIEW OF RELATED WORK..................................................................................................... 17 CHAPTER 3 A CONCEPTUAL FRAMEWORK FOR SUPPORTING CONTEXT-AWARE APPLICATIONS.......................................................................................................................................... 19 3.1 RESULTING PROBLEMS FROM CONTEXT BEING DIFFICULT TO USE............................................... 19 3.1.1 Lack of Variety of Sensors Used ........................................................................................... 20 viii 3.1.2 Lack of Variety of Types of Context Used............................................................................. 20 3.1.3 Inability to Evolve Applications............................................................................................ 21 3.2 DESIGN PROCESS FOR BUILDING