Empowering the User to Build Smart Home Applications

Size: px
Start display at page:

Download "Empowering the User to Build Smart Home Applications"

Transcription

1 Empowering the User to Build Smart Home Applications Tao ZHANG, Bernd BRÜGGE Technische Universität München Institut für Informatik/ I1, Boltzmannstraße Garching b. München, Germany Abstract. Recent research has shown that end-user programming will form an important part of any general purpose context-aware computing system, since the system behavior of existing context-aware systems does not reflect the situation the end-user intended. This paper is concerned with end-user programming and modification of context-aware application behavior. We present a three-tier approach to build context-aware applications, which separates context collection and distribution from rule-based inference that controls application behavior. Prototypes were created to evaluate our approach. The primary focus was directed towards the rule conflict management and user interface issue, that are related to defining rules. We conclude this paper with a short usability case study based on these prototypes and an outlook into future work. 1. Introduction Beginning with Mark Weiser s [17] vision of ubiquitous computing, new technologies like tangible interfaces, wearable computing, mobile computing elevate the style of interaction beyond the traditional desktop environment and are becoming important in the everyday life. The foremost objective in building context-aware applications is to create a sensor rich environment that responds specifically to people, place and time. The user is not tied to one particular device but interacts with a network of intelligent devices embedded in the environment. To develop a context-aware application, developers currently have two options: Either they build a system that hypothesizes system behavior using an inference engine [11,15], or they predefine a specific system behavior [2]. Recent research has shown that both of these approaches have not proven long term compatibility with the end-users expectations [7]. The system behavior cannot be predicted by an inference engine, since there are many human or social aspects of context that cannot be sensed or even inferred by sensors or devices available today [1]. There is no ascertained way for a system to infer a correct contextual state just by collecting sensor information. At best, the system can provide an approximation or an educated guess of the real context. The behavior of the context-aware system and its applications cannot be recognized and hardcoded by the developer, since it is very difficult for the developer to foresee what information and sensors are necessary to infer a contextual state. Moreover he cannot foretell whether the results produced by the system are meaningful to the end-users [7].

2 Currently, a variety of systems have been built, that are hardcoded [2]. The behavior of these systems has become a routine matter of recognizing states and triggering corresponding activities. While this approach can work in situations with well-defined social expectations (e.g. turning off a mobile phone in a theater), it fails for situations in which end-users behavior is less predictable (e.g. at home). People feel like they are loosing control of the system and begin to fight the system, because the system view of context does not match what was actually happening. We believe that the only way a system can agree with the users expectations is to have the user program the system behavior. To accomplish this, we would like to empower users to build own applications in a most simple way. This paper is concerned with end-user programming and modification of context-aware environments, where an end-user is referred to as a person who has had experiences with handheld devices like mobile phones or PDAs, but cannot program in JAVA or C++. We present an architecture composed of three separate but interrelated layers a context layer for capturing and handling physical sensors, a rule layer providing high-level behavior specifications, and an user interface layer providing user interfaces supporting end-user control and modification. 2. Related work Most context-aware research has focused on building infrastructures to support developers in building applications and on the applications themselves [2], not enough emphasis has been placed on empowering end-users to build their own context-aware applications. Humble et al [8] presented the development of a user-oriented framework to support the user reconfiguration of ubiquitous domestic environments. They present a lightweight component model that allows users to interconnect a range of devices easily. The framework discovers available ubiquitous components and presents these to users as jigsaw pieces that can be dynamically recombined. However, the emphasis is on reconfiguration rather then programming and the approach does not seek the richness of programming expression. icap [16] is focused on helping developers rapidly prototype, test, and iterate their context-aware applications. It is based on previous work in ubiquitous computing applications, specifically those that involve the development of rule based conditions. Some of these include AgentSheets [14] and Stick-e notes [12]. In his most recent work, Dey presented a new prototype environment called a CAPpella [3] for end-users. In this environment, tools are available to end-users in order to demonstrate and change the system behavior without any programming skills. However, to build simple applications, end-users must first learn how a CAPpella works and then spend time extracting information from the sensor data manually. After that, an inference engine teaches a model based on annotated logs. For the system to work predictably users have to refine the system behavior many times. Both scenarios introduced in his paper (meeting scenario and medicine taking scenario) [3], discovered that the average users have to still spend a lot of time and effort to achieve an often very limited benefit.

3 3. A three-tier Architecture This paper is concerned with end-user programming and modification of context-aware application behavior using a rule-based approach. We present a three-tier approach to building context-aware applications, which separates context collection, distribution from rule-based inference that controls application behavior [18]. While the software developers are primarily responsible for the context layer and rule layer, end-users use a graphical user interface to modify and control the overall system behavior. Figure 1: Three-tier architecture for context-aware systems In the architecture shown in figure 1, we select the context-toolkit, a framework developed by Dey [2], which separates the acquisition and representation of context from the delivery and reaction to sensor context by a context-aware application, as our low-level communication infrastructure. The system behavior is specified through an ECA Rule Specification Language. Each rule is composed of an Event part, a Condition part, and an Action part. The ECA concept is based on past research in active databases, where application developers specify with the help of a powerful ECA Rule Specification Language sophisticated conditions over events, supplied by diverse event sources and associate to them actions [13]. In the past, ECA rules were applied to conventional databases, which can only carry out actions concerning database operations. A smart home may not only use this resource database in the ECA rule definition but can also trigger home services. Depending on incoming Sensor Events from the Context Layer, the Rule Monitor evaluates initially all the ECA-rules which Event parts that match the actual situation. These selected rules may conflict with each other if the Event parts of more than one rule are matched

