IT-Projekte erfolgreich abschließen: worauf es bei Tests und Abnahme ankommt.

Der Begriff der Abnahme in ist für die meisten Auftragnehmer ein rotes Tuch, denn Abnahme impliziert einen Werkvertrag und damit weitergehende Verpflichtungen als sie der Auftragnehmer gerne eingehen möchte. Ein Vertrag wird allerdings nicht dadurch zum Dienstvertrag, dass man die ungeliebte Abnahme einfach unter den Teppich kehrt. Außerdem braucht jedes Projekt vor Produktivsetzung der Software einen Prozess, in dem festgestellt wird, ob die Software funktioniert oder nicht. Es hilft also weder für die rechtliche Einordnung des Vertrages noch für den Erfolg des Projekts, die Regelungen zur Abnahme einfach zu ignorieren.

Letztlich kommt in der Praxis niemand um die Abnahme herum. Es ist wesentlich besser, ein vernünftiges Abnahmeprozedere zu regeln als hierzu im Vertrag zu schweigen. Hinzu kommt, dass die Abnahme auch für den Auftragnehmer zweckmäßig ist: er will wissen, ob seine Leistung grundsätzlich akzeptiert wird. Sein Schadensrisiko kann durch eine Inbetriebnahme ohne formelle Abnahme erheblich erhöht sein. Die Abnahme dient schließlich auch dazu, Fehler zu entdecken und zu beseitigen. Was zu tun ist, wenn IT-Projekte scheitern und welche Gestaltungsmöglichkeiten es im Worst Case gibt, habe ich meinen Artikel IT-Abnahme beschrieben.

Abnahmen brauchen Zeit
Die Vertragspartner können frei darüber bestimmen, was getestet und abgenommen werden soll ist und wie die Tests durchzuführen sind. Konkrete Vorgaben gibt es dazu keine.

Bei größeren Projekten können Abnahmetests nicht an einem Tag erfolgen; die Leistungen sind so komplex und die möglichen Auswirkungen auf den Geschäftsbetrieb derartig vielschichtig, dass ein längerer Zeitraum zur Prüfung des Systems notwendig ist. Der Aufwand für Tests (vor und bei Abnahme) übersteigt den Aufwand für Entwicklung und Realisierung im Regelfall erheblich. Insbesondere viele Auftraggeber sind sich dessen nicht bewusst.

Genaue Kriterien vereinbaren
Gegenstand einer Abnahme können alle Leistungen sein, die der Auftragnehmer erbracht hat. Dazu zählen
• Hardware,
• Software,
• Dokumentation und
• Datenbestand.

Sinnvollerweise werden meist folgende Bereiche einer Abnahme geregelt:
• Vorbereitungsmaßnahmen des Anbieters vor Bereitstellung zur Abnahme durch den Anbieter;
• Bereitstellung zur Abnahme durch den Anbieter;
• Abnahmeprüfung/Abnahmetest nebst dazugehörigem Verfahren:
• Mängelkategorien,
• Vorbereitungen,
• Ablauf,
• Dauer,
• Abnahmeprotokoll;
• Wiederholungen der Abnahme und etwaige Folgen.

Grundlage einer Abnahme müssen von Auftragnehmer und Auftraggeber abgestimmte Abnahmespezifikationen sein. Aus ihnen ergeben sich die Anforderungen an die Leistungen und Funktionen des geschuldeten Systems. Die Abnahmespezifikationen sollten im Regel- und Idealfall auf Pflichtenheft und Feinspezifikation beruhen und die darin enthaltenen Forderungen noch weiter detaillieren.

Die gesetzlichen Grundlagen fordern eine möglichst detaillierte und eindeutige Leistungsbeschreibung. Dabei geht es nicht um Quantität, sondern um die sorgfältige und möglichst vollständige Darstellung dessen, was der Outsourcing-Dienstleister zu leisten hat. Mehr zum Thema Leistungsbeschreibung finden Sie in meinen Artikel zum IT-Outsourcing.

Auf Basis der Abnahmespezifikationen sollten von den Vertragspartnern Testprozeduren entworfen werden, die beschreiben, auf welche Weise die einzelnen Funktionalitäten des Systems getestet werden. Ein solcher Softwaretest ist eine analytische, dynamische Maßnahme zur Qualitätssicherung von Software.

Risiken mit Tests minimieren
Ob eine Software in allen Fällen korrekt funktioniert, kann durch Testen (außer in trivialen Fällen) nicht bewiesen werden. Dafür sind die Programme in der Regel viel zu komplex. Ein Test wird nie alle Kombinationen aller Varianten abdecken können. Mit anderen Worten: mit (Abnahme-) Tests lässt sich das Risiko schwerwiegender Fehler im produktiven Einsatz minimieren, aber nicht völlig ausschließen.

