Krug Chapter 6 B: Flow in UIs Jeff Offutt https://www.cs.gmu.edu/~offutt/ SWE 205 Software Usability and Design
Flow in User Interfaces If the UI’s manifest model matches the users’ mental model the user can use the software without thinking By doing what comes naturally 1-Jan-19 © Jeff Offutt
It’s easy to make things complicated, it’s hard to make things simple GUI Flow Flow: The next thing the interface wants to do is exactly what the user expects Follow users’ mental model Users direct the software Don’t talk with the user Keep related tools available Modeless feedback : The user should not have to respond Interfaces should be invisible, not cool It’s easy to make things complicated, it’s hard to make things simple 1-Jan-19 © Jeff Offutt
Flow is a State of Mind When in the flow, users have good concentration and are not easily distracted Syntax interferes with flow Surprises interrupt flow Good flow allows users to concentrate on task-semantic knowledge, not syntactic 1-Jan-19 © Jeff Offutt
Design for the Probable Provide for the Possible Make the most likely choices default Less likely choices can be harder to find Choices should be based on probability, not logic Logic : 1 out of a million is possible … if p then s1 else s2 That’s programmer thinking Probability : Make the 999,999 default, make the 1 hard to find That’s user thinking! Default should save changes when I exit Of course I want to save ! Include a low probability option to discard and exit 1-Jan-19 © Jeff Offutt
Making the UI Disappear Less interaction, not more – what do users need? Indicate status visually – pictures, not words Don’t use dialogs to report normal behavior Provide default behavior and ways to change it Don’t ask questions, give users choices 1-Jan-19 © Jeff Offutt
Help users find their stuff Daily Summary Understand the users Help users find their stuff Make sure navigation matches their mental model to create flow Design for the probable; provide for the possible 1-Jan-19 © Jeff Offutt