Chronological order of execution

Hey everyone,

Im currently trying to figure out how exactly the Camunda engine behaves without implementing each corner case. The current case follows this simple scheme: StartEvent–>ServiceTask–>EndEvent.
For the ServiceTask I have a regular DelegateExpression as implementation as well as an execution listener (start) and Input/Output mapping. The question I have is, what exactly the chronological order of execution is. In my understanding, the mapping would create a local variable, the execution listener would execute and lastly the main delegate would trigger.

Can someone confirm this behavior or correct me?

Cheers
Sascha