Macht es mich zu einem schlechten Programmierer, wenn ich die Agile-Methode nicht mag? [geschlossen]

10

Ich mag die kleinen Iterationen. Ich mag die Unit-Tests. Ich mag Codeüberprüfung. Was ich nicht mag, ist der Anfang mit wenig oder keiner Dokumentation. Bin ich alleine dabei? Habe ich einfach ein Missverständnis des Prozesses?

Alle Gedanken wäre dankbar.

Dan Appleyard
quelle
2
Sprechen Sie zunächst nicht über die agile Methodik. Die Agile Bewegung ist wirklich eine Entwicklungsphilosophie, die die Übernahme einer Vielzahl von Praktiken und Methoden fördert.
Eric Wilson
1
"Haben Sie ein Missverständnis des Prozesses?" - ja
vartec
2
"Die agile Methodik, die strikt befolgt werden muss, ist keine echte agile Methodik"
1
Hallo Dan, deine Frage scheint kein lösbares Problem zu haben, und Fragen wie "Ich denke / fühle X, fühlen andere das genauso?" sind hier nicht zum Thema . Wenn Sie ein bestimmtes Problem haben, bei dem Sie Hilfe benötigen, können Sie dies gerne erfragen.
Jeder beginnt mit wenig oder keiner Dokumentation. Die Frage ist, wie Sie Ihre Zeit zwischen Dokumentation und Code aufteilen - die gesamte Dokumentation zuerst? Oder nur so viel, wie Sie brauchen, um loszulegen?
Carson63000

Antworten:

18

Denken Sie daran, Agile bedeutet nicht, dass keine Dokumentation vorhanden ist. Agile bedeutet, dass Sie verstehen, dass der "Client" nicht alles weiß, was er möchte, sodass er Ihnen kein umfangreiches Anforderungsdokument geben kann, das alles beschreibt. Agile befürwortet, dass Sie ständig mit dem Kunden sprechen und sagen: "Ist es das, was Sie wollen?" oder "Wie funktioniert X, wenn Y passiert?" So erstellen Sie gemeinsam die Anforderungen.

Das heißt, nein, es ist nichts falsch mit Ihnen, wenn Sie eine bestimmte Methodik nicht mögen. Die meisten Menschen scheinen sowieso verschiedene Aspekte verschiedener Methoden auszuwählen.

Wayne Molina
quelle
10
+1 Agil bedeutet keine Dokumentation . Die Leute scheinen zu denken, dass es Agile war, für das es steht; es ist nicht. Es legt Wert auf funktionierende Software gegenüber umfassender Dokumentation. Der Wert in der Dokumentation wird nicht negiert.
Aaron McIver
10

Die Agile Methodology besagt, dass Sie nur das tun, was Sie zu diesem Zeitpunkt benötigen. Wenn Sie mehr Dokumentation wünschen / benötigen als angegeben, ist dies ein Problem mit dem Prozess, und Sie sind es nicht. Es gibt Zeiten, in denen viel Dokumentation erforderlich ist, damit das Projekt fortgesetzt werden kann. Es ist nicht gegen Agile, dies zu brauchen. Sie können es nicht rechtfertigen, unter dem Deckmantel von Agile nachzulassen. Dies ist tatsächlich ein großes Problem, das ich gesehen habe. Viele Leute werden von vornherein faul und schreiben es dem Prozess zu. Die eigentliche Frage muss gestellt werden: "Haben die Entwickler das, was sie brauchen?" Wenn die Antwort Nein lautet, muss mehr Arbeit geleistet werden.

Jetzt kann dies auf ein Extrem gebracht werden, und jemand kann sagen: "Nun, ich kann nicht daran arbeiten, wenn nicht das gesamte Programm dokumentiert ist." Manchmal stimmt das, aber das Team muss nachsehen, ob dies wirklich notwendig ist.

kemiller2002
quelle
8

Ich verstehe nicht, warum es Sie zu einem schlechten Programmierer machen würde, nur weil Sie eine bestimmte Methodik nicht mögen. Es kann für Sie schwierig sein, sich in Shops zu integrieren, die es implementieren. Davon abgesehen habe ich einige Zweifel, wie effektiv es überall umgesetzt wird.

Was Sie zu einem schlechten Programmierer macht, ist schlechter Code - einfach, wie ich weiß -, aber Sie können alle Methoden mögen / brillant sein, die Sie mögen, und trotzdem ein schlechter Programmierer sein, weil Ihr Code nicht angemessen ist.

Versuchung
quelle
3

Die Grundidee von Agile ist, dass Sie keine ferne Zukunft vorhersehen können, wenn Sie nicht die Gabe der Vorerkennung haben. Sie können also nicht dokumentieren, was Sie nicht vorhersehen können.

Das heißt nicht, dass Sie überhaupt keine Dokumentation haben. Sie dokumentieren das technische Design für aktuelle Anforderungen (und natürlich dokumentieren Sie die Anforderungen selbst) und dokumentieren die aktuelle Implementierung. Es wird nicht erwartet, dass Sie dokumentieren, wie das System nach 10 weiteren Sprints aussehen wird, da sich die Anforderungen möglicherweise ändern, wenn Sie in einer dynamischen Welt leben.

vartec
quelle
2

Ich denke, Sie verstehen den Prozess falsch. Welche Dokumentation möchten Sie? Bevor Sie anfangen, brauchen Sie eine Art Ziel. Ich beginne mit Anwendungsfällen, die ich aus Gesprächen mit meinem Kunden erhalte. Ich verbringe keine Tage damit, ausgefallene Diagramme zu erstellen. Wir reden, und dann schreibe ich eine Wiki-Seite, und wir gehen das durch. Dann schreibe ich einige Tests. Dann schreibe ich einen Code.

Kevin Cline
quelle
2

Es gibt eine unendliche Kombination von Teamgrößen, Domänen, Sprachen, Persönlichkeiten, Budgets und Anforderungen. Es gibt keine Methode, die für jede Situation am besten geeignet ist. Ebenso haben viele Menschen persönliche Vorlieben und Stile.

Auch wenn Sie es nicht mögen, lohnt es sich, neue Ideen auszuprobieren und die Ergebnisse kritisch zu analysieren. Es gibt viele Dinge, die ich nicht mag, aber nach einer Weile des Lernens lerne ich zu lieben. Wie Oliven.

Die andere Sache ist, dass sich die Mode regelmäßig ändert. Ich bin mit Waterfall aufgewachsen und habe in einem Team gearbeitet, das versucht hat, alles in Rational Unified Process zu tun, was zu dieser Zeit das "Beste" war. Bald wird Agile durch etwas Neueres und Besseres ersetzt und niemand wird das Agile-Wort wieder erwähnen.

Sie brauchen also keine Methode wie Agile. (Ich persönlich mag es nicht) Es macht dich nicht zu einem schlechten Programmierer.

Richard
quelle