Drupal Forms User Guide
Creating a whiteboard
For anything beyond a very basic form, it’s a good idea to map it out first in Microsoft Whiteboard (or a similar programme).
Ahead of building the form, you can easily:
-
work out how to distribute questions across pages
-
decide on the order of pages and questions
-
figure out branching logic and convey it with arrows
-
change your mind and move things around
-
share the plan with the stakeholder so they can comment
If migrating a form from Forms Master, it helps to create both ‘as is’ and ‘to be’ maps.
The format of the Whiteboard can be quite simple, with a coloured block for each page and the elements listed in each block.
Order
Try to order it broadly like this:
-
Questions that filter out anyone who is not eligible to continue, or for whom the form is not relevant
-
Questions that apply to everyone remaining
-
Questions that only apply to a subset of users
How many questions should I put on a page?
Our site has a high percentage of mobile users, so always err on the side of keeping a page as short and logically contained as possible. We should always strive to find the balance between 'good practice' and practicality. This might mean asking between 1 and 5 questions per page, depending on context and what types of questions they are. Any more than 5 questions (unless some only appear conditionally) is going to push usability on a mobile.
What to capture
The Whiteboard should contain enough detail that someone else could take it and build a form on the CMS from the information contained within.
This means, at the very least, you'll need to make sure you have:
-
a title for the form (that will appear at the top of all pages)
-
page titles for each page
-
a clear flow of logic, both at page level and within the pages (if this, then show or hide that)
-
any introductory text
-
fully detailed questions with:
-
the question itself
-
what type of form element is to be used
-
all options listed if there are specific answers to be selected
-
limits on uploads or number of answers (if using file upload or custom composite elements)
-
-
any specific messages for the confirmation text
Step-by-step navigation
If you have a series of related forms, consider using a the step-by-step page template in the main CMS, and link or embed the form in each page.