4 concurrently or if the services to be executed are exclusive. The Rule Monitor delegates those conflicting rules to a component called Rule Conflict Manager, which solves the rule conflicts before calling the corresponding Services of the Context Layer. Rule Discoverer is a software component that discovers user behavior patterns using the frequent pattern discovery [9]. For example, if the user did the same action several times in a same situation, the system will remember it by observing the actions of the user and automatically generate new rules. Since it is quite challenging to provide good rules by just collecting sensor information, users are still expected to refine the rules by removing noise information from sensors. Using handheld computers like PDAs, end-users are then allowed to define high-level ECA rules. With these rules, the end-users can program different personal context-aware applications without special programming skills. They can not only read the rules, but also modify them, delete them, make each of them active or inactive (Rule Builder & Rule Inspector). Using this model, each end-user is now able to personalize the rules to suit his needs and notions for how the environment should react to his actions. Rules that are effectively executed are listed in chronological order. In case the user has difficulties to understand the system behavior, the user is able to track any executed rules in the past and figure out its rationale, he can then eventually undo, redo some actions, or overwrite some rules (Rule Debugger). 4. Scenarios Our first scenario deals with a remote antenna station for a high-power transceiver at a remote location like the top of a mountain, the middle of the desert or an oil rig. Exceptional situations such as transistor fail or temperature fail are automatically detected by sensors embedded in the environment. The antenna station is connected with a maintenance and installation information system, which gives the technician context-aware help, depending on the exceptional situation and the skill level of the technician. When an exceptional situation occurs and the technician is not on site, he is informed immediately and can monitor the situation in the antenna station with his UMTS mobile phone. A rule for this scenario can be defined as follows: Scenario: Event part: Condition part: Action part: Remote Maintenance When LED transistor fail OR temperature fail, (and) the technician is NOT in the antenna station, (and) the skill level of the technician is very low, (then) turn on the video recorder to capture the whole exceptional situation, (and) send the captured Video clip to the technician s UMTS mobile Phone, (and) send the SMS Please exchange transistor, and align quiescent current Our approach can also be used in a smart home to assist the elderly and individuals with disabilities. Users can specify personal activities they would like the house to automate (temperature control, control of hard-to-reach devices, etc.). For a grandmother sitting in a RFID-tagged [10] wheelchair, who usually has her breakfast between 7am and 8 am, the following rule could be defined by her caretaker or discovered by the system:

5 Scenario: Event part: Condition part: Action part: Having Breakfast When the wheelchair with RFID-tag is detected in the kitchen, (and) it is the first time between 7 am and 8 am, (then) turn on the kitchen light, (and) turn on the kitchen coffee maker, (and) displays the morning news on the kitchen video screen. 5. Status To evaluate our approach, different prototypes have been realized such as the component of the rule tier responsible for rule conflict management, as well as the user interface responsible for defining rules. 5.1 Using JESS for the Rule Layer We have implemented the Rule Monitor and Rule Conflict Manager using JESS [5] a rulebased expert system written in Java. Figure 2: Using JESS for the Rule Layer End-user defined rules and policies are stored in a relational database (mysql) and will be uploaded into the JESS internal rule base at runtime. Depending on the incoming events captured by sensors and context (e.g. state of system component), the facts in the JESS Working Memory will be updated. Pattern Matcher then searches automatically through vast amounts of combinations of facts to find those combinations that satisfy rules to figure out which rules should be fired, while Agenda is responsible for using the conflict strategy to

6 decide which of the rules, out of all those that apply, have the highest priority and should be fired first. This approach is suitable for our task, since the built-in inference engine implements the RETE algorithm [4], a very efficient mechanism to solve the difficult many-to-many matching problem. The Execution Engine component fires the rules. It calls the external services, which eventually change the context (see figure 2). The advantages of JESS are the following: (1) JESS consists of a rule specification language that can be used to define ECA rules. (2) JESS works well with the context-toolkit, since both are implemented in Java. (3) Low-level rule conflict resolution strategies are by default integrated in JESS. While the end-users define the priority of the rules, JESS is responsible for triggering rules in the right order at runtime. 5.2 User Interface Prototypes for defining personal rules The JESS syntax is not easy to understand. Therefore, prototypes of the Rule Builder and the Rule Inspector were implemented to evaluate different user interface concepts for defining rules. Figure 3: Rule Builder (version 1) Figure 4: Rule Builder (version 2) The first prototype (figure 3) provided a graphical representation of the JESS concept of rules. The second prototype was based on exemplar-based approach using puzzle-like pieces (figure 4). In this approach, end-users simply copy and refine existing rules - either predefined by the developers, or partly recommended by the Rule Discoverer (see 3). Since the behavior pattern is highly individual, end-users are expected to modify the system behavior by adding or removing conditions and actions with the drag and drop feature.

7 6. Evaluation and next steps We evaluated our prototypes in a laboratory-based intelligent environment with two smart boards, Java ibuttons, PDAs as well as Bluetooth-enable mobile phones. We have built context-aware applications as follows: Just after the user enters his office in the morning, his personal s will be showed automatically on the smart board, at the same time, the music program itunes starts playing his favorite classic music. As soon as the user get unexpected visit, s will disappear immediately and the music turns automatically down. The first graphical user interface prototype has been tested during winter semester 2003/04. Ten computer science students were asked to build their own applications using the Rule Builder (Version 1). Most of the students commented, that user control over the environment increases by using personal rules, because they can change the system behavior in run mode. Nevertheless, only three students were ready to spend time for building rules from scratch as the first user interface prototype is still too complicated to use. The second user interface prototype is now implemented and has been currently tested by fifteen computer science students. To define the same rules, students using the second prototype need about 75% less time, require substantially less help and make fewer mistakes than those using the first prototype. Therefore we believe an exemplar-based user interface can significantly improve the usability. In order to find out if non-computer scientists are capable of precisely specifying personal ECA rules, we plan to do more evaluation work with non-computer scientists in the future. 7. References 1. Bellotti, V. & Edwards, K, Intelligibility and Accountability: Human Considerations in Context Aware Systems. Human- Computer Interaction, Dey, A.K. et al. A conceptual framework and a toolkit for supporting the rapid prototyping of context-aware applications. HCI Journal 16(2-4), 2001, Dey, A.K. et al. a CAPpella: Programming by Demonstration of Context-Aware Applications, CHI Forgy C.L. Rete: A Fast Algorithm for the Many Pattern/ Many Object Pattern Match Problem", Artificial Intelligence 19, pp , Friedman-hill, E., Jess in Action - Rule-based Systems in Java, Manning Publications Co., Gajos, K. et al. End user empowerment in human centered pervasive computing. Proc. Pervasive 2002, Greenberg, S. Context as a dynamic construct. Human-Computer Interaction, 16, Humble, J, et al, Playing with the Bits User-configuration of Ubiquitous Domestic Environments, Ubicomp Hand D.J, et al, Principles of Data Mining, The MIT Press, LARAN RFID, A Basic Introduction To RFID Technology and its Use in the Supply Chain, White Paper, Mozer, M.C. The neural network house: An environment that adapts to its inhabitants. Proc. AAAI Spring Symposium on Intelligent Environments 1988, Pascoe, J. The Stick-e Note Architecture: Extending the Interface Beyond the User. In Proceedings of Intelligent User Interfaces, pp Paton N.W. and Díaz O. Active Databases Survey, ACM Computing Surveys, Vol. 31 No.1, pp , March Repenning, A. Creating User Interfaces with Agentsheets. In Proceedings of Symposium on Applied Computing, pp Schmidt, A. and Van Laerhoven, K. How to build smart appliances. IEEE Personal Communications 8(4), 2001, Sohn, T. and Dey, A.K. icap: An Informal Tool for Interactive Prototyping of Context-Aware Applications. Extended Abstracts of CHI 2003, Weiser, M., Some computer science issues in ubiquitous computing, Communications of the ACM, Zhang, T., An Architecture for Building Customizable Context-Aware Applications by End-Users, Pervasive 2004 Doctoral colloquium.

