Informationsmodellierung, Programmiertätigkeit und Programmiersprachen

Spezifikationen einer Modelliersprache, die Struktur einer Informationsmodellierung (beispielsweise die Verwendung von Templates) weisen von sich heraus keinen technischen Charakter auf. Diese Verfahren könnten für technische oder nicht-technsiche Anwendungen vorgenommen werden, daher kann allein durch Vorliegen dieser Verfahren nicht auf einen technischen Charakter geschlossen werden. Eigenschaften eines Informationsmodells, wie Wiederverwendbarkeit, Plattformunabhängigkeit oder Eignung zur Dokumentation, sind ebenfalls nicht technisch.

Allerdings kann der Fall vorliegen, dass ein Informationsmodell dazu genutzt wird, eine technische Aufgabe zu lösen. In diesem Fall kann es zumindest zum technischen Charakter der Erfindung beitragen.

Außerdem können Merkmale, wie die konkrete Speicherungsweise, z. B. unter Verwendung von relationaler Datenbanktechnik, ebenfalls zu einem technischen Beitrag führen.

Verfahren zur Softwareentwicklung weisen keinen technischen Charakter auf. Wird beispielsweise eine Steuerungsaufgabe von einem plattformunabhängigen Modell in ein plattformabhängiges Modell überführt, so wird keine technische Aufgabe gelöst, da die Steuerungsaufgabe unverändert bleibt.

Programmieren, also das Erstellen von Programmcode, ist eine gedankliche, nichttechnische Tätigkeit. Außerdem das Programmieren wird in Verbindung mit einer konkreten Anwendung dazu genutzt, um einen kausalen Beitrag zur Erzeugung einer technischen Wirkung zu leisten.

Die Erstellung oder Abänderung einer Programmiersprache löst aus sich heraus keine technische Aufgabe, da eine Programmiersprache für technische und nichttechnische Aufgaben genutzt werden kann. Auch wenn die Programmiersprache zu einer Erleichterung der gedanklichen Tätigkeit des Programmierers führt, liegt keine patentfähige Software vor.

Aus diesem Grund tragen Merkmale, die sich auf die Programmiersprache beziehen, nicht zum technischen Charakter bei. Beispielsweise führt die Bereitstellung grafischer Bausteine als Teil der Programmiersprache zu keinem technischen Charakter, falls die einzige Wirkung darin zu sehen ist, dass die Arbeit des Programmierers erleichtert wird.

Ebenfalls die Bereitstellung von Programmiermodulen, die zu kürzeren Programmzeiten führen, erzeugen keine technische Wirkung, weil die resultierende Kürzung davon abhängt, wie der Programmierer diese nutzt.

Andererseits stellt die automatische Verarbeitung von Maschinencode mittels Aufteilung beispielsweise in eine Befehlskette und eine separate Operandenkette und der Ersatz von sich widerholenden Befehlen durch Makrobefehle zur Erzeugung von optimiertem Code von reduzierter Speichergröße, einen technischen Beitrag dar, denn der Effekt beruht nicht auf der Tätigkeit des menschlichen Programmierers.

Programmierung und Informationsmodellierung