Unnützes und Techn. Schulden

Im vorigen Beitrag ging es um Waste aus Featuresicht, aber natürlich wird sich auch aus technischer Sicht nach einiger Zeit einiges an Müll ansammeln. Wichtig ist aus meiner Sicht Waste und Technical Debt zu unterscheiden. Waste ist einfach nur im Quellcode vorhanden und macht keinen Sinn, Debt hingegen besteht, wenn durch Code in Zukunft Aufwand […]

Mehr lesen »

Konkret Unnützes Herausfinden

Vor kurzem habe ich über Eliminate Waste geschrieben. Aber wie kann man denn nun Unnützes herausfinden? Ein einfaches Tool ist das Auflisten und Bewerten von Features in Gegenüberstellung von Aufwand und Nutzen. Zur Beurteilung des Nutzens bzw. Wertes finde ich eine Skala von 0-5000 sinnvoll, zur Gegenüberstellung der Kosten benutze ich eine T-Shirt-Size Skala. Abgerundet wird […]

Mehr lesen »

Eliminate The Right Waste

Nachdem ich in letzter Zeit eher Programmierer-lastige Artikel verfasst habe, möchte ich mich in diesem Artikel wieder einmal einem Prozessthema widmen. Im Lean Software Development gibt es die wichtige Säule “Eliminate Waste”. In diesem Artikel möchte ich mich damit beschäftigen, welchen Nutzen und welche Risiken dieses Paradigma birgt. “Waste” d.h. Unnützes ist im Sinne von […]

Mehr lesen »

Versteckte Psychologie in Dokumentationstechniken

Für Anforderungen gibt es viele verschiedene Dokumentationstechniken wie z.B. klassische Dokumente, Minispecs, Wireframes, Blogs, Modelle oder auch Unit Tests und Behaviour Driven Development DSLs. Interessant ist, dass jede Technik einen anderen Fokus setzt und damit Stärken und Schwächen besitzt. Aber nicht nur das, es scheint eine versteckte Psyochologie darin enthalten zu sein, die bestimmtes Verhalten geradezu erzwingt! […]

Mehr lesen »

Painless Wireframing

Wireframes sind heute im Entwicklungsmainstream angekommen. Richtig angewendet sind sie ein wirklicher Produkivitäts- und Kreativitätsbooster und bereiten pure Freude. Falsch angewendet bringen sie dagegen oft wenig. Ich habe mal einige typische Anzeichen gesammelt, bei denen ich Wireframing falsch angewendet sehe: Wireframes enthalten sehr viele Details Wireframes sind Pixel-genau ausgerichtet Wireframes enthalten viel Farbe Wireframes sind […]

Mehr lesen »

Make me think!

“Don’t make me think!” ist heutzutage ein weit verbreiteter Slogan im Usability-Bereich. Nutzer wollen über ein User Interface nicht nachdenken. Beispiele wie der 300 Million $ Button zeigen, dass sie dies auch nicht tun. Die Aufmerksamkeitsspanne ist sehr klein. Bereitschaft zum Denken ist wenig bis gar nicht vorhanden. Als Entwickler habe ich ein paar Jahre […]

Mehr lesen »

Specs als ganz großes Kino

Wenn ich vergleiche, wie oft ich schon übermüdet ein eintöniges Science-Fiction-Buch nach wenigen Seiten weggelegt habe und wie oft ich beim Lesen von Softwarespezifikationen abschweife und mir lieber gedanklich mein Abendessen ausmale, dann ist das Rennen knapp und ich weiß nicht wer gewinnt! Softwarespecs haben genauso wie SciFi oft einen immer wiederkehrenden Plot, der es schwer […]

Mehr lesen »

Tracing von Features im Quellcode

Machen wir uns nichts vor. Selbst Vorzeige-Projekte mit Domain Driven Design haben das Problem, dass Funktionalität über viele Klassen zerstreut liegt. Wenn ein Feature bzw. eine Funktion “angefasst” werden soll, müssen viele Klassen angepasst werden. In einer sauberen Softwarearchitektur ist das sogar per se so, denn eine Funktion benötigt ja eine GUI, zumindest etwas Geschäftslogik, […]

Mehr lesen »

RichSPEC – 1 Seite Spezifikation

Softwarespezifikationen sind oft langweilig. Diese konzentriert zu lesen ist eine Herausforderung. Folgende Form der Spezifkation ist dagegen übersichtlich, schnell erfassbar und sehr informativ: Natürlich kann man das von Hand in Microsoft Word erstellen, aber noch einfacher geht es mit dem RichSPEC Editor: Bei diesem hat man auch noch den Vorteil, dass man das XML-Format automatisiert […]

Mehr lesen »

Testen aber richtig (einfach)

Warum schreiben über das Testen? Wo es doch so viel schönere Dinge in der Softwareentwicklung gibt? Ich arbeite in einem kleinen Team und wir haben Jahre gebraucht, um unsere Testsystematik auf ein solches Niveu zu bringen, dass wir sagen können: a) wir testen effektiv und b) wir testen effizient. Grund genug mal etwas über den […]

Mehr lesen »