Projects/Usability/HIG: Difference between revisions

    From KDE TechBase
    (Index for mobile added)
    (137 intermediate revisions by 8 users not shown)
    Line 1: Line 1:
    = Structure =
    __NOTOC__
    == Conceptual Model ==
    = KDE Human Interface Guidelines =
    <cite>The conceptual model is the most fundamental aspect of the interface, describing the relationship between the interface and the outside world. The purpose of the conceptual model is to draw on the user’s past experiences so they can readily understand basic operations and accurately predict functionality.</cite>
    * Real World, Vision
    == Task Flow ==
    <cite>The task flow is concerned with the manner in which users’ complete specific operations with the system. In contrast to the conceptual model, the task flow is largely dependent on the product’s technical environment.</cite>
    * Core usability goals, Use cases / User requirements, Task aggregation
    * Personas, Scenarios, Usability criteria, Feature list
    == Organizational Model ==
    <cite>The organizational model describes how the system’s content and functionality are ordered and categorized. Also known as the information architecture, the organizational model encompasses both the classification scheme as well as the model of association, hierarchy versus index for example. </cite>
    * [[Terminology]]
    * Information architecture, Interface management, Window style, Basic arrangement, Screen design, Design Pattern
    * [[Projects/Usability/HIG/CentralConfiguration|central configuration]] (content tbd.)
    * [[Projects/Usability/HIG/NotificationMechanism|Notification mechanism]] (content tbd.)
    *Minimize to tray (perhaps at behaviour>navigation)


    = Behaviour =
    The KDE Human Interface Guidelines (HIG) offer application designers and developers a set of recommendations for designing and developing user interfaces. Their aim is to improve the experience for users by making application interfaces more consistent and hence more intuitive and learnable.  
    == Viewing and Navigation ==
    <cite>The Viewing and Navigation layer encompasses the wide variety of behaviors and operations that allow users to navigate the interface and effect its presentation. </cite>
    === General navigation ===
    * [[Projects/Usability/HIG/Dialogs|Dialogs]]
    * Accordion
    * [[Projects/Usability/HIG/Tabs_Pages|Tabs and Pages in Dialogs]]
    * Toolbar
    * Status bar
    * Paging
    === Access functions ===
    * [[Projects/Usability/HIG/Menu_Bar|Menu Bar]]
    * [[Projects/Usability/HIG/Buttons|Buttons]]
    ** [[Projects/Usability/HIG/Toggle_Buttons|Toggle Buttons]]
    * Links
    * Keyboard Access
    ** [[Projects/Usability/HIG/Keyboard_Accelerators|Keyboard Accelerators]]
    ** [[Projects/Usability/HIG/Keyboard_Shortcuts|Keyboard Shortcuts]]
    === Grouping ===
    * Group box, Panel
    * Splitter
    === Complex views ===
    * Use a [[Projects/Usability/HIG/ListView| List View]] to show some items out of one category.
    * Tree view
    * Grids


    == Editing and Manipulation ==
    == Getting Started ==
    <cite>The Editing and Manipulation layer contains the behaviors that result in permanent changes to user’s stored information. … Behaviors in this layer can often be recognized by the following traits: they result in permanent, stored changes; they require an implicit or explicit save operation; and they typically require validation of the input data. </cite>
    * [[Projects/Usability/HIG/Presentation/DesignVisionPrinciples|Design Vision and Principles]] - The overall vision and principles that guide the design and development of user interfaces for KDE software.
    === Selection ===
    * [[Projects/Usability/HIG/Concept|Concept]] -  Creating a project vision, determining the users, and the scenarios of use.
    * Use a [[Projects/Usability/HIG/Radio Buttons|radio button]] for 1 of a few n selections.
    * [[Projects/Usability/HIG/Organization|Organization]] - Guidelines on how an application’s content and functionality are ordered and categorized.
    * Use one or more [[Projects/Usability/HIG/Check_Box|check boxes]] for clear options or n of a few m selections.
    * Use a [[Projects/Usability/HIG/ListView|list view]] for one or a few n of some m selections.
    * Use a [[Projects/Usability/HIG/Combo_Box| drop-down]] list for 1 of some n selection and a [[Projects/Usability/HIG/Combo_Box| combo box]] if users should be able to add items.
    * Use the [[Projects/Usability/HIG/SOU_Workspace/Two_Lists| dual list]] pattern for n of m selections.


    === Unconstrained input ===
    == Behaviour ==
    * To enter one line of text use a [[Projects/Usability/HIG/edits| line edit]] and for multiple lines of texts a [[Projects/Usability/HIG/edits| text edit]].
    This section contains guidelines for application behaviour.
    * Lists with direct input
    * For complex views with direct input provide [[Projects/Usability/HIG/inline_editing| inline editing]].


    === Constrained input ===
    * [[Projects/Usability/HIG/ViewingAndNavigation|Viewing and Navigation]] - Guidelines on controls and patterns to use for viewing, navigating and performing actions on application content.
    * Numeric input within a range and with fix steps: [[Projects/Usability/HIG/Spin_Box|Spin Box]]
    * [[Projects/Usability/HIG/EditingAndManipulation|Editing and Manipulation]] - Guidelines on controls and patterns to use for selection and input.
    * Arbitrary changes within a range for immediate feedback: [[Projects/Usability/HIG/Slider|Slider]]
    * [[Projects/Usability/HIG/UserAssistance|User Assistance]] - Guidelines on tooltips, notifications, messages and help.
    * Numeric input with both large changes and precise control: [[Projects/Usability/HIG/Slider_and_Spin_Box|Slider and Spin Box]]
    * [[Projects/Usability/HIG/Patterns|Patterns]] - Guidelines on how to use controls in different combinations to accomplish specific behaviors.
    * Use [[Projects/Usability/HIG/Date_Time_Pickers|Date and Time Pickers]] for formatted input of datum, time of day, or periods etc.


    == User Assistance ==
    == Presentation ==
    <cite>Interface elements that inform users of the application’s activity and status, as well as elements dedicated to user education, are all contained in the User Assistance layer. This includes online help, error alerts, and status alerts. </cite>
    Presentation deals with the visual design of the user interface.
    === User-driven information ===
    * Tool-tip
    === System triggered notification ===
    * Balloon
    * [[Projects/Usability/HIG/Notifications|Notification]] is a system-triggered message used to acknowledge about events out of the current context.
    * Progress indicator
    === Disruptive messages ===
    * [[Projects/Usability/HIG/Messages|Message dialogs]]
    === Help system ===
    * KDE Help
    = Presentation =
    == Layout ==
    <cite>The various design decisions governing the placement and ordering of onscreen elements are expressed in the Layout layer. In addition to providing an ordered visual flow, the Layout layer also supports the Behavior tier by arranging elements in a manner that helps communicate behavior, importance, and usage.</cite>
    * Resizing
    * Default and minimal size
    * Spacing
    * Alignment & Placement
    ** [[Projects/Usability/HIG/Form_Label_Alignment|Forms: Label Alignment]]
    * Color
    * Icons
    == Style ==
    <cite>Like many forms of visual design, the Style layer is concerned with emotion, tone, and visual vocabulary. Because it is the most visible and concrete aspect of an interface, it typically accounts for people’s first impression of a product. Paradoxically however, the ultimate effect of style on overall usability or user satisfaction is minimal.</cite>
    == Text ==
    <cite>Contained within the Text layer are all the written, language-based elements of the interface. This includes the labels used to represent the organizational model, the names of the input and navigational controls contained in the Viewing and Navigation layer, and the alert messages and help text used by the User Assistance layer.</cite>
    * Language localizations
    * Static text
    * [[Projects/Usability/HIG/Labels|Control Labels]]
    ** [[Projects/Usability/HIG/KNS|KNewStuff Button Labels]]
    * [[Projects/Usability/HIG/Wording|Wording]]
    * [[Projects/Usability/HIG/Ellipsis|Ellipsis]]
    * [[Projects/Usability/HIG/Capitalization|Capitalization]]
    * [[Projects/Usability/HIG/Contractions|Contractions (don't, there's, etc.)]]
    * [[Projects/Usability/HIG/Exclamation_points|Exclamation Points]]


    See also:
    * [[Projects/Usability/HIG/Layout|Layout]] - Guidelines regarding the placement and ordering of onscreen elements. Includes guidance on layout patterns, alignment, size and spacing.
    * [[Projects/Usability/HIG/Style|Style]] - Guidelines on the use of colour, icon design and the typography to communicate with a consistent visual vocabulary.
    * [[Projects/Usability/HIG/Text|Text]] - Guidelines for the written, language-based elements of the interface. Includes guidelines on wording, capitalization and localization.


    * [[Projects/Usability/HIG/Tablet/Index|HIG for Plasma Active]]
    == Tools and Resources ==
    * [[Projects/Usability/HIG/Netbook/Index|HIG for Plasma Netbook]]
    The following tools and resources are offered to help with following these guidelines.


    =Contributing=
    * [[Projects/Usability/HIG/ControlsList|Controls List]] - A complete listing of all user interface controls and their guidelines in alphabetical order.
    * [[Projects/Usability/HIG/MockupToolkit|Mockup Toolkit]] - Includes UI controls stencils, color swatches and fonts to help create the visual design your application.
    * [[/About|About the HIG]] - Learn more about the philosophy behind the KDE HIG.
    * [http://forum.kde.org/viewforum.php?f=285 Visual Design Group forum] - Ask for help and share your design ideas.


    Didn't find what you were looking for?
    == Quick index for the new mobile-oriented HIG (work in progress) ==
    === Drawers & FAB ===
    * [[Projects/Usability/HIG/GlobalDrawer | Global Drawer]]
    * [[Projects/Usability/HIG/ContextDrawer | Context Drawer]]
    * [[Projects/Usability/HIG/FloatingActionButton | Floating Action Button]]
    * [[Projects/Usability/HIG/QuickContentActions | Quick actions on contents]]


    Our Human Interface Guidelines are a work in progress and we need your help. Visit the [[Projects/Usability/HIG/Contributing|Contributing page]] to report problems or get involved.
    === Navigation ===
    * [[Projects/Usability/HIG/ViewsByColumns | Views-by-columns approach]]
    * [[Projects/Usability/HIG/ContentsFilter | Contents filter]]
    * [[Projects/Usability/HIG/Views-by-tabs | Simpler views by tabs]]


    =Index=
    === Editing ===
    * [[Projects/Usability/HIG/RearrangeListItems | Rearrange list's items]]


    '''B'''
    === App settings ===
    * [[Projects/Usability/HIG/VBCtoSettings | Views-by-columns approach applied to settings]]


    * [[Projects/Usability/HIG/Buttons|Buttons]]
    === Cross-apps interactions ===
    * [[Projects/Usability/HIG/SharingContents | Sharing contents to an other app]]


    '''C'''
    === Complete app examples ===
     
    * App store (to be applied to Muon Mobile)
    * [[Projects/Usability/HIG/Capitalization|Capitalization]]
    * E-mail client
    * [[Projects/Usability/HIG/Contractions|Contractions (don't, there's, etc.)]]
    * Media player
    * [[Projects/Usability/HIG/Check_Box|Check Box]]
    * [[Projects/Usability/HIG/Combo_Box|Combo Box]]
     
     
    '''D'''
     
    * [[Projects/Usability/HIG/Date_Time_Pickers|Date and Time Pickers]]
    * [[Projects/Usability/HIG/Dialogs|Dialogs]]
     
    '''E'''
    * [[Projects/Usability/HIG/Ellipsis|Ellipsis]]
    * [[Projects/Usability/HIG/Exclamation_points|Exclamation Points]]
     
    '''F'''
    * [[Projects/Usability/HIG/Form_Label_Alignment|Forms: Label Alignment]]
     
    '''K'''
    * [[Projects/Usability/HIG/KNS|KNewStuff Button Labels]]
    * [[Projects/Usability/HIG/Keyboard_Accelerators|Keyboard Accelerators]]
    * [[Projects/Usability/HIG/Keyboard_Shortcuts|Keyboard Shortcuts]]
     
    '''L'''
    * [[Projects/Usability/HIG/Labels|Labels]]
    * [[Projects/Usability/HIG/ListView|List Views]]
     
    '''M'''
    * [[Projects/Usability/HIG/Menu_Bar|Menu Bar]]
    * [[Projects/Usability/HIG/Messages|Messages]]
     
    '''R'''
    * [[Projects/Usability/HIG/Radio Buttons|Radio Buttons]]
     
    '''S'''
    * [[Projects/Usability/HIG/Slider|Slider]]
    * [[Projects/Usability/HIG/Slider_and_Spin_Box|Slider and Spin Box]]
    * [[Projects/Usability/HIG/Spin_Box|Spin Box]]
     
    '''T'''
    * [[Projects/Usability/HIG/Tabs_Pages|Tabs and Pages in Dialogs]]
    * [[Projects/Usability/HIG/Toggle_Buttons|Toggle Buttons]]
     
    '''W'''
    * [[Projects/Usability/HIG/Wording|Wording]]


    [[Category:Usability]]
    [[Category:Usability]]
    ----
    '''Legacy Stuff'''
    [[Projects/Usability/HIG/Lists_Rich_Lists|List Views]]
    Please add any guidelines questions or requests to the [[Projects/Usability/HIG_Questions|HIG Questions]] page.
    Also see the [[Projects/Usability/HIG/SOU_Workspace|Season of Usability HIG & Design Patterns Workspace]].

    Revision as of 10:27, 24 November 2015

    KDE Human Interface Guidelines

    The KDE Human Interface Guidelines (HIG) offer application designers and developers a set of recommendations for designing and developing user interfaces. Their aim is to improve the experience for users by making application interfaces more consistent and hence more intuitive and learnable.

    Getting Started

    • Design Vision and Principles - The overall vision and principles that guide the design and development of user interfaces for KDE software.
    • Concept - Creating a project vision, determining the users, and the scenarios of use.
    • Organization - Guidelines on how an application’s content and functionality are ordered and categorized.

    Behaviour

    This section contains guidelines for application behaviour.

    • Viewing and Navigation - Guidelines on controls and patterns to use for viewing, navigating and performing actions on application content.
    • Editing and Manipulation - Guidelines on controls and patterns to use for selection and input.
    • User Assistance - Guidelines on tooltips, notifications, messages and help.
    • Patterns - Guidelines on how to use controls in different combinations to accomplish specific behaviors.

    Presentation

    Presentation deals with the visual design of the user interface.

    • Layout - Guidelines regarding the placement and ordering of onscreen elements. Includes guidance on layout patterns, alignment, size and spacing.
    • Style - Guidelines on the use of colour, icon design and the typography to communicate with a consistent visual vocabulary.
    • Text - Guidelines for the written, language-based elements of the interface. Includes guidelines on wording, capitalization and localization.

    Tools and Resources

    The following tools and resources are offered to help with following these guidelines.

    • Controls List - A complete listing of all user interface controls and their guidelines in alphabetical order.
    • Mockup Toolkit - Includes UI controls stencils, color swatches and fonts to help create the visual design your application.
    • About the HIG - Learn more about the philosophy behind the KDE HIG.
    • Visual Design Group forum - Ask for help and share your design ideas.

    Quick index for the new mobile-oriented HIG (work in progress)

    Drawers & FAB

    Navigation

    Editing

    App settings

    Cross-apps interactions

    Complete app examples

    • App store (to be applied to Muon Mobile)
    • E-mail client
    • Media player