Method for distributing program components of a control program to at least two control devices which are distributed in a control system, comprising the following steps: a) producing at least two program modules (1, 2, 3), wherein each of the program modules is allocated at least one program component (12, 22, 32), a plurality of data interfaces (13, 14; 23, 24; 33, 34) and a performance parameter (11, 21, 31), wherein a requirement in respect of the performance capability of a control devices [sic] and/or a requirement in respect of the performance capability of data exchange channels between the control devices are defined with the performance parameter, these being required in order to be able to execute the program module; b) linking the program modules (1, 2, 3) to one another to form a control program, wherein data connections are defined between the data interfaces (13, 14; 23, 24; 33, 34); c) ascertaining the number and the performance capability of each distributed control devices [sic] (10, 20) which are available in the control system; d) ascertaining a number of possible distributions of the program modules (1, 2, 3) to the available control devices (10, 20), wherein the possible distributions are verified by a comparison between the requirement according to the performance parameter and the performance capability of the control devices; e) selecting a verified distribution of the program modules and corresponding distribution of the program components (12, 22, 32) thereof to the distributed control devices (10, 20); f) configuring data exchange channels between the distributed control devices (10, 20), wherein the defined data connections between the distributed program modules (1, 2, 3) are implemented accordingly. a) producing at least two program modules (1, 2, 3), wherein each of the program modules is allocated at least one program component (12, 22, 32), a plurality of data interfaces (13, 14; 23, 24; 33, 34) and a performance parameter (11, 21, 31), wherein a requirement in respect of the performance capability of a control devices [sic] and/or a requirement in respect of the performance capability of data exchange channels between the control devices are defined with the performance parameter, these being required in order to be able to execute the program module; b) linking the program modules (1, 2, 3) to one another to form a control program, wherein data connections are defined between the data interfaces (13, 14; 23, 24; 33, 34); c) ascertaining the number and the performance capability of each distributed control devices [sic] (10, 20) which are available in the control system; d) ascertaining a number of possible distributions of the program modules (1, 2, 3) to the available control devices (10, 20), wherein the possible distributions are verified by a comparison between the requirement according to the performance parameter and the performance capability of the control devices; e) selecting a verified distribution of the program modules and corresponding distribution of the program components (12, 22, 32) thereof to the distributed control devices (10, 20); f) configuring data exchange channels between the distributed control devices (10, 20), wherein the defined data connections between the distributed program modules (1, 2, 3) are implemented accordingly.