Most of the time, business processes are data-driven processes: tasks handle variables, and rules handle facts; you will not be asked to draw a BPMN diagram without handling variables, parameters, objects, and states coming from external systems, user input, and other sources. A majority of the jBPM constructs are useless without data. Let us clarify the basics:
Parameters: These are the data input coming from the user through the API. The user can pass parameters during process creation, at a human task completion, or into a service task for a Web service call.
Variables: Variables are objects living in the scope of a single process instance. Variables can be created directly inside a process instance construct (for example, Script Activity and Data Object) or can be mapped from/to other variables (Data Input/Output Mapping) defined in another scope, for example, from the main process to a subprocess, from the process to a human task, and so on.