UX Issues - noobaa/noobaa-core GitHub Wiki

Based on https://uxmag.com/articles/quantifying-usability

These are the UX principles currently being used by developers working on Firefox and other projects in the Mozilla community. We are currently utilizing Bugzilla's keyword functionality, similar to how current bugs can be flagged as violating implementation level heuristics, like data loss. These principles can be added to any bug tracking that allows bugs to be tagged.

  • ux-feedback

Interfaces should provide feedback about their current status. Users should never wonder what state the system is in. [Source: Nielsen]

  • ux-jargon/ tone

Users should not be required to understand any form of implementation level terminology. (This principle is a special case of ux-implementation-level). [Source: Nielsen] Interfaces should not blame the user, or communicate in a way that is overly negative or dramatic.

  • ux-control

Users should always feel like they are in control of their software. (This principle is often the nemesis of ux-interruption, especially in cases where developers assume users want more control than they actually want). [Source: Nielsen]

  • ux-consistency

In general software should be internally consistent with itself, and externally consistent with similar interfaces to leverage the user's existing knowledge. [Source: Nielsen]

  • ux-error-prevention

    • Interfaces should proactively try to prevent errors from happening. [Source: Nielsen]
    • Users should not encounter errors because the interface is in a different state than they expected it to be.
  • ux-error-recovery

Interfaces should proactively help users recover from both user errors and technology errors. (A preferable case is to address through ux-error-prevention so that the error does not occur). [Source: Nielsen]

  • ux-minimalism

Interfaces should be as simple as possible, both visually and interactively and should avoid redundancy. make sure not to oversimplify for the sake of minimalism. [Source: Nielsen]

  • ux-flexibility/ efficiency

Interfaces should be as efficient as possible, minimizing the complexity of actions and the overall time to complete a task. Allow users to tailor frequent actions.

  • ux-interruption

Interfaces should not interrupt the user. Interfaces should never ask the user a question that they are not prepared to answer simply for a false sense of ux-control. In general software should only speak when spoken to.

  • ux-affordance

    • Controls should visually express how the user should interact with them. [Source: Norm]
    • Controls should be placed in the correct location relative to the effect that they will have. [Source: Norman]
  • ux-discovery

Users should be able to discover functionality and information by visually exploring the interface, they should not be forced to recall information from memory. (This is often the nemesis of ux-minimalism since additional visible items diminish the relative visibility of other items being displayed). [Source: Nielsen] Controls that are more important or more commonly used should leverage visual variables such as size and contrast so that they have more dominance and weight relative to other controls.

  • UI implementation

When User interface doesn't match UX requirements or creates a visual problem

UX Presentation: https://drive.google.com/open?id=0B6y-fVpfuCXeelVsMTZkckVvOGM