Principle for

Chen Kai

DIUF – Department of Informatics University of Fribourg, Switzerland [email protected]

Abstract 2. Design principles Design principles are derived from a mix of theory-based knowledge, experience, the common sense. They tend This paper intends to make a state of the art of design to be written in a prescriptive manner, suggesting to de- principles applicable in the ubiquitous computing (ubi- signers what to provide and what to avoid in the interface comp) domain. Since design principles are well defined, (does and don’ts of ). More specifically, accepted and used in Human-Computer interaction, it is they intend to help designers explain and improve their not the case in ubicomp. We also analyze a concrete ubiq- [5]. D. A. Norman [2] has identified the design uitous system project, establish a list of applied design principle which should be consider before creating any principles and check if design principles for GUIs fit to objects with which we will interact in our life. this particular system. In his paper [3], D. Gelbcite has made an overview of Keywords: Design principle, Ubiquitous computing, the main principles defined by Norman: Pervasive computing. • Visibility. To be able to control the object, we have to see their important components. For example, 1. Introduction when we drive a car we should be able to see the state of device and possible action. The car control Since 30 years, the development of computing technol- should be place in a obvious position, so we can ogy has changed drastically our daily life, and the inter- easily found and use them. As a bad example, we action between human and computer has evolved accord- take the auto faucet. It is difficult to use, because ingly. If at the beginning, users were operating the ma- people like me will always try to find the switch to chine only (computer centered design), nowadays they deactivate it. are the center of the problem and computer programs or systems are developed in regards to user’s needs and • Feedback. It’s important to know what the system habits (user center design). The user being in the cen- is doing now. The feedback should be immedi- ter, program and system designers have to think about ate and synchronized with the user action. For in- how users interact with computers and what kind of de- stance, when playing piano, the pianist be able to sign principles should be applied in order to design usable hear the sound when he presses the key. systems. • . Perceiving the properties of a object In this paper, we intend to specifically present some should give the means of its operation. For exam- design principles for ubiquitous computing (ubicomp) ple, the different shape of the door handle should presented in divers papers. In section 2, we present prin- tell us to push or pull it to open the door. ciples of design every day objects proposed by D. A. Nor- man [2]. In section 3, we show how these principles are • Mapping. Mapping means the relationship be- applied in design the graphic user interface. In section tween controls and their action. For example, the 4, we list some design principles for ubiquitous comput- control of MP3 player has the buttons with direc- ing system found in the literatures. In section 5, we show tion triangles. Just by seeing the direction of trian- a example of the ubiquitous computing system and the gle, we know how to jump to the next song or go design principles which has been applied, and find out back to the previous one. which of the design principles considered in GUI can be applied to this system. In section 6, we draw a conclusion • Constraint. Restricting some interactions can re- about design principles of ubicomp and future work. duce the chance of errors. For example, in the menu list some options are unavailable in some is that they are easier to learn and use. Users have moment context. to learn only a single mode of operation that is ap- plicable to all objects. • Consistency. The interfaces which have similar op- erations should be consistent. For example, the • Affordance. It is a term used to refer to an attribute power on buttons are similar in different devices of an object that allows people to know how to or the access to menu are always the same. use it [5]. For example the graphical elements like icons should be designed to afford clicking, scroll- In next section, we introduce how these principles are bars to afford moving up and down, buttons to af- applied in graphic user interfaces. ford pushing.

