Bei der Realisierung von Softwareprojekten, insbesondere wenn diese aus Mitteln der öffentlichen Hand gefördert werden, stellt sich immer die Frage, ob diese mit Hilfe proprietärer Softwarelösungen oder als Open-Source-Projekte realisiert werden sollen.
Die Open-Source-Entwicklung der Portalsoftware OpenCulturas dient als Anschauungsbeispiel, wie ein solches Projekt aussehen kann. Der folgende Leitfaden beruht auf unseren Erfahrungen und gibt einen Einblick in die Vorteile von Open-Source-Entwicklung in Hinblick auf Nachnutzbarkeit.
Dabei werden Aspekte wie die Resilienz bei der Behebung von Sicherheitslücken, die nachhaltige Weiternutzung sowie Wirtschaftlichkeit der Projekte angesprochen und die Struktur eines solchen Open-Source-Projekts beleuchtet.
Bisheriger typischer Lebenszyklus
Ein mit öffentlichen Geldern finanziertes Softwareprojekt sah in den vergangenen Jahren typischerweise so aus:
- Ausschreibungsphase
- Bieter*in erhält Zuschlag (wenn es gut lief, sogar direkt mit dem Auftrag, die Wartung für 2 bis 5 Jahren zu gewährleisten)
- Lastenheft wird umgesetzt und abgenommen
- Website wird live gestellt
- Projektvertrag der Ansprechpartnerin läuft aus, ggf. Einarbeitung eines neuen Ansprechpartners oder kommissarische Verantwortung (= kein Ansprechpartner) auf Geschäftsführungsebene
- Dienstleister führt bis zum Ende des Vertrags Wartungsarbeiten durch
- Website wird geschlossen (oder schlimmstenfalls ohne weitere Sicherheitsupdates weiter betrieben)
Open-Source-Auflage: eine erste Idee von Nachnutzung
Eventuell kam in der Ausschreibung schon eine der folgenden Formulierungen vor:
- Open-Source-Entwicklung
- quelloffen
- Source-Code soll auf einer öffentlich zugänglichen Plattform veröffentlicht werden
- soll unter einer Open-Source-Lizenz zur Nachnutzung veröffentlicht werden
Gemeint ist in der einen oder anderen Form üblicherweise: Die Software soll als freie Open-Source-Software entwickelt und veröffentlicht werden. Achtung, eine nicht unerhebliche Spitzfindigkeit: quelloffen bedeutet nicht automatisch "unter einer freien Open-Source-Lizenz".
Bei unseren Freunden im CMS Garden nennt man das "Open-Source über den Zaun werfen". Schließlich kann das Arbeitsergebnis ja von anderen weiterentwickelt werden (einschließlich dem Schließen von Sicherheitslücken).
Open-Source-Software braucht Betreuung
Eine tatsächlich nachnutzbare Software braucht mindestens drei weitere Komponenten:
- Wartungsverantwortung (Maintenance)
- Öffentlichkeitsarbeit
- Weiterentwicklung
Maintenance
In jeder Software werden früher oder später kleinere oder größere Sicherheitslücken entdeckt. Mit unserer Entscheidung, auf das bestehende Content-Management-Framework Drupal aufzusetzen, ist OpenCulturas damit schon gut aufgestellt, denn die immense Entwickler*innengemeinschaft hat gut etablierte Routinen für Sicherheitsupdates.
Aber diese Updates müssen auch in die veröffentlichte Software integriert werden (und zusätzlich müssen Projekte, die diese einsetzen, diese Updates auch erhalten).
Dazu braucht es ein kontinuierliches Release Management. Es muss nicht nur die Software aktualisiert, sondern im Vorfeld auch getestet und qualitätsgesichert werden. Die Veröffentlichung auf einer (oder gar mehreren) öffentlich zugänglichen Plattformen geht auch einher mit der Verpflichtung, die Art der Updates näher zu beschreiben und eventuelle Fehlermeldungen entgegenzunehmen und zeitnah zu bearbeiten.
Öffentlichkeitsarbeit
Dass es bereits eine Lösung gibt, die potentiell nachnutzbar ist, muss auch bekannt gemacht werden. Um im Bild zu bleiben: Man sollte sich nicht darauf verlassen, dass zufällig jemand an dem Zaun vorbeispaziert, über den die Software geworfen wurde.
Zur Öffentlichkeitsarbeit gehört zum Beispiel der Betrieb (und die Wartung) einer Website wie dieser hier. Wenn man es ordentlich machen möchte, gehört dazu auch das Verfassen von Release Notes, die darüber informieren, welche Änderungen die jeweils neue Version mit sich bringt.
Dazu gehört aber auch, zu Veranstaltungen zu reisen und Vorträge zu halten oder einen Informationsstand auf einem Kongress zu organisieren. Je mehr Organisationen zum Beispiel von der Software OpenCulturas erfahren, desto weniger Arbeit hat der Kultursektor mit individuellen Ausschreibungen. Gleichzeitig werden öffentliche Mittel nicht mehrfach für vergleichbare Software ausgegeben und entsprechen somit dem für öffentliche Mittel wichtigen Prinzip der Wirtschaftlichkeit und Sparsamkeit, wenn technische Lösungen nachnutzbar gemacht werden können.
Weiterentwicklung
Je mehr Organisationen die Software nutzen, desto zahlreicher werden die Ideen für einen Ausbau der Funktionen. Wir haben ja auch selbst noch so einige auf der Liste.
Es braucht eine Infrastruktur für das Vorschlagen kleinerer Verbesserungen oder größerer Komponenten. Auch hier haben wir uns gut aufgestellt, indem wir das Forum auf Drupal.org nutzen. Hier wiederum braucht es aber auch Betreuung: Jemand muss auf die Beiträge reagieren, ggf. Code-Änderungsvorschläge prüfen oder eine Einschätzung zur Machbarkeit geben.
Governance – wer die Entscheidungen trifft
Nachnutzbarkeit braucht Entscheidungshoheit. Eine Software, die jede*r hinter dem Zaun aufsammeln kann, um sie mehr oder weniger kompetent weiterzuentwickeln, wird irgendwann keinen Qualitätsstandards mehr entsprechen. Deshalb gibt es in den Open-Source-Gemeinschaften etablierte Prozesse für die Zuständigkeit über solche Entscheidungen: Wer sich über die eigenen Beiträge als kompetent erweist, kann Co-Maintainer einer Komponente oder später auch des Kernsystems werden.
Wir haben uns von diesem Modell inspirieren lassen und beschlossen, einen Verein zu gründen, der nach diesen Prinzipien funktioniert. Wir diskutieren die Weiterentwicklung aus verschiedenen Perspektiven (Nützlichkeit, Machbarkeit, Aufwand – und ja, auch Vermarktbarkeit).
Der gemeinnützige OpenCulturas e. V. ist also „Eigentümer“ der Software und verantwortlich für die Nachnutzbarkeit der Plattform-Software. In monatlichen Stakeholder-Meetings stimmen wir uns über Weiterentwicklung, Öffentlichkeitsarbeit und Finanzierung ab.
Keine Herstellerbindung
Nachnutzbarkeit braucht kontinuierliche Betreuung. Uns als Verein war von Anfang an wichtig, dass OpenCulturas nicht an einen Hersteller gebunden ist. Diejenigen, die die Software nutzen, sollten Einfluss auf die Weiterentwicklung und die Öffentlichkeitsarbeit haben. Perspektivisch soll es auch möglich sein, die Wartung der Software bei beliebigen qualifizierten Dienstleistern beauftragen zu können.
Auch hier war wieder eine gute Entscheidung, auf Drupal zu setzen und kein tiefergehendes Spezialwissen erforderlich zu machen. Die etablierte Drupal-Agenturlandschaft zeigt, dass dieses Konzept funktioniert.
Mehr zum Thema lesen
- Die Entscheidung für Open-Source (nebst Übersicht über die Lizenzen) beim CMS Garden
- Beitrag über Notwendigkeit und Nutzen von Sicherheitsupdates beim CMS Garden