Contextion: A Framework for Developing Context-Aware Mobile Applications

Contextion: A Framework for Developing Context-Aware Mobile Applications Contextion: A Framework for Developing Context-Aware Mobile Applications Elizabeth Williams, Jeff Gray Department of Computer Science, University of Alabama eawilliams2@crimson.ua.edu, gray@cs.ua.edu Abstract

More information

GENERATING HIGH LEVEL CONTEXT FROM SENSOR DATA FOR MOBILE APPLICATIONS

GENERATING HIGH LEVEL CONTEXT FROM SENSOR DATA FOR MOBILE APPLICATIONS GENERATING HIGH LEVEL CONTEXT FROM SENSOR DATA FOR MOBILE APPLICATIONS Wolfgang Woerndl 1, Christian Schueller 2, Thomas Rottach 1,2 1 Technische Universitaet Muenchen, Institut fuer Informatik Boltzmannstr.

More information

Context Aware Computing

Context Aware Computing CPET 565/CPET 499 Mobile Computing Systems Context Aware Computing Lecture 7 Paul I-Hai Lin, Professor Electrical and Computer Engineering Technology Purdue University Fort Wayne Campus 1 Context-Aware

More information

Evaluation of Electronic Guidebook Mobile Web Resources

Evaluation of Electronic Guidebook Mobile Web Resources Evaluation of Electronic Guidebook Mobile Web Resources Executive Summary The Electronic Guidebook research project began in 1998 at The Exploratorium, an interactive science museum in San Francisco, in

More information

Policy-Based Context-Management for Mobile Solutions

Policy-Based Context-Management for Mobile Solutions Policy-Based Context-Management for Mobile Solutions Caroline Funk 1,Björn Schiemann 2 1 Ludwig-Maximilians-Universität München Oettingenstraße 67, 80538 München caroline.funk@nm.ifi.lmu.de 2 Siemens AG,

More information

Einführung in die Erweiterte Realität

Einführung in die Erweiterte Realität Einführung in die Erweiterte Realität - 7. Context Toolkit - Gudrun Klinker Dec. 2, 2003 Literature Anind K. Dey, Gregory D. Abowd, and Danieal Salber, A Conceptual Framework and a Toolkit for Supporting

More information

A Survey of Context-Aware Mobile Computing Research

A Survey of Context-Aware Mobile Computing Research A Survey of Context-Aware Mobile Computing Research Guanling Chen and David Kotz 2005.11. 14 Cho Jaekyu jkcho@mmlab.snu.ac.kr Contents 1 2 3 4 5 6 7 8 Introduction Definition of Context Context-Aware Computing

More information

Cicero Designer: An Environment for End-User Development of Multi-Device Museum Guides

Cicero Designer: An Environment for End-User Development of Multi-Device Museum Guides Cicero Designer: An Environment for End-User Development of Multi-Device Museum Guides Giuseppe Ghiani, Fabio Paternò, and Lucio Davide Spano ISTI-CNR, HIIS Lab, Via Moruzzi 1, 56124 Pisa, Italy {Giuseppe.Ghiani,Fabio.Paterno,Lucio.Davide.Spano}@isti.cnr.it

More information

Voice Recognition Based Smart Home Control System

Voice Recognition Based Smart Home Control System International Journal of Engineering Inventions e-issn: 2278-7461, p-issn: 2319-6491 Volume 6, Issue 4 [April 2017] PP: 01-05 Voice Recognition Based Smart Home Control System Awadalla Taifour Ali 1, Eisa

More information

A Context Based Storage System for Mobile Computing Applications

A Context Based Storage System for Mobile Computing Applications A Context Based Storage System for Mobile Computing Applications Sharat Khungar Jukka Riekki {firstname.lastname}@ee.oulu.fi Department of Electrical and Information Engineering and Infotech Oulu P.O.BOX

More information

Modeling Context-Aware Behavior by Interpreted ECA Rules

Modeling Context-Aware Behavior by Interpreted ECA Rules Modeling Context-Aware Behavior by Interpreted ECA Rules Wolfgang Beer 1, Volker Christian 1, Alois Ferscha 1, and Lars Mehrmann 2 1 Johannes Kepler University Linz, Department for Practical Informatics,

More information

System Challenges for Pervasive and Ubiquitous Computing

System Challenges for Pervasive and Ubiquitous Computing System Challenges for Pervasive and Ubiquitous Computing 18 th Roy Want Intel Research May 2005, ICSE 05 St. Louis th May 2005, ICSE What is Ubiquitous Computing? The most profound technologies are those

More information

An Analysis of the Usage of Mobile Phones for Personalized Interactions with Ubiquitous Public Displays

An Analysis of the Usage of Mobile Phones for Personalized Interactions with Ubiquitous Public Displays An Analysis of the Usage of Mobile Phones for Personalized Interactions with Ubiquitous Public Displays Enrico Rukzio, Albrecht Schmidt, Heinrich Hussmann Media Informatics Institute for Computer Science

More information

Involving tourism domain experts in the development of context-aware mobile services

Involving tourism domain experts in the development of context-aware mobile services Involving tourism domain experts in the development of context-aware mobile services David Martín a, Diego López de Ipiña b, Carlos Lamsfus a and Aurkene Alzua a a Human Mobility and Technology CICtourGUNE

More information

Dr. Shuang LIANG. School of Software Engineering TongJi University

