Human interface guidelines
Human interface guidelines (HIG) are software development documents which offer application developers a set of recommendations. Their aim is to improve the experience for the users by making application interfaces more intuitive, learnable, and consistent. Most guides limit themselves to defining a common look and feel for applications in a particular desktop environment. The guides enumerate specific policies. Policies are sometimes based on studies of human–computer interaction (so called usability studies), but most are based on conventions chosen by the platform developers preferences. The central aim of a HIG is to create a consistent experience across  the environment (generally an operating system or desktop environment), including the applications and other tools being used. This means both applying the same visual design and creating consistent access to and behaviour of common elements of the interface – from simple ones such as buttons and icons up to more complex constructions, such as dialog boxes. HIGs are recommendations and advice meant to help developers create better applications. Developers sometimes intentionally choose to break them if they think that the guidelines do not fit their application, or usability testing reveals an advantage in doing so. But in turn, the organization publishing  the HIG might withhold endorsement of the application. Mozilla Firefox's user interface, for example, goes against the GNOME project's HIG, which is one of the main arguments for including Epiphany instead of Firefox in the GNOME distribution. Scope. Human interface guidelines often describe the visual design rules, including icon and window design and style. Much less frequently, they specify how user input and interaction mechanisms work. Aside from the detailed rules, guidelines sometimes also make broader suggestions about how to organize and design the application and write user-interface text. HIGs are also done for applications. In this  case the HIG will build on a platform HIG by adding the common semantics for a range of application functions. Cross-platform guidelines. In contrast to platform-specific guidelines, cross-platform guidelines aren't tied to a distinct platform. These guidelines make recommendations which should be true on any platform. Since this isn't always possible, cross-platform guidelines may weigh the compliance against the imposed work load.