Derzeit verwenden wir an meinem Arbeitsplatz FogBugz, um alle unsere Funktionen und Fehler für unsere verschiedenen Webanwendungen zu verwalten.
Wenn einer unserer Webanwendungen eine neue Funktion hinzugefügt werden soll, wird ein neuer Fall erstellt. Zum Beispiel "CSV-Upload-Formular erstellen".
Ich arbeite dann an dem Fall und zeichne die Zeit auf, die ich dafür aufgewendet habe. Sobald dieser Fall abgeschlossen ist, löse ich ihn und er wird dem Fallöffner (normalerweise dem Projektmanager) zugewiesen, der den Fall dann schließt.
Wenn die Funktion Fehler enthält, öffnet mein Projektmanager den Fall erneut und weist ihn mir mit einer Aufzählungsliste von Fehlern zu.
Meiner Meinung nach sollten diese mit Aufzählungszeichen versehenen Fehler als einzelne Fehlerfälle geöffnet werden, damit sie leichter nachverfolgt werden können und nicht mit den Originalnotizen zu Funktionsfällen überladen werden.
Meine Manager sind mit meiner Aussage nicht einverstanden, dass es einfacher ist, die Gesamtzeit für die Funktion zu berechnen, wenn alles in einem Fall ist.
Darüber hinaus glauben sie, dass dies für unsere Kunden weniger verwirrend ist, da sie nur eine Fallnummer für die Funktion haben. Ich möchte jedoch betonen, dass die Fehler als separate Fälle behandelt werden sollten, da dies nach Abschluss des ursprünglichen Falls erfolgt.
Habe ich Recht, wenn ich sage, dass Fehler als neuer Fall wieder geöffnet werden sollten? Und was sind die Vor- und Nachteile jeder Art, dies zu verwalten?
Antworten:
Sowohl Sie als auch Ihr Manager haben gute Gründe, so zu handeln, wie es jeder von Ihnen bevorzugt, und es besteht kein wirklicher Kompromissbedarf. Es gibt eine Lösung, die für mich funktioniert und beide Probleme angeht.
Für Fälle wie Ihren verwende ich einen High-Level-Task- / Low-Level-Sub-Tasks-Ansatz (Konzept, das ich von JIRA ausgewählt habe , kann nicht sagen, ob die Unterstützung von FogBugz explizit so aussieht ). Auf diese Weise werden Listen mit Aufzählungszeichen für "Clients" für Aufgaben auf hoher Ebene verwendet, während sich für mich wichtige "Entwickleriterationen" in Unteraufgaben widerspiegeln.
Wenn eine übergeordnete Aufgabe "wieder geöffnet" wird, erstelle ich eine neue Unteraufgabe, um den zusätzlichen Aufwand für sich selbst zu verfolgen .
Auf diese Weise kann der Entwickler alle Permutationen, Perversionen und Wendungen, die durch die Feature-Spezifikation durchlaufen wurden, klar wiedergeben und den Manager den Kunden so präsentieren, als ob sie perfekt wären. Übrigens hat eine perfekte Präsentation für mich als Entwickler ihren Wert - denn eine einfachere Lesbarkeit für Kunden hilft dabei, genauere Anpassungen vorzunehmen.
Dies ermöglicht natürlich auch eine klare Begründung in Fällen, in denen die Implementierung von Features viel länger dauert als ursprünglich angenommen.
Was die Zeiterfassung pro Aufgabe oder Unteraufgabe betrifft - da JIRA die Nachverfolgung von Unteraufgaben in eine übergeordnete Zusammenfassung einbezieht, ist es für Manager akzeptabel, dass ich die Zeit in Unteraufgaben verfolge. Selbst wenn dies nicht der Fall wäre, könnte ich mit der formalen Nachverfolgung der Zeit in der "übergeordneten" Aufgabe leben. In diesem Fall würde ich nur Kommentare zu Unteraufgaben verwenden, um anzugeben, wie viel Zeit für eine bestimmte Iteration aufgewendet wurde.
quelle
Wenn dies alles geschieht, bevor die Funktion für den Kunden freigegeben wird, haben Sie nur einen Fall. Das Argument hier ist, dass der Fall nicht wirklich vollständig ist, bis er die Qualitätssicherung bestanden hat und zur Veröffentlichung bereit ist. Die anderen Vorteile - eine einzelne Fallnummer, auf die sich die Abrechnung und der Endbenutzer beziehen können, sind gültig und wichtig.
Sobald die Funktion veröffentlicht wurde und Fehler gefunden wurden, sollten diese als neue Probleme in Ihrer Problemverfolgungssoftware angezeigt werden.
quelle
Ich stimme Ihnen voll und ganz zu, ebenso wie FogBugz - deshalb werden verschiedene Kategorien für Fehler und Funktionen definiert. FogBugz wurde nicht als Tool zur Verfolgung der Zeitnutzung entwickelt. Dies ist ein zufälliges Nebenprodukt der Einführung einer evidenzbasierten Planung.
Fehler für ein abgeschlossenes Feature können mit dem Hauptfall für das Feature verknüpft werden (in FogBugz durch Verwendung eines Tag-Namens oder eines Querverweises oder durch Erstellen von Unterfällen). Ich kann sehen, dass dies ein bisschen mehr Arbeit für Ihre PM ist, um Informationen in mehreren Fällen zu konsolidieren, aber es ist oft auch sinnvoll, die für die ursprüngliche Entwicklung aufgewendete Zeit und die für die Wartung aufgewendete Zeit, insbesondere für Festpreisverträge, zu trennen Sie verlieren die Fähigkeit, dies zu tun, wenn Sie alles in einem Fall zusammenfassen.
quelle
Ich bin der Meinung, dass ein Bug-Tracker nach dem Schließen eines Tickets ohnehin in der Lage sein sollte, Links zu anderen Fällen zu erstellen. Ich möchte darauf hinweisen, dass das Erstellen neuer Fehler und das Verknüpfen dieser Fehler mit dem ursprünglichen Fall bessere Vorteile bietet als die von Ihnen beschriebene Methode.
Der einzige Vorteil Ihres aktuellen Setups besteht darin, dass es für Benutzer, die nicht die Hauptbenutzer des Systems sind, äußerst einfach ist. Der Zweck eines Bug-Trackers besteht darin, dass der Entwickler einen Ort hat, an dem er alles über einen Fehler an einem einzigen Ort melden kann, der auch so freundlich ist, dass andere den Fortschritt sehen können. Ihr aktuelles System scheint fast jeden Teil davon zu untergraben.
quelle
Werden die Fehler gefunden, bevor oder nachdem das Produkt an Kunden versendet / freigegeben wurde?
Wenn es vor einer Veröffentlichung liegt, sollten die Fehler anhand des Originaltickets verfolgt werden.
Wenn es nach einer Veröffentlichung ist, sollte jeder Fehler sein eigenes Ticket sein.
quelle
Wo ich arbeite, können nur die QS-Leute einen Fall schließen. Wir haben Kontrollkästchen für Code Reviewed, Engineer Tested und Demo to Stakeholder (in Ihrem Fall Project Manager). Wenn das QA-Team einen als "Fertig" gekennzeichneten Fall sieht, in dem nicht alle diese Felder markiert sind, wird es als rückgängig gemacht markiert und an uns zurückgesendet.
Sobald ein Fall alle diese Phasen durchlaufen hat und die Qualitätssicherung den Fall abgeschlossen hat, werden alle neu gefundenen Probleme als Fehler protokolliert.
Dieses System scheint für uns gut zu funktionieren.
quelle
Ich denke, Sie können in beide Richtungen argumentieren. Ich würde versuchen, mich mit dem Premierminister zusammenzusetzen und zu erklären, warum Sie glauben, dass diskrete Probleme Ihnen helfen werden. Ich persönlich möchte, dass jeder ToDo-Gegenstand sein eigenes Ticket ist, aber ich kann sehen, warum er es so will.
quelle