Dr. Shuang LIANG. School of Software Engineering TongJi University Human Computer Interface Dr. Shuang LIANG School of Software Engineering TongJi University Today s Topics UI development and Trends NUI Discussion Today s Topics UI development and Trends Development Trends

More information

Push-pins: design-by-user approach of home automation programming

Push-pins: design-by-user approach of home automation programming Push-pins: design-by-user approach of home automation programming Kentaro Fukuchi Takeo Igarashi Japan Science and Technology Agency. Frontier Koishikawa Bldg. 1-28-1 Koishikawa, Bunkyo-ku, Tokyo 112-0002

More information

Plus 10: Descending the Design Funnel THE 10 PLUS 10 METHOD. developing 10 different ideas and refinements of selected ideas

Plus 10: Descending the Design Funnel THE 10 PLUS 10 METHOD. developing 10 different ideas and refinements of selected ideas 10 Plus 10: Descending the Design Funnel developing 10 different ideas and refinements of selected ideas 1.4 The design funnel describes a process that you, as an interaction designer, need to habitually

More information

Reality Mining Via Process Mining

Reality Mining Via Process Mining Reality Mining Via Process Mining O. M. Hassan, M. S. Farag, and M. M. Mohie El-Din Abstract Reality mining project work on Ubiquitous Mobile Systems (UMSs) that allow for automated capturing of events.

More information

Browsing the World in the Sensors Continuum. Franco Zambonelli. Motivations. all our everyday objects all our everyday environments

Browsing the World in the Sensors Continuum. Franco Zambonelli. Motivations. all our everyday objects all our everyday environments Browsing the World in the Sensors Continuum Agents and Franco Zambonelli Agents and Motivations Agents and n Computer-based systems and sensors will be soon embedded in everywhere all our everyday objects

More information

Implicit Personalization of Public Environments using Bluetooth

Implicit Personalization of Public Environments using Bluetooth Implicit Personalization of Public Environments using Bluetooth Hema Mahato RWTH Aachen 52062 Aachen hema.mahato@rwth-aachen.de Dagmar Kern Pervasive Computing University of Duisburg-Essen 45117 Essen,

More information

White Paper. EVERY THING CONNECTED How Web Object Technology Is Putting Every Physical Thing On The Web

White Paper. EVERY THING CONNECTED How Web Object Technology Is Putting Every Physical Thing On The Web White Paper EVERY THING CONNECTED Is Putting Every Physical Thing Every Thing Connected The Internet of Things a term first used by technology visionaries at the AUTO-ID Labs at MIT in the 90s 1 has received

More information

Spontaneous Interaction using Mobile Phones and Short Text Messages

Spontaneous Interaction using Mobile Phones and Short Text Messages Spontaneous Interaction using Mobile Phones and Short Text Messages Frank Siegemund Distributed Systems Group, Department of Computer Science, Swiss Federal Institute of Technology (ETH) Zurich, 8092 Zurich,

More information

Ubicomp and Physical Interaction

Ubicomp and Physical Interaction Ubicomp and Physical Interaction Ubicomp? Computation embedded in the physical spaces around us Ambient intelligence Take advantage of naturally-occurring actions and activities to support people Input

More information

CS260. UI Toolkits. Björn Hartmann University of California, Berkeley EECS, Computer Science Division Fall 2010

CS260. UI Toolkits. Björn Hartmann University of California, Berkeley EECS, Computer Science Division Fall 2010 CS260 UI Toolkits Björn Hartmann University of California, Berkeley EECS, Computer Science Division Fall 2010 In the beginning cryptonomicon.com/beginning.html The Xerox Alto (1973) Event-Driven UIs Old

More information

Mobile and Ubiquitous Computing

Mobile and Ubiquitous Computing Mobile and Ubiquitous Computing Today l Mobile, pervasive and volatile systems l Association and Interoperation l Sensing context and adaptation RIP? How is mobility different Mobile elements are resource-poor

More information

Electronic Capstone Paper Sample

Electronic Capstone Paper Sample Improving the quality of life for people with disabilities and the growing share of older people becomes an increasingly important task for the European society. One of the ways to improve the quality

More information

HCI Lecture 14. Special Issues: Ubiquitous computing

HCI Lecture 14. Special Issues: Ubiquitous computing HCI Lecture 14 Special Issues: Ubiquitous computing Barbara Webb Key points: Making the computer part of the environment Mobile devices Implicit input Ambient output Continuous interaction Issues for design

More information

A Paradigm for Orientation-Based Universal Remote Control

A Paradigm for Orientation-Based Universal Remote Control A Paradigm for Orientation-Based Universal Remote Control Clemens Holzmann, Stefan Resmerita, Michael H. Leitner, and Alois Ferscha Department of Pervasive Computing Johannes Kepler University Linz, Austria

More information

Tracking Mobile Phones on Interactive Tabletops

Tracking Mobile Phones on Interactive Tabletops Tracking Mobile Phones on Interactive Tabletops Florian Echtler, Gudrun Klinker, PhD I16 - Fachbereich Augmented Reality Technische Universität München Fakultät für Informatik Boltzmannstr. 3, D-85747

More information

Middleware Support for Embedded Software with Multiple QoS Properties for Ubiquitous Computing Environments

Middleware Support for Embedded Software with Multiple QoS Properties for Ubiquitous Computing Environments Middleware Support for Embedded Software with Multiple QoS Properties for Ubiquitous Computing Environments Stephen S. Yau, Yu Wang and Dazhi Huang Department of Computer Science and Engineering Arizona

More information

Towards a Framework for Distributed User Modelling for Ubiquitous Computing

Towards a Framework for Distributed User Modelling for Ubiquitous Computing Towards a Framework for Distributed User Modelling for Ubiquitous Computing Marcus Specht, Andreas Lorenz, and Andreas Zimmermann Fraunhofer Institute for Applied Information Technology Schloss Birlinghoven

More information

Recognizing and Predicting Context by Learning from User Behavior

Recognizing and Predicting Context by Learning from User Behavior Recognizing and Predicting Context by Learning from User Behavior 15. September 2003, Jakarta Institut für Praktische Informatik Johannes Kepler Universität Linz, Austria rene@soft.uni-linz.ac.at < 1 >

More information

Self-Sensing Spaces: Smart Plugs For Smart Environments

