I write an import software. I want to display values that can be imported, right next to the current values. I thought about a datagrid like this

| Name | Attribute Name | Existing Attribute | Import Attribute | Do Import |
|      | Horse Power    |  50                | 55               |  Yes      |
| BMW  +----------------+--------------------+------------------+-----------+
|      | Color          |  Blue              | Green            |  No       |
|      | Weight         |  1500              | 1600             |  No       |
| Ford +----------------+--------------------+------------------+-----------+
|      | Color          |                    | Blue             |  Yes      |

The Do Import column would be checkboxes where the user can select which data to import. There can be a lot Elements in that list BTW.

Is there a better aproach?

  • Optimal design will depend on typical user response. When the values are different, does the user typically import or keep existing value? – Jung Lee Jun 18 '13 at 23:05
  • The user would normally import if there is no existing value. If there is an existing value the user would normally not import. – juergen d Jun 18 '13 at 23:08
  • 2
    Import is a verb itself. You don't need "Do" before that that. – Salman Ehsan Jun 19 '13 at 1:23

There are some usability drawbacks in your approach.
table interaction

  1. There are too many points of eye fixation while taking decision, see red dots and dotted pathes on the image.
  2. According to Fitts's law, it's not the easy task for user to check the control in the Import column.
  3. There is no strong visual feedback on option being choosen as checkbox is rather small.

Having a lot of data to work, all these factors lead to fast user's fatique, loosing concentration (which leads to errors) and lowering efficiency.

The better way is to re-design the table that is not only simplifies the structure but lets fix usability problems.
table interaction

  1. Make the new value the (toggle) button itself! This reduces eye fixations and increases target size (Fitts's law).
  2. Make choosen option highly visible (highligh).
  3. Try to guess user action and auto-choose most probably setting (new or old value).
  4. Divide the whole data on portions leaving places for eyes to rest, compare options A and B on the image below.

table structure

One problem here is learnability. First time users couldn't understand that new value is toggle button itself. Here I assume that
a) you strive for high efficiency,
b) the users are internal workers so you could give an instruction for them or/and even make it look button-like, see image below.


You are just asking them to verify values that have changed. Values that have not changed should be excluded from the list, and new values should also be excluded. Those values will be imported so why confuse the user with those items.

You could have an option to show those values if they wanted.

If the user clicks BMW I'd import all the items for that group. Otherwise they could select individual items.

If they are dealing with a large number of items then this is pain for the user. You could assume they want to import them, and default the setting to checked.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.