3. Design principle for graphical user • Mapping. J. Hobart calls it Provide Traceable interface Paths which means users should be able to know how to go to a window, how to achieve some func- In the previous section, we have seen the main design tions. principles for everyday objects. Now we present how these principles are applied specifically in the graphical • Simplicity. Keep the important and interesting el- user interfaces (GUI). ements in the screenful space. Getting the bal- To make the program more user friendly, user inter- ance between aesthetic appeal and simplicity[4]. face must be intuitive and easy to use. In the paper ”Prin- Google is a good example, the interface contains cipals of Good GUI Design”, J. Hobart [4] has shown the only the necessary elements (e.g. the text field and causes that contribute to a bad design: button) to achieve the task. In the next section, we present some design principles • Forgetting user identified for ubicomp systems. • Failing to Give user control 4. Design Principle for Ubiquitous • Providing to many feature at the top level computing In [5] (ch. 1.6), they identify Norman’s design prin- The concept of ubicomp has been developed in the 80’ ciples applicable specifically to GUI: by Marc Weiser and stated that computers will be every- where, disappear into our environment and will be em- • Visibility. Intuitive position of control components bedded into everyday objects [1]. like buttons and switches in the GUI can help user In his vision, Weiser predicted a radical change of to use the program more easily instead of guessing paradigm in computer sciences passing from ”many users how to make it work. - one computer” to ”one user - many computers”. Also • Feedback. To be able to know what has been done ubicomp will allow to access information every time and and how to continue, the user need a feedback. everywhere. For instance, during a backup operation, the user This new paradigm force us to redefine the interaction would appreciate to know the remaining time in or- mode with such systems and reconsider the design prin- der to organize his time. J. Hobart [4] states that in ciples that should be applied in order to create usable, general, most users like to have a message dialog intuitive, secure computing systems. box with a progress indicator displayed when op- We have found several papers describing design prin- erations are going to take longer than seven to ten ciples. It appears that there are general principles which seconds. cover everything in every domains as it is the case for GUI for instance. In the field of ubicomp, there are more • Constraints. Constraints means to restrict certain different approaches which not necessary overlap. We kinds of user interaction. The advantage is that it have selected only the paper describing what we consider reduce the chance of making mistakes. A common to be relevant principles. design practice in graphical user interfaces is to de- activate certain menu options. 4.1. Computer system issues • Consistency. J. Hobart shows a good example of In the paper ”Pervasive Computing: Vision and Chal- consistency in software development. Suppose we lenges” [8] M. Satyanarayanan et al. show the de- are writing the business application, we should pro- sign principles in computer issues. At the beginning vide the user with consistent behaviors. The busi- the authors present the evaluation of computer system. ness users of your software always have the similar The ubiquitous computing environment is saturated with needs. In GUI, the benefits of consistent interface computing and communication capability. The difference between ubiquitous systems and other computing sys- system is to fit user’s requirement, therefore the worker tems is that they become integrally part of people’s life, does not have to know what happen in the background. and is ”invisible”. Ubiquitous systems contain the princi- So they can focus on their work and increase the effi- ple of distributed system and mobile computing system. ciency. But in educational context, the goal is to interest They include the problematic of: the students. If the technology is completely invisible, then people don’t know how it works and that will de- • Remote communication crease their curiosity. That is why they present three cen- • Distributed security tral themes for ubiquitous education computing.

• Mobile networking 4.2.1. Curiosity Enhancement • Location sensitivity ”Ubiquitous Computing as a Means of Conveying Besides those concerns, ubicomp contains the addi- Ideas”. To motivate the students, we need to increase the tional principles: curiosity of the objects with which they interact. For that, people should be able to design, program, customize the 4.1.1. Effective use of Smart Spaces objects. The authors show their lab to show how to argu- ment the curiosity. Their project is called ”SmartTiles”. The smart space could be an enclosed area, for example SmartTiles are tiles-like pieces which contains a micro- classroom, meeting room. Smartness means the use of controller, LED, and piezoelectric touch sensor. The tiles the ubiquitous computing technology. The system in the may be placed in a background fabric that supplies com- space can adapt user’s requirements or provide specific munication connections (between neighboring tiles) and services to users depending on user’s information, for ex- a source of power. Each tiles are programmable and they ample activities or movements. can be combined into arrays to communicate with each others. As shown in Figure 1, the independently pro- 4.1.2. Invisibility grammed SmartTitles can be combined together to sim- As mentioned by Weiser, the most profound technology ulate the famous ”Game of life”. This shows the ap- are the one which disappear. The invisibility is the main proach of ”curiosity enhancement” for educational ubiq- feature of ubiquitous system. The disappearance of the uitous computing. technology decreases the distraction. If the system al- ways meets the user’s requirement then it will be inte- grated into people’s life.

