Dashboard > OFBiz Project Administration Workspace > ... > Best Practices Guide > User Interface Layout Best Practices
  OFBiz Project Administration Workspace Log In | Sign Up   View a printable version of the current page.  
  User Interface Layout Best Practices
Added by Adrian Crum, last edited by Adrian Crum on Jul 15, 2008  (view change)
Labels: 
(None)

User Interface Layout Best Practices

In order to present the user with a consistent user interface (UI) certain guidelines or best practices should be followed. The guidelines presented here are intended for the back office (manager) applications. Layout for public-facing screens (such as eCommerce) are typically customer-defined and will have different guidelines.

Navigation

OFBiz navigation is separated into four main categories, and some screens may have others. Navigation links should appear only for targets that the user has permission to access.

Main Navigation

This section (in the header of the screen) contains links for business and end-user oriented applications. Links to less frequently used and more technical applications are kept in secondary navigation. The main navigation area should indicate which application is currently selected if the current application is linked to from here.

Secondary Navigation

This section (in the footer of the screen) contains links for less frequently used applications. The secondary navigation area should indicate which application is currently selected if the current application is linked to from here.

Application Navigation

This section contains the application's title, plus links to functional areas within the application. Application navigation should indicate which area is currently active.

Application Area Tabs

This section consists of tabs that split up a single area of an application into multiple screens that all fit together and are generally parameterized with the same parameter or set of parameters (for example the productId for all of the Product and related tabs). The tabs should only include screens that are part of the set of screens for the area. Links to screens that are not part of the set of screens for the area should be included in the links below the tab bar.

Guidelines for Main Screen Areas

Main Screen Area

The Main Screen Area is the area inside the decorator that changes for each area of an application. In other words it does not include the header or footer, or side-bars if the application has them.

This area of the screen is focused around whatever task or process the user is performing. If multiple tasks are used in a single screen, they should be clearly separated.

Generally speaking, the main screen area should contain the following items, going from top to bottom:

1. Optional application area tab bar (mentioned above).
2. Page title, using the h1 style. The page title displayed in the main content area should match the title bar title. This makes a strong connection between screens and bookmarks and browser history.
3. Optional related screen buttons, in the button bar style (external links outside of a certain set of screens). For instance, a Find screen might have a "Create New" button here.
4. The main form or other interaction area.

Many screens will fall into a few general categories, and those categories are detailed below.

Create or Add Screens

Create or add screens should contain the following items, going from top to bottom:

1. Optional application area tab bar.
2. Page title, using the h1 style.
3. Data entry form, including a Save button.

Avoid having unnecessary controls on the screen. For instance, a create screen should not contain a "Create New" button on it - that would be redundant.

In some cases, screens with a create form also contain a list of existing items. If it is used the item data entry form should be above the existing item list. In addition, the item data entry screen should be collapsible and initially collapsed. If the new item form area is not collapsible it should then be below the list form with existing items.

Find Screens

Find screens should contain the following items, going from top to bottom:

1. Optional application area tab bar.
2. Page title, using the h1 style.
3. Optional related task buttons, in the button bar style. For instance, a "Create New" button.
4. Optional Search Options data entry form. The form should be collapsible, and collapsed when a find has been done and there are results for it.
5. List of found items - the search results.

Using the FindScreenDecorator is recommended - it will facilitate correct layout and will reduce screen widget code.

The initial display of search results is controlled by the widget.defaultNoConditionFind property in the widget.properties file. If a specific behavior is desired regardless of that setting the noConditionFind should be set in the screen actions.

Here are some recently discussed options

  • Links in screenlets. Many ideas came from this thread
    • The main and origal idea was to have less (or even none) buttons in header
    • It was also suggesteed to use screenlet like how gmail does. Notably
      • Three buttons max
      • Dropdown for other actions
      • The idea of duplicating at bottom
    • Having breadcrumbs under the title bar
    • Using portlets in place of screenlets
  • OFBiz Theme Gallery. The idea is to create specific maincss.css under a folder structures like
    /framework/images/webapp/images/themes/theme1/maincss.css
    /framework/images/webapp/images/themes/theme2/maincss.css
    and to have a property in general.properties file (or somewhere else like user's preferences setting) to select a theme at will, default being the one currently used in OFBiz stock.
  • Web tools
    • Entity Data maintenance
      • have vertical separators for columns when viewing entity content,
      • make the Find options a collapsible screenlet,
      • make styles of the Entity Data Maintenance screens in general the same than used by the widgets.
    • At large, maybe restyle all the Web tools page (not a priority)
  • List : to have in the results list form of every FindScreen (optionally) a first column of check boxes that let the user to select several items and than a combo box above the list that let the user to
    select a command to execute on them.
Posted by Jacques Le Roux at Jul 11, 2008 11:23 | Permalink
Site powered by a free Open Source Project / Non-profit License (more) of Confluence - the Enterprise wiki.
Learn more or evaluate Confluence for your organisation.
Powered by Atlassian Confluence, the Enterprise Wiki. (Version: 2.2.10 Build:#528 Nov 29, 2006) - Bug/feature request - Contact Administrators

Hosting and maintenance for this site brought to you by:

With both OFBiz project creators on our executive team, and by leading teams comprised of many of the most talented OFBiz developers anywhere, HotWax Media is uniquely positioned to help our clients succeed with Open For Business. From large multinational public companies to a variety of smaller businesses, we expertly support our clients as they harness the world-class systems in OFBiz.

Contegix keeps your servers running all day, every day. Intelligent Routing, secure power supplies, and a 100% uptime guarantee give you peace of mind for your complete managed hosting solution. More than hosting. More than application support. Our engineers support your business.