I'm working on a website and I need the users to define the columns for a table. There are different types of columns which might be text, numeric, URL, email and so on. So every column has the name and the type. This is a critical step in the service and I need this process to be as easy as possible. Tests showed that our current method, which is text input and a drop down for each column is not intuitively translated in users' understanding to column title and type... I'm looking for solutions, including to buy a component that can let the users do it in the easiest way possible. Thanks for your help guys!!
-
Reads like a homework assignment, but even so, a good approach is to ask your users what they expect, then do some experiments to see what works best for them. Good luck.– Steve JonesJul 31, 2016 at 10:06
-
Already done, the current approach is not working well. I'm looking for a way to create a table using drag and drop or possibly some other solution.– user587067Jul 31, 2016 at 11:42
-
Okay, so what did they say when you asked them? In my experience, it is rare for users to have no clue about what they want.– Steve JonesJul 31, 2016 at 19:27
-
"Tests showed that our current method, which is text input and a drop down for each column is not intuitively translated in users' understanding to column title and type" Why not? Not trying to be smart, but on the face of it using text input and drop down is a totally reasonable and appropriate solution, so it makes me think the implementation is the problem, not the choice of controls. Can you share a screenshot etc to help us better appreciate what's going on?– MonomeethJul 31, 2016 at 23:21
-
Have you indicated to your users beforehand, that you're building a table for them, and each set of text and dropdown translate into a table column?– Adnan KhanAug 1, 2016 at 10:41
1 Answer
If you treat this like a conversation, it would probably go something like this:
- Human "I want a new column in my table"
- System "What do you want to call your new column?"
- Human "I want my column to be called . . ."
- System "What type of data will this column contain?"
- Human "The column will contain numbers"
- System "Where do you want this column to be placed?"
- . . .
So looking at a conversation like this, a text input and a simple drop-down field seem like the really obvious way to support this task, i.e. very intuitive.
I don't know who you tested or even what type of test you performed, but I struggle to understand why someone would find a text field and simple drop-down field confusing (i.e. the opposite to intuitive), when it is aligned so closely with the natural "conversation" a human has with a computer.
-
Appreciate all the comments, thank you. The problem in using only a text input and a drop down is the mis-fit with user's mental models. The problem is that without using a preview of a table, the only indication that these choices become a column is the title of this section - Define Cloumns. So I still think a WYSIWYG component of creating a table is better. I just didn't find any website that has done this before. Aug 2, 2016 at 6:43
-
I just demonstrated that the flow between the user and the website is absolutely not confusing - in fact it is very clear. I need to see your design before commenting any further. Can you share a rough mock-up?– SteveDAug 2, 2016 at 9:38
-
So a text field and a drop-down is not the confusing part, which suggests there is something else in your interaction design which is causing the usability problems you identified in your testing.– SteveDAug 2, 2016 at 9:46