2010-01-29 7 views
8

Gerade besuchte eine Präsentation, bei der ein Testunternehmen anzeigte, dass V-model testing in einem agilen Entwicklungsteam verwendet werden kann, das sich mit Java und C# entwickelt.
Ist die V-Modell-Testmethodik für Agile-Entwicklungsteams nützlich?

Ich würde testdriven Entwicklung und Automatisierung der Abnahmetests vor V-Modell testen bevorzugen.
Nicht sicher, ob V-Modell-Tests und Agil-Tests als gleich angesehen werden können.

Suchen Sie nach Ihren Testerfahrungen oder Meinungen zur Verwendung von V-Modelltests in Agile-Teams.
Wenn Sie V-Modell-Tests in agilen verwenden, wie machen Sie das (oder macht es keinen Sinn)?

Update: Thoughtworks presentation (Agile vs v Modell)

+3

V-Modell ist sooo letztes Jahrhundert ;-) –

Antwort

5

V-Modell ist in meiner Firma weit verbreitet. Ich muss hinzufügen, dass es IMHO bessere Entwicklungsmodelle gibt, aber V-Model kann immer noch effektiv bei der Entwicklung von Großsystemen verwendet werden, bei denen Sie KEINE iterative Entwicklung verwenden.

Dennoch ist es meine Idee, dass testgetriebene Entwicklung noch auf V-Modell angewandt werden, als Teil der Einheit Testphase und sogar auf Integration Testphase, solange Sie automatisieren können, dass als Teil des Entwicklungszyklus.

V-Modell jedoch sieht Systemtests als Test, die nach der Entwicklung des Produkts auftritt, wird betrachtet vollständig, so testgetriebene Entwicklung keine Anwendung findet. Sicher, Sie können es durch die Verwendung von Tools, Skripten oder Programmen automatisieren, aber Sie entwickeln Ihren Code nicht mehr. Bei Systemtests kümmert sich der Code nicht mehr nur um Spezifikationen. Dies geschieht, weil Ihre Testeinheiten unvollständig sein könnten.

Schließlich Benutzerakzeptanz, in V-Modell sollte nicht vollständig automatisiert werden können, weil es ist, wenn der letzte Benutzer am System sucht und entscheidet, ob es die Anforderungen haftet oder nicht. Natürlich wird der Benutzer ein Skript auf seinen Händen haben, um zu wissen, was er/sie testen sollte, und im Falle von, sagen wir, Batch-Systemen wird es eine Datenversorgung geben, aber keinesfalls sollte ein Skript bestimmen der Erfolg dieser Phase.

Aber lassen Sie uns auf die Frage zurückkommen. Was ich gerade gesagt habe, ist, dass TDD und Automatisierung als Implementierung von Testphasen im V-Modell verwendet werden können. Also, wenn Sie V-Model-Tests mit Agile-Entwicklung verwenden können, als Präsentation, die Sie gesehen haben, dann kann ich auch TDD- und Automatisierungstechniken verwenden.

Allerdings bin ich mir nicht sicher, dass Sie wollen. Ich weiß nicht, wie man das V-Modell auf Agile anwenden könnte oder ob es kohärent wäre, da das V-Modell nicht agil ist.

+0

@Bruno Brant: Danke, für deine gute Antwort. (+1) –

5

Test-getriebene Entwicklung ist etwa Spezifikation, nicht zu testen. Dies ist kein Antagonist mit einem V-Ansatz.

Auf der anderen Seite impliziert V-Modell einen einzigen langen Entwicklungszyklus. Dies ist Antagonist mit einem agilen Ansatz.

+1

Heck, sollte lernen, solche Gedanken zusammenzufassen. Genau mein Standpunkt. –

+0

@mouviciel: Kurz und süß +1;)) –

+0

Es ist einfach: Ich bin nicht fließend genug in Englisch, so dass ich nicht wissen, wie man Argumente wie in Ihrer ausgezeichneten Antwort entwickeln. – mouviciel

1

V-Modell-Tests passen nicht wirklich zum Ethos der agilen Entwicklung. Kurz gesagt, obwohl es machbar ist, dass es getan werden könnte, würde es die Natur des agilen Prozesses gefährden.

Eine der wichtigen Eigenschaften von agile ist die Fähigkeit, sich an Veränderungen anzupassen. Das V-Modell unterstützt es nicht wirklich gut.

Verwandte Themen