Camunda BPM Start Form/User Task Fields Properties

I am working on a project, in which,I have to build html form to be displayed to user, so he/she could start a process or complete a task. And the generated forms may require data from database different from BPM database. PS:I’m using Camunda with spring boot starter. Based on my understanding of Camunda BPM, I’ve got these points:

  1. Must add properties for form fields, to know some additional information to build the correct datasource.Capture|233x500
  2. query process definition/usertask to get form variables with extra properties.
  3. then create suitable controls (inputs) in html using javascript (jquery, formio…). 4.handle the form submission in the server side and pass parameters to Camunda (start a process, or complete a task).

my questions are:

  1. Have I got it right? if yes, please help me by share an example or a code snippet.
  2. Is there another better way to do so? if yes, please explain.

Best Regards