Self-Sensing Spaces: Smart Plugs For Smart Environments Self-Sensing Spaces: Smart Plugs For Smart Environments Hicham Elzabadani, Abdelsalam (Sumi) Helal, Bessam Abdulrazak and Erwin Jansen Computer and Information Science and Engineering Department University

More information

6 Designing Interactive Systems

6 Designing Interactive Systems 6 Designing Interactive Systems 6.1 Design vs. Requirements 6.2 Paradigms, Styles and Principles of Interaction 6.3 How to Create a Conceptual Model 6.4 Activity-Based Design of Interactive Systems 6.5

More information

6 Designing Interactive Systems

6 Designing Interactive Systems 6 Designing Interactive Systems 6.1 Design vs. Requirements 6.2 Paradigms, Styles and Principles of Interaction 6.3 How to Create a Conceptual Model 6.4 Activity-Based Design of Interactive Systems 6.5

More information

USING SPATIAL CONDITIONS FOR PROACTIVE COMPUTING AND INTERACTION METAPHORS

USING SPATIAL CONDITIONS FOR PROACTIVE COMPUTING AND INTERACTION METAPHORS USING SPATIAL CONDITIONS FOR PROACTIVE COMPUTING AND INTERACTION METAPHORS Sara Streng Institute for Media Informatics University of Munich, Germany sara.streng@ifi.lmu.de Dominique Guinard SAP Research

More information

Page 1. Ubiquitous Computing: Beyond platforms, beyond screens; the invisible computer. Topics for Today. Ubiquitous Computing Fundamentals

Page 1. Ubiquitous Computing: Beyond platforms, beyond screens; the invisible computer. Topics for Today. Ubiquitous Computing Fundamentals Ubiquitous Computing: Beyond platforms, beyond screens; the invisible computer Shwetak N. Patel 2 Topics for Today Ubiquitous Computing Fundamentals Review the history of ubiquitous computing (ubicomp)

More information

Usability. Daniela Rosner. Web Architecture, October 9, School of Information UC Berkeley

Usability. Daniela Rosner. Web Architecture, October 9, School of Information UC Berkeley Usability Daniela Rosner Web Architecture, 290-03 October 9, 2007 School of Information UC Berkeley Outline Introduction what is usability Best Practices common solutions Design Patterns shared languages

More information

Component-Based Technologies for End-User Development

Component-Based Technologies for End-User Development Paper to be published in Communications of the ACM, special issue on End-User Development, Sept. 2004 Component-Based Technologies for End-User Development Anders I. Mørch 1, Gunnar Stevens 2, Markus Won

More information

Reality Mining Via Process Mining

Reality Mining Via Process Mining Reality Mining Via Process Mining O. M. Hassan, M. S. Farag, M. M. MohieEl-Din Department of Mathematics, Facility of Science Al-Azhar University Cairo, Egypt {ohassan, farag.sayed, mmeldin}@azhar.edu.eg

More information

Programming MICHAEL BERNSTEIN CS 376

Programming MICHAEL BERNSTEIN CS 376 Programming MICHAEL BERNSTEIN CS 376 Reminder: project faire II Wednesday A Small Matter of Programming Software engineering is a highly complex task, a microcosm of many challenges in HCI Making software

More information

Final Project Report. Sharon O Boyle. George Mason University. ENGH 375, Section 001. May 12, 2014

Final Project Report. Sharon O Boyle. George Mason University. ENGH 375, Section 001. May 12, 2014 Final Project Report Sharon O Boyle George Mason University ENGH 375, Section 001 May 12, 2014 ENGH 375, Web Authoring, is a course that teaches the fundamentals of good website design. The class textbooks,

More information

Staying Connected with Mobile Devices in the Power Sector

Staying Connected with Mobile Devices in the Power Sector Panasonic Staying Connected with Mobile Devices in the Power Sector Introduction A variety of factors contribute to power utilities feeling the pinch, and mobile solutions offer one way to cut costs by

More information

INTRODUCTION BACKGROUND DISCOVERER. Dan Vlamis, Vlamis Software Solutions, Inc. DISCOVERER PORTLET

INTRODUCTION BACKGROUND DISCOVERER. Dan Vlamis, Vlamis Software Solutions, Inc. DISCOVERER PORTLET FRONT-END TOOLS TO VIEW OLAP DATA Dan Vlamis, Vlamis Software Solutions, Inc. dvlamis@vlamis.com INTRODUCTION Discoverer release 10g uses BI Beans to present Oracle OLAP data. It gets its power from BI

More information

Lecture 23: Domain-Driven Design (Part 1)

Lecture 23: Domain-Driven Design (Part 1) 1 Lecture 23: Domain-Driven Design (Part 1) Kenneth M. Anderson Object-Oriented Analysis and Design CSCI 6448 - Spring Semester, 2005 2 Goals for this lecture Introduce the main concepts of Domain-Driven

More information

N a t i o n a l I C T R & D a n d I n n o v a t i o n R o a d m a p

N a t i o n a l I C T R & D a n d I n n o v a t i o n R o a d m a p N a t i o n a l I C T R & D a n d I n n o v a t i o n R o a d m a p South Africa-VINNOVA Workshop Date: 22 October 2015 N a t i o n a l I C T R & D a n d I n n o v a t i o n R o a d m a p The ICT R&D and

More information

EFFICIENT INTEGRATION OF SEMANTIC TECHNOLOGIES FOR PROFESSIONAL IMAGE ANNOTATION AND SEARCH

EFFICIENT INTEGRATION OF SEMANTIC TECHNOLOGIES FOR PROFESSIONAL IMAGE ANNOTATION AND SEARCH EFFICIENT INTEGRATION OF SEMANTIC TECHNOLOGIES FOR PROFESSIONAL IMAGE ANNOTATION AND SEARCH Andreas Walter FZI Forschungszentrum Informatik, Haid-und-Neu-Straße 10-14, 76131 Karlsruhe, Germany, awalter@fzi.de

More information

A Top-Down Visual Approach to GUI development

A Top-Down Visual Approach to GUI development A Top-Down Visual Approach to GUI development ROSANNA CASSINO, GENNY TORTORA, MAURIZIO TUCCI, GIULIANA VITIELLO Dipartimento di Matematica e Informatica Università di Salerno Via Ponte don Melillo 84084

More information

Programming MICHAEL BERNSTEIN CS 376

