Heisses Eisen Software-Vertrag

Ein kluger Software-Entwicklungsvertrag ist der rote Faden eines Projekts.

Artikel erschienen in IT Reseller 2004/07

   

Bei der speziell für einen Kunden entwickelten Software handelt es sich um «Software nach Mass». Die Entwicklung erfolgt darum im wesentlichen nach den Regeln des Werkvertrags (Art. 363 ff. des Schweizerischen Obligationenrechts, OR, SR 220, www.admin.ch/ch/d/
sr/220/index.html).

Spezifikation und Abnahme der Software

Eines der grössten Mankos, das in der Praxis bei Software-Entwicklungsverträgen beobachtet werden kann, ist die Spezifikation der Software. Die Spezifikation erfolgt meistens durch die Beschreibung der Funktionen, die eine Software aufweisen muss.
Dabei ist die Spezifikation enorm wichtig, um später im Rahmen der Abnahme der Software beurteilen zu können, ob das Software-Unternehmen liefert, was der Kunde bestellt hat. Ist die Spezifikation ungenügend, kommt es regelmässig zu Auseinandersetzungen zwischen dem Kunden und dem Software-Unternehmen.

Projektmanagement

Teil des Software-Entwicklungsvertrages ist auch das Projektmanagement. Dazu gehört insbesondere eine Projektorganisation (Projektleiter und ihre Stellvertreter auf Seiten des Unternehmens und des Kunden) sowie die Terminierung von Projektschritten (Milestones, evtl. mit Zahlungsplan). Die Projektorganisation regelt die Verantwortlichkeiten, insbesondere für Projektänderungen (vgl. nachfolgend «Change Management»).
Die Milestones ermöglichen sowohl dem Unternehmen, wie dem Kunden die laufende Prüfung des Fortschritts des Projekts und schützen ersteres durch die rechtzeitige Feststellung von Verzögerungen vor den heute vermehrt vereinbarten Konventionalstrafen.

Mitwirkungspflichten des Kunden

Bei der individuellen Entwicklung von Software ist in der Regel die Mitwirkung des Kunden von grosser Bedeutung. Zum Beispiel gewährt dieser Einblick in seine Unternehmensabläufe und Zugang zu seinem Informatiksystem, unterstützt das Projekt mit eigenem Personal, stellt dem Software-Unternehmen bei Bedarf vor Ort die notwendige Infrastruktur zur Verfügung und ermöglicht schliesslich den Test der Software mit eigenen, echten Daten.

Change Management

Bei Informatikprojekten, wie der Software-Entwicklung, treten regelmässig unvorhergesehene Probleme auf, oder der Kunde wünscht im Laufe des Projekts neue oder andere Funktionen bei der Software. Dies führt oft zu Projektänderungen mit Kostenfolgen.
Damit wird es notwendig, dass sich das Unternehmen und der Kunde über ein vom Projektplan abweichendes Vorgehen einigen. Das Verfahren zur Bewältigung der veränderten Verhältnisse, das sogenannte Change Management, wird mit Vorteil bereits im Rahmen des Software-Entwicklungsvertrages geregelt.

Geistiges Eigentum

An der Software erhält der Kunde entweder ein Nutzungsrecht (Lizenz) oder die Software (Source Code) und die daran bestehenden Vermögensrechte werden ihm vollständig übertragen. Wichtig ist, dass im Software-Entwicklungsvertrag explizit geregelt wird, welche Rechte in welchem Umfang an den Kunden übergehen.
Dabei muss das Unternehmen darauf achten, dass es dem Kunden keine Rechte exklusiv lizenziert oder definitiv überträgt, die es auch in Zukunft z.B. in anderen Projekten wieder verwenden will. Bei gemeinsamen Entwicklungen vom Unternehmen und vom Kunden muss zudem beachtet werden, dass möglicherweise Miteigentum an den daraus entstehenden Rechten besteht.

Eskalationsverfahren

Bei einem Informatikprojekt sitzen das Unternehmen und der Kunde nach Projektstart «im gleichen Boot». Auseinandersetzungen können dabei auf beiden Seiten zu unabsehbaren Schäden führen. Aus diesem Grund ist es bei Informatikprojekten besonders wichtig, eine Art der Streitschlichtung zu bestimmen, die Auseinandersetzungen frühzeitig und schnell löst und wenn immer möglich einen gerichtlichen Streit verhindert.
Dabei wird in der Regel ein dreistufiges Verfahren vorgesehen. Ein Konflikt wird zuerst zwischen den Projektleitern der Parteien diskutiert. Können sich diese nicht einigen, wird auf der Stufe Geschäftsleitung eine Lösung gesucht. Fruchtet auch das nicht, kann vorgesehen werden, einen externen Vermittler (Mediator) beizuziehen. Als letztes Mittel («ultima ratio») kann zudem ein Schiedsgericht vereinbart werden.

Vertragsredaktion

Einen Überblick über die bei Software-Entwicklungsverträgen zu regelnde Materie kann man sich mit den vom Branchenverband Swico (www.swico.ch) herausgegebenen Muster-Verträgen verschaffen. Die Swico-Muster-Verträge müssen jedoch unbedingt dem konkreten Geschäftsverhältnis angepasst werden. Diesbezüglich empfiehlt sich, je nach Wichtigkeit des Projekts einen im Informatikrecht spezialisierten Rechtsanwalt beizuziehen.
Sinnvoll ist es auch, einmal einen unternehmenseigenen Software-Entwicklungsvertrag durch einen Rechtsanwalt redigieren zu lassen, der dann in leicht modifizierter Form immer wieder verwendet werden kann.

Die wichtigsten Punkte eines Software-Entwicklungsvertrages

Spezifikation der Software (inkl. Dokumentation, Schulung)
Vergütung, Zahlungsmodalitäten
Projektmanagement (Projektorganisation, Milestones)
Zulassung von Freelancern?
Mitwirkungspflichten des Kunden
Change Management
Abnahme
Geistiges Eigentum
Gewährleistung, Haftung
Eskalationsverfahren
Software Escrow Aggreement (Hinterlegung des Source Codes bei Treuhänder/Notar/Rechtsanwalt)
Vertraulichkeit, Datenschutz
Anstellungsverzicht
Integrierende Bestandteile (Anhang)
Anwendbares Recht und Gerichtsstand

Der Autor


Ueli Grüter, LL.M., Rechtsanwalt, ist Partner bei Grüter Schneider & Partner, Zürich/Luzern (www.gsplaw.ch) sowie Dozent für Technologierecht an der Fachhochschule Zentralschweiz (www.fhz.ch) und beim Institut für Sichere Softwaresysteme (ISIS, www.hta.fhz.ch/isis).


Artikel kommentieren
Kommentare werden vor der Freischaltung durch die Redaktion geprüft.

Anti-Spam-Frage: Welche Farbe hatte Rotkäppchens Kappe?
GOLD SPONSOREN
SPONSOREN & PARTNER