Anlage 15
zum Rahmenvertrag zwischen der Helaba (nachfolgend „Auftraggeber“ genannt) und [Bezeichnung des Auftragnehmers] (nachfolgend „Auftragnehmer“ genannt) vom TT.MM.JJJJ
Softwareerstellung und -weiterentwicklung
Helaba Landesbank Hessen-Thüringen Girozentrale Neue Mainzer Straße 52-58 60311 Frankfurt
Inhaltsverzeichnis
5 Nutzungsrechte an der Softwareerstellung 4
6 Verwendung von Standards des Auftraggebers 4
8 Abnahme- und Freigabeprozesse 5
9 Entwicklungsumgebung und -verfahren 6
10 Erstellung und Pflege der Software-Stückliste (SBOM) 6
Einleitung
Diese Anlage regelt die Bedingungen für die Erbringung von Softwareentwicklungsleistungen zwischen dem Auftraggeber und dem Auftragnehmer.
Ziel ist es, eine klare und strukturierte Zusammenarbeit zu gewährleisten, die einen hohen Qualitäts- und Sicherheitsstandard sicherstellt und die effiziente Entwicklung, Pflege und Nutzung der Software durch den Auftraggeber ermöglicht.
Beide Parteien verpflichten sich zur Einhaltung der vereinbarten Bedingungen und zur transparenten Kommunikation während des gesamten Entwicklungsprozesses.
Hauptleistungen
- Der Auftragnehmer erbringt werkvertragliche Leistungen gemäß §§ 631–651 BGB. Der Auftragnehmer verpflichtet sich zur Herstellung des Leistungsgegenstandes, der Auftraggeber zur Zahlung der vereinbarten Vergütung.
- Gegenstand dieser Leistungsbeschreibung ist die Planung, Erstellung bzw. Weiterentwicklung, Lieferung und Einführung von individuellen DV-Programmen in Form von Quell- und Objektprogrammen inklusive Testdurchführung, Versionierung und Dokumentation.
- Der Auftragnehmer trägt die Erfolgsverantwortung für die vereinbarten Leistungen. Er haftet für Leistungen seiner Subunternehmer und seiner Zulieferer wie für seine eigenen Leistungen.
- Der Auftragnehmer erbringt seine Leistungen nach dem aktuellen Stand der Technik und nach zertifizierten Prozessen des Qualitätsstandards ISO 9001 oder eines vergleichbaren Qualitätsstandards.
- Soweit nicht ausdrücklich anders vereinbart, trägt der Auftragnehmer die finanzielle und operative Verantwortung für die Beschaffung und den Betrieb sämtlicher Hardware, Software, Materialien, Werkzeuge, Fremdleistungen und sonstiger Hilfsmittel, die zur Erbringung der vereinbarten Leistung erforderlich sind.
- Jeder Entwicklungsauftrag und die dazugehörige fachliche und technische Beschreibung werden mit Unterzeichnung / Beauftragung Bestandteil dieser Leistungsbeschreibung.
- Das Workflowtool für die Abwicklung von Entwicklungsleistungen ist das Anforderungstool des Auftraggebers (derzeit Requirements Management User System (REMUS)). Dies umfasst alle Schritte von der Anforderungsdefinition, der Angebotsabgabe und der Beauftragung bis hin zur Abnahme und Produktivsetzung.
Hinweispflicht
- Erkennt der Auftragnehmer, dass die Leistungsanforderung oder Anweisungen des Auftraggebers fehlerhaft, unvollständig, nicht eindeutig oder objektiv nicht ausführbar sind, muss er dem Auftraggeber diesen Umstand sowie die erkennbaren Folgen unverzüglich schriftlich mitteilen.
- Der Auftraggeber hat daraufhin unverzüglich über eine Änderung der Leistungsanforderung oder ihrer Anweisungen zu entscheiden.
- Ausführungsschwierigkeiten und Hindernisse bei der Realisierung muss der Auftragnehmer unmittelbar nach Kenntniserlangung dem Auftraggeber mitteilen.
- Unterlässt der Auftragnehmer die Mitteilung, haftet er für die daraus resultierenden Schäden.
Änderungsverlangen
- Änderungsverlangen bedeuten eine Abweichung oder Erweiterung des beauftragten Entwicklungsumfangs.
- Änderungsverlangen können sowohl vom Auftraggeber als auch vom Auftragnehmer gestellt werden.
- Ein Änderungsverlangen ist schriftlich als neue Anforderung im Anforderungstool des Auftraggebers einzureichen und hat eine Beschreibung der Leistungsänderung (Abweichung oder Erweiterung), den Ansprechpartner und die Dringlichkeit zu enthalten.
- Beim einem vom Auftraggeber eingebrachten Änderungsverlangen hat der Auftragnehmer innerhalb einer angemessenen Frist (max. 2 Wochen) zu den Änderungswünschen schriftlich Stellung zu nehmen.
- Die Auswirkungen hinsichtlich Aufwands und Terminen werden dokumentiert. Bei Änderungsverlangen, die durch den Auftragnehmer eingebracht werden, sind diese Angaben bereits enthalten.
- Die Genehmigung oder Ablehnung des Änderungsverlangens erfolgt durch den Auftraggeber.
Nutzungsrechte an der Softwareerstellung
Die Nutzungsrechte an den Ergebnissen der Softwareentwicklungsleistungen sind im Rahmenvertrag, Ziffer 4 Nutzungsrechte, geregelt.
Verwendung von Standards des Auftraggebers
- Sofern der Auftraggeber dem Auftragnehmer seine Entwicklungs-, Test- und Qualitätsstandards für die Softwareentwicklung zur Verfügung stellt, gewährleistet der Auftragnehmer, dass alle Softwareentwicklungsaktivitäten gemäß den vom Auftraggeber zur Verfügung gestellten Standards durchgeführt werden.
- Der Auftragnehmer haftet für alle Schäden, die durch die Nichteinhaltung dieser Standards entstehen.
Sicherheitsanforderungen
- Der Auftragnehmer verpflichtet sich, während des gesamten Entwicklungsprozesses regelmäßige und systematische Sicherheitsüberprüfungen durchzuführen, um sicherzustellen, dass die entwickelte Software frei von Malware und Schwachstellen ist. Diese Prüfungen umfassen, sind aber nicht beschränkt auf:
- Code-Reviews: Durchführung manueller und automatisierter Code-Reviews, um sicherzustellen, dass der Code den Sicherheitsrichtlinien des Auftraggebers entspricht und frei von bekannten Schwachstellen ist.
- Sicherheitstests: Einsatz von dynamischen und statischen Analysewerkzeugen sowie Penetrationstests, um Sicherheitsrisiken in der Software zu identifizieren und zu beheben.
- Konformitätstests: Überprüfung der Einhaltung relevanter Sicherheitsstandards und -vorschriften, die für die Entwicklung der Software gelten.
- Die durchgeführten qualitätssichernden Maßnahmen und Sicherheitstests sowie daraus resultierende Maßnahmen müssen vom Auftragnehmer vollständig dokumentiert und dem Auftraggeber im Rahmen des Abnahme- und Freigabeprozesses gemäß Ziffer 8 bereitgestellt werden.
- Der Auftragnehmer ist ferner verpflichtet, dem Auftraggeber nach Abschluss jeder Sicherheitsprüfung über die Ergebnisse der Sicherheitsprüfung zu berichten und bei festgestellten Mängeln unverzüglich Korrekturmaßnahmen einzuleiten.
- Bei Verstößen gegen Sicherheitsanforderungen trägt der Auftragnehmer die Kosten für die Behebung und haftet für daraus resultierende Schäden.
Abnahme- und Freigabeprozesse
- Für jede Softwareentwicklung sind vor Beginn der Entwicklungsarbeiten Abnahmekriterien zu vereinbaren und schriftlich festzuhalten. Die Einhaltung dieser Kriterien ist vom Auftragnehmer nachzuweisen.
- Die Installation der vom Auftragnehmer entwickelten Software in die Produktionsumgebung des Auftraggebers ist erst nach erfolgreicher Durchführung eines Abnahme- und Freigabeverfahrens zulässig.
- Dieses Verfahren beinhaltet die die Prüfung und Bestätigung durch den Auftraggeber, dass die Software den vereinbarten Spezifikationen und Qualitätsstandards entspricht.
- Bei Nichtabnahme durch den Auftraggeber hat der Auftragnehmer die festgestellten Mängel gemäß den Vereinbarungen im Rahmenvertrag, Ziffer 7, zu beseitigen.
- Die Dokumentation und der Nachweis der Mängelbeseitigung („defects“) erfolgt in dem vom Auftraggeber zur Verfügung gestellten System (derzeit Microfocus ALM).
Entwicklungsumgebung und -verfahren
- Die Entwicklung der Software erfolgt ausschließlich in der Entwicklungsumgebung des Auftraggebers, die strikt von der Produktivumgebung des Auftraggebers getrennt ist.
- Der Auftragnehmer nutzt das vom Auftraggeber zur Verfügung gestellte System zur Verwaltung des entwickelten Quellcodes (derzeit SAP Solution Manager (SolMan)).
- Der Auftragnehmer verpflichtet sich, vor Übergabe der Softwareänderung zur Abnahme an den Auftraggeber einen Pretest auf dem Testsystem des Auftraggebers durchzuführen und in geeigneter Form nachvollziehbar zu dokumentieren. Erforderliche Testdaten bzw. Testkonstellationen sind vom Auftragnehmer im Rahmen der Verhältnismäßigkeit eigenverantwortlich zu erstellen. Die entsprechenden Testnachweise sind dem Auftraggeber auf Verlangen zur Verfügung zu stellen.
- Sofern der Auftragnehmer auf bestehende Testkonstellationen zurückgreifen muss, die vom Auftraggeber zur Verfügung gestellt werden, ist vor Durchführung des Pretests durch den Auftragnehmer eine entsprechende Abstimmung mit dem Auftraggeber herbeizuführen.
Erstellung und Pflege der Software-Stückliste (SBOM)
Da die Anwendungsentwicklung ausschließlich auf den SAP-Entwicklungssystemen des Auftraggebers erfolgt und nur vom Auftraggeber bereitgestellte Komponenten verwendet werden dürfen, entfällt die Verpflichtung des Auftragnehmers zur Erstellung und Pflege einer Software-Stückliste (SBOM).
Quellcodeverwaltung
- Der Auftragnehmer verpflichtet sich, das vom Auftraggeber zur Verfügung gestellte System zur Quellcodeverwaltung (derzeit SAP Solution Manager (SolMan)) nach den Vorgaben des Auftraggebers zu nutzen.
- Der Auftragnehmer stellt sicher, dass alle Prozesse der Quellcodeverwaltung im dem System des Auftraggebers ordnungsgemäß durchgeführt werden und den definierten Standards entsprechen.
- Jegliche Anpassungen oder Konfigurationen am System der Quellcodeverwaltung des Auftraggebers bedürfen der vorherigen Zustimmung des Auftraggebers.
Dokumentation
- Der Auftragnehmer erstellt und pflegt für jede Softwareentwicklung eine umfassende Dokumentation auf der Grundlage der vom Auftraggeber vorgegebenen Templates.
- Die Dokumentation umfasst mindestens:
- Technische Spezifikationen (DV-Konzept)
- Schnittstellenbeschreibungen
- Benutzerhandbuch.
- Der Auftragnehmer verpflichtet sich, die Dokumentation zu erstellen und laufend zu aktualisieren.
- Der Auftragnehmer erstellt eine fortlaufende Entwicklungsdokumentation. Diese muss den technischen Aufbau und die technischen Abläufe der Software so vollständig beschreiben, dass der Auftraggeber und fachkundige Dritte die Unterlage auch ohne Beteiligung des Auftragnehmers verwenden können. Insbesondere muss die Dokumentation die eigenständige Nutzung und Weiterentwicklung der Software ermöglichen. Dazu gehört die fachgerechte Kommentierung des Quellcodes, die Beschreibung der notwendigen Systemparameter sowie sonstige relevante Informationen.
- Der Auftragnehmer erstellt eine fortlaufende Anwendungsdokumentation. Diese umfasst Nutzerhinweise, Anleitungen und Hilfestellungen sowie Nutzungshandbücher und Verfahrensbeschreibungen. Die Dokumentation muss es dem für die Nutzung und Administration einzusetzende Personal des Auftraggebers in die Lage versetzen, das DV-Programm nach Durchführung der vereinbarten Schulung ordnungsgemäß zu bedienen, sofern das Personal über eine ausreichende Vorbildung und Ausbildung verfügt.
- Die Dokumentation ist in deutscher Sprache zu erstellen. Die Verwendung gebräuchlicher englischer Fachbegriffe ist zulässig.
- Änderungen an der Dokumentation sind dem Auftraggeber als eigenständige Dokumente für jeden Änderungsauftrag mit Abschluss des Änderungsauftrages zur Verfügung zu stellen und sind Bestandteil der Abnahme.
Prüfung und Kontrolle
- Der Auftragnehmer verpflichtet sich, auf Verlangen des Auftraggebers Nachweise über die ordnungsgemäße Durchführung der Entwicklungsarbeiten zu erbringen.
- Der Auftragnehmer hat einmal jährlich ein „Prüfprotokoll“ zu erstellen, das die Prüfung und Einhaltung der Vorgaben dokumentiert. In diesem Prüfprotokoll ist folgendes festzuhalten:
- die durchgeführten Prüfungen.
- die Einhaltung der vereinbarten Richtlinien.
- eventuell festgestellte Maßnahmen oder Verbesserungsvorschläge.
Das Protokoll wird dem Auftraggeber zur Verfügung gestellt und dient als Nachweis für die regelmäßige Überprüfung und Einhaltung der Richtlinien im Rahmen des Vertragsverhältnisses.
- Der Auftraggeber ist jederzeit berechtigt Audits zur Überprüfung der Einhaltung der vertraglich vereinbarten Regelungen zur Softwareentwicklung durchzuführen oder durch Dritte durchführen zu lassen. Dies betrifft insbesondere, aber nicht abschließend, den Entwicklungsprozess des Auftragnehmers sowie alle relevanten Sicherheitsmaßnahmen.
Projektleistungen
- Projekte im Sinne dieser Anlage sind temporäre und zielgerichtete Vorhaben, die zur Erstellung eines einzigartigen Produkts, einer Dienstleistung oder eines Ergebnisses führen. Projekte sind durch ihre Einmaligkeit, zeitliche Begrenzung, höhere Komplexität, Interdisziplinarität und spezifische Zielorientierung gekennzeichnet. Sie sind abzugrenzen von Entwicklungsaufträgen, die auf regelmäßige und wiederholbare Erstellung oder Anpassung von Softwarelösungen basieren und eine kontinuierliche, prozessorientierte und standardisierte Durchführung aufweisen. Solche Standardentwicklungsaufträge sind durch ihre Wiederholbarkeit, geringere Komplexität und Kontinuität gekennzeichnet.
- Der Auftragnehmer erbringt für vom Auftraggeber definierte Softwareentwicklungs- oder Migrationsprojekte insbesondere, aber nicht ausschließlich, die folgenden Leistungen:
- Projektplanung und -steuerung:
- Erstellung, Pflege und regelmäßige Aktualisierung des Projektplans unter Berücksichtigung der Zeitpläne, Ressourcen und Budgets.
- Definition und Überwachung von Projektmeilensteinen und -zielen.
- Erstellung und Pflege eines Projektstrukturplans (PSP).
- Statusberichte und Kommunikation:
- Erstellung und Vorlage monatlicher Statusberichte, die den Fortschritt, aufgetretene Probleme und geplante nächste Schritte detailliert darstellen.
- Durchführung regelmäßiger Projektsitzungen und -besprechungen mit dem Auftraggeber und relevanten Stakeholdern.
- Sicherstellung einer transparenten und kontinuierlichen Kommunikation mit dem Auftraggeber.
- Projektkoordination:
- Koordination und Leitung des Projektteams, einschließlich der Zuweisung von Aufgaben und Verantwortung.
- Enge Zusammenarbeit mit anderen Abteilungen des Auftraggebers, externen Dienstleistern und Subunternehmern.
- Sicherstellung der Einhaltung von Projektstandards und -richtlinien des Auftraggebers.
- Qualitätsmanagement:
- Durchführung von Quality Gates zur Überprüfung und Sicherstellung der Qualität der Projektergebnisse.
- Implementierung und Überwachung von Qualitätsmanagementmaßnahmen und -richtlinien.
- Vorbereitung und Durchführung von Abnahmen und Qualitätssicherungsmaßnahmen.
- Risikomanagement:
- Identifizierung, Analyse und Bewertung von Projektrisiken.
- Erstellung und Pflege eines Risikomanagementplans.
- Implementierung von Maßnahmen zur Risikominimierung und -kontrolle.
- Änderungsmanagement:
- Verwaltung und Dokumentation von Änderungsanforderungen (Change Requests).
- Bewertung der Auswirkungen von Änderungen auf den Projektverlauf und das Budget.
- Kommunikation von Änderungen und deren Auswirkungen an den Auftraggeber.
- Budget- und Ressourcenmanagement:
- Überwachung und Kontrolle des Projektbudgets.
- Erstellung von Budgetprognosen und -berichten.
- Sicherstellung der optimalen Nutzung der Projektressourcen (Personal, Material, etc.).
- Dokumentation:
- Erstellung und Pflege einer umfassenden Projektdokumentation, einschließlich aller relevanten Berichte, Protokolle, Pläne und Ergebnisse.
- Sicherstellung der ordnungsgemäßen Archivierung und Zugänglichkeit der Projektdokumentation.
- Schulungen und Wissensmanagement:
- Organisation und Durchführung von Schulungen und Workshops für das Projektteam und relevante Stakeholder.
- Sicherstellung des Wissenstransfers innerhalb des Projektteams und zum Auftraggeber.
- Abschluss und Nachbereitung:
- Durchführung einer Abschlussbewertung des Projekts, einschließlich einer Analyse der erreichten Ergebnisse im Vergleich zu den Projektzielen.
- Erstellung eines Abschlussberichts und Durchführung von Lessons Learned-Sitzungen.
- Unterstützung bei der Übergabe der Projektergebnisse an den Betrieb oder an nachfolgende Projekte.
- Technisches Management:
- Sicherstellung der Einhaltung technischer Standards und Architekturen.
- Überwachung der Softwareentwicklung und -integration.
- Durchführung technischer Reviews und Audits.
- Change- und Release-Management:
- Planung und Steuerung von Software-Releases.
- Verwaltung der Versionskontrolle und Bereitstellung neuer Softwarestände.
- Nutzer- und Stakeholder-Management:
- Identifikation und Einbindung relevanter Stakeholder.
- Sicherstellung der Nutzerakzeptanz durch regelmäßige Feedback-Schleifen und Anpassungen.
- Die vorgenannten Projektleistungen werden vom Auftragnehmer nach den Standards und Richtlinien des Auftraggebers und unter Verwendung der vom Auftraggeber zur Verfügung gestellten Tools und Methoden erbracht.
Unterschriften
Dieses Dokument wurde von den nachstehenden Unterzeichnern genehmigt.
| [Bezeichnung des Auftragnehmers] | Unterschrift - Name |
| Datum | |
| [Bezeichnung des Auftragnehmers] | Unterschrift - Name |
| Datum | |
| Helaba Landesbank Hessen-Thüringen Girozentrale | Unterschrift - Name |
| Datum | |
| Helaba Landesbank Hessen-Thüringen Girozentrale | Unterschrift - Name |
| Datum |