15.01.2015 Aufrufe

Der Entwickler- Almanach

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Andererseits ist die Hypothesenbildung schwierig, solange es an Wahrnehmungen fehlt. Wer den<br />

Nachthimmel nur mit bloßem Auge betrachtet, der entwickelt andere Hypothesen über die Welt als<br />

derjenige, dem ein Fernrohr oder gar ein Radioteleskop zur Verfügung stehen.<br />

In Ermangelung von Daten oder angesichts von hoher Datenunsicherheit sollte also nicht zu viel Zeit auf<br />

die Hypothesenbildung entfallen. Stattdessen sollte lieber die Wahrnehmung verbessert werden. Mehr<br />

Daten sollten gesammelt, die Qualität der Daten sollte erhöht werden. Dies kann mittels besserer<br />

Wahrnehmungssysteme und vielfältigerer Experimente geschehen.<br />

In der Softwareentwicklung sind nun die Kosten für Experimente, das heißt die Produktion von Code<br />

(Manifestation) und seine Überprüfung (automatisierte Tests, Continuous Integration/Delivery), in den<br />

letzten 25 Jahren sehr stark gesunken. Und es hat sich die Meinung durchgesetzt, dass die<br />

Ausgangsdatenlage (Anforderungen) notorisch schlecht ist.<br />

Konsequenterweise ist das Interesse an Hypothesenbildung stark gesunken. Softwareentwurf ist kein<br />

unverbrüchlicher Schritt mehr im Softwareproduktionsprozess. Moderne Entwicklungsumgebungen mit<br />

Test- und Refaktorisierungswerkzeugen und agiles Vorgehen haben die Frequenz für Experimente stark<br />

erhöht. Experiment vor Spekulation, könnte man sagen. So sehr mancher es sich wünschen mag, ganz<br />

ohne Entwurf kommt die Softwareentwicklung jedoch nicht aus. Er mag weniger explizit und flotter sein<br />

als vor 30 Jahren, nichtsdestotrotz findet er statt. Selbst bei Test-Driven Design (TDD) wird noch<br />

entworfen; ohne eine Entwurfsidee keine Refaktorisierung. Es bleibt also die Frage im Raum, wie denn ein<br />

Entwurf aussieht. Welche Form hat diese Hypothese<br />

Meine Antwort darauf ist: Entwürfe beschreiben Strukturen. Das sind in Beziehung gesetzte Bausteine.<br />

Die stehen jedoch nicht nur einfach so in der Gegend herum, sondern verhalten sich zur Laufzeit; sie<br />

wirken aufeinander. Es sind also dynamische Strukturen oder Systeme. Abbildung 1 zeigt eine Struktur in<br />

ganz abstrakter Weise: Sie sehen Bausteine (zum Beispiel Dreieck, Quader), die in Beziehung stehen. Die<br />

sind explizit (zum Beispiel Pfeil) oder implizit (Anordnung auf dem Blatt). Alle Elemente können<br />

verschieden ausgeprägt sein (zum Beispiel Farbe, Form, Richtung).<br />

Welche Bausteine und Beziehungen es gibt, wie sie in welchem Zusammenhang ausgeprägt sein können,<br />

das gibt eine Entwurfssprache vor. <strong>Der</strong> Entwurfsprozess wählt aus ihr im Hinblick auf die Entwicklung<br />

einer konkreten Hypothese. Wer entwirft, beantwortet durch seine Auswahl die einfache Frage: „Mit

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!