As here is the BCS suggestion for coding:
BCS national curriculum demands…
Design and write programs that include
o Sequencing: doing one step after another.
o Selection (if-then-else): doing either one thing or another.
o Repetition (Iterative loops or recursion).
o Language constructs that support abstraction: wrapping up a computation in a named abstraction, so that it can be re-used. (The most common form of abstraction is the notion of a “procedure” or “function” with parameters.)
o Some form of interaction with the program’s environment, such as input/output, or event-based programming.
Find and correct errors in their code.
Pretty much all of these are naturally a part of modelling.