
Softwarelieferung? Remote-SCRUM-Team
Die Frist ist heute. Ein Remote-Entwicklungsteam hat mehrere Wochen an Ihrer Software gearbeitet. Sie erhalten den lang erwarteten Zugang zum System. Sie überprüfen es und sind mit den erzielten Ergebnissen nicht zufrieden.
Alles, was nötig war, um dieses Problem zu vermeiden, ist ein Team mit Erfahrung in Technologie und die Arbeit mit SCRUM.
Was ist SCRUM
Wikipedia definiert SCRUM als ein agiles Rahmenwerk zur Arbeitsverwaltung. Es ist ein Ansatz, der in vielen Unternehmen zur Softwareentwicklung verwendet wird. Die vollständige Definition finden Sie hier https://en.wikipedia.org/wiki/Scrum
SCRUM löst die meisten Probleme, die während der Softwareentwicklung auftreten
Das ist meine Meinung und viele Leute stimmen dem zu. Ich entwickle kommerzielle Projekte seit 2008. Ich habe als Programmierer angefangen. Derzeit übernehme ich die Projektaufsicht.
Bei Droptica arbeiten Drupal-Entwickler in Teams, die komplexe Projekte liefern. Die Einführung der SCRUM-Methode bei Droptica hat die meisten Probleme gelöst. Welche genau?
Hier sind die wichtigsten davon:
- Der Kunde wurde nicht regelmäßig über den Fortschritt der Arbeiten informiert – der Kunde war unzufrieden. Sprints, Reviews, Backlog-Verfeinerung – all das zwingt zu einem ständigen Kontakt mit dem Kunden
- Die Aufgaben wurden nicht durchdacht, bevor sie begonnen wurden, daher dauerten sie lange – der Kunde war unzufrieden. Backlog-Verfeinerung und Planung – diese Veranstaltungen sorgen dafür, dass das Team wirklich über die Erledigung jeder Aufgabe nachdenken muss.
SCRUM spart Geld
Sie können sich fragen: Wie ist das möglich, wenn Sie am Anfang die genaue Dauer und die Kosten des Projekts nicht kennen? Die Antwort findet sich im vorherigen Absatz:
- Regelmäßige Meetings mit dem Kunden (Product Owner) zwingen ihn dazu, darüber nachzudenken, welche Aufgaben tatsächlich benötigt werden und welche abgelehnt werden können.
- Die Analyse der Aufgaben durch das Team zusammen mit dem PO ermöglicht es oft, bessere Wege zur Umsetzung oder Ablehnung zu finden.
SCRUM wird oft als die Kunst bezeichnet, maximale Arbeiten nicht zu erledigen. Sie maximieren die Ablehnung der Aufgaben, die aus Sicht Ihres Unternehmens nicht erforderlich sind. Sie erledigen nur die Dinge, die dem System einen besonderen Wert bringen. Alles andere landet direkt im Papierkorb.
Warum so viele Meetings?
Sprint-Planung, tägliches Scrum, Retrospektive, Review, Backlog-Verfeinerung. Die Liste der Meetings ist lang. Es besteht kein Zweifel, dass sie Zeit in Anspruch nehmen. Der Kunde erwartet oft, für Programmierung zu zahlen, nicht für Gespräche und Meetings.
Früher dachte ich genauso. Nach einer Testimplementierung von SCRUM in einem der Projekte habe ich jedoch meine Meinung geändert. Jetzt möchte ich alle unsere Projekte – für Kunden und intern – mit SCRUM entwickeln. Ich sehe, dass es eine große Menge an Zeit und Geld spart. Das gleiche können die Kunden bestätigen, mit denen wir jetzt arbeiten und früher keine spezifische Arbeitsweise hatten.
Abraham Lincoln sagte einmal: „Wenn ich acht Stunden hätte, um einen Baum zu fällen, würde ich sechs Stunden damit verbringen, meine Axt zu schärfen.“
Die Meetings garantieren ein gutes Nachdenken über die Aufgaben, das Festhalten an einer gemeinsamen Richtung und die Verfolgung der gleichen Geschäftsziele. Es lohnt sich definitiv.
Wie lange wird es dauern und wie viel wird es kosten?
Jeder Kunde stellt diese Frage am Anfang. Es ist nicht einfach, sie zu beantworten. Das Tempo jedes Programmierers ist unterschiedlich, es gibt unterschiedliche Arbeitsbedingungen, Feiertage, Urlaub, die Anforderungen ändern sich (vom Kunden, gesetzliche Anforderungen, etc.). Ein längeres Projekt bedeutet auch eine sich häufig ändernde Spezifikation. Solche Änderungen verändern die Kosten und die Zeit.
Story Points sind eine Lösung für das Problem. Es ist ein sehr gutes Werkzeug zur Schätzung der Anzahl von Aufgaben, die in einem Sprint (Phase) erledigt werden können. Nach nur 2-4 Sprints können Sie das durchschnittliche Tempo des Teams sehen. Nach dieser Zeit kennt das Team das Projekt gut, kennt den Kunden gut und plant für die Zukunft. Das Team kann sehr genau die Aufgaben schätzen, die im Backlog warten. Der Product Owner, der das Tempo des Teams kennt, kann die Anzahl der Sprints und die Gesamtkosten berechnen.
Im Vergleich zur Erstellung einer detaillierten Spezifikation zu Beginn des Projekts liefert ein solcher Ansatz bessere Schätzungsergebnisse.
SCRUM reicht nicht aus, wenn das Team keine Erfahrung mit der Technologie hat
Wenn das Team mit SCRUM arbeiten wird, aber mit der Technologie nicht vertraut ist, wird es nicht in der Lage sein, qualitativ hochwertige Software in angemessener Zeit zu liefern. Nur die Kombination aus SCRUM und dem teamerfahrenen Einsatz der gegebenen Technologie gewährleistet signifikante Effekte. Der Kunde wird mit einer solchen Kombination definitiv zufrieden sein.
Warum ist ein Remote-Team besser?
Was ist der Unterschied zwischen einem Remote-Team und einem lokalen Team? Eigentlich – nur ihr Standort. Wenn Sie ein lokales Team haben können, lohnt es sich, diese Option zu wählen. Es wird bequemer sein.
In der heutigen IT-Welt ist es jedoch schwierig, ein Team von 2, 3 oder mehr Spezialisten in kurzer Zeit für ein größeres Projekt zusammenzustellen. Deshalb sollten Sie über ein Remote-SCRUM-Team nachdenken. Ein Team, das bereits Erfahrung in der Zusammenarbeit mit einem Remote-Kunden hat. Indem Sie die Optionen auf die ganze Welt ausweiten, haben Sie mehr Auswahlmöglichkeiten.
Wie kann ich überwachen, was ein Team Tausende von Meilen entfernt tut?
SCRUM hat eine Möglichkeit dafür: Sprint Burndown Chart. Es ist ein Diagramm, das täglich aktualisiert wird. Es zeigt den regulären Fortschritt der Projektentwicklung. Es zeigt, ob das Team den Sprint-Plan umsetzt. Es ist das beste Werkzeug zur Überwachung des Fortschritts der Arbeiten. Mit Waterfall erfahren Sie normalerweise am Ende einer größeren Phase von Verzögerungen. Mit SCRUM kann der Kunde täglich überprüfen, welchen Fortschritt das Team gemacht hat. Sie können sicher sein, dass das Team arbeitet und nacheinander Teile der Software liefert.
Wie kommuniziere ich mit dem Team?
Bei Droptica haben wir 3 Möglichkeiten dafür:
- Jira - es ist das Hauptkommunikationssystem; hier haben wir alle User Stories und Aufgaben
- Slack - für kurze Textfragen, wird praktisch jeden Tag verwendet
- Skype/Google Hangouts/Zoom - für Videoanrufe mit Bildschirmfreigabe
Diese drei Formen der Kommunikation gewährleisten zu 100 % eine sehr gute Kommunikation zwischen dem Team und dem Product Owner.
Wenn möglich, trifft sich das Entwicklungsteam von Zeit zu Zeit mit dem Product Owner in unserem Büro oder im Büro des Kunden. Unsere Büros befinden sich in der Nähe des Flughafens, wir laden unsere Kunden gerne ein, sie zu besuchen.
Wie kann ich überprüfen, ob ein Remote-SCRUM-Team in meinem Fall funktioniert?
Wenn Sie ein Projekt für mindestens 2-3 Personen für ein paar Sprints haben, wird ein gut durchgeführtes SCRUM Ihnen sehr gute Ergebnisse liefern.
Wenn Sie sich nicht sicher sind, ob SCRUM für Sie funktioniert, testen Sie es. Bestellen Sie 2-3 Sprints und sehen Sie, welche Ergebnisse Sie erhalten werden. Es ist ein kleiner Kostenaufwand im Rahmen von Projekten, die mehrere Monate dauern, und ein solcher Ansatz wird eine eindeutige Antwort auf die Frage geben, ob es sich lohnt, SCRUM zu verwenden.
Wenn Sie noch Zweifel an einem Remote- SCRUM-Team haben, beantworte ich gerne Ihre Fragen und teile meine Erfahrungen. Kontaktieren Sie mich unter [email protected] oder schreiben Sie Ihre Frage in den Kommentar.