
Projektmanagement - Werkzeuge, die wir bei der Arbeit nutzen - Teil 1
Webanwendungen und Websites zu erstellen ist oft eine komplexe und zeitaufwändige Aufgabe, die die Koordination vieler verschiedener Aktivitäten durch einen Projektmanager erfordert. Um das Projekt zu verwalten, nutzen wir verschiedene Systeme und Anwendungen, die in diesem Artikel beschrieben werden.
Der folgende Stand wird zum Zeitpunkt der Erstellung des Artikels beschrieben. Da wir die beste Drupal-Agentur sein wollen, verbessern, ändern und testen wir kontinuierlich unsere Prozesse und Werkzeuge, um Folgendes zu erreichen:
- wiederkehrende Aufgaben durch Programme, Systeme und Skripte eliminieren
- die Geschwindigkeit und Qualität der Programmierung erhöhen
- die Kommunikation im Team und mit dem Kunden verbessern
Projektmanagement-Tools
Unser Hauptwerkzeug für das Projektmanagement ist Redmine (http://www.redmine.org), das im Mittelpunkt jedes Projekts steht. Wir nutzen Redmine, um alle Aktivitäten im Projekt hinzuzufügen, zu pflegen und den Fortschritt zu überwachen. Üblicherweise erstellen wir für eine Website drei separate „Redmine-Projekte“:
- Backlog/Client - benutzt zur Kommunikation mit dem Kunden und zur Verfolgung von Aufgaben auf hoher Ebene. Dieses Projekt ermöglicht es dem Kunden, den Fortschritt der Arbeiten zu sehen und ermöglicht eine einfache Kommunikation, sodass nichts verloren geht.
- Dev - hier kommuniziert das Team, um am Projekt zu arbeiten. Aufgaben auf hoher Ebene werden hier in kleine, spezifische Tickets aufgeteilt, an denen gearbeitet werden kann. Wir verwenden hier normalerweise das Backlog-Plugin für Redmine (http://www.redmine.org/plugins/backlogs). Jede Anforderung wird als Story erstellt und dann in kleine Aufgaben unterteilt. Die Aufgabenstatus sind:
- neu - noch nicht begonnen
- in Bearbeitung
- Code-Review - die Aufgabe ist bereit zur Code-Überprüfung
- Test - fertiggestellt und bereit für Tester zum Testen
- gelöst - Aufgabe ist abgeschlossen und der Code in den Hauptentwicklungszweig integriert
- Nicht verrechenbar - Der Großteil unserer Projekte wird im Modell Zeit&Material abgerechnet - die Kunden zahlen stundenweise für die Zeit, die wir für sie arbeiten. Manchmal möchten wir jedoch Verbesserungen hinzufügen oder Werkzeuge erstellen, die uns bei der Arbeit an einem Projekt unterstützen, die der Kunde jedoch nicht angefordert hat. In solchen Fällen loggen wir die gesamte Zeit auf diesem Projekt. Hier loggen wir auch die Zeit, die nötig ist, um einen neuen Entwickler einzuarbeiten. Wir möchten fair sein und berechnen den Kunden niemals für Dinge, die sie nicht bestellt haben oder für die Zeit, die aufgrund von Änderungen im Team verwendet wurde.
Alle Arbeiten, die wir bei Droptica ausführen, werden über Redmine verfolgt und verwaltet. Dies gilt auch für alle Projekte, die nicht direkt mit Kundenarbeit in Zusammenhang stehen. Beispielweise:
- interne Projekte, z.B. diese Website
- Marketing, z.B. Erstellen von Inhalten für diese Website ;)
- Administrative Aufgaben (HR und andere)
Schnelle Kommunikation
Die Kommunikation zwischen den Teammitgliedern ist entscheidend, insbesondere in einem Unternehmen mit Mitarbeitern in mehreren Büros. Wir nutzen Redmine für die projektbezogene Kommunikation, aber oft ist es schneller, direkt an die betreffende Person oder das Team zu schreiben, anstatt darauf zu warten, dass sie auf Redmine antworten.
Anfangs nutzten wir Skype hierfür mit Chats für Projekte. Dann wechselten wir zu Hipchat (https://www.hipchat.com). Hipchat bietet coole Integrationen mit Redmine, Github und Bitbucket. Dies war ein großer Fortschritt.
In diesem Jahr haben wir uns jedoch entschieden, Slack zu verwenden. Slack bietet identische Integrationen, besitzt aber auch einige zusätzliche coole Funktionen:
- Benachrichtigungseinstellungen separat für jeden Kanal und separat für Mobilgeräte
- ein Bot, der Erinnerungen erstellen kann (z.B. für ein tägliches Standup)
- die Option „als ungelesen markieren“, die es Ihnen erleichtert, zu einem Gespräch zurückzukehren
Code-Erstellung
Die meiste Zeit während der Arbeit verbringen wir mit dem Schreiben von Code (PHP, CSS/SASS, JS HTML). In den letzten Jahren haben wir verschiedene IDEs getestet. Zunächst nutzten wir Netbeans und Eclipse, dann wechselten wir zu Sublime mit Plugins für PHP und Drupal. Seit einem Jahr verwenden wir nun jedoch PHPStorm. Unserer Meinung nach ist dies derzeit die beste IDE für PHP auf dem Markt. Sie ist nicht kostenlos, aber die Kosten werden schnell durch die erzielte Produktivität kompensiert. (PHPStorm hat eine 30-Tage-Testversion, sodass sie leicht ausprobiert werden kann.)
Wir würden gerne hören, wie Sie Ihre Arbeit und Projekte verwalten. Vielleicht kennen Sie bessere Anwendungen oder Software
Im nächsten Beitrag werden wir mehr über das Arbeiten mit Code, Code-Versionskontrolle, Entwicklungsumgebungen und Tests schreiben.