Software-Entwicklung

Warum Inner Source einen Wettbewerbsvorteil schafft

02.06.2020
Anzeige  "Inner Source" ist immer noch weitgehend unbekannt. Dabei ist es eine Zauberformel, welche das interne Kapital an Fachwissen und digitalen Assets gezielt zu entfesseln weiß – und sogar kulturelle Barrieren niederreißen kann.

Die Prinzipien und Methoden von Inner Source wurden schon vor 20 Jahren vom Open Source-Evangelisten Tim O'Reilly entwickelt. Doch ist diese Methodik noch immer kaum bekannt. "Viele CIOs und andere führende IT-Manager können mit dem Begriff 'Inner Source' wenig anfangen", lautet die Beobachtung von Marko Berkovic, Regional Director DACH bei GitHub.

Das ist umso verwunderlicher, da Mitarbeitereffizienz, Software-Qualität und Time-to-Market normalerweise zu den gängigen Problemen aller CIOs gehören. Und genau diese Bereiche lassen sich mit Inner Source lösen, oder zumindest abmildern.

"Es ist heute enorm schwer gute Software-Entwickler zu bekommen. Eine offene Entwicklungsumgebung, wie sie Inner Source ermöglicht, gehört zu den Minimalforderungen, die diese hochqualifizierten Mitarbeiter an ihren Arbeitgeber stellen", Jim Jagielski, Mitgründer der Apache-Foundation
"Es ist heute enorm schwer gute Software-Entwickler zu bekommen. Eine offene Entwicklungsumgebung, wie sie Inner Source ermöglicht, gehört zu den Minimalforderungen, die diese hochqualifizierten Mitarbeiter an ihren Arbeitgeber stellen", Jim Jagielski, Mitgründer der Apache-Foundation
Foto: Microsoft

Das von O'Reilly entworfene Konzept beschreibt, wie sich Best-Practices aus der Open-Source-Welt nutzen lassen, um firmenintern Software zu entwickeln. Das bedeutet, Inner Source ist wie Open Source - mit einer Einschränkung: Der Zugriff auf Code und Libraries ist auf das eigene Unternehmen beschränkt; ein Zugang von außen ist ausdrücklich nicht möglich.

Alle weiteren Methoden werden aber von Open Source übertragen. "So kann auch bei Inner Source jeder Entwickler an anderen Projekten mitarbeiten und auf alle internen Repositories zugreifen", erläutert Berkovic. "Software-Erweiterungen lassen sich ebenfalls von anderen Nutzern und Entwicklern einsehen und nutzen."

Abgerundet wird die offene Inner-Source-Struktur durch eine wirksame Qualitätssicherung, die dem Product-Owner obliegt. Sie stellt sicher, dass die Zuarbeiten nicht die Qualität der Software beeinträchtigen.

Ein ganzes Bündel an Vorteilen

Eine solche offene innerbetriebliche Entwicklungsmethode bietet viele Vorteile. Die Abteilungen arbeiten intensiver zusammen, gleichzeitig verteilen sich Risiko und Kosten über mehrere Fachbereiche hinweg. Das Verfahren soll ein schnelleres Time-to-Market und eine höhere Codequalität ermöglichen sowie das Deployment beschleunigen.

Gerade für den letzten Punkt ist Inner Source von unschätzbarem Wert, denn es reduziert stark die Zahl der Eingriffe von außen in die DevOps-Schleife. Die Tests können anhand eigener Branches durchgeführt werden, Responds und Planung über die Dokumentation erfolgen. Sogar das Release-Management lässt sich mit Inner-Source-Tools erledigen.

Einen weiteren bedeutenden Vorteil beschreibt Jim Jagielski, Mitgründer der Apache-Foundation: "Es ist heute enorm schwer gute Software-Entwickler zu bekommen. Eine offene Entwicklungsumgebung, wie sie Inner Source ermöglicht, gehört zu den Minimalforderungen, die diese hochqualifizierten Mitarbeiter an ihren Arbeitgeber stellen", lautet seine Einschätzung.

Mit Inner Source können die Entwickler untereinander wesentlich freier Informationen tauschen und auch Verbesserungen ohne große Umwege integrieren – genauso, wie man es von Open Source her kennt.
Mit Inner Source können die Entwickler untereinander wesentlich freier Informationen tauschen und auch Verbesserungen ohne große Umwege integrieren – genauso, wie man es von Open Source her kennt.
Foto: Microsoft

Early Adaptors verschaffen sich Konkurrenzvorteile

Während Inner Source bei vielen IT-Verantwortlichen noch unbekannt ist, nutzen andere Unternehmen längst ihre Vorteile. Dazu gehören unter anderem Spotify und Decathlon.

