Projektmanagement

Laut dem entsprechenden Eintrag auf Wikipedia:

“Unter dem Begriff Projektmanagement (PM) versteht man das Planen, Steuern und Kontrollieren von Projekten.”

Auch wenn wir natürlich versuchen, den Management-Aufwand so gering wie möglich zu halten, so wollen wir dennoch über die Möglichkeiten verfügen,

  • die Aktivitäten rund um die diversen Code-Repositories zu verfolgen,
  • Dokumentation innerhalb des Teams von Entwicklern auszutauschen,
  • ausstehende Issues – Fehlermeldungen, gewünschte Funktionalität, fehlende Dokumentation, sonstige Aufgaben – im Auge zu behalten.

Um diesen Anforderungen gerecht zu werden, verwenden wir Redmine, ein webbasiertes Open-Source-Projektmanagement-Tool. Es kann für Benutzer- und Projektverwaltung, Diskussionsforen, Wikis, zur Ticketverwaltung oder Dokumentenablage genutzt werden.

Übersicht der Aktivitäten

Auch wenn sich der überwiegende Teil unserer tagtäglichen Software-Entwicklungsarbeit um pandora dreht, so unterhalten wir ebenfalls eine ganze Reihe an Werkzeugen und Bibliotheken, welche über die Laufzeit des Projektes entstanden sind. Angesichts der Tatsache, dass es mehrere Repositories mit Code, Webseiten und Dokumentation gibt, kann es schon einmal etwas schwieriger werden, über die überall stattfindenden Aktivitäten auf dem Laufenden zu bleiben. Um dies ein klein wenig zu vereinfachen, machen wir Gebrauch von Redmines Fähigkeit, mehrere Repositories zu überwachen und dort eingehende Meldungen zusammenzuführen; da letzten Endes alle Änderungen diesen Weg gehen, ist es somit möglich, eine Übersicht der vor sich gehenden Entwicklungsarbeiten zu erhalten.

Redmine Screenshot Repository overview
Management von Aufgaben, Zeitvorgaben und Arbeitskräften. Übersicht der Commits in das Code-Repository.

Issue Tracking

In der Software-Entwicklung versteht man unter Issue eine Art Maßeinheit, für das Erreichen einer Verbesserung innerhalb eines Systems/Projektes. Ein Issue kann ein berichteter Fehler, eine Anfrage auf Funktionserweiterung, eine Aufgabe oder der Verweis auf fehlende Dokumentation sein – für ein Projekt wie das unsere kann da schon eine längere Liste zusammenkommen. Wie lässt sich also Schritt halten mit den Aufgaben? Wir gebrauchen Redmines Issue-Tracking-Funktionalität, um Issues einzureichen und bis zu ihrer Abarbeitung zu verfolgen – dies ermöglicht uns nicht nur eine Übersichtsliste der noch offenen Punkte bereitzuhalten, sondern stellt uns darüber hinaus nützliche Zusatzinformationen zur Verfügung (z.B. Fälligkeitsdaten, Aufgabenverteilungen, etc.).