Open ebugden opened 3 years ago
The issue description frames these guidelines as mainly layout and graphic design principles. Discussing that level of high-polish this early in the design process doesn't seem super relevant.
Instead, these guidelines could be reframed as more generally applicable "design guidelines". These guidelines would be a framework of principles to structure and streamline the design process (ex. facilitate feature prioritization).
Below are some ideas for content that could be included.
We aim to build a tool:
Thoughts to keep in mind when designing. Quick sanity checks that lay the foundations for the project’s design culture.
Note: These principles can be broken if appropriate, but it’s important that any breaking is an intentional (and justifiable) decision.
By not reinventing the wheel, the UI remains consistent with user expectations. Other benefits:
Examples of UI conventions:
Conventions depend on context. For example, the standard position of window options is different on Windows and iOS.
iOS:
Windows:
Ask yourself: Who is the user? What are they trying to accomplish? Be aware that a user’s needs vary depending on their profile (ex. First time trying the tool vs. Experienced user). Benefits:
See “Feature prioritization & development” below for more details.
And lower priority information should stand out less. Ex. Do order table items by importance, but don’t use thick black gridlines.
Overview first, details later. Increase complexity only when necessary (or when explicitly requested by the user). Benefits:
Thinking about who a feature is for can help with:
Users can be divided into four groups based on their level of investment in the tool:
Each of these four stages can be characterized by different:
Also keep in mind:
CC: @ssmagula
Principles about good analysis methodology could be included so that they're considered in design decisions and feature prioritization.
Characteristics and feature priorities for UI that supports good trace analysis methodology.
From @ssmagula's report "Making sense of trace visualizations":
[Ben Schneiderman's] paper, “The Eyes Have It: A Task by Data Type Taxonomy for Information Visualizations” has been cited over 5,000 times. He calls the checklist The Visual Information Seeking Mantra, but most simply call it The Mantra.
Perhaps this interactive visualization mantra can serve as a seed for a future set of more custom, more tracing-specific design principles
Collection of other company's data viz guidelines.
Create a document with style principles that apply to the whole project or several component types (ex. General layout principles, colour palette, UI component semantics).
Prerequisite: Create chart style guidelines #152 before diving into defining these more abstract guidelines.
Inspiration
Style guidelines can be strongly inspired by the VS Code and Grafana style either by:
If reverse engineering guidelines, the tag colours in the Grafana live demo dashboard management could be a good place to get an idea of the colour palette used:
Content
Style guidelines could be structured as:
Include good and bad examples to illustrate the principles. Example pictures are often best (rather than text explanations).
Could also include subjective or human checks (ex. Does it feel visually intimidating? Do you feel invited to explore?). High-level user-focused questions can act as sanity checks. They can help avoid tunnel vision by encouraging devs to think about the project from a different perspective.