  We present {\sc Venice}, an operator splitting algorithm to integrate a
numerical model on a hierarchy of timescales. {\sc Venice} allows a wide
variety of different physical processes operating a different scales to be
coupled on individual and adaptive time-steps. It therewith mediates the
development of complex multi-scale and multi-physics simulation environments
with a wide variety of independent components. The coupling between various
physical models and scales is dynamic, and realized through (Strang) operators
splitting using adaptive time steps. We demonstrate the functionality and
performance of this algorithm using astrophysical models of a stellar cluster,
first coupling gravitational dynamics and stellar evolution, then coupling
internal gravitational dynamics with dynamics within a galactic background
potential, and finally combining these models while also introducing dwarf
galaxy-like perturbers. These tests show numerical convergence for decreasing
coupling timescales, demonstrate how {\sc Venice} can improve the performance
of a simulation by shortening coupling timescales when appropriate, and provide
a case study of how {\sc Venice} can be used to gradually build up and tune a
complex multi-physics model. Although the examples couple complete numerical
models, {\sc Venice} can also be used to efficiently solve systems of stiff
differential equations.
