This is an examination appeal.
Claim 1 of the main request before the Board read (in English translation, based on the parallel U.S. application):
Computer-supported method of producing and/or executing programme code (software code), with at least one visualisation surface for the representation of establishable objects, by way of which information is inputted and outputted when executing the programme code, wherein objects of the visualisation surface are writingly and readingly accessed by means of the produced programme code, wherein programme components of the category run and function are provided for selection, characterised in that the components category run comprises the run (9), start (8,13), event (11) and end (10, 17) components and wherein the components category function comprises the function component (12) and instructions for the interconnection of programme components are predetermined, which regulate the call-up of the programme components and the serial or simultaneous execution thereof,
- such that programme components of the category run are always serially interconnected, thereby establishing that execution thereof takes place chronologically, so that during the execution of the programme only one run component is executed at a time;
- such that in the case of a branching the execution of the programme course is guided to one of a plurality of different run components by the establishment of a condition;
- such that the start of a run is effected by a start component and the start component is designed such that it calls up a run component or an end component and that the end component forms the conclusion of a run;
- such that the component type event (11) of the category run is called up by events which occur in the execution of the programme and in turn can call up a run component or a function component, and
- such that the function component is called up by a component type of the category run and tasks which are implemented parallel with the calling-up component are carried out by the function component, wherein the function component itself cannot call up a programme component,wherein a symbol (8-13) is allocated to each of the selected programme components and represented on a structure diagram representing the execution of the programme, wherein the symbols (8-13) are further automatically connected to each other by means of lines representing serial and parallel execution, taking account of the predetermined rules, thereby representing the programme structure and the execution of the programme.
Paragraph 4 of the decision has something to say on the contribution of programming to the solution of a technical problem:
*** Translation of the German original ***
 The invention is directed at a graphical programming language and environment designed to make a user capable of generating programme code without particular know-how and without having to learn a great deal. The Board is of the opinion that the effect consisting in reducing the mental effort of the user in programming is not a technical effect. This is all the more true as [this effect] is sought for all programmes, i.e. irrespective of the purpose which the programme is to serve.
[4.1] When programming – i.e. formulating programme code, “encoding” – a programmer has to choose the formulations that lead to the desired result from among the repertoire of a programming language. In this context the programming language defines, on the one hand which formulations are “well-shaped” (“wohlgeformt”) and, therefore, admissible at all (syntax), and, on the other hand, which “behaviour” (“Verhalten”) is attributed (zugeschrieben) to a programme (operational semantics). In particular cases the choice of the programming language can have an influence on how easily (and sometimes, if at all) the solution of a problem can be formulated as a programme.
[4.2] However, the Board is of the opinion that the action of programming is essentially a mental process – comparable to the verbalisation of a thought or the formulation of a mathematical fact in a calculation – which, to quote the Enlarged Board of appeal (G 3/08 [13.5.1]), lacks “further technical effects”. This holds true at least when and to the extent that, as in the present case, the action of programming does not serve in a causal way the realisation of a technical effect within the framework of a concrete application or environment.
[4.3] Therefore, the Board comes to the conclusion that the definition and provision (Bereitstellung) of a programming language or of means related to a programming language per se does not contribute to the solution of a technical problem.
NB: The Board also provided a headnote:
The action of programming – that is to say, formulating programme code – is a mental process, at least to the extent that it does not serve in a causal way the realisation of a technical effect within the framework of a concrete application or environment. Therefore, the definition and provision of a programming language per se does not contribute to the solution of a technical problem, even if the choice of the means of expression related to the programming language serves to reduce the mental effort of the programmer.
Should you wish to download the whole decision (in German), just click here.
The file wrapper can be found here.