Eignet sich die Messung der Testabdeckung zur Steuerung der Codequalität und damit der Produktivität im Unternehmen? Und wenn nicht, was kann man tun, um beides zu verbessern? Die Meinungen hierzu gehen weit auseinander. Es lohnt sich also, genauer hinzuschauen.
[Read More]Neueste Events
- 10.02.21 The C4 Test Pyramid, OOP
- 27.09.20 Consumer Driven Contracts mit Openapi, JCON
- 20.02.20 Fix my TDD, Frankfurter Entwicklertag
Besser Entwickeln mit TDD
Stressfreie Programmierung mit Plan
Wenn wir programmieren, müssen wir ständig viele Aspekte gleichzeitig im Blick behalten. Da sind zum einen die fachlichen Anforderungen, dann die Details der eingesetzten Technologien und schließlich soll der Code auch noch gut wartbar und erweiterbar sein. Wie schaffen wir es, dem gerecht zu werden, ohne dass uns irgendetwas durchrutscht? Wieder einmal ist es die Testgetriebene Entwicklung, die uns hierauf eine Antwort liefert, indem sie uns dabei hilft, den Überblick zu bewahren und nicht im Multitasking unterzugehen.
[Read More]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
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.