Softwareentwicklungsplattform
From Wikipedia, the free encyclopedia
Eine Softwareentwicklungsplattform oder Code-Hosting-Plattform ist ein Onlinedienst zur Verwaltung von Softwareprojekten und Unterstützung der Softwareentwicklung. Dies umfasst das Hosting der Quelltexte mit Versionsverwaltung, Bugtracker und teilweise Kanban-Boards, Wikis und Systeme für CI/CD (Continuous Integration/Continuous Delivery).
Kommerzielle Softwareentwickler verwalten ihre Quelltexten meist in geschlossenen Softwareentwicklungsplattformen. Vor allem die Entwicklung freier Software findet auf öffentlichen Softwareentwicklungsplattformen statt.
Begriff
Der englischsprachige Begriff englisch Forge ist im Namen verschiedener Softwareentwicklungsplattformen als Präfix oder Suffix enthalten. Die erste Plattform war SourceForge, die seit 1999 online ist. Weitere Beispiele sind FusionForge, RubyForge oder Forgejo. Diese Verwendung des Wortes leitet sich von der Schmiede ab, die für die Formgebung von Metallteilen verwendet wird. Der im Deutschen genutzte Begriff Software-Schmiede bezeichnet hingegen in der Regel ein Unternehmen, welches Software programmiert oder produziert.
Funktionen

Softwareentwicklungsplattformen integrieren meist unterschiedliche Funktionen entlang des Softwareentwicklungsprozess.
- Die Versionsverwaltung von Quellcode stellt die Kernfunktion dar, mit der branches verwaltet und gereviewed werden. Softwareprojekte verwalten so Testversionen und steuern ihr Release- und Application-Management. Neben der reinen Darstellung von Quellcode können auch onlinebasierte Integrierte Entwicklungsumgebungen oder einfache Onlineditoren vorhanden sein.
- Aus den versionierten Quelltexten können durch integrierte CI/CD-Funktionen, automatisch testbare und stabile Softwareversionen gebaut, getestet und deployed werden.
- Als Projektmanagement-Software sind meist Bugtracker oder Issue-Tracking-Systeme und Kanban-Boards vorhanden.
- Tools für die Informationssicherheit wie statischen Code-Analyses und Erzeugung von SBOMs.
- Zur Softwaredokumentation werden integrierte Wikis genutzt.
- Filehosting um fertige Software oder statischen Webseiten zu erzeugen und zu hosten.
- APIs
- Mailinglisten oder Foren
Öffentliche Plattformen
Vor allem freie Software wird oft in öffentlichen Softwareentwicklungsplattformen verwaltet. Einer der ersten Plattformen zum Austausch und Veröffentlichung ist seit 1999 SourceForge. Inzwischen ist das kommerzielle GitHub zur größten öffentlichen Softwareentwicklungsplattform geworden, aber auch ebenfalls kommerzielle Plattformen gitlab.com oder Bitbucket bieten neben ihren kostenpflichtigen Angeboten eine kostenlose Nutzung für öffentliche Software an.
Seit SourceForges Gründung im November 1999 registrierten sich dort über 150.000 Softwareprojekte bis 2008.[1] Eine 2011 veröffentlichte Studie ergab, dass GitHub – gemessen an der Zahl der Commits – alle anderen Forges an Popularität überholt hatte.[2]
Viele kleine freie Anwendungen, wie z. B. cURL[3] aber auch große kommerzielle Open-Source Lösungen, wie z. B. Mozilla Firefox[4] oder das von Red Hat angebotene Ansible[5] nutzen GitHub. Dennoch bieten viele weitere Organisationen unabhängige Softwareentwicklungsplattform an:
Zahlreiche freie Softwareprojekte nutzen eigene öffentliche Plattformen, die aber auf das jeweilige Projekt beschränkt sind: z. B. nutzt Linux ein cgit[6], WordPress ein eigenes Trac[7], Postgresql eine gitweb[8].
Auch staatliche Stellen betreiben oft ihre eigenen, unabhängigen Softwareentwicklungsplattformen, z. B. in Deutschland openCode, code.gov.cz der Regierung der Tschechischen Republik[9] oder code.europa.eu für die Organe, Einrichtungen, Ämter und Agenturen der Europäischen Union.[10] In der Volksrepublik China betreibt die chinesischen Regierung zusammen mit Huawei die Github-Alternative Gitee.[11]
Liste bekannter Plattformen
Verfügbare Dienste:
- SourceForge vom US-amerikanischen Unternehmen Slashdot Media
- GitHub von Microsoft
- GitLab vom gleichnamigen US-amerikanischen Unternehmen
- Codeberg vor der gemeinnützigen Organisation Codeberg e. V.
- GNU Savannah von der Free Software Foundation
- Launchpad vom Unternehmen Canonical betrieben.
Eingestellte Dienste:
Liste von Software
Folgende Code-Hosting-Software steht als freie Software zur Verfügung und ermöglicht das Betreiben einer eigenen Code-Hosting-Plattform:
- GForge und dessen Abspaltung FusionForge (ehemalige Software von SourceForge)
- Apache Allura (aktuelle Software von SourceForge)
- Gitea
- Forgejo, Abspaltung von Gitea, Entwicklung durch den Codeberg e. V.
- GitLab Community Edition
- Launchpad des Unternehmens Canonical
- Phabricator und dessen Abspaltung Phorge