Was könnte eine gute Teambuilding-Aktivität sein, um die Schätzfähigkeiten zu verbessern? [geschlossen]

9

Ich stelle eine Präsentation zusammen, um sie einigen meiner Teamkollegen (allen Entwicklern) zu liefern, und ich möchte eine kurze Aktivität zur Teambildung einschließen, die sich auf die Verbesserung der Schätzfähigkeiten konzentriert. Hat jemand Vorschläge oder kennt er Teambuilding-Aktivitäten, die ich nutzen könnte?

rauben
quelle
2
Eine Verbesserung der Schätzung kann mit einer kurzen Aktivität nicht erreicht werden. Es muss eine langfristige Anstrengung sein, Ihre Schätzungen, tatsächlichen Zeiten und eine Art Postmortem zu verfolgen, um festzustellen, warum die Schätzung und die tatsächliche Zeit unterschiedlich waren. Es ist auch eine Fähigkeit, die sich im Laufe der Zeit entwickelt - Sie werden besser, indem Sie Ihre Fehler durch Analyse abschätzen und daraus lernen.
Thomas Owens
Hast du ein Problem? Wie genau sind Ihre Schätzungen und sollten Sie sich die Zeit nehmen, sie zu verbessern?
JeffO
@ Thomas Owens, mir ist bewusst, dass dies mit einer kurzen Aktivität nicht möglich ist. Ich versuche nur, das Bewusstsein für die Wichtigkeit der Entwicklung guter Schätzfähigkeiten zu schärfen. Ich hätte in meiner Frage genauer sein sollen.
Rob
2
@ Jeff O, kein Problem - dies sind Neueinstellungen, einige mit weniger Erfahrung, und ich möchte ihnen helfen, an der Schätzung im Allgemeinen zu arbeiten.
Rob

Antworten:

8

Schauen Sie sich Joel On Software's Evidence Based Scheduling an. Auf diese Weise können Benutzer auf relativ einfache Weise herausfinden, wie genau die Schätzung erfolgt.

Der beste Weg, um zu lernen, wie man schätzt, besteht darin, gute Anforderungen zu haben, zu üben, zu üben und zu üben. Wenn Sie ihnen Dinge wie evidenzbasiertes Planen beibringen, wird die Praxis effektiver, aber nichts kann das tatsächliche Üben ersetzen.

Malfist
quelle
Ich liebe EBS (ich bin ein begeisterter FogBugz-Benutzer). Ich habe jedoch nicht daran gedacht, es als Beispiel zu verwenden - ein guter Vorschlag. Ich werde mich davon inspirieren lassen.
Rob
6

Präsentieren Sie ein Beispielproblem mit Minecraft.

Der Kunde benötigt eine braune Stufenpyramide mit 20 x 20 Blöcken. Die Pyramide benötigt auch einen Wassergraben, der mindestens 10 Blöcke breit ist.

Geben Sie ihnen 3 Minuten Zeit, um einen einfachen PSP und eine Schätzung zu erstellen.

Sagen Sie 2 Minuten später, dass der Kunde seine Meinung geändert hat und jetzt eine 30x30-Pyramide benötigt. Sagen Sie ihnen, sie sollen ihre Schätzungen in der verbleibenden Minute überarbeiten.

Sagen Sie ihnen am Ende der Zeit, sie sollen ihre Stifte ablegen und jetzt sagen, dass die Entwickler mit der Arbeit an dem Projekt beginnen, aber der Kunde ist verwirrt, weil keine Brücke über den Wassergraben führte.

Sagen Sie ihnen, dass die Entwicklung der Brücke X Stunden dauern würde, und bitten Sie alle, die unterschätzt haben, aufzustehen.

Dies wird den Punkt nach Hause fahren.

