UX non-functional requirements
The following non-functional requirements provide a starting point to improve usability, inclusivity and accessibility in your product and should be considered when building or procuring any digital system.
Learnability
The user interface should be designed such that a new user can learn and perform basic tasks within 30 minutes of exploration.
Guidance
- Provide clear and obvious navigation and calls to action.
- Keep it simple.
- Make use of common UI conventions.
- Be consistent in your use of colour, vocabulary, layout, etc.
Consistency
Ensure consistent navigation, terminology, and design elements throughout the user interface to enhance user understanding and reduce cognitive load.
Guidance
- Visual design: Ensure a cohesive visual language in your UI by consistently using typography, colours, icons, and visual hierarchy.
- Layout: Maintain a cohesive and organised layout by adhering to a consistent grid system and aligning elements.
- Navigation: Enable effortless navigation through your interface by consistently placing and styling navigation menus, buttons, and links.
- Interaction patterns: Foster user understanding of interface interactions by adhering to consistent and intuitive patterns, such as swipe gestures or button behaviours.
- Error handling: Enhance user trust and provide clear guidance in case of errors through consistent error messages, warnings, and feedback.
- Utilise existing University services where possible (e.g. SSO sign in).
Feedback
Provide clear and immediate feedback for user actions, such as successful completion of a task, error notifications, and loading indicators.
Guidance
- Provide confirmation of completion for actions such as saving, adding uploading, etc.
- Let users know when they have need to take action and what that action is
- Let users know when the system is processing and action and they need to wait
- Ensure assistive technology is able to keep users informed of dynamic content changes in the page (e.g. an error message) by using Aria live regions.
- User colour to reinforce messaging (e.g. red for errors, green for success)
Vocabulary
The language used in the system to describe roles, processes, statuses etc. should conform to any pre-existing vocabulary relating to the tasks at hand.
Guidance
- Know your audience, and only use language you’re confident they’ll understand
- Use active voice, e.g. ‘The user updated the software.’ Rather than “The software was updated by the user.”
- Use pronouns – “you” for the user, “we” to represent the organisation.
Direction
Provide users with clear indications of required, desirable and possible next steps via visual, textual, structural and codified prompts.
Guidance
- Provide visual clues – The sections you want users to focus on should be the most prominent in terms of placement, size, and visibility.
- Use call to actions – provide big buttons for users to press.
- User verbs on buttons, e.g. sign up, log in, save.
Response Time
The system should respond to user input within two seconds to maintain a seamless and responsive user experience.
Guidance
- Utilise background loading where possible.
- Optimise your database queries.
- Make use of relevant Content Delivery Networks (CDNs).
- Optimise Your Database.
- Compress images.
Help Documentation
Provide comprehensive online help documentation, tooltips, or guided tours to assist users in understanding the functionality and features of the software.
Guidance
- Context sensitive help - provide help when users need it, preventing them from going to look for help, which wastes time and could result in abandoning the task.
- Use examples to explain processes, this minimises abstraction and allows users to focus on learning what they need.
- Be concise in your explanations and provide links to further explanation if needed.
- Don’t force users to read documentation; no one loves a bossy paperclip.
Error Handling
Clearly communicate errors with descriptive messages, suggestions for resolution, and, where applicable, links to relevant help documentation.
Guidance
- Give user feedback as soon as possible.
- Describes the issue as accurately as possible using non-technical language.
- Ensure that the feedback is actionable: where possible provide guidance on how to resolve the issue.
Cultural Considerations
Ensure that cultural norms and expectations are considered in the design to make the software accessible and user-friendly for users of any cultural background.
Guidance
- Proofread content to ensure language is clear and appropriate for a diverse global audience.
- Avoid acronyms that are institution or department specific.
- Use plain language, avoid jargon.
- Avoid gendering in theoretical examples (use ‘they’ rather than ‘he’ or ‘she’).
- Be mindful of terms related to race, ethnicity, nationality and culture.
- Be mindful of medical conditions and ability terms.
- Use person first language. For example, people with disabilities as opposed to disabled people or the disabled.
Cross-Browser Compatibility
The user interface should be compatible with the latest versions of major web browsers (e.g., Chrome, Firefox, Safari, Edge).
Guidance
- Adhere to Web standards.
- Check support for novel mark-up using a compatibility checker such as Can I Use.
- Validate markup – the W3C provides an online HTML validator.
- Test your system in a range of modern browsers.