Auch Microsoft setzt als Bestandteil des internen Kulturwandels stark darauf, Inner-Source-Strategien auszubauen. Dabei ist dieser Schritt nur konsequent, da er auch ein Teil der großen Open-Source-Öffnung des Unternehmens ist, die von Satya Nadella eingeleitet wurde und die 2018 mit der Akquisition der Open Source-Plattform GitHub einen vorläufigen Höhepunkt erreichte.

"Früher waren die einzelnen Software Engineering Teams der Produktgruppen wie Windows, Office oder Visual Studio nicht nur getrennte Silos, sondern wirkten in voneinander abgekapselten Projekten", berichtet Danny Seiler, der bei Microsoft für Strategic Solutions Developer Services aktiv ist. "Heute arbeiten alle Produktgruppen gemeinsam innerhalb des One-Engineering-Systems teamübergreifend und nutzen Inner-Source-Tools, wo immer es möglich ist."

Die Transparenz und Visibilität aller konzernweit vorhanden Code Repositories, verbunden mit einer einfachen Suche, reduziert Doubletten. Durch die intensive Wiederverwendung sowie durch projektfremde Zuarbeiten sinken auch die Entwicklungskosten. "Bei einem unserer Projekte stammte fast ein Drittel des Codes von Entwicklern, die nicht zum dedizierten Team gehörten", erzählt Seiler.

Inner Source-Einführung bedeutet Kulturwandel

Inner Source bedeutet: So offen wie möglich und so geschlossen wie nötig.

Unternehmen, die Inner Source nutzen wollen, sollten zunächst ihre digitalen Assets sichtbar machen, rät Seiler: "Beispielsweise wer Erfahrungen mit iOS hat, schon an speziellen Anwendungen mitgewirkt hat oder sich mit exotischen Programmiersprachen auskennt." Alle diese Informationen lassen sich zusammen mit den Software-Komponenten, den Testverfahren, den Sicherheitsvorgaben oder bestimmten Anwendungsbeschreibungen in GitHub ablegen und gezielt abrufen.

Parallel dazu sollte man interne Champions aufbauen, die bereit sind, auf den Zug aufzuspringen. Diese Vorreiter lassen sich dann im Rahmen eines Center of Excellence an die neuen Möglichkeiten heranführen.

Ein weiterer Schritt ist schwieriger. "Den größten Widerstand gibt es beim mittleren Management", erläutert Seiler. "Es ist gewohnt, seine Ressourcen nur für sich zu nutzen - also nicht zu teilen." Hier kann man mit Hilfe von Incentives einen Kulturwandel herbeiführen. "Management by Objectives erlaubt es beispielsweise, die KPIs so zu definieren, dass Softskills einen höheren Stellenwert erhalten", so Seiler weiter. "Nicht die Zahl der erstellten Programmzeilen muss im Vordergrund der Beurteilung stehen, sondern deren Qualität", lautet seine Empfehlung an das obere Management.

Auch methodisch kann man dem mittleren Management entgegenkommen. "Niemand muss sich an anderen Projekten oder Entwicklungen beteiligen. Kein Manager ist verpflichtet seine Projekte und deren detaillierte Inhalte firmenintern zu publizieren, schließlich gibt es bei vielen Unternehmen ja auch Konkurrenz zwischen den Abteilungen", erläutert Berkovic die Methode. Und weiter: "Inner Source bedeutet: So offen wie möglich und so geschlossen wie nötig."

Forrester: GitHub macht Unternehmen produktiver

GitHub wird weltweit mittlerweile von rund drei Millionen Organisationen mit über 50 Millionen Entwicklern genutzt. Die Analysten von Forrester haben sich im Rahmen einer umfangreichen Studie eingehend mit den Vorteilen von Inner Source und GitHub befasst. Der Report "The Total Economic Impact Of GitHub Enterprise" wurde im März 2020 veröffentlicht. Dabei kamen beachtliche Ergebnisse zustande. So sagten 87 Prozent der Befragten, sie konnten die Kosten für IT-Support und IT-Management senken, und 40 Prozent konnten On-Boarding und Einarbeitung wesentlich verkürzen.

Laut Forrester-Analysten sparen Entwickler damit etwa 45 Minuten pro Tag ein. "Mit Inner Source haben wir eine wesentlich bessere Code-Qualität und eine höhere Wiederverwendungsrate", zitiert die Studie den IT-Chef eines Media-Unternehmens.

Erfahren Sie mehr auf dem Microsoft European Virtual Open Source Summit am 16. Juni 2020. Auf der kostenfreien Konferenz sprechen renommierte Experten von Red Hat, GitHub und Microsoft über eine Vielzahl von Themen – von Chaos Engineering über den Aufbau serverloser Architekturen bis hin zur Entwicklung von Multi-Cloud-Anwendungen.

Hier mehr erfahren

Zur Startseite