homepage Welcome to WebmasterWorld Guest from 50.17.174.94
register, free tools, login, search, subscribe, help, library, announcements, recent posts, open posts,
Subscribe and Support WebmasterWorld
Home / Forums Index / WebmasterWorld / Accessibility and Usability
Forum Library, Charter, Moderators: ergophobe

Accessibility and Usability Forum

    
Best way to control data input for limited number of values
when the number of possible values is about 80
zollerwagner




msg:3859101
 11:58 am on Feb 27, 2009 (gmt 0)

I'm looking for an easy-to-use, fool-proof way to limit mistakes for a complicated data entry field.

One of our fields will contain group names. There are about 80 different group names. most records will only have one associated group name, but a few records will have 2-4 group names associated with that one record.

In regard to data structure, I had considered using a relational database, but that seemed like overkill. A non-relational database can give us all the functionality we need with just one field. Thre are only fields we need 'last_name', 'first_name', 'groups', and 'comment' fields (plus 'id' and 'date_entered' fields for back end functions).

I'll probably have to split the string with comma delimiter so I can compare it with the approved values. (If you think this is crazy, I'm open to hearing arguments for using a relational database.)

If I use a select (drop-down menu), the menu would be terribly long. So, instead, I'm considering allowing the user to type in the group names, but validate them against the "approved" list of groups.

What do you all think would be the best way to do this? I want maximize usability and minimize errors.

Thanks in advance for any thoughts!

 

sleepy_az




msg:3885789
 9:03 am on Apr 5, 2009 (gmt 0)

I'm all for relational structure - great for flexibility, scalability, keeping things simple... though I'm sure you've considered all of this.

If your single field idea works and you have good methods to extract values when users select multiple groups - then go for it.

As for the issue of usability - before trying to offer suggestions - the main consideration would be the type of user who will be filling out the form.

Are they internal or external? Will they have existing knowledge of the groups? And so on...

Another issue would be whether the group names could be "grouped" in any way (e.g. creating 4 lists of 20 names each)

However even 80 items in a drop-down menu may not be too long - especially if they suit being displayed in some order i.e. alphabetical.

Just look at the size of lists that one uses when selecting 'country' on some forms.

Finally - if you are going to have the user manually enter in the group - and then validate it - perhaps some type of predictive 'on-screen' matching would help.

The idea of allowing user to manually enter the names really depends on their familiarity with the group names and the possibility of errors in their attempts.

Would be a good case of some old fashioned usability testing...

tangor




msg:3885791
 9:21 am on Apr 5, 2009 (gmt 0)

Reduce the number of options, ie, top down by category to specific. Leave nothing to chance. And always remember the USER IS STUPID.

If you have 80 options you can't do it in one form. Otherwise you have 80 errors possible each form.

zollerwagner




msg:3885938
 6:18 pm on Apr 5, 2009 (gmt 0)

Thanks for your replies. And two very different answers they are!

The options will be organized alphabetically, so that'll help users search them. Most of the users will be at least minimally familiar with the categories.

It'd be great if it were possible in a form's select element to show major categories in bold and then indent each category's entries. Can a drop down menu do that?

sleepy_az




msg:3885982
 7:56 pm on Apr 5, 2009 (gmt 0)

Yes - sounds like discussions at the usability lab - everyone with differing ideas to test out.

In terms of categorizing within a select element - using just plain text - you could do something like:

=========
Category A
- group a1
- group a2
=========
Category B
- group b1
- group b2
- group b3
=========
and so on....

CHECKBOXES
Another idea would be to test out the form using CheckBoxes (yes, 80 of them :)

Actually you might find that this is the most "easy to use, fool proof" approach in terms of usability and reducing error rate.

zollerwagner




msg:3886048
 9:56 pm on Apr 5, 2009 (gmt 0)

Sleepy_az, how would you code this?

=========
Category A
- group a1
- group a2
=========
Category B
- group b1
- group b2
- group b3
=========
and so on....

sleepy_az




msg:3886050
 10:12 pm on Apr 5, 2009 (gmt 0)

It would just be a standard <select> element - with the "========" and "Category X" being blank options - and every group item beginning with "-".

<select>
<option value="">=========</option>
<option value="">Category A</option>
<option value="a1">- group a1</option>
<option value="a2">- group a2</option>
<option value="">=========</option>
<option value="">Category B</option>
<option value="b1">- group b1</option>
</select>

The problem with it is that there are 'empty' values that a user could select - you'd just need to validate these.

At least this approach keeps things simple - is accessible to most - and can easily be generated from a database list of groups, or manually entered when setting up the form.

Whether it's a preferred approach in terms of usability...

zollerwagner




msg:3886076
 11:56 pm on Apr 5, 2009 (gmt 0)

Ah, that makes sense. Thanks, Sleepy_az for a very complete answer!

encyclo




msg:3886270
 10:18 am on Apr 6, 2009 (gmt 0)

You can use
optgroup for this:

<select>
<optgroup label="Category A">
<option value="a1">Group a1</option>
<option value="a2">Group a2</option>
</optgroup>
<optgroup label="Category B">
<option value="b1">Group b1</option>
<option value="b2">Group b2</option>
<option value="b3">Group b3</option>
</optgroup>
</select>

sleepy_az




msg:3886275
 10:24 am on Apr 6, 2009 (gmt 0)

Sweet - learn something new all the time. Thanks for that!

zollerwagner




msg:3886276
 10:53 am on Apr 6, 2009 (gmt 0)

Nice one! Thanks, Encyclo.

Global Options:
 top home search open messages active posts  
 

Home / Forums Index / WebmasterWorld / Accessibility and Usability
rss feed

All trademarks and copyrights held by respective owners. Member comments are owned by the poster.
Terms of Service ¦ Privacy Policy ¦ Report Problem ¦ About
© Webmaster World 1996-2014 all rights reserved