Programming MICHAEL BERNSTEIN CS 376 Programming MICHAEL BERNSTEIN CS 376 Reminder: project fair II Monday after Thanksgiving A Small Matter of Programming Software engineering is a highly complex task, a microcosm of many challenges in HCI

More information

APPLICATION OF A METASYSTEM IN UNIVERSITY INFORMATION SYSTEM DEVELOPMENT

APPLICATION OF A METASYSTEM IN UNIVERSITY INFORMATION SYSTEM DEVELOPMENT APPLICATION OF A METASYSTEM IN UNIVERSITY INFORMATION SYSTEM DEVELOPMENT Petr Smolík, Tomáš Hruška Department of Computer Science and Engineering, Faculty of Computer Science and Engineering, Brno University

More information

The Quick Step to Foxtrot

The Quick Step to Foxtrot The Quick Step to Foxtrot Tino Löffler, Stephan Sigg, Sandra Haseloff, and Klaus David Chair of Communication Technology, Department of Electrical Engineering / Computer Science, University of Kassel,

More information

ICT-SHOK Project Proposal: PROFI

ICT-SHOK Project Proposal: PROFI ICT-SHOK Project Proposal: PROFI Full Title: Proactive Future Internet: Smart Semantic Middleware Overlay Architecture for Declarative Networking ICT-SHOK Programme: Future Internet Project duration: 2+2

More information

Chapter 6: Interfaces and interactions

Chapter 6: Interfaces and interactions Chapter 6: Interfaces and interactions Overview Introduce the notion of a paradigm Provide an overview of the many different interface paradigms highlight the main design and research issues for each Consider

More information

Implementing Adaptive Mobile Notification Services: A Model Based Approach

Implementing Adaptive Mobile Notification Services: A Model Based Approach Implementing Adaptive Mobile Notification Services: A Model Based Approach William Brander, Janet Wesson Department of Computer Science and Information Systems Nelson Mandela Metropolitan University, PO

More information

Introduction to User Stories. CSCI 5828: Foundations of Software Engineering Lecture 05 09/09/2014

Introduction to User Stories. CSCI 5828: Foundations of Software Engineering Lecture 05 09/09/2014 Introduction to User Stories CSCI 5828: Foundations of Software Engineering Lecture 05 09/09/2014 1 Goals Present an introduction to the topic of user stories concepts and terminology benefits and limitations

More information

Introducing Collaboration to Single User Applications

Introducing Collaboration to Single User Applications Introducing Collaboration to Single User Applications Abstract Brian Cornell UNC Chapel Hill brian@cs.unc.edu Most research in collaborative systems has been based on designing an ideal system from ground

More information

A Software Architecture for Knowledge Acquisition and Retrieval for Global Distributed Teams

A Software Architecture for Knowledge Acquisition and Retrieval for Global Distributed Teams A Software Architecture for Knowledge Acquisition and Retrieval for Global Distributed Teams Andreas Braun Accenture Maximilianstr. 35 80539 München, Germany andreas.braun@accenture.com Allen H. Dutoit

More information

the NXT-G programming environment

the NXT-G programming environment 2 the NXT-G programming environment This chapter takes a close look at the NXT-G programming environment and presents a few simple programs. The NXT-G programming environment is fairly complex, with lots

More information

PLIS+: A Rule-Based Personalized Location Information System

PLIS+: A Rule-Based Personalized Location Information System PLIS+: A Rule-Based Personalized Location Information System Iosif Viktoratos 1, Athanasios Tsadiras 1, Nick Bassiliades 2, 1 Department of Economics, 2 Department of Informatics, Aristotle University

More information

Introducing Evaluation

Introducing Evaluation Chapter 12 Introducing Evaluation 1 The aims Explain the key concepts used in evaluation. Introduce different evaluation methods. Show how different methods are used for different purposes at different

More information

A Ubiquitous Web Services Framework for Interoperability in Pervasive Environments

A Ubiquitous Web Services Framework for Interoperability in Pervasive Environments A Ubiquitous Web Services Framework for Interoperability in Pervasive Environments Hyung-Jun Yim and Kyu-Chul Lee * Dept. of Computer Engineering, Chungnam National University 220 Gung-Dong, Yuseong-Gu,

More information

Blue3 A Programmable Remote MP3 Sensor

Blue3 A Programmable Remote MP3 Sensor Blue3 A Programmable Remote MP3 Sensor Anonymous Anon Inc. Abstract. We present the concept and the prototypical implementation of Blue3, a programmable device that features a wireless communication interface,

More information

CHAPTER 4: ARCHITECTURE AND SYSTEM DESIGN OF PROPOSED EXPERT SYSTEM: ESOA

CHAPTER 4: ARCHITECTURE AND SYSTEM DESIGN OF PROPOSED EXPERT SYSTEM: ESOA CHAPTER 4: ARCHITECTURE AND SYSTEM DESIGN OF PROPOSED EXPERT SYSTEM: ESOA Pages: From 49 to 64 This chapter presents the Architecture, frameworf^and system design of the we6-6ased expert system. This chapter

More information

Providing Information Superiority to Small Tactical Units

Providing Information Superiority to Small Tactical Units Providing Information Superiority to Small Tactical Units Jeff Boleng, PhD Principal Member of the Technical Staff Software Solutions Conference 2015 November 16 18, 2015 Copyright 2015 Carnegie Mellon

More information

SMART OBJECT DETECTOR FOR VISUALLY IMPAIRED

SMART OBJECT DETECTOR FOR VISUALLY IMPAIRED SMART OBJECT DETECTOR FOR VISUALLY IMPAIRED Govardhan.S.D 1, Kumar.G 2, Mariyappan.S 3, Naveen Kumar.G 4, Nawin Asir.J 5 Assistant Professor 1, Student 2,3,4,5 Department of Electronics and Communication

More information

How to Conduct a Heuristic Evaluation

