„Abstrakte Maschinen“

Der Präsident der Gesellschaft für Informatik meint, dass Software noch viel zu oft nicht nach den Regeln der Ingenieurswissenschaft geschrieben wird. Ein paar Patente könnten da nichts schaden

Interview PETER MÜHLBAUER

taz: Herr Mayr, Sie sind der Auffassung, Software werde mittlerweile nach industriellen Standards entworfen, entwickelt und daher „aus Fertigteilen zusammengestöpselt“, wie sie sagen. Die ehemalige Kunst der Programmierung sei zur Softwaretechnik geworden. Damit sei es nur folgerichtig, auch die Spielregeln der Technik auf Erfindungen im Bereich der Softwareentwicklung anzuwenden und Patente zu erteilen. Das Gleiche könnte man heute über Filmplots und Popmusik sagen. Sollte man mit der gleichen Begründung nicht auch Patente für diese beiden Bereiche fordern?

Heinrich C. Mayr: Es geht nicht um das Zusammenstöpseln von Bauteilen, sondern um die systematische Konstruktion zuverlässiger und qualitätsgesicherter Softwaresysteme. Die Softwaretechnik bietet hierzu einen umfangreichen Methodensatz an, der bezüglich des Software-Entwicklungsprozesses vom extreme programming über stark strukturierte Vorgehensmodelle bis zur komponentenorientierten Fertigung reicht. Leider werden aber die modernen Methoden der Softwaretechnik nur von wenigen Softwareherstellern systematisch eingesetzt, nach einer aktuellen Studie etwa von 30 Prozent. Das heißt, dass Software großflächig nicht nach ingenieurmäßigen Grundsätzen hergestellt wird. Die Folgen davon sind allseits bekannt. Also propagiere ich eine stärkere Besinnung auf die Ingenieursdisziplinen mit allen ihren Spielregeln – und dazu gehören auch Patente für Erfindungen. Auch wenn ich kein Fachmann für Filmplots oder Popmusik bin, glaube ich doch feststellen zu dürfen, dass es hier sehr wohl große Unterschiede gibt: einmal hinsichtlich der Komplexität. Softwareprodukte sind sicherlich um ein Vielfaches komplexer als Popsongs oder Filmplots. Zum anderen hinsichtlich der Qualität: Hier gelten gänzlich unterschiedliche Kriterien. Bei Software sind dies etwa Zuverlässigkeit, Skalierbarkeit, Usability und andere, aber nicht Kriterien betreffend die künstlerische Gestaltung hinsichtlich Inhalt und Ausführung. Und schließlich sind Filme und auf CD gepresste Songs fertige Produkte, die lediglich wiedergegeben werden, während Softwaresysteme Metaprodukte im Sinne abstrakter Maschinen sind, die etwas produzieren, wenn sie angeschaltet worden sind und arbeiten. Das von Donald Knuth geprägte Paradigma der „Kunst der Programmierung“ war ja in der Praxis dahingehend missverstanden worden, man dürfe sich bei der Softwareentwicklung beliebig austoben. Die erste so genannte Softwarekrise war die Folge davon, sodass man sich 1968 dazu gezwungen sah, das Paradigma des „Software Engineerings“ dagegenzusetzen. Wenn nun die Filmindustrie ingenieurmäßige Verfahren erfindet, mit denen Sie nach ihren Kriterien künstlerisch hoch qualitative Filme erzeugen kann, könnten diese Verfahren durchaus patentierbar sein, aber natürlich nicht die Filme selbst. Das will ich aber lieber den Experten dieser Branche überlassen.

Ihrer Ansicht nach steigt durch die effizientere Herstellung die Qualität von Softwareprodukten. Kritiker werfen jedoch ein, das sei nur einer der Marketingslogans, mit denen objektorientierte Programmierung unters Volk gestreut werden solle. Das Recycling von Programmkomponenten funktioniere eben nicht so einfach wie das Recycling von Müll.

Die objektorientierten Methoden haben durchaus ihre Meriten, sind aber sicher kein Allheilmittel. Auch trifft das Bild vom Recycling nicht ganz zu. Zunächst geht es ja einfach nur um die Wiederverwendung bewährter und qualitätsgesicherter Bausteine auf der Basis vollständiger und eindeutiger Spezifikationen. Die Wiederaufarbeitung beziehungsweise Anpassung an neue Aufgaben ist naturgemäß komplexer, auch bedarf es in diesem Bereich weiterer Forschung und Methodenentwicklung.

Sie sagten, dass die von Ihnen geschätzten Methoden der Softwareherstellung nur von wenigen Softwareherstellern systematisch eingesetzt werden. Wollen Sie das über den Weg des Patentrechts ändern?

Nein, nein. Das eine hat mit dem anderen nur implizit zu tun. Ich propagiere ja nur ein stärker ingenieurmäßiges Denken und Vorgehen.

Softwarepatente können dazu führen, dass ein Programmierer die Früchte jahrelanger Programmierarbeit nicht mehr sein Eigen nennen darf. Studien wie die „Acceptable Forms of Protection of Software IP“ zeigen, dass in den USA zehn Jahre nach Einführung von Softwarepatenten 84 Prozent der Programmierer kommerzieller Großunternehmen diese für ein untaugliches Mittel zum Schutz ihres geistigen Eigentums halten. Was entgegnen Sie dem Vorwurf der Enteignung durch Softwarepatente?

Patente sollten nur für herausragende Erfindungen erteilt werden, also der Sonderfall bleiben. Insofern sehe ich die Ergebnisse der täglichen Arbeit der meisten Programmiererinnen und Programmierer nicht betroffen, hier reicht der Urheberrechtsschutz völlig aus. Die Patentämter tragen damit eine hohe Verantwortung und müssen entsprechend kompetent besetzt sein.

Das sind sie aber nicht, wie Sie selbst zugeben, denn Sie fordern unter anderem auch, dass mehr Informatiker im Patentamt sitzen sollten. Ist in solch einer Situation die Legalisierung von Softwarepatenten der richtige Weg?

Natürlich muss man sich fragen, ob man gesetzliche Regelungen und Verordnungen treffen soll, die aus irgendwelchen Gründen nicht oder nur schwer umsetzbar sind. Das darf aber nicht dazu führen, dass man Sinnvolles generell nicht macht. Insofern wäre ich für einen Kompromiss in der Richtung zu haben, dass man mit der Patentierung erst beginnt, wenn die Voraussetzungen und Rahmenbedingungen dafür gegeben sind.

Sie haben sich auch dagegen ausgesprochen, so genannte einfache Standards zu patentieren und damit nur Monopole zu fördern. Nun tendiert aber grundsätzlich jede Software dazu, ein Standard oder ein Teil eines Standards zu werden. Wie lässt sich verhindern, dass ein neues Verfahren nach seiner Patentierung zum Standard wird? Und welche Mittel, um dies zu verhindern, finden sich in der Europäischen Softwarepatentrichtlinie?

Das muss man ja nicht verhindern. Wichtig ist nur, dass fair lizenziert wird und die Patentlaufzeiten den Bedürfnissen der Softwarebranche angepasst, also verkürzt werden. Das haben wir auch im Memorandum des Strategiekreises i-12 gefordert.

Peter.Muehlbauer@gmx.net