4.1.3. Localized Scalability Since the interaction between the surroundings and user’s computer space increase, the density changes and strongly depends on the number of users. The nowadays computing systems (e.g. web server, email server) ignore the distance from user to the server, whether they are lo- cated in the same room or across countries, they get the same services. But a ubicomp system is location sensi- tive, in other words the location of the user is important and changes the behaviour of the system. Figure 1: SmartTiles array running the ”Game of Life” cellular automaton simulation. 4.2. Design principles for educational ubiquitous computing system The goal of ubicomp is to help people in the daily tasks. 4.2.2. Control and Programmability In an ubicomp environment, users are in the center. The idea is to put computers into the background. M. Eisen- ”Turning Ubiquitous Computing Artifacts into Means of berg et al. [7] argue that, as a design principle, ”invisibil- Expression”. Instead of doing the ”screen based” pro- ity” has advantages in some domains; but that it has pow- gramming, the educational ubiquitous computing enables erful, and ultimately counterproductive, connotations for students to program the behaviors of the object in the educational design. real world. ”a bicycle might be equipped with a pro- They figure out that at the office work, professional grammable display whose operation is influenced by the business benefit of the ”invisible” technology. In the of- actions of the rider; a set of wind chimes could be aug- fice work context, the goal of the ubiquitous computing mented with programs that cause the chimes to produce distinct sounds in response to distinct patterns of wind.” 4.3. Transaction supporting In [7], they also describe projects such as: LED bracelet A transaction is an agreement between the buyer and (fig. 2) and tanktop shirt (fig. 3), they are ”programmable seller for an exchange of items of value, such as goods, wearable” artifact objects. The user can write very sim- services and money. Transactions are the most common ple code and sent to the object to produce variety of visual way of interaction among people. (e.g. baggage han- effect. dling, check out system). In , the most prevalent daily human and computer interaction is the retail transaction. We found they can be benefit from the ubiquitous computing. A simple example of retail transaction settings is the ”au- tomated checkout”. The idea is that customers enter the store, choose the products they want and leave the store without waiting in the queue to achieve the payment, the amount is translated from their credit card to the account of the store automatically. T. Salvador et al.[10] suggest in their paper that when we apply ubiquitous computing in transaction system we have to consider the following principles: accountability, real-time inspectability, exercise of resource. In this paper, the authors present the scenario of a RFID check-out system. The advantage of using RFID is that the customers do not need to wait in the line to pay their items. By checking the RFID tags on the items Figure 2: Programmable bracelet with an array of LED and the user’s credit card the ubiquitous check out system sequence as a display. achieves the transactions. On the other hand, they find some problems. When users want to use another credit card, they don’t want the system to access their account to get some information. Also the cashiers need to usu- ally check the customer’s basket in order to ensure all articles are paid and the payment is done with a valid and authentic credit card (right owner). With this scenario, they summarize following the principles of design in the context of transaction:

4.3.1. Accountability Ubicomp systems will hide their actions of the transac- tions (i.e. ubicomp must be accountable). In the ubiqui- tous check out system, the transaction should be trusted by the client. In other words, the payment must be achieved correctly.

4.3.2. Real-Time Inspectability

Figure 3: Programmable tanktop shirt. Here, the wearer It means in the context of check-out that at all time cus- is ”reprogramming” the shirt wirelessly with a new start- tomers as well as the cashiers should be able to see ing cellular automaton pattern. ”what’s going on”. The customers want to ensure the items are payed by the right credit card, and cashier have to ensure the customer did not forget items in the basket or cart and the credit card belongs to the customer. 4.2.3. Aesthetics 4.3.3. Exercise of Recourse ”Making Beautiful Ubiquitous Computational Artifacts”. The authors suggest that the ubiquitous computing envi- The last element to support transactions is that both par- ronment should be beautiful and comfortable, increasing ties must have access to recourse. Before leaving the the motivation and creativity when working in this space. store, the customers can review their receipt and make sure that everything is in order. If mistakes happen dur- ing the transaction, the customers must be able to ask for correction.

