Clean Code Develop­ment

Nach­haltige Software­entwicklung für langlebige Produkte
Clean Code Präsentation

"Wie Clean Code durch Software­qualität zum Unter­nehmens­erfolg beiträgt"

Warum Clean Code? 

Manuel Stuhlinger
ANWENDUNGSTECHNIK & PRODUKTENTWICKLUNG
BEST WOOD SCHNEIDER® GMBH

Für mich als Kunde wird mir durch Clean Code einfach die Sicherheit geboten, unab­hängig zu sein. Ich möchte nicht in 10 Jahren mit einem Stück Code dastehen, den keiner mehr versteht und wieder von Neuem anfangen müssen.
Moritz Pastow
PROGRAMM MANAGER DIGITAL SERVICES & IIOT,
LEWA GMBH
Alle Entwickler bei generic.de sprechen immer wieder von sich aus Themen wie Code Reviews und Unit Testing an. Nicht weil sie es gerne machen oder ich es ihnen befehle, sondern weil sie das Ding zu Ende denken. Denn was wir jetzt nicht ordentlich machen, fällt uns nach­her potenziert auf die Füße.
Nora Legittimo
CHIEF DIGITAL OFFICER (CDO),
SCHÖCK BAUTEILE GMBH
In der Beta­phase wie auch beim Launch mussten wir uns nie mit dem Thema ‚Das-funktioniert-nicht‘ rum­schlagen. Das klassische Bananen-Software-Problem – die Software reift beim Einsatz und beim Kunden – traf nicht zu. Dabei hat uns die Fokussierung auf die Code-Qualität enorm geholfen.

Warum Clean Code? 

Wir achten bei der Entwicklung unserer Soft­ware­lösungen nicht nur auf die äußere Qualität, die sich in Funktio­nalität, Usability und Effizienz zeigt. Genauso wichtig ist für uns die innere Qualität. Diese offen­bart sich in der Nach­haltig­keit und Wirt­schaft­lich­keit der Lösung.

Durch Clean Code Develop­ment entwickeln wir digitale Produkte, die über die gesamte Product Lifetime flexibel anpass- und erweiterbar sind.

generic.de ist der einzige Individual­soft­ware­her­steller, den ich kenne, bei dem konsequent auf Clean Code gesetzt wird. Das finde ich beein­druckend weit­sichtig.
Ralf Westphal
Mitgründer der Clean Code Development Initiative

Langfristig geringere Entwicklungs­kosten dank Clean Code Development

Mit jeder Änderung am Quellcode wird die Logik dahinter komplexer. Dadurch wachsen im Laufe der Zeit auch die Kosten für Anpassungen und neue Features. Ist der Quell­code nicht von Beginn an auf Ver­änderungen ausgelegt, kann es zu tech­nischen Schulden kommen. In der Folge wachsen die Entwicklungs­kosten exponentiell an.

Diesem rasanten Kostenanstieg wird durch Clean Code Development ent­gegen­­ge­wirkt. Dadurch dass der Code ab Zeile 1 auf Wandel­­bar­keit aus­gelegt ist, liegen die initialen Kosten zwar etwas höher, steigen jedoch nicht exponentiell, sondern linear. Und bleiben damit plan- und kontrollierbar.

An automatisierten Tests geht kein Weg vorbei. Jede Zeile Code muss mit Tests abgedeckt sein. Das ist mühsam und gefällt nicht jedem, bildet aber die Grundlage für Clean Code Development – und damit für langlebige Softwarelösungen. Eine ähnlich hohe Testabdeckung, wie sie generic.de in ihren Projekten einfordert, habe ich selten bei einem Unternehmen gesehen. So geht Clean Code Development.
Stefan Lieser
Mitgründer der Clean Code Development Initiative,
Geschäftsführer der CCD Akademie Gmbh

Wie Clean Code aufgebaut ist

Lesbar und nachvollziehbar

Ein Softwareentwickler benötigt etwa 90 % seiner Zeit zum Verstehen von Quell­code und nur 10 % zum Schreiben. Je klarer und sauberer Code von Beginn an auf­gebaut ist, desto schneller kann er inter­pretiert, verstanden und schließlich angepasst oder erweitert werden. Nach Clean Code Develop­ment ent­wickelter Quell­code ist äußerst deskriptiv gestaltet und damit in hohem Maße nach­voll­zieh­bar.

Automatisiert testbar 

Nach Clean Code Develop­ment ent­wickelter Quell­code muss in seiner Effizienz wie auch Funktionalität test­bar sein - und das über voll­ständig automatisierte Tests. Solch ein Vorgehen setzt eine hohe innere Logik des Quell­codes voraus, die wiederum test­bar sein muss. Erst wenn sicher­gestellt ist, dass die Logik des Codes, wie auch der Code an sich test­bar sind, kann der Code skaliert und Regressions­sicher­heit gewähr­leistet werden.

Evolvierbar

Evolvieren stammt aus der Evolutions­biologie und beschreibt die Fähig­keit eines Lebe­wesens, sich flexibel an Umwelt­ver­änderungen anpassen zu können. Nach Clean Code Develop­ment ent­wickelter Quell­code ist von Beginn an modular auf­gebaut und folgt einer auf Ver­änderungen aus­gelegten Logik.

Was ist Clean Code Development?

Clean Code Development ist ein norm­­gebendes Werte­­system für Soft­ware­­ent­wickler. Es basiert auf dem Buch Clean Code von Robert C. Martin. Prämisse des Buchs ist, Quell­­code als strukturierten Aus­druck von Funktionalität zu begreifen. Darauf auf­bauend haben die Ent­wickler Stefan Lieser und Ralf Westphal 2009 eine Sammlung von Prinzipien und Praktiken zusammen­­geführt und spezifische Lern­­module definiert, die sie in verschiedene Grade unter­teilt haben.

65
ausgebildete Clean Code Developer
150
erfolgreiche Clean-Code-Projekte
85
durch­ge­führte Clean-Code-Checks
11
Jahre Clean Code Development als Unter­nehmens­grundsatz
Felix
generic.de
Regelmäßige Fortbildungen und der Fokus auf Clean Code, unter­stützen mich in meiner persönlichen Ent­wicklung. Ich kann mich ent­falten und Ideen ein­bringen.
Sebastian
generic.de
Mit Flow Design, Clean Code und funktionalen Ansätzen gehen wir neue Wege und gestalten den Arbeits­all­tag spannend.

Clean Code Develop­ment als Unter­nehmens­grund­satz 

Seit 2010 arbeiten wir nicht nur nach den Prinzipien und Praktiken des Clean Code Developments, wir haben das Werte­system auch fest in unseren Unternehmens­grundsätzen verankert. Dafür bilden wir alle Software­entwickler, die bei uns anfangen zu Clean Code Developern aus. Getreu des Clean Code Developments setzen wir auch enorm viel Wert auf Weiterbildungsmaßnahmen, weshalb wir die generic academy ins Leben gerufen haben. Jeder Mitarbeiter kann auf ein Jahresbudget zurückgreifen, das für die fachliche und persönliche Weiterbildung reserviert ist.

Und welches Projekt haben Sie für uns?