How does one calculate the truncation error of a given scheme?

For example, consider the heat equation:

 \displaystyle \frac{\partial u}{\partial t} = \alpha \frac{\partial^2 u}{\partial x^2}

A finite difference scheme for this is the DuFort-Frankel scheme, which gives:

 \displaystyle \frac{u_j^{n+1} - u_j^{n-1}}{2\Delta t} = \frac{\alpha}{(\Delta x)^2}\big(u_{j+1}^n - u_j^{n+1} - u_j^{n-1} + u_{j-1}^n \big) .

How would I then calculate the truncation error of this scheme?

I know that, for the forward/backward/central difference methods of discretisation, you can get the truncation error simply from considering the 'extra' terns in the Taylor Expansions that you use to derive the schemes.

However, I don't know how the above scheme was derived, so how does one proceed?

I know from a textbook that the leading terms of the truncation error are, in fact:

 \displaystyle \frac{\alpha}{12} \frac{\partial^4 u}{\partial x^4}\bigg|_{n,j}(\Delta x)^2 - \alpha \frac{\partial^2 u}{\partial t^2} \bigg|_{n,j}\bigg( \frac{\Delta t}{\Delta x}\bigg)^2 - \frac{1}{6} \frac{\partial^3 u}{\partial t^3} \bigg|_{n,j} (\Delta t)^2