Entwicklungswerkzeuge entstehen oft aus konkreten Mangelsituationen

In der Softwareentwicklung ist es wie in vielen anderen Branchen in denen Sachen geplant, konstruiert und gebaut werden: Immer wieder entstehen Situationen, in denen ein bestimmtes Problem durch ein Werkzeug simpel gelöst werden könnte – nur leider gibt es dieses Werkzeug bis dato noch nicht. Der große Vorteil im Softwarebereich ist dabei, dass sich neue Programme in den meisten Fällen mit wesentlich weniger Aufwand erstellen lassen als beispielsweise die Werkzeuge von Chirurgen oder schwere Baumaschinen. Dadurch entwickelt sich Software auch wesentlich schneller als dies bei materiellen Werkzeugen der Fall ist. Diese Flüchtigkeit der Software ermöglicht auch eine fortlaufende Weiterentwicklung und Reifung, denn alle Anwender können in der Regel ohne großen Aufwand neue Versionen direkt einsetzen – bei Baumaschinen, deren Herstellungskosten schnell in die Millionen gehen, ist dies natürlich weitaus schwieriger.

Ähnlich wie in anderen Bereichen die sich mit der Lösung von Problemen beschäftigen, so ist auch im Bereich der Softwareentwicklung eine gute Dokumentation und Nachvollziehbarkeit das A und O. Im Idealfall sollte jederzeit ermittelbar sein, wer wann welche Änderungen vorgenommen hat. Im Bereich der Softwareentwicklung wird diese Aufgabe von einer sogenannten Versionsverwaltung übernommen. Diese verwaltet den Quelltext der zu einem Projekt gehört, und koordiniert alle Veränderungen daran. Dazu wird der Quelltext in ein sogenanntes Repository eingespielt, das von der Versionsverwaltung kontrolliert wird. Alle Zugriffe auf den Quelltext im Repository geschehen dann nur noch hierüber. Neben der Verwaltung werden auch Konzepte wie Benutzerrollen samt unterschiedlichen Zugriffsrechten, Benutzerauthentifizierung, etc. darüber umgesetzt.

Subversion im Internet

Entwicklungswerkzeuge entstehen oft aus konkreten Mangelsituationen webhosting subversion hostingEines der bekanntesten Werkzeuge in diesem Bereich ist Subversion, das sowohl als Modul für Webserver als auch als nativer Dienst verfügbar ist. Während letztere Umsetzung vor allem für lokale Netze interessant sein kann, ermöglicht die Einbindung in einen Webserver die flexible Zugänglichmachung der Repositorys über das Internet. Daher ist es kein Wunder, dass schnell die nächste Stufe der Entwicklung erreicht war: Spezialisierte Anbieter entstehen, die neben dem Subversion Hosting auch als Ansprechpartner in technischen Fragen jederzeit erreichbar sind.

Neben der Versionsverwaltung ist auch das Zusammenspiel – möglichst weit automatisiert – zwischen den einzelnen Werkzeugen immer ein Kriterium, das bei der Auswahl von Entwicklungsumgebung und weiteren Tools entscheidend sein kann. Zahlreiche Open-Source-Projekte und Drittanbieter offerieren diverse Lösungen für fast jede Kombination. Für Eclipse, eine weit verbreitete Plattform für Entwicklungsumgebungen, gibt es beispielsweise ein spezielles Plugin namens Subclipse, um Repositorys die mit Subversion verwaltet werden direkt anzubinden.

Damit wird das notwendige Handling (Check-Out, Bearbeitung, Check-In, Konfliktbehandlung, etc.) nahezu vollständig transparent in die Programmierung eingebettet und erweckt nicht mehr den Eindruck zusätzlicher Arbeitsschritte. Auch für die weiteren Aspekte der Softwareentwicklung, wie beispielsweise die Projektplanung oder das Bugmanagement gibt es Werkzeuge, die an die Entwicklungsumgebung angebunden werden können. Da auch hier webbasierte Tools auf dem Vormarsch sind, ist es kein Wunder, dass bei seriösen Anbietern von Profi Webhosting die Angebote nicht auf reines Subversion Hosting beschränkt sind, sondern im Gegenteil Subversion nur das namentlich gut bekannte Zugpferd für ein ganzes Werkzeugpaket ist.

0 Kommentare

Hinterlasse einen Kommentar

An der Diskussion beteiligen?
Hinterlasse uns deinen Kommentar!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.