Presentation is loading. Please wait.

Presentation is loading. Please wait.

Usability of State Based Boolean eBlocks Susan Cotterell and Frank Vahid * Department of Computer Science and Engineering University of California, Riverside.

Similar presentations


Presentation on theme: "Usability of State Based Boolean eBlocks Susan Cotterell and Frank Vahid * Department of Computer Science and Engineering University of California, Riverside."— Presentation transcript:

1 Usability of State Based Boolean eBlocks Susan Cotterell and Frank Vahid * Department of Computer Science and Engineering University of California, Riverside {susanc, vahid}@cs.ucr.edu http://www.cs.ucr.edu/eblocks * Also with the Center for Embedded Computer Systems at UC Irvine This work is being supported by the National Science Foundation and a Department of Education GAANN Fellowship

2 2 of 16 Introduction  Sensor networks are emerging as an important general computing domain Small inexpensive battery-powered sense and compute nodes Tens to thousands of nodes Wired or wireless communication Stringent requirements (power, cost, size) Military Applications http://robotics.eecs.berkeley.edu/~pister/29Palms0103/ Medical Monitoring http://www.eecs.harvard.edu/~mdw/proj/codeblue/ Environmental Monitoring http://www.greatduckisland.net/ http://today.cs.berkeley.edu/retreat-6-03/ Home Automation http://www.smarthome.com Structure/Building Monitoring http://www.mrr.dot.state.mn.us/research/MnROAD_Project/MnROADProject.asp

3 3 of 16  Potential sensor network application developers may not be computer programmers Instead, engineers, scientists, office workers, homeowners, etc.  Existing programmable nodes Flexible, but require programming  Existing off-the-shelf end applications Specialized, so hard to customize Expensive due to small volumes  Our solution – eBlocks Enables non-programming users to create simple but useful customized sensor network applications Introduction Photo: Jason Hill http://www.dustnetworks.com/ http://www.smarthome.com http://www.xbow.com/ Flexible, hard to program Easy to use, inflexible

4 4 of 16 eBlocks Overview Function of each block is pre-defined Block types: Sensors – motion, light, contact, etc. Output – led, electric relay, beeper, etc. Compute – logic, prolong, toggle, etc.  Basic configuration required (dials, switches) Communicate – wireless point-to-point link Boolean Blocks Outputs yes/no/error Future implementations - Integer Users connect blocks to create working customized application CODES/ISSS’03, SECON’04, DATE’05, SPOTS’05, CHI’05 Light Sensor yes/no Magnetic Contact Switch yes/no Button yes/no Motion Sensor yes/no 2-Input Logic yes/no Tripper yes/no Toggle yes/no Electric Relay yes/no LED yes/no

5 5 of 16 2-Input Logic Configure Logic Block to turn led on when it’s night and when door is open A’B’ Need a function of light sensor output and contact switch output – use Logic Block 2-Input Logic Creating an application with eBlocks  Create an application to detect if the garage door is left open at night Light Sensor We want to detect night – use light sensor Light Sensor Magnetic Contact Switch We want to know if garage door open – use contact switch Magnetic Contact Switch 2-Input Logic A’B’ LED Need something to indicate garage open at night – use led LED Plug pieces together and the system is done!

6 6 of 16 Building eBlocks Systems  The same basic blocks can be used in a variety of applications While intended for non-experts we found many systems require programming constructs, specifically logic and state transformations Motion on Property Detector Motion Sensor 2-Input Logic A+B Prolonger 1 2 3 4 5 6 7 8 9 Beeper Sleepwalker at Night Alarm Tripper Motion Sensor 2-Input Logic A’B Light Sensor Button Beeper Animal Videoing System Motion Sensor 2-Input Logic A+B Prolonger 1 2 3 4 5 6 7 8 9 eBlock to Camera Interface Light Sensor Front Desk Notifier Toggle Button Beeper Package Delivery Tripper Motion Sensor Button Beeper Tripper Button LED Visual Doorbell Front Door Inside House 8-Second Doorbell Prolonger 1 2 3 4 5 6 7 8 9 Beeper Button Many systems utilize a logic block Many systems utilize a state block

7 7 of 16 Motivation ABOutput noyesno yesnoyes noyes no yes Logic Block configurable DIP switch Table-based logic block What about state-based eBlocks?  Informal experiments to test general usability of eBlocks Users unable to configure the logic block successfully  Need for a better logic block interface Blocks must be self-explanatory Users prefer exploratory learning [Gammon, 1999][Sikorski, 1998]  Usability testing of various logic block interfaces 100’s of participants Refinement of a table-based to a sentence-based logic block interface Sentence-based logic block S. Cotterell and Frank Vahid. A Logic Block Enabling Logic Configuration by Non-Experts in Sensor Networks. Conference on Human Factors in Computing Systems (CHI), April 2005.

8 8 of 16 Experiments  Written Experiments Written handout Limitation Students could not test functionality  Prototype Experiments Physical prototypes + Written handout Benefit Students are able to test functionality of resulting system Limitation Fewer students able to participate due to physical block limitation Physical problems unrelated to interface detracted from testing – forgetting to turn on power, how to use DIP switches, assume the connectors are faulty motion sensor light sensor State Block B A yes = motion detected no = no motion detected yes = light detected no = no light detected

