In der Vorlesung werden/wurden sechs Aspekte von Infrastruktur angesprochen: Versionsverwaltung, Versionsnummern, externe Dokumentation, Bugverwaltung, Editoren/IDEs, Lizenzen.
Sollte ich für mich beantworten, welche Lösungen ich für die jeweiligen Aspekte verwenden würde oder verwende, käme wohl die folgende Liste dabei heraus.
Aspekt | Lösung |
---|---|
Versionsverwaltung | git |
Versionsnummern | SemVer |
externe Dokumentation | DokuWiki |
Bugverwaltung | Bugzilla |
Editoren/IDEs | k.A. |
Lizenzen | GPL, BSD |
Wichtig: Das ist eine mitunter sehr persönliche Wahl, außerdem werde ich sie an dieser Stelle nicht begründen. Jeder sollte sich gut überlegen, welche Wahl er selbst trifft. Ggf. kann man sich sonst auch noch „unterwegs“ umentscheiden, auch wenn das mühsam werden kann.
Editoren bzw. IDEs sind nicht nur eine Frage des persönlichen Geschmacks, sondern auch der verwendeten Programmiersprache. Wer MATLAB verwendet, wird (fast) nicht sinnvoll um den mitgelieferten Editor herumkommen. Ansonsten ist Eclipse immer eine interessante Option.
Eine kommentierte und handverlesene Liste mit weiterführender Literatur zum Thema. Die Auswahl ist zwangsläufig subjektiv.
Auch wenn Projektmanagement über die in der Vorlesung besprochene Infrastruktur hinausgeht, lassen sich viele Aspekte, die hier unter Infrastruktur zusammengefasst werden, in diesen Kontext einbetten.
Ein „Klassiker“ zum Projektmanagement ist der Bericht von Frederick Brooks aus seiner Zeit bei IBM, wo er für die Entwicklung des Betriebssystems für die ersten IBM-Mainframes (OS/360) verantwortlich war. Das Buch ist gut geschrieben und beinhaltet in seiner Ausgabe von 1995 zusätzlich u.a. noch seinen ebenfalls berühmten Essay „No Silver Bullet—Essence and Accident in Software Engineering“.