Neueste Events

[mehr]

Effiziente Dokumentation in Entwicklungsteams

mit Strategie zum Erfolg

Kaum ein Entwicklungsteam ist mit seiner Dokumentation glücklich. Oft fehlen dringend benötigte Informationen, können nicht gefunden werden oder sind einfach hoffnungslos veraltet. Dabei wird meistens nicht zu wenig, sondern nur zu ineffizient dokumentiert. Ein Workshop kann Euch dabei helfen, eine gute Dokumentationsstrategie zu finden. Getreu dem agilen Prinzip: “Maximiere die Arbeit, die Du nicht tust.”

[Read More]

Agile Traceability mit TDD und Continuous Integration

Wenn wir Software entwickeln, ist es unser Ziel, regelmäßig ein Produkt zu liefern, dass alle Anforderungen erfüllt. Um das auch nachzuweisen zu können, bräuchten wir eine Rückverfolgbarkeit zwischen den Quellen einer Anforderung und unseren Liefergegenständen, und zwar in beide Richtungen. Ein weit verbreitetes Werkzeug hierfür ist die Traceability Matrix, die jedoch meist mit einem hohen Pflegeaufwand verknüpft ist, zumindest, wenn man eine einigermaßen hohe Aktualität und Korrektheit erreichen möchte. Die Testgetriebe Entwicklung in Verbindung mit dem Continuous-Integration-Ansatz bietet uns hier eine schlanke und gleichzeitig validierbare Alternative.

[Read More]

The Agile QA Shift

It's a matter of timing

Development, Testing, Operation. This is the traditional Mantra of the Software Development process. We repeated it so many times that even in an agile context we stick to it. Testers are now part of the development team and they test the product increment at the end of each sprint, but the QA still takes place between the development and operation phases. But if we really want to benefit from the crossfunctional Team we have to get rid of this limitation and shift our testing left and right along the process.

[Read More]

The Agile QA Shift

Auf das Timing kommt es an

Entwickeln, Testen, Betreiben. Das ist das uralte Mantra der Softwareentwicklung. Wir haben es so oft wiederholt und verinnerlicht, dass wir uns selbst in einem agilen Umfeld nur schwer davon lösen können. Die Tester sind zwar nun Teil des Entwicklungsteams und am Ende eines jeden Sprints testen diese auch regelmäßig das Produktinkrement, aber nach wie vor findet die Qualitätssicherung fast ausschließlich zwischen der Entwicklung und dem Betrieb statt. Doch wir können noch weitaus mehr von der interdisziplären Ausrichtung agiler Teams profitieren, wenn wir unsere Testaktivitäten aus diesem Silo befreien und sie sowohl in die Entwicklung als auch in den Betrieb verlagern.

[Read More]

Die TDD Testliste

Mit der Routenplanung zum Erfolg

Wenn wir ein neues Feature testgetrieben entwickeln, stellt sich als erstes immer die Frage, mit welchen Test wir am besten starten. In Coding Dojos habe ich beobachtet, dass die Teilnehmer meist mit dem ersten Testfall beginnen, der ihnen in den Sinn kommt. Aber ist das auch der beste Einstieg, von dem aus sich die folgenden TDD-Iterationen einfach aufbauen lassen und schließlich zur gewünschten Implementierung führen? Um diese Frage zu beantworten und einen guten Implementierungspfad zu finden, kann eine Testliste sehr hilfreich sein.

[Read More]

TDD mit Spring Boot

Best Practices

Es gibt wohl wenige Frameworks, die eine testgetriebene Vorgehensweise so gut unterstützen wie Spring Boot. Dem Entwickler bieten sich eine ganze Reihe verschiedener Testwerkzeuge und -strategien, aus denen er sich bedienen kann. Doch wie kann ich diese am effektivsten und effizientesten im Rahmen eines TDD-Ansatzes einsetzen? Über die Jahre haben sich bei mir einige Grundprinzipien herauskristallisiert, die ich gerne mit Euch teilen möchte.

[Read More]

IT Operations in der Agilen Transformation

Agile Transformationen nehmen ihren Anfang meist in der Entwicklungsabteilung eines Unternehmens. So auch im Fall der Thalia eCommerce IT, deren Wandel zu einer agilen Produktorganisation mit selbstorganisierten Teams ich als Coach unterstützen durfte. Dass diese Veränderung jedoch auch massive Auswirkungen auf die Betriebsabteilung im Unternehmen mit sich bringt, wurde mir erst so recht bewusst, als ich mit deren Leiter im Rahmen einer Schulung zum Thema “Agiles Mindset” ins Gespräch kam. Dank meiner Operationsvergangenheit entwickelte sich schnell die Idee, dass ich ihn und sein Team bei der Reise in die schöne, neue, agile Welt begleite. Die Erfahrungen, die wir dabei gemacht haben, habe ich nun in einem Blogpost zusammengefasst.

Wie hilft TDD Eurem Unternehmen?

“Klingt ja im Prinzip gut, aber den zusätzlichen Aufwand können wir dem Management gegenüber nicht verkaufen.”. Das höre ich oft, wenn ich in meinen Coachings die Prinzipien der Testgetriebenen Entwicklung vorstelle. Ähnlich wie beim Pair Programming bezweifeln die meisten Projektmitglieder nicht die Vorteile von TDD, haben aber große Bedenken, wenn sie die Stakeholdern davon überzeugen sollen. Die positiven Auswirkungen der Testgetriebenen Enbtwicklung sind vermeintlich zu technisch, als dass sie ohne das entsprechende Expertenwissen verstanden werden können. Anhand einer Situation aus dem Projektalltag möchte ich daher zeigen, wie man aus unternehmerischer Sicht von der Testgetriebene Entwicklung profitieren kann. Zum Artikel.

Testgetriebene Entwicklung

Mehr als Qualitätssicherung

Als überzeugter TDD Practioner bin ich immer überrascht, welche verschiedenen Vorstellungen es zur Testgetriebenen Softwareentwicklung gibt, wenn ich diese Methodik im Rahmen meiner Coachings vorstellen. Um ein besseres Verständnis dieser Vorgehensweise zu schaffen, habe ich in meinem letzten Blogbeitrag die verschiedenen Aspekte etwas genauer unter die Lupe genommen.

Walking the board

Daily Scrums effizienter und erfolgreicher gestalten

Wenn ich in meinen Schulungen den Sinn und die Inhalte des Daily Scrum erläutere, ziehe ich gerne die Auszeit in Sportarten wie Eishockey oder Basketball als Vergleich heran. Hierbei kommt das gesamte Team zusammen und bespricht, mit welcher Taktik der größtmögliche Erfolg erzielt werden kann. Die Realität, die ich bei vielen agilen Teams beobachte, sieht leider etwas anders aus. In den meisten Fällen wird das Daily Scrum lediglich dazu genutzt, untereinander transparent zu machen, woran jeder einzelne gerade arbeitet. Die Koordination und Planung der nächsten Aufgaben mit Blick auf das gemeinsame Ziel spielt nur eine untergeordnete Rolle und so geschieht es nicht selten, dass am Ende des Sprints zwar viele Arbeitspakete abgearbeitet sind, das Sprintziel aber dennoch nicht erreicht wurde.
Um das zu verhindern, gebe ich diesen Teams eine alternative Methode an die Hand, mit der sie dieses Meeting so gestalten können, dass der Fokus weniger auf die individuellen Arbeit und mehr auf der Maximierung des Gesamtergebnisses liegt.

[Read More]