In his book Poincaré's Legacies, Terence Tao gives the following definition of a dynamical system (p. xii):
[...] a discrete or continuous dynamical system [...] is simply a space $X$, together with a shift $T : X \to X$ (or family of shifts) acting on that space [...]
What do space and shift mean here? How is it different from a set $X$ and a function $X\to X$?
Added:
I suppose there must be a difference between space/shift and set/function since on page 215 Tao writes:
Any finite dynamical system is both isometric and equicontinuous (as one can see by using the discrete metric).
Yet if we take $X=\{a,b,c\}$ and $f$ defined by $f(a)=b, f(b)=a, f(c)=b$, then there is no metric on $X$ that would make $f$ an isometry. Since for any metric $d$ holds $$0<d(a,c) \neq d(f(a),f(c))=d(b,b)=0.$$
According to respective Scholarpedia entry, there is really almost no difference between your understanding of dynamical system (a set with a mapping rule) and the definition from the book. The only subtlety is that space is a set with some additional structure (e.g., metric space, topological space or measurable space). If you are considering some space and (family of) mapping(s) (shifts in Tao's terminology) respects this structure (e.g., it is isometric/continuous/measurable), this sometimes gives you much more insight in dynamics of system.