Download presentation
Presentation is loading. Please wait.
1
Claire Jones, Shaun Treweek, Ian Ricketts
LogicBlocks: Web-Based Health Intervention Creation - No Programmer Required Claire Jones, Shaun Treweek, Ian Ricketts University of Dundee
2
Background Dental Clinical Pathways DiAMOND HyDRA Decade
3
Initial Prototype “Powerful and flexible”
“Can tailor to specific research questions” “Generates format of questions at press of a button” “ “Tremendous scope”
4
LifeGuide – Authoring Tool
5
LifeGuide – Command Line Interface
Colours
6
LifeGuide – Command Line Interface
Syntax Reminders
7
LifeGuide – Command Line Interface
Popup Menu
8
LifeGuide – Command Line Interface
9
LifeGuide – Command Line Interface
1.Ordering – show page if.....
10
LifeGuide – Command Line Interface
1.Ordering – show page if..... 2.(Brackets)
11
LifeGuide – Command Line Interface
1.Ordering – show page if..... 2.(Brackets) 3.“Quotes”
12
LifeGuide – Command Line Interface
1.Ordering – show page if..... 2.(Brackets) 3.“Quotes” 4.makenewuser(Parameters)
13
LifeGuide – Command Line Interface
1.Ordering – show page if..... 2.(Brackets) 3.“Quotes” 4.makenewuser(Parameters) 5.Commands – show, if, save, hasseen
14
LifeGuide – Command Line Interface
1.Ordering – show page if..... 2.(Brackets) 3.“Quotes” 4.makenewuser(Parameters) 5.Commands – show, if, save, hasseen 6.Rules – authenticateuser
15
Command vs. Graphical Interface
16
Visual Programming Interfaces
SCRATCH POOPLES APPINVENTOR
17
Command Grouping USER Make New User Authenticate User Change Password
User Enabled Reset Password Command Grouping STRING String Length Replace all Append Pattern Match SAVE/LOAD Save Save Value Save and Load Load Load Value /TEXT MESSAGE Send Valid ? Cancel Send Text Phone Number Valid? Cancel Text TIME Current Time Compare Times Time Since Login Print Time MATH =, +, -, /, <. <=, >, >= Random Number Graph LOGIC IF condition SHOW page IF condition SHOW page NAMED IF condition SHOW interaction IF condition SET variable TO AFTER page IF condition GOTO IS EMPTY? HAS SEEN? AND OR NOT TRUE FALSE PAGE Show Page Show Page Interaction Show Page Named VARIABLES New Variable String Number COMMANDS Set...To Begin Section....End
18
Jigsaw Connectors Side Connection Question Variables Pages
No side connection Sections
19
Templates
20
Paper Prototype
21
LogicBlocks
22
Pre-Populated Fields
23
Syntax Reminders
24
Evaluation VS. Command Line LogicBlocks
25
Evaluation Practice Task
show Welcome
26
Evaluation Task 1 – User Management
show Welcome after Welcome if(authenticateuser(Welcome.UserId,"Password")) goto Consent show Consent
27
Evaluation Task 2 – Dynamic Tailoring
show Welcome after Welcome if(authenticateuser(Welcome.UserId,"Password")) goto Consent show Consent show Voucher after Voucher if(Voucher.VoucherOptions = "Not Interested") goto Exit after Voucher if(not(Voucher.VoucherOptions = "Not Interested")) goto ConfirmVoucher show Exit show ConfirmVoucher
28
Evaluation Measurements
User Satisfaction Time to Complete Percentage of Task Completed Number of Errors Access to Help Manual Retention/Learnability
29
Evaluation Results – User Satisfaction
“Lots of support with shapes and feedback, I knew I needed a curved block” “Ah it’s a jigsaw, I know what to do with it” Task Interface Mean SD Result User Management LogicBlocks 3.1223 t(29)=7.926, p < 0.001 LifeGuide 5.0437 Dynamic Tailoring LogicBocks 3.7685 t(25)=4.689, p< 0.001 5.0073 Usability Measure Interface Mean SD Result Overall satisfaction LogicBlocks 2.9050 t(29)=7.459, p<0.001 LifeGuide 4.7483 System Usefulness LogicBocks 2.8353 t(29) = p<0.001 5.0443 Information Quality 3.2517 t(29)=6.597 p<0.001 4.8377 Interface Quality 2.4550 t(29) = p<0.001 3.8780 “Much easier when coming cold to a new syntax language” “Knew I had the wrong block because there wasn’t an option in the drop down list”
30
Evaluation Results – Errors
Error Format & Terminology Error Recovery Occurrence of Errors Logic Syntax & Ordering Colour Coding
31
Evaluation Results – Help Manual
authenticateuser This is important logic for ensuring that a user is registered with the intervention and is usually found after the login page. The authenticateuser command can be used in the logic (intervention.lgil) file or in the error message logic. Example after login if (authenticateuser (login.username, login.password)) goto page1 So in the example above the details that the end-user enters into username and password interactions on the login page will be used to check that they are a registered user.
32
Future Work LifeGuide = Usable Tool for Non Programmers LogicBlocks
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.