Vorwort: Die Auswahl der Vertragsgrundlagen für Standardverträge richtet sich nach § 307 Abs.2 S.1 BGB nach dem gesetzlichen Leitbild. § 307 Abs.2 S.1 BGB besagt sinngemäß, daß Standardverträge mit “wesentlichen Grundgedanken” der jeweiligen gesetzlichen Regelung vereinbar sein müssen. Der BGH hat in zwei jüngeren Entscheidungen dargelegt, daß im Bereich der Lieferung und Erstellung von beweglichen Sachen allein Kaufrecht zur Anwendung kommen soll. Diese Entscheidungen halten sich eng an den Wortlaut einer verfehlten gesetzgeberischen Regelung, dem § 651 BGB. Ich habe an anderer Stelle dargelegt, warum die gesetzgeberische Entscheidung fachlich falsch ist.  Der BGH konstatiert den Kritikern zwar, gute Argumente zu besitzen, weicht aber von dem gesetzgeberischen Duktus nicht ab. Deshalb ist zunächst einmal davon auszugehen, daß für die  Erstellung und Lieferung von beweglichen Sachen – und dazu gehört auch Software – Kaufrecht anzuwenden ist. Die mit dieser grundsätzlichen Entscheidung einhergehenden Probleme sind auch dem juristischen Laien schnell zu verdeutlichen. Im Kaufrecht geht es um die Regelung der Übereignung und Besitzverschaffung einer bereits fertiggestellten Sache. Das Werkvertragsrecht umfasst darüber hinaus den Bereich der Herstellung, der dem Kaufrecht fremd ist. Das Kaufrecht kennt keine Planung, keine Mitwirkungspflichten, keine Abnahmeverfahren, kein Kündigungsrecht zugunsten des Auftraggebers. Es befasst sich nicht mit dem Prozeß der Erstellung einer Sache, weil es das nicht muß.

Für den Bereich der Programmierung von Software sollte – und insoweit besteht Einigkeit zwischen Gerichten und Anwälten – grundsätzlich Werkvertragsrecht anwendbar sein. Wo der Prozeß der Planung und Herstellung eine Rolle für den Interessenausgleich zwischen den Parteien spielt, muß es Regelungen geben, die diesen Interessenausgleich realisieren. Das Das Kaufrecht schafft das nicht. Schlimmer noch: Standardverträge, deren Vertragsgrundlagen auf dem Werkvertragsrecht basieren, die also z.B. eine Abnahme, Mitwirkungspflichten des Auftraggebers etc. regeln, weichen immer von den grundsätzlichen Vorgaben des Kaufvertragsrechts ab und können auf dem Weg über § 307 Abs.2 S.1 BGB dazu führen, daß die Klauseln unwirksam sind. Der BGH ist in seiner Entscheidung vom 23.7.2009 genau diesen Weg gegangen.

Zu beachten ist auch, daß die Gerichte – zum Teil selbst der BGH (die Entscheidung des BGH vom 04.03.2010 deutet es an) diesen Weg häufig nicht gehen wollen. Das OLG München hat in einer Entscheidung vom 23.12.2009 (die Dank dem Kollegen Witte doch wenigstens in Teilen publiziert wurde) den eigentlich einschlägigen § 651 BGB nicht für anwendbar erklärt. Maßgeblicher Topos ist die Fragestellung, ob der Schwerpunkt der Leistung des Vertrags auf den Planungs- und Erstellungsleistungen oder auf der Lieferung der neuen Software liegt.

Dabei gilt als Faustregel, die sich aktuell aus der Rechtsprechung kristalisiert: Je mehr der Schwerpunkt der Leistung des Auftragnehmers in der Verwirklichung einer vom Auftraggeber vorgegebenen Planung liegt, desto eher ist Kaufrecht anwendbar.

Agiles Programmieren zeichnet sich aber dadurch aus, daß eben nicht alle Funktionen und Eigenschaften von Beginn an festgelegt werden, sondern dadurch, daß der Kunde nach der Evaluierung eines oder mehrerer Varianten der Software gemeinsam mit dem Auftragnehmer weitere Verbesserungen vornimmt. Dieser Weg der gemeinsamen Verbesserung ist juristisch im Bereich des Dienstvertragsrecht angesiedelt. Das Problem für den Kunden im Bereich des Dienstvertragsrechts besteht darin, daß der Kunde für einen bestimmten Preis kein vorher bestimmtes Produkt erhält.Er kauft vielleicht nicht die “Katze im Sack”, aber er weiß nicht genau, was er bekommt. Aus der Sicht des Kunden geht es darum, bestimmte Funktionen und Eigenschaften mit der Software zu erhalten. Dann ist Werkvertragsrecht anwendbar.

Die Lösung dieses gordischen Knotens kann meines Erachtens nur so aussehen, daß man in Standardverträgen davon ausgeht, Werkvertragsrecht und Dienstvertragsrecht nebeneinander anzuwenden. Bestimmte Mindestanforderungen der Software im Hinblick auf Funktion und Eigenschaft, die innerhalb einer vorab definierten Systemumgebung zu erzielen sind, müssen vorab festgelegt werden. Werden diese Eigenschaften nicht erreicht, sind Maßnahmen  für die Risikoverteilung, Fehlerbehebung und auch Rückabwicklung vorzusehen. Geht es um Customizing, wird Kaufrecht neben dem Dienstvertragsrecht anwendbar sein.

Weitere Funktionen und Eigenschaften sind mit dem Kunden in einem Prozeß neu zu erfinden oder zu verbessern, bis das Zeit- oder Kostenbudget aufgebraucht ist. Auch für diesen Teil wird für den Fall, daß der Kunde nicht zufrieden ist, ein Maßnahmekatalog vorzusehen sein, der einen angemessenen Interessenausgleich regelt. Nur wird dieser Katalog keine Rückabwicklungsmöglichkeiten für den Fall des Nichterreichens vorsehen können. Genau dies entspricht dem Dienstvertragsrecht.