Mein Kollege Age wies mich auf einen Blogbeitrag von Onkel Bob hin, in dem es um eine Präsentation ging, in der ein Herr Josuttis die Unvermeidbarkeit von miserablem Code darlegte, weil "Unternehmen alles tun werden, um Kosten zu senken und den Umsatz zu steigern, und deshalb werden sie die Softwarequalität unaufhaltsam nach unten treiben". Onkel Bob geht gegen dieses Argument vor, aber ich halte es für eine technokratische (DSLs und besseren Code produzieren) und letztlich unbefriedigende Antwort. Meine Antwort auf das Problem?
Sehen Sie der Realität ins Auge, werden Sie erwachsen.
Die Hauptbeschwerde lautet in etwa so: "Das Unternehmen ist sich der Notwendigkeit von Qualität bewusst und trifft falsche Entscheidungen, indem es die notwendige Qualität gegen Funktionen eintauscht". Es ist also "ihre" Schuld, richtig? Wenn "sie" Sie nur "ernst nehmen" und "einfach zuhören" würden? Wie wäre es, wenn Sie das tun würden, anstatt darüber zu jammern?
Tatsache des Lebens: Ressourcen sind endlich.
Qualität ist ein vielköpfiges Tier, bei dem Hunderte von Abwägungen zwischen Design, Architektur und Funktionen und den verfügbaren Ressourcen getroffen werden müssen. In jedem Unternehmen stehen nur eine begrenzte Menge an Ressourcen zur Verfügung. Es gibt immer mehr Ideen, Initiativen, Probleme und Risiken, die angegangen werden müssen, als Sie Zeit und Geld haben. Jede Organisation muss harte Entscheidungen treffen, um diese begrenzte Menge so effektiv wie möglich einzusetzen. Jeder, der in irgendeiner Weise beteiligt ist, muss den Bedarf an einem Teil dieser Ressourcen rechtfertigen: Wo in den Regeln steht, dass IT-Experten von dieser Verantwortung ausgenommen sind?
Es gibt viele Wege, um Qualität zu erreichen, und es ist unverantwortlich und unprofessionell, Zwänge nicht zu berücksichtigen.
Tatsache des Lebens: "sie" sind nicht böse.
Lustigerweise bestehen "sie" auch aus Menschen. Sie leben, essen und schlafen, haben Hoffnungen und Träume und lieben. Das Problem ist nicht, dass "ihnen die Qualität egal ist", das Problem ist, dass "sie" keine Möglichkeit haben, einen fundierten Kompromiss zu finden. Meiner Erfahrung nach wird die Qualität nicht zu Unrecht beiseite geschoben, wenn der Wert der Qualität klar gegen andere Bedürfnisse abgewogen werden kann. Und wenn ein Teil der Qualität aufgegeben wird, gibt es zumindest einen triftigen geschäftlichen Grund dafür.
Tatsache des Lebens: Der Nachweis des geschäftlichen Wertes von Qualität liegt in Ihrer Verantwortung: Sie sind der Einzige, der das KANN.
Es ist nicht realistisch, von jemandem, der nicht über das erforderliche Fachwissen verfügt, zu erwarten, dass er den geschäftlichen Wert von Qualität nur auf der Grundlage tiefer technischer Details beurteilt. Daher liegt es in der Verantwortung der IT-Experten, diese Lücke zu schließen und diese tiefen Details in den geschäftlichen Wert zu übersetzen, den sie bieten. Das bedeutet nicht, dass Sie auf einmal ein Geschäftsexperte sein müssen: In der Praxis ist es ganz einfach, mehrmals "Warum?" zu fragen, bis Sie ein Niveau erreicht haben, das für "sie" relevant und verständlich ist.
"WARUM müssen Sie Komponente X aktualisieren?".
- "Weil es die Wartbarkeit für die Art von Änderungen, die wir sehen, verbessern wird".
"WARUM ist Wartbarkeit gut?".
- "Weil es unsere Zeit bis zur Markteinführung um etwa ein Drittel verkürzen wird."
- "Weil es den Aufwand für die Umsetzung dieser Änderung um etwa 20% reduzieren wird.".
Nebenbei bemerkt, ist dies der Weg, um die - meiner Erfahrung nach unfehlbare - Falle der schlechten "damit"-Klausel in der "Als... möchte ich... So dass..." Strophe. "Ich möchte eine Schaltfläche, damit ich zum nächsten Bildschirm gehen kann" ist Ursache und Wirkung, nicht Geschäftswert. Der Trick, um dies zu beheben, ist derselbe: Fragen Sie "Warum?", bis Sie eine Ebene erreicht haben, die es Ihnen ermöglicht, Anwendergeschichten auf der Grundlage echter Geschäftsmetriken zu vergleichen. Sie können auch die alten "damit"-Klauseln als neue "Ich möchte" verwenden, damit das Team mehr Freiheiten hat: "Ich möchte in der Lage sein, zum nächsten Bildschirm zu gehen, damit...". Hören Sie jedoch damit auf, wenn es für das Team zu vage wird.
Tatsache des Lebens: ernst genommen zu werden bedeutet, verantwortungsbewusst zu handeln.
Wann lassen Sie die Hand eines Kindes auf einer belebten Straße los? Wenn Sie darauf vertrauen, dass es verantwortungsbewusst genug ist, nicht vor ein Auto zu laufen. Die Analogie in einem Unternehmen ist, dass Ihre Meinung ernst genommen wird, wenn man Ihnen zutraut, einen verantwortungsvollen Kompromiss zwischen Qualität und anderen Bedürfnissen zu finden.
Zusammenfassung
Zusammenfassend lässt sich also sagen, was nötig ist, um miserablen Code zu verhindern:
- hören Sie auf mit dem "wir-sie"-Denken. Sie sind auch Teil des Unternehmens, "die" sind nicht böse.
- übersetzen Sie tiefe Details in geschäftlichen Wert, indem Sie eine Kette von "Warum?"-Fragen beantworten.
- treffen Sie verantwortungsvolle Abwägungen, um ernst genommen zu werden und Entscheidungen zu beeinflussen
- UND NUR DANN fangen Sie an, Ihre Lieblings-DSL zu implementieren.
Ich habe die Präsentation von Herrn Josuttis nicht gesehen, also bin ich mir sehr bewusst, dass ich nicht alle Nuancen seiner Meinung und Geschichte kenne. Meine Antwort richtet sich also nicht so sehr an Herrn Josuttis, sondern an die vielen IT-Profis, die ich über "sie" jammern gehört habe. Hören Sie auf zu jammern, werden Sie erwachsen und tun Sie etwas dagegen.
Verfasst von
Serge Beaumont
Unsere Ideen
Weitere Blogs
Contact
Let’s discuss how we can support your journey.



