GitLab als kostenloses Projektmanagement-Tool?
GitLab ist ein webbasierter Dienst für die Softwareentwicklung und Versionsverwaltung auf Basis von Git. Mit einer breiten Palette an Funktionen wie Continuous Integration (CI), Continuous Deployment (CD) und Monitoring ist es eine vielseitige DevSecOps-Plattform. Aber kann es auch das Projektmanagement unterstützen?
GitLab liefert zusätzlich Funktionen zur agilen Projektplanung und -verfolgung mit. Darunter sind beispielsweise Tickets, Milestones, Boards und sogar ein eigenes Wiki zur Dokumentation. Wie gut diese Funktionen zur Projektverwaltung genutzt werden können, wird in diesem Artikel genauer betrachtet.
Agile Projektmanagement-Tools
Sollen Projekte geplant und durchgeführt werden, braucht es Planung und Verwaltung von Aufgaben. Ohne angemessene Tool-Unterstützung verliert man hier schnell den Überblick. Typische Funktionalitäten solcher Tools sind die Dokumentation von Aufgaben und Bugs in Tickets, das Einplanen der Tickets in Sprints und die Verfolgung des Fortschritts.
Ein beliebter Vertreter ist Jira, welches diese Aufgaben zwar gut unterstützt, aber auch Lizenzkosten verursacht. Besonders für kleinere oder private Projekte kann und möchte man diese Kosten vielleicht nicht immer in Kauf nehmen. Hier kommt GitLab ins Spiel.
Was kann die Community Edition?
Neben Abomodellen, die zusätzliche Funktionen gegen eine monatliche Gebühr pro User freischalten, gibt es auch eine kostenlose GitLab Community Edition (CE). Diese kann im Gegensatz zum Mitbewerber GitHub sogar selbst gehostet werden.
Tickets heißen in GitLab „Issues“ und können mit Beschreibungen, Bearbeitern, Verlinkungen, Dokumenten, Kommentaren und vielem Weiteren angereichert werden. Die Planung der Aufgaben wird durch Fälligkeitsdaten und Meilensteine unterstützt. Zusätzlich können die Issues um individuell erstellte Label ergänzt werden. So können die Tickets visuell thematisch markiert und auch sortiert werden.
Daneben gibt es die sogenannten „Issue Boards“, die Kanban Boards ähneln. Mit ihnen kann man sich einen schnellen Überblick über Tickets verschaffen. Bei GitLab muss man sich aber nicht auf einen fixen Workflow beschränken, sondern kann nach Bedarf Spalten hinzufügen oder auch entfernen. Mehrere Boards können erstellt und den Spalten können frei Labeln zugeordnet werden. Die Spalten zeigen hier nun jeweils alle Tickets, die das entsprechende Label tragen. Last but not least gibt es auch ein eigenes Wiki, in dem mit Markdown-Seiten gestaltet werden können.
Allerdings fehlen in der CE einige Funktionen, die man zur Projektverwaltung durchaus braucht. Dazu gehören beispielsweise Epics. Epics sind Anforderungen, die auf einem hohen Level beschrieben werden. In Jira können sie genutzt werden, um große Blöcke der Arbeit zu beschreiben und diese dann in kleine Aufgaben herunterzubrechen. GitLab hat zwar auch Epics, aber nicht in der kostenfreien CE-Variante.
Auch Roadmaps sind nicht frei verfügbar. Sie können genutzt werden, um mehrere Epics und Milestones zu visualisieren. Einige dieser Einschränkungen können aber unter Zuhilfenahme von einem guten Plan und etwas Kreativität kompensiert werden.
Schlägt Kreativität fehlende Funktionalität?
Fehlt Funktionalität, kann man sich die Funktionen und Flexibilität des GitLab zu eigen machen. Dazu folgendes Beispiel:
Die Epic-Funktionalität ist, wie bereits erwähnt, hinter einer Paywall versteckt. Trotzdem werden Projekte schnell groß genug, um Tickets zumindest thematisch strukturieren zu wollen.
Ein Epic könnte zunächst einmal durch ein normales Ticket ersetzt und mit den zugehörigen Aufgaben verknüpft werden. So wird in jedem Ticket ein verknüpfter „Epic“ angezeigt und im „Epic“ selbst sind alle verwandten Tickets gelistet.
Noch nicht genug Übersicht? Wieso nicht Labels für die Epics erstellen. Allen zugehörigen Aufgaben-Tickets werden diese Labels nun zugeordnet. Jetzt sind die Aufgaben schon einmal optisch zugeordnet.
Fügt man nun auch noch ein Issue-Board hinzu, das alle diese „Epic-Label“ aufführt, kann man sich die offenen Tickets anzeigen lassen – sortiert nach ihren Epics.
Herausforderungen
Konzepte, wie oben beschrieben, sollten direkt bei Projektbeginn erdacht und aufgesetzt werden. Trotz Bulk-Edit-Funktion für Tickets können nachträgliche Änderungen in den Strukturen mit erheblichem Aufwand verbunden sein.
Daraus ergibt sich im Projektverlauf auch schnell eine der größten Herausforderungen im Umgang mit GitLab: Trotz all der Freiheiten ein Projekt zu gestalten, müssen auch diszipliniert die eigenen Strukturen eingehalten werden. Werden die Tickets beispielsweise nicht wie geplant mit Labeln markiert und zugeordnet, hilft die beste Projektkonfiguration auch nicht weiter.
Auch können neue Nutzer:innen schnell von der umfangreichen GUI oder der Möglichkeit Wiki-Seiten mit Markdown zu gestalten abgeschreckt werden. Das gilt insbesondere für all jene ohne technischen Background.
Fazit
Sowohl für Projektmanager als auch Entwickler:innen gilt: Es muss sich auf das Tool und die individuelle Projektkonfiguration eingelassen werden. Besonders im Vergleich zu Alternativen wie Jira, braucht es Zeit und die Akzeptanz des Teams, um Projekte erfolgreich in GitLab zu verwalten. Auch muss man sich im Klaren darüber sein, dass GitLab in der Community Edition nicht jede Funktion abdecken kann.
Nichtsdestotrotz ist GitLab eine mächtige Plattform, die Funktionen von DevOps und Projektmanagement vereint. Wer private oder kleinere Projekte planen und verwalten will – ohne Budget an Lizenzkosten zu verlieren – kann einen Blick auf GitLab werfen.
Falls wir Ihr Interesse an GitLab als PM-Tool geweckt haben, Sie aber noch Fragen zu dem Thema haben oder wir Sie dabei unterstützen können, Ihr On-Premises GitLab einzurichten, wenden Sie sich an unsere Sales-Abteilung. Unsere Expert:innen stehen Ihnen gerne zur Verfügung.
Seminarempfehlung
CI/CD IN DER CLOUD (KUERNETES) P-CI-01
Mehr erfahrenProjektmanager
Bei Updates im Blog, informieren wir per E-Mail.
Kommentare