Programmieren ist ein mentaler Vorgang, dem es an weiteren technischen Überlegungen fehlt (T1539/09…

Programmierer aufgepasst! In der Entscheidung T 1539/09 (Programmiersystem/RENNER) vom 18. Juli 2013 hatte sich die Kammer 3.5.06 mit der Frage zu beschäftigen, inwieweit die Tätigkeit des Programmierens bzw. die Bereitstellung einer Programmiersprache/-umgebung ein patentfähiger Gegenstand sein kann:

Orientierungssatz

Die Tätigkeit des Programmierens — im Sinne des Formulierens von Programmcode — ist ein mentaler Vorgang, wenigstens soweit sie nicht im Rahmen einer konkreten Anwendung oder Umgebung in kausaler Weise der Erzielung einer technischen Wirkung dient. Die Definition und Bereitstellung einer Programmiersprache per se trägt daher nicht zur Lösung eines technischen Problems bei, selbst wenn die Wahl der programmiersprachlichen Ausdrucksmittel dazu dient, den mentalen Aufwand des Programmierers zu reduzieren (siehe Punkte 4–4.2).

Aus der Begründung

[2.] Die Anmeldung geht von der Beobachtung aus, dass das Erstellen von Programmen aufwändig und nur Spezialisten möglich ist. Die Aufgabe der Erfindung ist es somit, “Personen ohne besondere Vorkenntnisse … in die Lage zu versetzen, selbst eigene Computerprogramme … zu erstellen” (S. 2, 2. Abs., der ursprünglichen Anmeldung).

[2.1] Als Lösung schlägt die Anmeldung ein graphisches Programmiersystem vor. Das erfindungsgemäße System stellt unterschiedliche “Programmbausteine” bereit, die gemäß vorgegebenen Regeln miteinander verknüpft werden können (S. 2, 3. Abs. und S. 3, 2. Abs.). Den Programmbausteinen sind graphische Symbole zugeordnet (S. 5, 2. Abs.; Abb. 2), die der Anwender auf einer “Visualisierungsoberfläche” anordnen kann und die dort (den Regeln entsprechend) mittels geeigneter Linien zu einem “Strukturschaubild” verknüpft werden (Abb. 3). Jeder Programmbaustein eines Strukturschaubilds entspricht einem “Programmcodeabschnitt” und das gesamte Strukturschaubild so mit einem Programm (s. z. B. S. 15, Zn. 5–7; S. 17, 4. Abs. — S. 18, 1. Abs.). So kann der Anwender durch Manipulation graphischer Symbole auf dem Computerbildschirm Programmcode “auf Textbasis” definieren, ohne diesen direkt, also als Text (oder anspruchsgemäß: “textbasiert”), eingeben zu müssen. Wenn der Anwender aber einen Programmbaustein anwählt (bspw. durch Anklicken), so öffnet sich ein eine Anzeigeoberfläche (bspw. ein Fenster), in dem er den Programmcodeabschnitt dieses Bausteins bearbeiten kann.

[3.] Zunächst sei bemerkt, dass der Gegenstand der vorliegenden Ansprüche (beider Anträge) als ein computergestütztes Verfahren bzw. ein Computersystem eine Erfindung im Sinne des Artikels 52 (2,3) EPÜ darstellt (s. T 0258/03, Amtsbl. EPA 2004, 575; Leitsatz I). Die Kammer ist jedoch der Meinung, dass die beanspruchte Erfindung keine nicht-naheliegende “weitere”, also über die Verwendung eines Computers hinausgehende technische Wirkung aufweist, und somit ob keinen für die Zuerkennung einer erfinderischen Tätigkeit unablässigen nicht-naheliegenden technischen Beitrag zum Stand der Technik leistet, Artikel 56 EPÜ 1973.

[4.] Die Erfindung richtet sich auf eine graphische Programmsprache und -umgebung, die es einem Anwender ermöglichen soll, ohne großen Lernaufwand oder besondere Expertise Programmcode zu erzeugen. Die Wirkung, den mentalen Aufwand des Anwenders bei der Programmerstellung zu reduzieren, ist an sich nach Ansicht der Kammer keine technische. Das gilt umso mehr, als sie für alle Programme gleichermaßen angestrebt wird, also unabhängig davon, welchem Zweck das entwickelte Programm dienen soll.

[4.1] Beim Programmieren — im Sinne des Formulierens von Programmcode, des “Kodierens” — muss der Programmierer aus dem Repertoire einer Programmiersprache diejenigen Formulierungen wählen, die bei Ausführung des Programms zum gewünschten Ergebnis führen. Die Programmiersprache definiert dabei zum einen, welche Formulierungen überhaupt als “wohlgeformt” zu lässig sind (Syntax), und zum anderen, welches “Verhalten” einem Programm zugeschrieben wird (operationale Semantik). Die Wahl der Programmiersprache kann im Einzelfall Einfluss darauf haben, wie leicht (und manchmal ob überhaupt) sich die Lösung eines Problems als ein Programm formulieren lässt.

[4.2] Die Tätigkeit des Programmierens selbst jedoch ist nach Ansicht der Kammer ein im Wesentlichen mentaler Vorgang — vergleichbar der Verbalisierung eines Gedankens oder der Formulierung eines mathematischen Sachverhalts in einem Kalkül -, der es mit den Worten der Grossen Beschwerdekammer aus G 0003/08 (Amtsbl. EPA 2011, 10; Gründe 13.5.1) an “weiteren technischen Überlegungen” fehlt. Das gilt wenigstens dann und insoweit als, wie im vorliegenden Fall, die Tätigkeit des Programmierens nicht im Rahmen einer konkreten Anwendung oder Umgebung in kausaler Weise der Erzielung einer technischen Wirkung dient.

[4.3] Aus diesem Grund schließt die Kammer, dass die Definition und Bereitstellung einer Programmiersprache oder programmiersprachlicher Mittel per se nicht zur Lösung eines technischen Problems beiträgt.

[5.] Die Erfindung umfasst die Definition einer graphischen Programmiersprache, deren Programme Strukturschaubilder aus Symbolen und Linien sind, die entsprechend gewisser Regeln zusammengefügt sein müssen (Syntax). Teil dieser Definition ist die Festlegung, wie jeder einzelne Baustein auszuführen ist und wie sich daraus das Ablaufverhalten eines gesamten Programms ergibt (operationale Semantik). Insbesondere die Bereitstellung von Funktionsbausteinen zur parallelen Ausführung und die Festlegung, dass diese von Ablaufbausteinen aufgerufen werden aber ihrerseits keine Programmbausteine aufrufen können, ist nach Ansicht der Kammer ein Teil der definierten Programmiersprache.

[5.1] In Ansprüchen 1 und 10 des Hauptantrags nicht Teil der Programmsprache sind nur die Bereitstellung einer “Visualisierungsoberfläche” sowie dass die “Symbole … unter Berücksichtigung der vorgegebenen Regeln automatisch mittels Linien zur Darstellung der seriellen oder parallelen Abarbeitung mit einander verbunden werden” (Hervorhebung durch die Kammer). Die Kammer rechnet diese Merkmale der Programmierumgebung zu, die den Anwender dabei unterstützt, konkrete Programme einer gegebenen Programmiersprache zu erzeugen.

[5.2] Visualisierungsoberflächen sind ein elementarer Bestandteil von Programmierumgebungen aller Art. Darüber hinaus ist es ist eine für den Fachmann allgemein bekannte Tatsache, dass der mechanische Vorgang des Programmierens, also das Erzeugen eines konkreten Programms, aufwändig und fehlerhaft sein kann. Das gilt gleichermaßen für text-basierte wie für graphische Programme, also unabhängig davon, ob ein Programmtext “eingetippt” werden muss oder ob graphische Programmbausteine auf dem Bildschirm angeordnet werden müssen. Die Kammer hält es daher für naheliegend — wie im übrigen auch für grundsätzlich bekannt — dass Entwicklungsumgebungen dem Programmierer, soweit möglich, mechanische Aufgaben bei der Pro grammierung abnehmen sollen. Im konkreten Fall hält es die Kammer somit auch für naheliegend, dem Benutzer die manuelle Eingabe von Verbindungslinien zwischen Symbolen abzunehmen und diese automatisch vorzunehmen.

[5.3] Daher kommt die Kammer zu dem Ergebnis, dass der Gegenstand der Anspruchs 1 gemäß Hauptantrag keine erfinderische Tätigkeit aufweist, Artikel 56 EPÜ 1973.

Link zur Entscheidung: T 1539/09 (Programmiersystem/RENNER)

Leave a Reply