Soweit Tests die Mitwirkung und Beistellung des Auftraggebers erfordern, sollten die vertraglichen Regelungen dazu eine Verpflichtung umfassen. Auch große Auftraggeber verfügen meist über knappe Personalressourcen und müssen die Möglichkeit besitzen, Personal einzuplanen.

Testplan erstellen
Ein Testkonzept oder Testleitfaden beschreibt die vorgegebenen Mindestanforderungen an die Testvorgehensweise, die Zuständigkeiten, der Verantwortlichkeiten und Abhängigkeiten für das konkrete IT-Projekt. Weiterhin werden im Testkonzept die Rahmenbedingungen (z.B. Testumgebung), Ziele des Testvorgehens, die zu verwendenden Testmethoden und Testverfahren sowie der Umfang der durchzuführenden Tests festgelegt.

Bei größeren Projekten sollten die Vertragspartner einen Testplan erstellen, der auch die benötigten Ressourcen (wie Räume, Server, Arbeitsplätze, Mitarbeiter), die durchzuführenden Tests und die damit betrauten Mitarbeiter, Zeitraum und Termine festlegt. Die Vertragspartner müssen folglich Absprachen zu folgen-den Themen treffen:
• Wird ein Test-Manager benötigt; falls ja, wer ist hierfür geeignet?
• Wer führt die Tests durch?
• Was ist die (abgestimmte) Abnahmespezifikation? Wer erstellt diese und wann?
• Testplan (Beginn und Ende).
• Festlegung der zu testenden Objekte, Testfälle.
• Festlegung der „Akzeptanz-Prozedur“, d.h. der Fehlerklassen bzw. Mängelkategorien.
• Wer stellt die Testumgebung? Wann und mit welcher Ausstattung?
• Was für Tools werden für die Tests benötigt? Soll ein Fehlererfassungsystem eingesetzt werden und wenn ja, welches?

Mängelkategorien festlegen
Manche Streitigkeiten lassen sich in der Praxis durch die vertragliche Festlegung von Mängelkategorien/ Fehlerklassen und deren Auswirkung auf die Abnahmefähigkeit verhindern. Darunter fallen Kategorien wie „abnahmeprüfungsverhindernd“, „abnahmeverhindernd“, „abnahmebehindernd“, „ohne Auswirkung auf die Abnahme“ und „im Rahmen der Sach- und Rechtsmängelhaftung zu beheben“. Sinnvollerweise sollten neben einer allgemeinen Definition der einzelnen Kategorie/ Klasse auch projektspezifische Beispiele genannt werden, um die Einteilung der auftretenden Mängel zu erleichtern.

Wann ist eine Abnahme erfolgreich?
Vertragliche Regelungen stellen nahezu ausschließlich auf die maximale Anzahl Mängel ab. Theoretisch ist die Vertragsgemäßheit dann gegeben, wenn sämtliche Anforderungen des Auftraggebers umgesetzt wurden. Die Überprüfung, ob dies tatsächlich der Fall ist, wird aber in der Regel dadurch erschwert, dass die Anforderungen gerade nicht über den erforderlichen Detaillierungsgrad verfügen. Eine Abnahme unter dem Vorbehalt der Beseitigung bestimmter Mängel dürfte dann der wirtschaftlichere Weg sein als die Verweigerung der Abnahme wegen einer Überschreitung der Anzahl Mängel in einer bestimmten Kategorie. Anders sieht die Lage dann aus, wenn der Auftraggeber mit dem Projektstatus ohnehin unzufrieden ist und Gründe für die Verweigerung der Abnahme sucht. Als Anbieter hat man an diesem Punkt meist schlechte Karten. Es stellt sich die Frage, ob als Voraussetzungen für die Abnahme nicht andere oder zumindest zusätzliche Kriterien festgelegt werden können. Neben der Mängelanzahl könnte etwa zusätzlich darauf abgestellt werden, wie hoch die Anzahl erfolgreich abgeschlossenen Testfälle ist.

Gestaltungsfreiheit nutzen
Wie umfangreich die Abnahmeregelung gefasst wird, hängt meist von der Komplexität des Projekts und – leider – auch von der Zeit der Vertragspartner ab, sich diesem Themenkomplex zu widmen. Beide Vertragspartner sollten ihr Augenmerk auf eine gute Vorbereitung legen und dafür sorgen, dass ausreichend Zeit und genügend Ressourcen bei der Abnahme zur Verfügung stehen. Nur so lässt sich ein Projekt erfolgreich abschließen. Wir beraten Auftraggeber und IT-Dienstleister bei der Projektvorbereitung und helfen ihnen dabei, die relevanten Abnahme-Themen zu identifizieren und zu regeln. Außerdem unterstützen wir Sie bei konkreten Fragen zur Umsetzung des Projekts.

Michaela Witzel, LL.M. (Fordham University School of Law), Fachanwältin für IT-Recht
witzel@web-partner.de