9 9 of 16 Experiments  Simulator Experiments Web-based applet Benefit Self-contained instructions, to prevent variations due to administrator Enables wider participation Allows students to test resulting behavior of configured system  Participants Beginner University student with no programming or electronics experience Typical majors include psychology, business, history, dance, etc. Intermediate Student with 7 to 25 weeks of introductory programming, but having no electronics experience Advanced Student who have had both programming and electronic experience (in particular, digital design)

10 10 of 16 State-Based eBlock Usability Testing Testing MethodSystem Description Percentage of Success Number of Participants Full Credit Partial Credit Total PrototypeFront Desk Notifier100 %0 %100 %2 - Beginner 6 – Advance SimulatorFront Desk Notifier85 %0 %85 %33 – Beginner  Toggle eBlock  Changes state between yes and no for each unique yes input received Results in an average success rate of 88% Student’s first encounter with eBlocks, less than 10 minutes allotted to build system Toggle Front Desk Notifier Secretary Bob is frequently away from his desk. Help build Bob a system that alerts him when a customer is at the front desk. The customer should press the button on Bob’s desk to turn the beeper on. The beeper would then keep alerting Bob until he returns to his desk and turns off the beeper using the same button as the customer. Button Beeper

11 11 of 16 State-Based eBlock Usability Testing  Prolonger eBlock Changes to a yes state and remains yes for a period specified by the user using a slide switch  Prolonger changed to Yes Prolonger to clarify only the yes signal is prolonger  Results in an average success rate of 86% Testing MethodSystem DescriptionPercentage of SuccessNumber of Participants Full Credit Partial Credit Total Written8-Second Doorbell56 %33 %89 %9 – Advanced Simulator8-Second Doorbell75 %10 %85 %20 - Beginner Yes Prolonger 1 2 3 4 5 6 7 8 9 Yes Prolonger (8) 8-Second Doorbell Homeowner Jane built a doorbell using a button and beeper. When a visitor presses the button, the system only beeps for a short time and sometimes Jane misses the visitor. Help Jane build a system such that when a visitor presses the button, the buzzer will sound for 8 seconds. Button Beeper

12 12 of 16 State-Based eBlock Usability Testing  Tripper eBlock Changes to a yes state when the block’s data input receives a yes packet. The block remains in the yes state until the block receives a yes packet on the reset input, similar to a SR Latch  Many students not able to immediate translate the behavior of the block from the name Tripper Testing Method System Description Percentage of Success Number of Participants Full Credit Partial Credit Total WrittenPackage Delivery30 %40 %70 %10 – Advanced Tripper in rst Package Delivery The UPS delivery person keeps leaving packages behind Homeowner Steve's house. Sometimes, Steve does not notice the packages left behind his house for days. Build Steve a system that detects if there is motion behind his house and turns an indicator on. The system should keep the indicator on until Steve shuts it off. Beeper Motion Sensor Button Tripper rst in

13 13 of 16 State-Based eBlock Usability Testing  Renamed block to Once Yes, Stays Yes Beginners are more readily able to discern functionality  Results in an average success rate of 74% Testing MethodSystem Description Percentage of Success Number of Participants Full Credit Partial Credit Total SimulatorPackage Delivery45 %5 %50 %22 - Beginner SimulatorVisual Doorbell55 %36 %91 %33 – Beginner Once Yes, Stays Yes in rst Package Delivery The UPS delivery person keeps leaving packages behind Homeowner Steve's house. Sometimes, Steve does not notice the packages left behind his house for days. Build Steve a system that detects if there is motion behind his house and turns an indicator on. The system should keep the indicator on until Steve shuts it off. Beeper Motion Sensor Button Once Yes, Stays Yes rst in

14 14 of 16 State-Based eBlock Usability Testing  Pulse Generator When the block’s input is yes, the block’s output switches between yes and no for time periods specified by the user using two slide switches  Results in an average success rate of 65% Testing MethodSystem Description Percentage of Success Number of Participants Full Credit Partial Credit Total WrittenBlinking Lamp10 %43 %53 %21 – Intermediate WrittenBlinking Doorbell90 %0 %90 %10 – Advance SimulatorBlinking Doorbell55 %9 %64 %22 - Beginner Pulse Generator 1 2 3 4 5 6 7 8 9 yes time no time Pulse Generator (yes time = 2, no time = 3) Blinking Doorbell Patricia built a doorbell such that when a visitor pushes the button, the light turns on. Help Patricia build a doorbell such that when the visitor pushes the button, the light blinks instead. Button Normal light

15 15 of 16 Conclusions and Future Work  Presented a set of basic eBlocks from which a variety of systems can be built  Presented a variety of state block interfaces which are usable by non-experts  Present/Future Work  Continue usability testing  Extend eBlocks to integer domain  Gain experience with use of eBlocks in real applications with variety of users  Pro-active healthcare (w/ Intel)  Agricultural monitoring (w/ Isca)  Environment monitoring (w/ UCR/UCLA)

16 16 of 16 Thank you for your attention.


Download ppt "Usability of State Based Boolean eBlocks Susan Cotterell and Frank Vahid * Department of Computer Science and Engineering University of California, Riverside."

Similar presentations


Ads by Google