The Blog

ATDD/BDD Teamorientiert vs. Entwicklerorientiert

Ich möchte die Idee vorstellen, BDD Frameworks in zwei Kategorien zu unterteilen:

  • Entwicklerorientiert
  • Teamorientiert

Die Kategorisierung ist nicht wertend, entwicklerorientiert also nicht besser als teamorientiert oder umgekehrt.

Teamorientiert:

Diese Frameworks dienen primär der Kommunikation zwischen unterschiedlichen Projektteilnehmern, also zwischen Testern, Projektmanagern, Auftraggebern und Entwicklern. Tests beziehen sich auf Anforderungen, die von allen Projektteilnehmern verstanden werden.

Entwicklerorientiert:

Diese Frameworks bieten eine ausdrucksstarke Testbechreibungssysntax und werden primär von Entwicklern und  auch für (technische) Details, die für eine Kunden oder Projektmanager eher nicht interessant sind, verwendet. Entwicklerorientierte Tests, sind vielleicht als weiterentwickelte, bessere UnitTests zu sehen.

Im .NET Umfeld würde ich verschiedene Projekte vielleicht so verorten:

Hybride?

BDD/ATTDD Frameworks sind  sowohl teamorientiert als auch entwicklerorientiert verwendbar, unabhängig Ihrer eigentlichen Kategorie. Ein teamorientiertes Framework wie StoryQ kann für das Testen von Implementierungsdetails verwendet werden, nur ist das nur bedingt praktisch. StoryQ ist zu verbose. MSpec hingegen ist eignet sich sehr gut für das Testen von Details, bietet aber für die Kommunikation mit einem Kunden vielleicht zu wenig Information.

Aus dieser Sichtweise ergibt sich, das verschiedene Test-Frameworks, ein teamorientiertes und ein entwicklerorientiertes, im gleichen Projekt durchaus Ihre Berechtigung haben können.

Update 19.02.11:  Statt Entwickler- u. Teamzentriert, wird nun Entwickler- und Teamorientiert verwendet. Der letzte Absatz wurde überarbeitet.

2 Awesome Comments So Far

Don't be a stranger, join the discussion by leaving your own comment