Neue Tools zur Softwareentwicklung

Im OlyNet haben sich Studenten zusammengeschlossen, um gemeinsam an Hardware, Elektronik und Software zu basteln. Wir setzen Infrastruktur auf, schrauben an Hardware, diskutieren Verbesserungen und setzen neue Projekte um, z.B. unseren Routerverkauf, die Sprechstunden oder auch Software zum internen und externen Gebrauch.

Gerade die Softwareentwicklung ist heutzutage mehr als nur das Schreiben von Code, was die meisten Studenten nur oberflächlich im Studium lernen. Neben automatisierten Tests und Builds gehören auch die Selbstorganisation und die Steuerung eines ganzen Teams zum Alltag eines Entwicklers. In vielen Softwareteams hat sich Scrum als Methode der agilen Softwareentwicklung etabliert.

Die Entwickler des OlyNet haben sich ebenfalls zum Ziel genommen, eine gewisse Form der Entwicklung einzuhalten. Wir haben dazu von Anfang an ein System zum Verfolgen von Bugs und Aufgaben eingesetzt, nämlich BugZilla. Gemeinsam mit einem eigenen Git-Server und Hooks zur Integration von Git in BugZilla (wir haben uns für GitZilla entschieden) konnten wir das bereits etablieren. BugZilla bot auch sehr gute Plugins an, um Scrum zu unterstützen. Ein Jenkins-Server rundete unser Setup ab, der sowohl auf Commits in Git reagieren, als auch auf einem Zeitplan arbeiten konnte, um Jobs zu bauen. Continuous Integration, bzw. Delivery, leben wir seitdem in allen Projekten.

Leider bedingte dies alles jedoch viel Handarbeit und manche sehr bequemen Funktionen waren nur erschwert umsetzbar, wie etwa ein automatisiertes Feature Branching.

Kommerzielle Softwarestacks bieten enge Verzahnung der Komponenten

Im Gegensatz zu Eigenbaulösungen, gibt es bereits kommerzielle Anbieter, die Implementierungen von Sourcecodeverwaltungssoftware und Issue Trackern eng kombinieren. Die (laufenden) Kosten dafür sind jedoch teils relativ hoch.

Glücklicherweise sind wir auf ein wirklich grandioses Angebot von Atlassian gestoßen, der Entwickler von den bekannten Tools JIRA, Bitbucket und Confluence. Atlassian bietet gemeinnützigen Organisationen die Möglichkeit den Softwarestack von Atlassian kostenfrei zu nutzen, solange man nachweisen kann, dass man wirklich ohne wirtschaftliche Interessen handelt.

Wir haben daraufhin eine gemeinnützige Lizenz bei Atlassian für JIRA, Bitbucket und Confluence beantragt und diese nach kürzester Zeit auch erhalten. An einem freien Wochenende haben wir dann die Migration unserer Systeme durchgeführt. Sowohl JIRA, als auch Bitbucket sind mit tollen Importfunktionen ausgestattet, womit wir unsere Daten sehr einfach aus BugZilla und unserem Git-Repository importieren konnten.

Heute nutzen wir die ausgiebigen Features bereits intensiv, von Feature Branching über Code Reviews bis hin zum Reporting und zur Slackintegration. Unser Arbeitsfluss hat sich schon stark verbessert und es macht großen Spaß zu sehen, wie sich unsere Produktivität steigert.

Danke Atlassian!

Getagged mit: , , ,