Alltag in der Softwareentwicklung

Warum ist Softwareentwicklung zeitaufwändig und fehleranfällig?

„Wieso dauert es sechs Stunden diesen Button einzubauen?“, „Warum ist der Fehler nicht vorher aufgefallen?“, dies sind nur zwei Fragen, die einem Software-Entwickler häufig gestellt werden. Gerne würde er antworten „Weil der Button das kleinste Problem an der Anforderung ist.“ und „Weil es nicht vorgesehen war diese Funktion SO zu benutzen“.

Was möchte uns der Autor, sorry Entwickler, damit sagen?

„Weil der Button das kleinste Problem an der Anforderung ist.“

Ein Kernproblem beim Verständnis für Softwareentwicklung ist, dass die sichtbaren Bestandteile nur einen Bruchteil des Gesamtsystems ausmachen.

Hinter einem Button kann sich ein Bild oder aber Berechnungen aus der Raketenforschung befinden. Der Kunde beauftragt eine Funktion, diese wird umgesetzt. Er sieht einen Button, klickt ihn und bekommt sein Ergebnis.

Von den notwendigen Abläufen im Hintergrund, z. B. Abrufe aus anderen Systemen, Berechnungen, Formatierungen, Prüfungen oder auch Speicherungen bekommt er nichts mit. So soll es auch sein.

Das Resultat ist, dass eine Entwicklung durchaus lange dauern kann, auch wenn die Bedienung der Funktion nachher rasend schnell erfolgen kann.

Testen, Testen und noch mal Testen

Eine Software kann erst in Betrieb genommen werden, wenn sie getestet wurde. Dies ist auch jedem (unserer) Entwickler bewusst und wird (bei uns) so gelebt. Dennoch kommt es immer wieder zu Fehlern. Warum? Es kann doch nicht so schwer sein ein System zu testen?

Für neue Software ist dies meist zutreffend. Alle Anforderungen sind im Idealfall vorab geklärt, Funktionen definiert und werden aufeinander abgestimmt umgesetzt.

Wie sieht es bei Erweiterungen aus? Man stelle sich vor die bestehende Software ist ein Haus, ein wunderschöner Neubau. Nun erfolgt die erste Erweiterung der Software, also bekommt unser Haus eine Garage. Es folgt eine weitere Anforderung, das Haus bekommt Solarzellen aufs Dach. Die dritte Anpassung wird beauftragt, das Haus bekommt Dachfenster. Stopp, die Solarzellen sind im Weg.

Bei einem Haus sieht jeder das Problem und die Anforderung würde geändert oder verworfen. Bei Software fehlt die Sichtbarkeit, für den Kunden ist kein Problem erkennbar und der Entwickler kann schlecht begründen, warum man Text nicht ändern kann. Software ist letztlich nichts anders als Quelltext, der natürlich auch wieder geändert werden kann. Damit steigt aber die Gefahr, dass es zu einem Unfall kommt, wenn man versucht die dritte Garage auf dem Carport im Keller zu stapeln.

Trotz oder vielleicht sogar wegen dieser Komplexität macht uns die Softwareentwicklung aber Spaß.

Wenn ihr also z. B. ein individuelles Shopware Plugin benötigt, schreibt uns doch einfach eine Mail mit euren Anforderungen an:

shopware@rhiem.com

Gemeinsam bekommen wir die Garage hin! 🙂

Kontaktformular

Sende uns dein Anliegen und wir melden uns bei dir zurück!





Eure Datenschutzerklärung habe ich gelesen - finde ich OK!