Simon Brown 24.08.2020, 14:41 Uhr

Mehr Software-Design wagen

Entwickler und Autor Simon Brown setzt sich dafür ein, dem technischen Software Design im Vorfeld der Entwicklung von Code wieder mehr Raum einzuräumen. Seine Gedanken hat er im Vortrag "The lost art of software design" ausgeführt.
(Quelle: simonbrown.je)
Simon Brown ist Autor des Buches Software Architecture for Developers, Verfechter des Software-Designs und Keynote-Sprecher unter anderem auf der Developer Week. In seinem Vortrag "The lost art of software design" beklagt er, dass in Zeiten des agilen Entwickelns von Software das Software-Design zu kurz kommt und dadurch unnötige Kommunikationsprobleme und -aufwände entstehen.
Statt sich – wie es das agile Manifest eigentlich vorsieht – davor zu hüten, zu viel Design im Vorfeld eines Projektes vorzunehmen, lehnen heutige Projekte das Design im Vorfeld fast gänzlich ab. Das was an Software-Design noch gemacht wird, wird laut Brown heute häufig auf Whiteboards skizziert und nicht, wie er es als sinnvoller ansieht, mit nachhaltigen Werkzeugen, wie der Unified Modeling Language (UML) angelegt.
Brown ist ein unermüdlicher Verfechter einer reichhaltigeren Entwurfsplanung im Vorfeld, einschließlich des Einsatzes von Werkzeugen wie UML, die zur Standardisierung und zu prozessgesteuerten Ansätzen beim Architekturentwurf beiträgt. "Reichhaltigere Design-Diagramme führen zu reichhaltigeren Design-Diskussionen", stellt er fest. Teammitglieder und Geschäftspartner sollten keine Fragen stellen müssen, wie zum Beispiel "Was bedeutet dieser Pfeil? Ist das eine Java-Anwendung?" oder "Ist das eine monolithische Anwendung oder eine Reihe von Mikrodiensten", sagt er. Vielmehr sollten sich die Diskussionen auf die Funktionen und Dienste konzentrieren, die dem Unternehmen zur Verfügung gestellt werden. Das Beschränken des Vorentwurfs auf ein Minimum, in der Annahme, dass die Details in einem agilen Prozess im Laufe der Entwicklung ausgearbeitet werden ist gemäß Brown "unangebrachtes Denken". Designteams sollten mehr Informationen in ihre Upfront-Designs einfließen lassen, einschließlich der Art der Technologie und der Sprachen, die vorgeschlagen werden.
Brown: "Während großes Design im Vorfeld zu weit geht und Engagement und Input im Nachhinein ausschließt, besteht das Ziel darin, genug im Voraus zu entwerfen, genug im Voraus zu denken, einen Ausgangspunkt zu setzen und eine allgemeine Richtung vorzugeben. Vielleicht nicht die perfekte Richtung, vielleicht nicht die endgültige Richtung, aber zumindest eine vage Vorstellung von einer Richtung, der wir als Team dann folgen können."
Auf der YOW-Konferenz hat Brown im vergangenen Jahr zu diesem Thema gesprochen. Eine rund 45 Minuten lange Aufzeichung seiner Rede "The lost art of software design" können Sie bei Youtube ansehen.
Ein Video zu dem von Brown vorgeschlagenen C4-Modell (35 Minuten) finden Sie hier.


Das könnte Sie auch interessieren