How to Conduct a Heuristic Evaluation Page 1 of 9 useit.com Papers and Essays Heuristic Evaluation How to conduct a heuristic evaluation How to Conduct a Heuristic Evaluation by Jakob Nielsen Heuristic evaluation (Nielsen and Molich, 1990;

More information

Page 1. Welcome! Lecture 1: Interfaces & Users. Who / what / where / when / why / how. What s a Graphical User Interface?

Page 1. Welcome! Lecture 1: Interfaces & Users. Who / what / where / when / why / how. What s a Graphical User Interface? Welcome! Lecture 1: Interfaces & Users About me Dario Salvucci, Associate Professor, CS Email: salvucci@cs.drexel.edu Office: University Crossings 142 Office hours: Thursday 11-12, or email for appt. About

More information

Mobile and Ubiquitous Computing

Mobile and Ubiquitous Computing Mobile and Ubiquitous Computing Today l Volatile systems l Association and Interoperation l Sensing context and adaptation Volatile systems " Mobile computing Exploiting the connectedness of devices as

More information

Andrew Fano. Introduction

Andrew Fano. Introduction From: AAAI Technical Report FS-01-05. Compilation copyright 2001, AAAI (www.aaai.org). All rights reserved. Mobile Valet: Enabling Collaboration between Remote Services, Mobile Users, and Task Locations

More information

Easymeeting Prototyping Ubiquitous Computing in Offices

Easymeeting Prototyping Ubiquitous Computing in Offices Easymeeting Prototyping Ubiquitous Computing in Offices Florian Resatsch 2, Uwe Sandner 1, Christian Höchst 2, Daniel Michelis 2, Thomas Schildhauer 2, Jan Marco Leimeister 1, and Helmut Krcmar 1 1 Technische

More information

Monitoring BPMN-Processes with Rules in a Distributed Environment

Monitoring BPMN-Processes with Rules in a Distributed Environment Monitoring BPMN-Processes with Rules in a Distributed Environment Lothar Hotz 1, Stephanie von Riegen 1, Lars Braubach 2, Alexander Pokahr 2, and Torsten Schwinghammer 3 1 HITeC e.v. c/o Fachbereich Informatik,

More information

Are You Too Busy? Practical Tips For Better Time Management

Are You Too Busy? Practical Tips For Better Time Management with Lorena Prime Are You Too Busy? Practical Tips For Better Time Management Is this How You Feel? What s a Productivity Expert? Focuses on offices (at work or virtual / home) Sets up file systems and

More information

Adaptive Socio-Recommender System for Open Corpus E-Learning

Adaptive Socio-Recommender System for Open Corpus E-Learning Adaptive Socio-Recommender System for Open Corpus E-Learning Rosta Farzan Intelligent Systems Program University of Pittsburgh, Pittsburgh PA 15260, USA rosta@cs.pitt.edu Abstract. With the increase popularity

More information

Adaptive Medical Information Delivery Combining User, Task and Situation Models

Adaptive Medical Information Delivery Combining User, Task and Situation Models Adaptive Medical Information Delivery Combining User, Task and Situation s Luis Francisco-Revilla and Frank M. Shipman III Department of Computer Science Texas A&M University College Station, TX 77843-3112,

More information

Software Tools. Scott Klemmer Autumn 2009

Software Tools. Scott Klemmer Autumn 2009 stanford hci group http://cs147.stanford.edu Software Tools Scott Klemmer Autumn 2009 It accomplishes an important task (for better and for worse) You don t have to make it yourself, and it abstracts a

More information

EL DORADO UNION HIGH SCHOOL DISTRICT Educational Services

EL DORADO UNION HIGH SCHOOL DISTRICT Educational Services Educational Services Course of Study Information Page Course Title: Web Page Authoring and Creation (Course #468) Rationale: A continuum of courses, including advanced classes in computer technology is

More information

11/17/2008. CSG 170 Round 8. Prof. Timothy Bickmore. Quiz. Open book / Open notes 15 minutes

11/17/2008. CSG 170 Round 8. Prof. Timothy Bickmore. Quiz. Open book / Open notes 15 minutes Human-Computer Interaction CSG 170 Round 8 Prof. Timothy Bickmore Quiz Open book / Open notes 15 minutes 1 Paper Prototyping Team Project Review Models 2 Categories of User Models 1. Hierarchical structuring

More information

First-Time Usability Testing for Bluetooth-Enabled Devices

First-Time Usability Testing for Bluetooth-Enabled Devices The University of Kansas Technical Report First-Time Usability Testing for Bluetooth-Enabled Devices Jim Juola and Drew Voegele ITTC-FY2005-TR-35580-02 July 2004 Project Sponsor: Bluetooth Special Interest

More information

Oracle Applications Unlimited and Web 2.0: You Can Have It Now!

Oracle Applications Unlimited and Web 2.0: You Can Have It Now! Oracle Applications Unlimited and Web 2.0: You Can Have It Now! Product Manager Oracle WebCenter & Portal Products The preceding is intended to outline our general product direction. It is intended for

More information

Reflections on Teaching App Inventor: Challenges and opportunities

Reflections on Teaching App Inventor: Challenges and opportunities Reflections on Teaching App Inventor: Challenges and opportunities Paolo Musmarra Department of Computer Science. University of Salerno pmusmarra@gmail.com Abstract. App Inventor is a visual programming

More information

I D C T E C H N O L O G Y S P O T L I G H T. V i r t u a l and Cloud D a t a Center Management

I D C T E C H N O L O G Y S P O T L I G H T. V i r t u a l and Cloud D a t a Center Management I D C T E C H N O L O G Y S P O T L I G H T Orchestration S i m p l i f i es and Streamlines V i r t u a l and Cloud D a t a Center Management January 2013 Adapted from Systems Management Software Purchasing

More information

Programming. michael bernstein spring cs376.stanford.edu

Programming. michael bernstein spring cs376.stanford.edu Programming michael bernstein spring 2013 cs376.stanford.edu A Small Matter of Programming Software engineering is a highly complex task, a microcosm of many challenges in HCI Making software engineering

More information

Additionally: IBM JS 20 Connected via Sunet - 10 Gbit/s (not point-to-point) Växjö University Sensor-GRIDs

Additionally: IBM JS 20 Connected via Sunet - 10 Gbit/s (not point-to-point) Växjö University Sensor-GRIDs A Grid-like Infrastructure for Sensor-Networks J. Andersson M. Ericsson M. Karlsson Welf Löwe www.lois-space.net Växjö University Project Multi-purpose radio research facility, Primarily intended for radio

More information

AC : CONCEPTUAL DESIGN ENVIRONMENT FOR AUTOMATED ASSEMBLY LINE FRAMEWORK

AC : CONCEPTUAL DESIGN ENVIRONMENT FOR AUTOMATED ASSEMBLY LINE FRAMEWORK AC 2007-1539: CONCEPTUAL DESIGN ENVIRONMENT FOR AUTOMATED ASSEMBLY LINE FRAMEWORK Sheng-Jen Hsieh, Texas A&M University Dr. Sheng-Jen ( Tony ) Hsieh is an Associate Professor in the College of Engineering

More information

Development of Rule Scheduler for Multiple Triggered Rules in Active Object-Relational Database Systems

Development of Rule Scheduler for Multiple Triggered Rules in Active Object-Relational Database Systems Development of Rule Scheduler for Multiple Triggered Rules in Active Object-Relational Database Systems S.Meenakshi 1, V.Thiagarasu 2 Associate Professor, Dept. of Computer Science, Gobi Arts & Science

More information

Ubiquitous Computing. Ambient Intelligence

Ubiquitous Computing. Ambient Intelligence Ubiquitous Computing Ambient Intelligence CS4031 Introduction to Digital Media 2016 Computing Evolution Ubiquitous Computing Mark Weiser, Xerox PARC 1988 Ubiquitous computing enhances computer use by making

More information

IJMIE Volume 2, Issue 9 ISSN:

IJMIE Volume 2, Issue 9 ISSN: WEB USAGE MINING: LEARNER CENTRIC APPROACH FOR E-BUSINESS APPLICATIONS B. NAVEENA DEVI* Abstract Emerging of web has put forward a great deal of challenges to web researchers for web based information

More information

Curriculum Guide. ThingWorx

Curriculum Guide. ThingWorx Curriculum Guide ThingWorx Live Classroom Curriculum Guide Introduction to ThingWorx 8 ThingWorx 8 User Interface Development ThingWorx 8 Platform Administration ThingWorx 7.3 Fundamentals Applying Machine

More information

An Intelligent Tutoring System Prototype for Learning to Program Java TM

An Intelligent Tutoring System Prototype for Learning to Program Java TM An Intelligent Tutoring System Prototype for Learning to Program Java TM Edward R. Sykes School of Computing and Information Management, Sheridan College 430 Trafalgar Road, Oakville, Ont., Canada, L6H

More information

Command composition approach in crossing interfaces. with more than two continuous goals

Command composition approach in crossing interfaces. with more than two continuous goals Some Student November 30, 2010 CS 5317 Command composition approach in crossing interfaces with more than two continuous goals 1. INTRODUCTION Over the last decade, pen and touch-based interactions began

More information

Design and deliver cloud-based apps and data for flexible, on-demand IT

Design and deliver cloud-based apps and data for flexible, on-demand IT White Paper Design and deliver cloud-based apps and data for flexible, on-demand IT Design and deliver cloud-based apps and data for flexible, on-demand IT Discover the fastest and easiest way for IT to

More information

Heuristic Evaluation of Groupware. How to do Heuristic Evaluation of Groupware. Benefits

Heuristic Evaluation of Groupware. How to do Heuristic Evaluation of Groupware. Benefits Kimberly Tee ketee@ucalgary.ca CPSC 681 Topic Heuristic Evaluation of Groupware Heuristic evaluation [9] is a discount evaluation method for finding usability problems in a singleuser interface design.

More information

Enriching Lifelong User Modelling with the Social e- Networking and e-commerce Pieces of the Puzzle

Enriching Lifelong User Modelling with the Social e- Networking and e-commerce Pieces of the Puzzle Enriching Lifelong User Modelling with the Social e- Networking and e-commerce Pieces of the Puzzle Demetris Kyriacou Learning Societies Lab School of Electronics and Computer Science, University of Southampton

More information

A Service Oriented Architecture Combining Agents and Ontologies Towards Pervasive Adaptation

A Service Oriented Architecture Combining Agents and Ontologies Towards Pervasive Adaptation A Service Oriented Architecture Combining Agents and Ontologies Towards Pervasive Adaptation Christos GOUMOPOULOS a,1 and Achilles Kameas a, b a Research Academic Computer Technology Institute, DAISy group,

More information

Context-aware Services for UMTS-Networks*

Context-aware Services for UMTS-Networks* Context-aware Services for UMTS-Networks* * This project is partly financed by the government of Bavaria. Thomas Buchholz LMU München 1 Outline I. Properties of current context-aware architectures II.

More information

CHAPTER 4 HUMAN FACTOR BASED USER INTERFACE DESIGN

CHAPTER 4 HUMAN FACTOR BASED USER INTERFACE DESIGN CHAPTER 4 HUMAN FACTOR BASED USER INTERFACE DESIGN 4.1 Introduction Today one of the most important concerns is how to use the system with effectiveness, efficiency and satisfaction. The ease or comfort

More information

Software Programming in IPT using a Simplified AJAX Architecture. 9/27/2013 Dave McGuinness

Software Programming in IPT using a Simplified AJAX Architecture. 9/27/2013 Dave McGuinness Software Programming in IPT using a Simplified AJAX Architecture 9/27/2013 Dave McGuinness Introduction The term AJAX (Asynchronous JavaScript and XML) was coined by Jesse James Garrett (Garrett, 2005)

More information

An integrated, flexible, and Internet- based control architecture for home automation system in the Internet Era

An integrated, flexible, and Internet- based control architecture for home automation system in the Internet Era An integrated, flexible, and Internet- based control architecture for home automation system in the Internet Era Neng-Shiang Liang, Li-Chen Fu, Chao-Lin Wu lichen@csie.ntu.edu.tw Department of Computer

More information

Course Outline. Department of Computing Science Faculty of Science. COMP 3450 Human Computer Interaction Design (3,1,0) Fall 2015

Course Outline. Department of Computing Science Faculty of Science. COMP 3450 Human Computer Interaction Design (3,1,0) Fall 2015 Course Outline Department of Computing Science Faculty of Science COMP 3450 Human Computer Interaction Design (3,1,0) Fall 2015 Instructor: Office: Phone/Voice Mail: E-Mail: Course Description Students

More information

Page 1. Ideas to windows. Lecture 7: Prototyping & Evaluation. Levels of prototyping. Progressive refinement

Page 1. Ideas to windows. Lecture 7: Prototyping & Evaluation. Levels of prototyping. Progressive refinement Ideas to windows Lecture 7: Prototyping & Evaluation How do we go from ideas to windows? Prototyping... rapid initial development, sketching & testing many designs to determine the best (few?) to continue

More information