2

In a Web form I have a question to which an answer needs to exist, so that a result can be shown to the user. It's about the users family status (single, family). Because there is a majority of users that prefer the first option "single" we decided to prepopulate that option.

Should this still be marked as a mandatory field (*), though the user does not have to interact with it in order to provide the information? The general question that arises is if a mandatory field is a field that the user (possibly) needs to interact with or if a mandatory field is a field that is required by the software in order to do its job? Does anyone maybe know some research about the users' expectations and mental models?

4

Given you’re designing the user interface, not the program’s interface, it makes sense to signal what’s required of the user, not what’s required of the program. Part of the purpose of the UI is to communicate the actions the user can or must make. In the case of require fields, the commonly used red asterisk communicates to the user “you must put something here in order to continue,” not “the software algorithm will encounter a record-not-found error if this field is blank.” With these asterisks, the user can quickly decide if skipping a field is an option. Before submitting, the user can scan the form to check that it is minimally ready, and thus avoid an annoying error message. We use the asterisks because they provide these benefits to the user. Thus, they should be used in a manner that maximizes the benefits for the user.

So, if the field is defaulted and the user cannot blank it (e.g., it’s a drop down or radio button group, not a text box or combo box), then there is no need to mark it required –there is no action “required” by the user. Including the asterisk in this case may draw the user’s eye to the field (as when checking that the form is minimally complete) when it isn’t necessary, adding a bit of workload. That’s not a big deal in most cases, but it’s probably still worth avoiding.

Some might argue that the asterisk encourages the user to check that the default value is correct, but I’m not so sure about that. Communicating “you should check this field is correct” is different from communicating “you must put something (anything) in this field.” I’d argue that generally users have an intuition that computer output is only as accurate as the input, so the fact that the field exists at all adequately communicates “you should check this field is correct.” Your main concern here is users who assume that certain fields are not important (or even unnecessarily prying) due their abuse at the hands of other web sites. User research will tell you if that’s the case, and what you can do about it.

1

Part One


You Do!

Simply:

  1. If you need the information, it's required.

  2. If you don't need, but want it, it's optional.


Part Two


The Database Does!

I like this better, in terms of the back-end.

  1. If your database has it as NOT NULL, mark it as required.

  2. If your database has it as NULL, you leave it as is and take what you get from the user.


Part Three


Specifically speaking to your situation, if you have a dropdown / radio button list / combobox / etc. with only actual answers and you default one, you just made that field not required. See below:

mockup

download bmml source – Wireframes created with Balsamiq Mockups

Basically, if your database requires the field, you need to require your user to make a decision, and pre-population, while great, can get in the way of that. It's not a bad thing to make them choose. If you only have 2 options, use Radio Buttons instead. One click vs Two if you use a drop down.

mockup

download bmml source

0

Here's how I think of it: a "required" field needs a value in order for the form to be submitted. So, even if a field is pre-populated, I'd still mark it as required. (Consider address forms that pre-populate with the address info saved in your profile.)

Now, whether you should pre-populate your Family Status field is another matter...

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.