SLIDE 1 END-USER DEVELOPMENT IN THE INTERNET OF THINGS
ALBERTO MONGE ROFFARELLO
SUPER ERVISOR: FUL
ULVIO COR ORNO
e-Lite https://elite.polito.it
SLIDE 2 “ “
The Internet of Things is a recognized paradigm that already helps society in many different ways, through applications ranging in scope from the individual to the planetary
Vint Cerf and Max Senges, Google Research
SLIDE 3 A COMPLEX NETWORK OF PHYSICAL AND VIRTUAL ENTITIES THAT CAN BE PERSONALIZED ON THE BASIS OF OUR PERSONAL NEEDS
SLIDE 4 END USERS CAN PROGRAM THE IOT THROUGH TRIGGER-ACTION RULES
SLIDE 5 IF I PUBLISH A POST ON
FACEBOOK
THEN SHARE IT ON
TWITTER
IF THE SURVEILLANCE CAMERA RECOGNIZES ME THEN TURN ON THE SMART THERMOSTAT
SLIDE 6
SLIDE 7
SLIDE 9 LOW LEVEL OF ABSTRACTION
ISSUES
SLIDE 10 LOW LEVEL OF ABSTRACTION
ISSUES
INFORMATION OVERLOAD
SLIDE 11 LOW LEVEL OF ABSTRACTION
ISSUES
INFORMATION OVERLOAD RUN-TIME PROBLEMS
SLIDE 12 Assisting end users in easily and efficiently personalizing the functionality of their connected entities. The main goal is to simplify the definition of IF-THEN rules.
RESEARCH GOAL
SLIDE 13 1 MOVING TOWARDS A HIGH-LEVEL OF ABSTRACTION
EUPont
2 DISCOVERING IF-THEN RULES AND FUNCTIONALITY 3 DEBUGGING IF-THEN RULES AT DEFINITION TIME
EUDoptmizer RecRules EUDebug My IoT Puzzle SCPN
SLIDE 14 1 MOVING TOWARDS A HIGH-LEVEL OF ABSTRACTION
EUPont
2 DISCOVERING IF-THEN RULES AND FUNCTIONALITY 3 DEBUGGING IF-THEN RULES AT DEFINITION TIME
EUDoptmizer RecRules EUDebug My IoT Puzzle SCPN
SLIDE 15 EUPont
Higher level of abstraction Programming by functionality Context-dependent IF-THEN rules
SLIDE 16 EUPont
IF I enter an indoor location, THEN set its temperature to 20 Celsius degree
SLIDE 17 EUPont
EUPont is available at http://elite.polito.it/ontologies/eupont.owl
SLIDE 18 EUPont
TRIGGER-ACTION PROGRAMMING LAYER CONTEXTUAL INFORMATION LAYER INTERNET OF THINGS LAYER
SLIDE 19 EUPont
TRIGGER-ACTION PROGRAMMING LAYER
SLIDE 20 EUPont
TRIGGER-ACTION PROGRAMMING LAYER
SLIDE 21 EUPont
15 males 15 females University students Different backgrounds 22.23 mean age
USER STUDY
SLIDE 22 EUPont
USER STUDY
Does the EUPont representation help users define their IF-THEN rules more effectively and efficiently compared with the IFTTT representation?
SLIDE 23 EUPont
USER STUDY
5 TASKS: Scenario + Goal 2 INTERFACES
IFTTT EUPont vs.
SLIDE 24 EUPont
ADVANTAGES
The EUPont representation allows end users to avoid errors and to reduce the time needed to define their IF-THEN rules.
SLIDE 25 0.279
incorrect TRIGGERS
IFTTT
0.120
incorrect TRIGGERS
EUPont
0.279
incorrect ACTIONS
IFTTT
0.120
incorrect ACTIONS
EUPont
p < 0.05 p < 0.05
ADVANTAGES
EUPont
SLIDE 26 39.65 s
average time for defining RULES with IFTTT
25.05
average time for defining RULES with EUPont
p < 0.05
ADVANTAGES
EUPont
SLIDE 27 EUPont
CHALLENGES
Moving towards a higher level
- f abstraction is promising but
poses new challenges
SLIDE 28 EUPont
Adapting Contexts
How can we decide how to reproduce abstract behaviors?
Preferred Level
Which level of abstraction do users prefer?
Security, and Privacy
Can we execute abstract behavior by preserving security and privacy? CHALLENGES
SLIDE 29 1 MOVING TOWARDS A HIGH-LEVEL OF ABSTRACTION
EUPont
2 DISCOVERING IF-THEN RULES AND FUNCTIONALITY 3 DEBUGGING IF-THEN RULES AT DEFINITION TIME
EUDoptmizer RecRules EUDebug My IoT Puzzle SCPN
SLIDE 30 1 MOVING TOWARDS A HIGH-LEVEL OF ABSTRACTION
EUPont
2 DISCOVERING IF-THEN RULES AND FUNCTIONALITY 3 DEBUGGING IF-THEN RULES AT DEFINITION TIME
EUDoptmizer RecRules EUDebug My IoT Puzzle SCPN
SLIDE 31 RecRules
Mixed content & collaborative approach Semantic graph-based setting Recommending by functionality
SLIDE 32 PERSONALIZING THE TEMPERATURE WHEN I’M GOING TO USE AN INDOOR PLACE
RecRules
SLIDE 33 PERSONALIZING THE TEMPERATURE WHEN I’M GOING TO USE AN INDOOR PLACE
RecRules
SLIDE 34 PERSONALIZING THE TEMPERATURE WHEN I’M GOING TO USE AN INDOOR PLACE
RecRules
SLIDE 35 PERSONALIZING THE TEMPERATURE WHEN I’M GOING TO USE AN INDOOR PLACE
RecRules
SLIDE 36 PERSONALIZING THE TEMPERATURE WHEN I’M GOING TO USE AN INDOOR PLACE
RecRules
SLIDE 37 PERSONALIZING THE TEMPERATURE WHEN I’M GOING TO USE AN INDOOR PLACE
RecRules
SLIDE 38 RecRules
PERSONALIZING THE TEMPERATURE WHEN I’M GOING TO USE AN INDOOR PLACE
SLIDE 39 RecRules
PERSONALIZING THE TEMPERATURE WHEN I’M GOING TO USE AN INDOOR PLACE
SLIDE 40 RecRules
SLIDE 41 IF the kitchen Nest Cam recognizes me THEN turn on the kitchen Philips Hue lamp IF the living room Homeboy Cam detects a movement THEN open the Hunter Douglas blinds R1 R2
KNOWLEDGE GRAPH
RecRules
SLIDE 42 KNOWLEDGE GRAPH
RecRules
SLIDE 43 KNOWLEDGE GRAPH
RecRules
SLIDE 44 COLLABORATIVE CONNECTIONS
FEATURES EXTRACTION
RecRules
SLIDE 45 TECHNOLOGY CONNECTIONS
FEATURES EXTRACTION
RecRules
SLIDE 46 FUNCTIONALITY CONNECTIONS
FEATURES EXTRACTION
RecRules
SLIDE 47 MODEL TRAINING
POINTWISE
Pointwise approaches look at a single instance at a time, and transform the ranking problem into a regression or a classification one
PAIRWISE
Pairwise approaches look at a pair of instances at a time and try to find out their optimal
LISTWISE
Listwise approaches directly look at the entire list
- f instances, and they try to
produce the optimal ordering by minimizing a loss function. RANDOM FOREST RANKBOOST LAMBDAMART
Breiman et al. Freund et al. Wu et al.
RecRules
SLIDE 48 RecRules
T
- what extent the the different types of
path-based features influence the recommendation accuracy? Does RecRules outperform state-of-the-art recommendation systems in suggesting IF-THEN rules?
EVALUATION
SLIDE 49 FEATURES
CT configuration: Collaborative and Technology features CTF configuration: Collaborative, Technology, and Functionality features
IFTTT dataset Ur et al. 2016 RecRules
SLIDE 50 COMPARISON
We compared RecRules with state-of-the-art recommendation algorithms
RecRules
SLIDE 51 COMPARISON
We compared RecRules with state-of-the-art recommendation algorithms
RecRules
SLIDE 52 COMPARISON
We compared RecRules with state-of-the-art recommendation algorithms
RecRules
SLIDE 53 Fulvio Corno, Luigi De Russis, Alberto Monge Roffarello TAPrec: Supporting the Composition of Trigger-Action Rules Through Dynamic Recommendations IUI ’20
RecRules
SLIDE 54 1 MOVING TOWARDS A HIGH-LEVEL OF ABSTRACTION
EUPont
2 DISCOVERING IF-THEN RULES AND FUNCTIONALITY 3 DEBUGGING IF-THEN RULES AT DEFINITION TIME
EUDoptmizer RecRules EUDebug My IoT Puzzle SCPN
SLIDE 55 1 MOVING TOWARDS A HIGH-LEVEL OF ABSTRACTION
EUPont
2 DISCOVERING IF-THEN RULES AND FUNCTIONALITY 3 DEBUGGING IF-THEN RULES AT DEFINITION TIME
EUDoptmizer RecRules EUDebug My IoT Puzzle SCPN
SLIDE 56 EUDebug My IoT Puzzle SCPN
PROBLEMS Loops
Inconsistencies
Redundancies
SLIDE 57 IF I post a photo on Facebook THEN save it on my iOS library IF I add a new photo on my iOS THEN post it on Instagram IF I post a photo on Instagram THEN post it on Facebook EUDebug My IoT Puzzle SCPN
LOOPS
SLIDE 58 IF I play a new song on my Alexa THEN post a tweet on Twitter IF I play a new song on my Alexa THEN save the track on Spotify IF I save a track on Spotify THEN post a tweet on Twitter
REDUNDANCIES
EUDebug My IoT Puzzle SCPN
SLIDE 59 IF I exit home THEN turn off the Philips Hue lamp IF I exit home THEN set the Nest to Away mode IF the Nest is set to Away Mode THEN turn on the Philips Hue lamp EUDebug My IoT Puzzle SCPN
INCONSISTENCIES
SLIDE 60 EUDebug My IoT Puzzle SCPN P1 P2 T1
PLACE TRANSITION PLACE
SCPN
SLIDE 61 EUDebug My IoT Puzzle SCPN IF I exit home (T1) THEN turn off the kitchen Philips Hue lamp (A1) IF I exit home (T2) THEN set the Nest to Away mode (A2) IF the Nest is set to Away Mode (T3) THEN turn on the kitchen Philips Hue lamp (A3) R1 R3 R2
SCPN
SLIDE 62 EUDebug My IoT Puzzle SCPN IF I exit home (T1) THEN turn off the kitchen Philips Hue lamp (A1) IF I exit home (T2) THEN set the Nest to Away mode (A2) IF the Nest is set to Away Mode (T3) THEN turn on the kitchen Philips Hue lamp (A3) R1 R3 R2
SCPN
UNDER DEFINITION
SLIDE 63 EUDebug My IoT Puzzle SCPN
PETRI NETS
IF I exit home (T1) THEN turn off the kitchen Philips Hue lamp (A1) IF I exit home (T2) THEN set the Nest to Away mode (A2) IF the Nest is set to Away Mode (T3) THEN turn on the kitchen Philips Hue lamp (A3) R1 R3 R2
SLIDE 64 EUDebug My IoT Puzzle SCPN
PETRI NETS
T1 = I exit home A1 = turn off the kitchen Hue lamp
T1 A1 R1
SLIDE 65 EUDebug My IoT Puzzle SCPN
PETRI NETS
IF I exit home (T1) THEN turn off the kitchen Philips Hue lamp (A1) IF I exit home (T2) THEN set the Nest to Away mode (A2) IF the Nest is set to Away Mode (T3) THEN turn on the kitchen Philips Hue lamp (A3) R1 R3 R2
SLIDE 66 EUDebug My IoT Puzzle SCPN
PETRI NETS
T2 = I exit home A2 = set the Nest to Away mode
T1 A1 R1 T2 A2 R2
SLIDE 67 EUDebug My IoT Puzzle SCPN
PETRI NETS
T1 = I exit home T2 = I exit home
T1 A1 R1 T2 A2 R2
SLIDE 68 EUDebug My IoT Puzzle SCPN
PETRI NETS
T1|2 = I exit home
T1 A1 R1 T2 A2 R2
T1|2
copy
SLIDE 69 EUDebug My IoT Puzzle SCPN
PETRI NETS
IF I exit home (T1) THEN turn off the kitchen Philips Hue lamp (A1) IF I exit home (T2) THEN set the Nest to Away mode (A2) IF the Nest is set to Away Mode (T3) THEN turn on the kitchen Philips Hue lamp (A3) R1 R3 R2
SLIDE 70 EUDebug My IoT Puzzle SCPN
PETRI NETS
T1 A1 R1 T2 A2 R2
T1|2
copy T3 A3 R3
T3 = the Nest is set to Away mode A3 = turn on the kitchen Hue lamp
SLIDE 71 EUDebug My IoT Puzzle SCPN
PETRI NETS
T1 A1 R1 T2 A2 R2
T1|2
copy T3 A3 R3
A2 = set the Nest to Away T3 = the Nest is set to Away
SLIDE 72 EUDebug My IoT Puzzle SCPN
PETRI NETS
T1 A1 R1 T2 A2 R2
T1|2
copy T3 A3 R3 activate
A2 = set the Nest to Away T3 = the Nest is set to Away
SLIDE 73 EUDebug My IoT Puzzle SCPN
PETRI NETS
T1 A1 R1 T2 A2 R2
T1|2
copy T3 A3 R3 activate
SLIDE 74 EUDebug My IoT Puzzle SCPN
SEMANTIC
T1 A1 R1 T2 A2 R2
T1|2
copy T3 A3 R3 activate
A1 = turn off the kitchen Hue lamp A3 = turn on the kitchen Hue lamp
EUPont: Lights on EUPont: Lights off
SLIDE 75 EUDebug My IoT Puzzle SCPN
EXECUTION
T1 A1 R1 T2 A2 R2
T1|2
copy T3 A3 R3 activate EUPont: Lights on EUPont: Lights off
T1|2 = I exit home
SLIDE 76 EUDebug My IoT Puzzle SCPN T1 A1 R1 T2 A2 R2
T1|2
copy T3 A3 R3 activate EUPont: Lights on EUPont: Lights off
T1 = I exit home T2 = I exit home
EXECUTION
SLIDE 77 EUDebug My IoT Puzzle SCPN T1 A1 R1 T2 A2 R2
T1|2
copy T3 A3 R3 activate EUPont: Lights on EUPont: Lights off
T2 = I exit home A1 = turn off the kitchen Hue lamp
EXECUTION
SLIDE 78 EUDebug My IoT Puzzle SCPN T1 A1 R1 T2 A2 R2
T1|2
copy T3 A3 R3 activate EUPont: Lights on EUPont: Lights off
A1 = turn off the kitchen Hue lamp A2 = set the Nest to Away mode
EXECUTION
SLIDE 79 EUDebug My IoT Puzzle SCPN T1 A1 R1 T2 A2 R2
T1|2
copy T3 A3 R3 activate EUPont: Lights on EUPont: Lights off
A1 = turn off the kitchen Hue lamp T3 = the Nest is set to Away Mode
EXECUTION
SLIDE 80 EUDebug My IoT Puzzle SCPN T1 A1 R1 T2 A2 R2
T1|2
copy T3 A3 R3 activate EUPont: Lights on EUPont: Lights off
A1 = turn off the kitchen Hue lamp A3 = turn on the kitchen Hue lamp
EXECUTION
SLIDE 81 EUDebug My IoT Puzzle SCPN T1 A1 R1 T2 A2 R2
T1|2
copy T3 A3 R3 activate EUPont: Lights on EUPont: Lights off
A1 = turn off the kitchen Hue lamp A3 = turn on the kitchen Hue lamp
EXECUTION
SLIDE 82 EUDebug My IoT Puzzle SCPN
STRATEGY 1: Highlighting rule conflicts STRATEGY 2: Simulating rule conflicts
SLIDE 83 EUDebug My IoT Puzzle SCPN
STRATEGY 1: Highlighting rule conflicts STRATEGY 2: Simulating rule conflicts
SLIDE 84 EUDebug My IoT Puzzle SCPN
SLIDE 85 EUDebug My IoT Puzzle SCPN
9 males 6 females University students 20.34 mean age No experience in computer science and programming
USER STUDY
SLIDE 86 EUDebug My IoT Puzzle SCPN
USER STUDY
Do end users understand problems and why the defined rules generate them? Is highlighting the detected problems sufficient? Do users need a step-by-step simulation of the involved rules?
SLIDE 87 EUDebug My IoT Puzzle SCPN
USER STUDY
12 TRIGGER-ACTION RULES
SLIDE 88 EUDebug My IoT Puzzle SCPN
USER STUDY
12 TRIGGER-ACTION RULES
2 Inconsistencies 2 Redundancies 1 Loop IC1 IC2 RD1 RD2 LP
SLIDE 89 EUDebug My IoT Puzzle SCPN
USER STUDY
12 TRIGGER-ACTION RULES
2 Inconsistencies 2 Redundancies 1 Loop IC2 RD2 LP
IC1 RD1
DIRECT PROBLEMS
SLIDE 90 EUDebug My IoT Puzzle SCPN
USER STUDY
12 TRIGGER-ACTION RULES
2 Inconsistencies 2 Redundancies 1 Loop IC1 RD1
IC2 RD2 LP
INDIRECT PROBLEMS
SLIDE 91 EUDebug My IoT Puzzle SCPN
USER STUDY
12 TRIGGER-ACTION RULES
2 Inconsistencies 2 Redundancies 1 Loop IC1 IC2 RD1 RD2 LP
SLIDE 92 EUDebug My IoT Puzzle SCPN
PERCEPTION
End users perceive problems in trigger-action rules differently: loops and inconsistencies are dangerous, redundancies can be even acceptable
SLIDE 93 EUDebug My IoT Puzzle SCPN
PERCEPTION
80 %
DISCARDED loops
SLIDE 94 EUDebug My IoT Puzzle SCPN
PERCEPTION
80 %
DISCARDED loops
97.67 %
DISCARDED inconsistencies
SLIDE 95 EUDebug My IoT Puzzle SCPN
PERCEPTION
80 %
DISCARDED loops
97.67 %
DISCARDED inconsistencies
46.67 %
SAVED redundancies
SLIDE 96 EUDebug My IoT Puzzle SCPN
PERCEPTION
“ “
The important thing is that the lamp is turned on, I do not care its color!
RD1 - P13
SLIDE 97 EUDebug My IoT Puzzle SCPN
UNDERSTANDING
Some problems are difficult to understand: loops and indirect problems are often misinterpreted
SLIDE 98 EUDebug My IoT Puzzle SCPN
UNDERSTANDING
16,67 %
misinterpretations when facing an inconsistency
13,34 %
misinterpretations when facing a redundancy
40 %
misinterpretations when facing a loop
SLIDE 99 EUDebug My IoT Puzzle SCPN
UNDERSTANDING
26.67 %
misinterpretations when facing an indirect problem
10 %
misinterpretations when facing a direct problem
SLIDE 100 EUDebug My IoT Puzzle SCPN
UNDERSTANDING
“ “
I am sure that this problem will never occur with the rules I have defined! Moreover, such rules are useful, because the photo will be saved in 3 places at the same time.
LP - P13
SLIDE 101 EUDebug My IoT Puzzle SCPN
STRATEGIES
Highlighting the detected problem is often not sufficient: a step-by-step simulation of the involved rules helps users understand difficult problems
SLIDE 102 EUDebug My IoT Puzzle SCPN
STRATEGIES
77,81 %
- f correct interpretations
when a problem is highlighted
83,78 %
correct interpretations when a problem is simulated
SLIDE 103 EUDebug My IoT Puzzle SCPN
STRATEGIES
77,81 %
- f correct interpretations
when a problem is highlighted
83,78 %
correct interpretations when a problem is simulated
50 %
highlighted
71,43 %
simulated
FOR LOOPS
SLIDE 104 EUDebug My IoT Puzzle SCPN
STRATEGIES
“ “
The step-by-step simulation helped me in understanding the loop because I could better see the evolution of the rules. It visually told me what happened!
LP - P6
SLIDE 105 EUDebug My IoT Puzzle SCPN
SLIDE 106 EUDebug My IoT Puzzle SCPN
FIXING
Visual languages and adopted feedback effectively help participants avoiding and finxing run-time problems in IF-THEN rules
SLIDE 107 1 MOVING TOWARDS A HIGH-LEVEL OF ABSTRACTION
EUPont
2 DISCOVERING IF-THEN RULES AND FUNCTIONALITY 3 DEBUGGING IF-THEN RULES AT DEFINITION TIME
EUDoptmizer RecRules EUDebug My IoT Puzzle SCPN
SLIDE 108 1 MOVING TOWARDS A HIGH-LEVEL OF ABSTRACTION
EUPont
2 DISCOVERING IF-THEN RULES AND FUNCTIONALITY 3 DEBUGGING IF-THEN RULES AT DEFINITION TIME
EUDoptmizer RecRules EUDebug My IoT Puzzle SCPN
SLIDE 109 FUTURE DIRECTIONS
In-the-wild Studies Trigger Conditions and Multiple actions Security and Privacy
SLIDE 110 e-Lite https://elite.polito.it
END-USER DEVELOPMENT IN THE INTERNET OF THINGS
ALBERTO MONGE ROFFARELLO
SUPER ERVISOR: FUL
ULVIO COR ORNO
SLIDE 111 ACCEPTED PUBBLICATIONS – FIRST YEAR
F.CORNO, L. DE RUSSIS, A. MONGE ROFFARELLO, «A HEALTHCARE SUPPORT SYSTEM FOR ASSISTED LIVING FACILITIES: AN IOT SOLUTION», 40TH IEEE COMPUTER SOCIETY INTERNATIONAL CONFERENCE ON COMPUTERS, SOFTWARE & APPLICATIONS (COMPSAC 2016) F.CORNO, L. DE RUSSIS, A. MONGE ROFFARELLO, «IOT FOR AMBIENT ASSISTED LIVING: CARE4ME - A HEALTHCARE SUPPORT SYSTEM», BOOK CHAPTER, INTERNET OF THINGS AND ADVANCED APPLICATION IN HEALTHCARE, 2016
- L. DE RUSSIS, A. MONGE ROFFARELLO, «ON THE BENEFIT OF ADDING USER PREFERENCES TO NOTIFICATION DELIVERY», CHI 2017: THE 35TH
ANNUAL CHI CONFERENCE ON HUMAN FACTORS IN COMPUTING SYSTEMS F.CORNO, L. DE RUSSIS, A. MONGE ROFFARELLO, «A HIGH-LEVEL APPROACH TOWARDS END USER DEVELOPMENT IN THE IOT», CHI 2017: THE 35TH ANNUAL CHI CONFERENCE ON HUMAN FACTORS IN COMPUTING SYSTEMS F.CORNO, L. DE RUSSIS, A. MONGE ROFFARELLO, «A SEMANTIC WEB APPROACH TO SIMPLIFYING TRIGGER-ACTION PROGRAMMING IN THE IOT», IEEE COMPUTER, 2017
SLIDE 112 ACCEPTED PUBBLICATIONS – SECOND YEAR
F.CORNO, L. DE RUSSIS, A. MONGE ROFFARELLO, «IOT FOR AMBIENT ASSISTED LIVING: CARE4ME - A HEALTHCARE SUPPORT SYSTEM», BOOK CHAPTER, WEARABLE TECHNOLOGIES: CONCEPTS, METHODOLOGIES, TOOLS, AND APPLICATIONS, 2018 (REPRINT)
- L. DE RUSSIS, A. MONGE ROFFARELLO, «A DEBUGGING APPROACH FOR TRIGGER-ACTION PROGRAMMING», CHI 2018: THE 36TH ANNUAL CHI
CONFERENCE ON HUMAN FACTORS IN COMPUTING SYSTEMS F.CORNO, L. DE RUSSIS, A. MONGE ROFFARELLO, «AWARENOTIFICATIONS: MULTI-DEVICE SEMANTIC NOTIFICATION HANDLING WITH USER- DEFINED PREFERENCES», JOURNAL OF AMBIENT INTELLIGENCE AND SMART ENVIRONMENTS, 2018
- A. MONGE ROFFARELLO, «END USER DEVELOPMENT IN THE IOT: A SEMANTIC APPROACH», IE 2018: THE 14TH INTERNATIONAL CONFERENCE
ON INTELLIGENT ENVIRONMENTS
SLIDE 113 ACCEPTED PUBBLICATIONS – THIRD YEAR
F.CORNO, L. DE RUSSIS, A. MONGE ROFFARELLO, «A HIGH-LEVEL SEMANTIC APPROACH TO END-USER DEVELOPMENT IN THE INTERNET OF THINGS», INTERNATIONAL JOURNAL OF HUMAN-COMPUTER STUDIES, 2019 F.CORNO, L. DE RUSSIS, A. MONGE ROFFARELLO, «EUDOPTIMIZER: ASSISTING END USERS IN COMPOSING IF-THEN RULES THROUGH OPTIMIZATION», IEEE ACCESS, 2019 F.CORNO, L. DE RUSSIS, A. MONGE ROFFARELLO, «MY IOT PUZZLE: DEBUGGING IF-THEN RULES THROUGH THE JIGSAW METAPHOR», IS-EUD: THE 7TH INTERNATIONAL SYMPOSIUM ON END-USER DEVELOPMENT F.CORNO, L. DE RUSSIS, A. MONGE ROFFARELLO, «EMPOWERING END USERS IN DEBUGGING TRIGGER-ACTION RULES», CHI 2019: THE 37TH ANNUAL CHI CONFERENCE ON HUMAN FACTORS IN COMPUTING SYSTEMS
- A. MONGE ROFFARELLO, L. DE RUSSIS, «THE RACE TOWARDS DIGITAL WELLBEING: ISSUES AND OPPORTUNITIES»,
CHI 2019: THE 37TH ANNUAL CHI CONFERENCE ON HUMAN FACTORS IN COMPUTING SYSTEMS F.CORNO, L. DE RUSSIS, A. MONGE ROFFARELLO, «RECRULES: RECOMMENDING IF-THEN RULES FOR END-USER DEVELOPMENT», TIST ACM TRANSACTION ON INTELLIGENT SYSTEM AND TECHNOLOGY
- A. MONGE ROFFARELLO, L. DE RUSSIS, «TOWARDS DETECTING AND MITIGATING SMARTPHONE HABITS »,
UBICOMP 2019: THE 2019 ACM INTERNATIONAL JOINT CONFERENCE ON PERVASIVE AND UBIQUITOUS COMPUTING