IT-DIRECTOR: Herr Brase, welchen Trend erkennen Sie derzeit im Bereich „Software-Entwicklung“?
V. Brase: Ein wesentlicher Trend in der Software-Entwicklung geht ganz deutlich hin zu webbasierten Anwendungen, „Apps“ und so weiter. Anwendungen und besonders Daten (Datenbanken, Data Warehouse) werden zunehmend zentral gespeichert. Die Client-Server-Architektur wandelt sich zu einer (wieder) mehr Host-basierten Architektur mit zahlreichen iPads, -Phones, -Tops etc. als „Clients“.
IT-DIRECTOR: Durch welche Werkzeuge und Methoden lassen sich Entwicklungsprozesse optimieren?
V. Brase: Die beste Optimierung ist nach wie vor ein sauberer Entwurf. Code-Generatoren können in begrenztem Umfang die Codierung unterstützen. Einen wesentlichen Optimierungsaspekt bieten auch die zahllosen Internetforen, in denen sich Code-Beispiele für nahezu alle Algorithmen finden lassen.
IT-DIRECTOR: Welche Vorgehensmodelle sind in der Software-Entwicklung derzeit auf dem Vormarsch und warum?
V. Brase: Auf jeden Fall sind agile Methoden wie Scrum im Kommen. Sie zeigen schneller Ergebnisse als das klassische Wasserfallmodell, dürfen aber das rechtzeitige Nachdenken nicht vernachlässigen.
IT-DIRECTOR: Wovon ist es abhängig, welches Modell zum Einsatz kommt?
V. Brase: Auch wenn das provokativ klingt: Letztlich entscheiden die Geduld und der Geldbeutel des Auftraggebers. Nachhaltigkeit ist auch in der Software-Entwicklung ein Aspekt, der langfristig die besten Ergebnisse erzielt. Das setzt natürlich voraus, dass nach einem Prototyp nicht weiter „gebastelt“, sondern sorgfältig und vorausschauend geplant wird. Mängel in der Architektur sind die größten Hindernisse für eine skalierbare, langlebige Software.
IT-DIRECTOR: Inwiefern spielen Standardisierungen eine Rolle in der Software-Entwicklung?
V. Brase: Bei der Programmierung sollte das Rad nicht immer neu erfunden werden. Nicht umsonst gibt es etwa die Best Practices von Microsoft und andere Programmierrichtlinien. Wenn diese beachtet werden, dann findet sich ein Programmierer auch in unbekanntem Code ähnlich gut zurecht wie ein Anwender, der auch unbekannte Anwendungen mit dem Klick auf das rote X schließen kann.
IT-DIRECTOR: Wovon ist es abhängig, welche Programmiersprache verwendet wird?
V. Brase: Das ist abhängig zum einen von der Vorgeschichte einer Software, ob also bestehender Code übernommen werden kann, und zum anderen vom Fachwissen des verfügbaren Personals. Moderne Programmiersprachen unterscheiden sich so wenig in ihren Strukturen, dass der Auswahl der geeigneten Plattform eine viel größere Rolle zukommt. Je näher eine Anwendung an der Hardware angesiedelt wird, desto spezifischer sind natürlich die Anforderungen an spezielle Sprachen.
IT-DIRECTOR: Welche Bedeutung schreiben Sie Software-Tests zu?
V. Brase: Tests und insbesondere automatische Tests garantieren die Qualität einer häufig auch in mehreren Teilen und von mehreren Teams parallel entwickelten Software. Insbesondere Probleme bei unpassenden Schnittstellen können so frühzeitig aufgedeckt werden. Der beste Fehler ist aber der, der gar nicht erst entstanden ist und daher auch nicht im Test entdeckt werden kann. Tests können nur garantieren, dass es auch wirklich so funktioniert wie es soll.