4.4. Privacy awareness The protection of personal information is another impor- tant issue in the principle of designing the ubicomp sys- tem. Our future world will be full of smart and cooper- ative ubiquitous computing devices. People will interact with them every time and every where. These systems will get some information from your: location, move- ment, intent or even identification. Figure 4: Scenario implementing pawS M. Langheinrich[11] believes that there are two so- lutions to ensure that not everyone sees everything or to find a technology that guarantee, our personal in- formation could stay private by applying encryption • Proximity and locality. By using the information and anonymization. He also figures out that even if of location and proximity, it can restrict the user to anonymization technology can make tracing personal access some data collections. digit identity impossible and encryption scheme seems to be hard to break, we must realize that our presence in the • Access and recourse. There should be an inter- real world can not be completely hidden nor anonymized. face for the user to access their personal informa- In his paper, he proposes the privacy awareness system tion. The usage and the location of their informa- (pawS) which aims to find a solution balancing those two tion should be noticed to the users. approaches. The pawS focuses on ubiquitous computing environ- 5. The design principles applied in ments that allow data collectors to both announce and ubiComp in a concrete use case implement data usage policies, as well as providing data subjects with technical means to keep track of their per- In this section, we present an ubicomp system and its de- sonal information as it is stored, used, and possibly re- sign principles and try to define if the design principles moved from the system. for GUI can also be applied in this project. The Figure 4 shows a simple scenario which imple- Project Aura [13] is an ubiquitous computing envi- ments pawS concepts: ronment at Carnegie Mellon university. Instead of ex- plaining the Aura system itself, we choose the two hypo- • When the user enters the building, a privacy bea- thetical scenarios which are described in the [13]. con lists the data collection of each services • Scenario 1 : • A Privacy assistant on the user mobile connects Jane is at Gate 23 in the Pittsburgh airport, wait- with a privacy proxy ing for her connecting flight. She would like to send • After comparing these privacy policies with the the documents by email by using wireless. Unfor- user’s privacy policy configurations, the user’s mo- tunately, bandwidth is miserable. Aura observes bile device disables some services that building of- that at the current bandwidth Jane won’t be able fers. to finish sending her documents before her flight departs. Consulting the airports network weather To be able to create this system, the author lists the service and flight schedule service, Aura discov- main principles: ers that wireless bandwidth is excellent at Gate 15. A dialog box pops up on Jane’s screen suggesting • Notice. The data collections in the ubiquitous com- that she go to Gate 15. Jane accepts Aura advice puting system should declare their privacy policies, and walks to Gate 15. She watches CNN on the TV and there should be efficiently communicated to there until Aura informs her that it is close to be- the user. ing done with her messages, and that she can start walking back. The last message is transmitted dur- • Choice and consent. There should be a selection ing her walk, and she is back at Gate 23 in time for mechanism to help users to indicate their preferred her boarding call. service by comparing their privacy policy to the privacy policies of the services. • Scenario 2 : Fred is in his office preparing for a meeting at Aura finds that the bandwidth of the current loca- which he will give a presentation and a software tion is poor such that Jane will not be able to finish demonstration. It is time to leave, but Fred is not sending her email. Therefore, Aura suggests Jane quite ready. Aura transfers the state of his work to go to another gate (of course there should be from his desktop to his handheld, and allows him enough time to achieve the task before the flight). to make his final edits using voice commands dur- ing his walk. Aura infers where Fred is going from • High-level Energy Management. Since the number his calendar and the campus location tracking ser- of mobile devices around us increases and also they vice. It downloads the presentation and the demon- become more proactive and context-aware, there is stration software to the projection computer, and a continuous increase of energy demand. The au- warms up the projector. Fred finishes his edits just thors propose solutions such as the power-aware before he enters the meeting room. As he walks in, memory management [14] and the Energy-aware Aura transfers his final changes to the projection adaptation [15]. computer. As the presentation proceeds, Fred is As we can see, the design principles applied in the about to display a slide with highly sensitive bud- two scenarios are specific to ubicomp. We try to get information. Aura senses that this might be a apply more general design principles as defined by mistake: the room face detection and recognition Norman and try to determine if human-ubicomp capability indicates that there are some unfamiliar system interaction can be design as GUI’s are. faces present. It therefore warns Fred. Realizing that Aura is right, Fred skips the slide. He moves – Visibility. To decrease the distraction, Aura on to other topics and ends on a high note, leaving must be invisible. Its operations are in the the audience impressed by his polished presenta- background. It changes its comportment tion. when user’s context changed, and it gives the user advice when it is necessary. From these two scenarios, we can identify several de- – Affordance. Aura is an autonomous system. sign principles for ubicomp. Users do not have to operate it, therefore ”af- fordance” is not important for Aura. • Proactivity. Which is the most important design principle of ubicomp. The transitional computing – Consistency. Although the users do not have system we are using are poor user’s intention detec- to operate Aura, there are at least some com- tion. Therefore they offer little adaption and proac- ponents in its user interface. For example, tivity [8]. Contrarily, Aura serves people by captur- when Aura pops up the message box, the con- ing their intent and giving suggestion to users. In firm and cancel buttons must be the same as the first scenario, Aura discovers that Jane want to in other applications. send documents by wireless, but since there are too – Feedback. Aura has to give users intuitive many peoples using the wireless at the same gate, feedback. When every tasks are done, Aura Jane will not succeed in sending these documents must inform the user by popping up a mes- before depart. Aura looks for a more free gate, cal- sage box, and the user can also check the culates the time for getting to there and compare progress of the task. with the time of sending the document. Then Aura gives Jane an advise to achieve her task. We see that in this case the interaction with the system can follow the four main principles used in • Privacy and Trust. Ubicomp must obtain the infor- GUI design. Only the affordance is not important mation about the users. Some information will be here. sensitive for someone. In the second scenario, the projector is turn on before Fred comes to the con- 6. Conclusion ference room. The user should first be authenticate to have the right to achieve that, and also during In this paper, we have looked at design principles that the presentation, when Fred go through the slide are applicable to ubicomp systems. To do this we have which contains sensitive data. Aura detects such first defined the concept of design principles and their ap- that there are untrusted person in this room, so it plications in different domains such as every day object suggest Fred to skip some slide. design and GUIs. We have found that the variety of ubi- comp systems in different domains make difficult to de- • . This is another feature of ubi- fine general design principles as it is the case in HCI and comp. The system changes its comportment of GUI. However, we have identified some that appear to be user’s state and surrounding. In the first scenario, important in the design phase of an ubicomp system. We also found that even if specific design principles must be [12] A. Boedcher, K. Mukasa, D. Zuehlke. Capturing applied when creating an ubicomp system, some of the Common and Variable Design Aspects for Ubiqui- adopted ones in HCI can be taken into consideration es- tous Computing with MB-UID. 2005. pecially when the user has to explicitly interact with the system. As conclusion, we can say that is an open field [13] D. Garlan, Daniel P. Siewiorek, A. Smailagic, P. of research for now although different attempts have been Steenkiste Project Aura: Toward Distraction-Free done already. We miss a proper classification and gener- Pervasive Computing. Carnegie Mellon University, alization of ubicomp design principles like it is the case 2002. in HCI domain. [14] A. R. Lebeck, X. Fan, H. Zeng, C. Ellis Power Aware Page Allocation. Department of Computer 7. Acknowledgement Science Duke University, 2002. I would like to thank my supervisor, Pascal Bruegger. He [15] J. Flinn and M. Satyanarayanan Energy-aware gives me a lot of ideas about how to writing a scientific adaptation for mobile applications. 17th ACM paper, and helps me to correct my English writing mis- Symposium on Operating Systems Principles (SO takes very patiently. Without his support, I would not SP ’99), Published as Operating Systems Review, have been able to terminate this seminar. 34(5):48C63, Dec. 1999. 8. References [1] M. Weiser. The Computer for the 21st Century. Sci- entific American, Inc, 1991. [2] D. A. Norman. The Design of Everyday Things. The MIT Press, forth edition, 2001. [3] D. Gelb. An overview of ’s design prin- ciples. 2007. [4] J. Hobart. Principal of Good GUI Design. 2007. [5] H. Sharp, Y. Rogers, J. Preece. Interaction design beyond human-computer interaction. Wiley, 2nd Edition, 2006 [6] S. Erikson. Designing for Accountability. Depart- ment of Human Work Science and Media Technol- ogy Blekinge Institute of Technology, 2002. [7] M. Eisenberg, A. Eisenberg, L. Buechley, and N. Elumeze. Invisibility Considered Harmful: Revisit- ing Traditional Principles of Ubiquitous Computing in the Context of Education. Department of Com- puter Science, University of Colorado, 2006. [8] M. Satyanarayanan. Pervasive Computing: Vi- sion and Challenges. School of Computer Science Carnegie Mellon University, 2001. [9] D. Chalmers, M. Chalmers, J. Crowcroft, M. Kwiatkowska, R. Milner, E. O’Neill, T. Rodden, V. Sassone, M. Sloman. Ubiquitous Computing: Ex- perience, Design and Science. 2006. [10] T. Salvador, S. Barile, J. Sherry. Ubiquitous Computing Design Principles: Supporting Human- Human and Human-Computer Transactions. 2004. [11] M. Langheinrich. A Privacy Awareness System for Ubiquitous Computing Environments. Institute of Information Systems, ETH Zurich.