John Liungman, Technical communications guy (1999-present) Answered 3 years ago taken of Quora
I am techncial writer in the software industry, and I find this is a common problem. These words (and other synonyms) are used without proper research and thought, so they appear interchangeably. This creates confusion, since we tend to get used to the actual usage of a word, and language people do not always get involved in UI design. So do not look only at existing products for the answer!
Initially, I should say that in UX (user experience design) we should always strive for empirical data. If the answer matters, then put together a little test involving representative users (not your programmer buddies, but USERS). Ask them to define the words, to use them in sentences, or to enter the words in sketches of the user interface. Write cards with a bunch of options/settings, and ask your subjects to sort them and label the piles.
Having said that, here are my five cents:
*Configuration * is something I perceive as a deep, fundamental property of the system. On your PC, configuration might be things like what OS you use, which hardware is connected, your interfaces, your drivers, your automatic back-up, etc. These are things that your IT department might set up, and that you may never change, unless you have very specific needs and knowledge.
If you build software products, the configuration might be an adaption at a specific customer site. You might use a config-file to make the settings, or tweak your database to suit the customer.
On the other end of the scale I would put Preferences. These are my personal choices. These may involve whether spell-check is active, choice of background image, speed of the mouse-pointer, etc. These choices carry no risk, and you can experiment freely and go back on any choice.
If you build software products, the Preferences will be things that you can let your users do through their user interface. Preferences can be connected to the current user, and not the application globally.
Somewhere between these extremes it gets more complicated. For example, super-users/admins might have access to choices that are quite risky and affect the entire system.
We also have words like Setting, and Option, which I would use interchangeably (but consistently within a context). Some applications use these words for menues and dialogs that are the same as Preferences described above. But note that these can be used in the singular (“check the option labeled NEVER”). So you can choose to use them for the smaller things like individual check-boxes.
Properties usually refer to objects or items (for example images in graphics programmes). I would avoid using this for “properties of the whole application”.
In summary, if I were to design a system, I would use Configuration for the things we would set for the user/customer during installation. I would supply a Preferences menu for each user to make their own selection regarding superficial things. The preference menu would have a bunch of Options or Settings. If I right-click on an object, I might get a Properties option to change the characteristics of that object.
But in the end, TEST your terminology along with everything else you build. Different industries might have very specific traditions regarding these words. Think agile and rework things that create confusion.