Option 1. If you're building the form in InfoPath, you can check if all the questions are answered and set a column equal to a specific value that a workflow would either check and end the workflow or check and continue into the meat of the workflow. (Status: Begin Process vs Status: Form Closed)
Option 2. In the workflow, check that all columns have values and if they don't, skip into the end of the workflow.
Option 1 is better as you should be checking values at the form level. It's easier to change that than it is the workflow. If the fields are required, throw an error to the user that requires they fill out the form in order for the values to submit.