maple_shaft
quelle
2
Ich mag das, aber wenn Sie mit Minecraft nicht vertraut sind, bin ich mir nicht sicher, wie Sie eine Schätzung finden können, die Sinn macht. Wie würden Sie die Zeit quantifizieren, die zum Bau einer braunen Stufenpyramide benötigt wird?
Rob
1
@ Thomas Owens, ich denke, maple_shaft ist es, den Entwicklern zu zeigen, wie wichtig es ist, diese Art von Anforderungen zu entdecken. Als Berater habe ich persönlich viele Beispiele für lächerlich offensichtliche Dinge gesehen, nach denen ein Benutzer hätte fragen sollen, aber nicht, weil er nicht wusste, dass es das war, was er brauchte. Ich selbst und meine Entwickler sind alle Berater, und in unserer gegenwärtigen Situation haben wir nicht den Luxus guter Anforderungsingenieure. Deshalb versuche ich, sie dazu zu bringen, diese Art von Entdeckungsfragen ihrer Kunden zu stellen, um ihre Schätzungen zu verbessern .
Rob
2
@ unforgiven3 Das hat aber nichts mit Schätzung zu tun. Die Aufgabe des Anforderungs-Engineerings liegt möglicherweise bei einem Entwickler, aber Sie können Ihre Schätzungen nur auf bekannten Anforderungen basieren. Die Verbesserung Ihrer Fähigkeit, Anforderungen zu analysieren, zu verifizieren, zu validieren und zu ermitteln, ist nicht mit der Verbesserung Ihrer Fähigkeit verbunden, abzuschätzen, wie lange es dauern wird, eine Aufgabe auszuführen. Anforderungen ändern sich, Schätzungen ändern sich daher, aber es ist unmöglich zu schätzen, was Sie nicht wissen, und Sie sollten es nicht versuchen.
Thomas Owens
1
@ Thomas Owens, ich stimme zu, es ist unmöglich zu schätzen, was Sie nicht wissen - was genau mein Punkt ist - Sie müssen die Anforderungen für ein Feature ermitteln und Annahmen darüber validieren, um eine anständige Schätzung zu erstellen. Ich stimme jedoch nach einiger Überlegung zu, dass es nicht mit der Verbesserung der Fähigkeit zur Schätzung vereinbar ist - vielleicht wäre es unmittelbarer, die Aktivität auf das Erkennen von Anforderungen zu konzentrieren, als eine Schätzaktivität. Gute Punkte - sie lassen mich definitiv denken, dass ich mich vielleicht auf die falsche Fähigkeit konzentriere, mich zu verbessern.
Rob
1
@ unforgiven3 Ein guter Ingenieur sollte immer daran arbeiten, beide zu verbessern. Ich war in einer Position, in der ich nicht mit dem Anforderungs-Engineering beauftragt war, aber mir wurde eine Spezifikation ausgehändigt, die Probleme aufwies. Die Fähigkeit, diese zu sehen und die richtigen Fragen zu stellen, ist für jeden, der Software entwickelt, von wesentlicher Bedeutung und muss bearbeitet werden. Bei der Schätzung habe ich meine Schätzungen jedoch immer auf die Spezifikation gestützt, auch wenn es Fragen gibt. Ich lasse nur ein größeres Fenster für Fehler (75% Chancen statt 85% oder ein etwas größeres Fenster).
Thomas Owens
1

Ich schlage einen Labyrinthgenerator / -löser für folgende Punkte vor:

  • Es macht Spaß zu tun
  • Sie können nicht zum ersten Mal an alle Fälle denken
  • Das Generieren und Lösen von Dingen ist ziemlich komplementär
  • Dies umfasst das Back-End mit Datenspeicherung bis zum Front-End mit Datenladen
  • Personen können viele Punkte zugewiesen werden: Dateispezifikation, Anzeige, Generierung, Lösung, Optimierung, Test usw.
Schneebesen
quelle
1

Sie können das "Wie lange würden Sie brauchen, um dies zu schreiben?" Spiel. Ähnlich wie bei einer Gruppe von Menschen, die damit prahlen, wie sie in X Stunden nach Las Vegas fahren können (wobei die Zahl X normalerweise mit jedem Prahler abnimmt, bis jemand behauptet, dass sie dies in weniger als einer Stunde tun können). Also für Programmierer: Werfen Sie ein einfaches Ziel aus und sehen Sie, was jeder Einzelne sagt und ob es einen Konsens der Gruppe oder herausragende Meinungen gibt. Wie lange würdest du brauchen, um Hallo Welt zu schreiben? Was bedeutet "schreiben", bedeutet das auch "laufen" und "testen"? Benötigt es zuerst eine Simulationsumgebung? Auf welcher Plattform und auf welchem ​​Cross-Compiler sind die Tools bereits installiert und bereit? etc etc .. "Hallo Welt" kann 4 Tage dauern, um auf einer eingebetteten Plattform zu "schreiben" (Tools installieren, Plattform bereit machen,

Nachdem das Team entschieden hat, wie lange das Ziel dauern könnte, messen Sie, wie lange es tatsächlich dauert (möglicherweise nicht für das vorgeschlagene Ziel, sondern für ein reales ähnliches), oder rufen Sie ein vorheriges Projekt mit einem sehr ähnlichen Ziel auf. Vergleichen Sie die Schätzung mit der tatsächlichen. Übertreiben Sie den Fehler zwischen Schätzung und Ist wild und veröffentlichen Sie eine Schlussfolgerung für alle.

Jonathan Cline IEEE
quelle