A general approach towards the formulation of mathematical models is presented. Ideally, modelling proceeds from a system level towards a more and more detailed description of the subject. In this respect, mass and energy balances are formulated first followed by description of chemical equilibrium formulations, chemical kinetics and mass transfer phenomena, one after another. Real life examples illustrate the different "levels" of modelling. It is important to notice that every step of adding details to the model must be justified by both the problem definition and the available information about the physical phenomena. The lecture further provides an overview on available software tools. It shows the implementation of basic numerical tools in general programming environments. Finally, as an example for physical models, fluid dynamic models of fluidized bed reactors ("cold flow models") are discussed.