Explore tens of thousands of sets crafted by our community.
Principles of Good Software Design
12
Flashcards
0/12
Error Prevention
The design should prevent errors from occurring by eliminating error-prone conditions or providing warnings for users.
Aesthetic and Minimalist Design
Designs should not contain information that is irrelevant or rarely needed to prevent user distraction and cognitive overload.
Help and Documentation
Even though it is better if the system can be used without documentation, it may be necessary to provide help and documentation to support users.
Feedback
The design should provide users with clear feedback in response to their actions.
Visibility
The design should ensure that necessary options and materials are visible without overwhelming the user.
User Control and Freedom
Users often choose system functions by mistake and need a clearly marked 'emergency exit' to leave the unwanted state, as well as the ability to undo and redo actions.
Recognition Rather Than Recall
Designs should minimize the user's memory load by making objects, actions, and options visible.
Affordance
Design elements should suggest their usage, guiding users intuitively through their interactions.
Accessibility
Design should be usable by people of diverse abilities, ensuring accessibility for all users.
Consistency
Interfaces should maintain consistent elements to reduce user confusion and learning time.
Simplicity
The design should keep interaction simple, with the goal of reducing user workload and complexity.
Flexibility and Efficiency of Use
The design should accommodate both novice and experienced users by allowing customization or shortcuts to commonly used functions.
© Hypatia.Tech. 2024 All rights reserved.