Deine Software ist ein Modell. 3 Punkte, die sich daraus ergeben.
Deine Software löst eine Aufgabe.
Dabei bildest du einen Prozess, Regeln und Wissen der Domäne in der Software ab. Diese Abbildung ist nicht die Realität. Sie ist ein Abbild der Realität, die dein Team und du geschaffen haben.
Jedes Abbild ist eine Abstraktion.
Daher gilt für deine Software folgendes:
1. Deine Software ist fehlerhaft. #
Jede Abstraktion ist löchrig. Sie bildet die Realität nicht detailgenau ab. Das kann und soll sie auch gar nicht. Deine Software bildet nur einen relevanten Ausschnitt in der aktuell benötigten Genauigkeit ab. Dabei sind Fehler unvermeidlich.
Alles andere wäre aber auch unbezahlbar.
2. Deine Software ist (trotzdem) nützlich. #
Auch wenn Fehler unvermeidlich sind, sobald auch nur ein Nutzer mit deiner Software erfolgreich arbeiten kann, ist ein Nutzen geschaffen. Es geht nicht um die detailgenaueste Abbildung und die Umsetzung der gesamten Komplexität.
Nutzen stiften, ist alles, was zählt.
3. Deine Software benötigt Anpassung. #
Da Fehler also gewollt sind, wird der ein oder andere mit der Zeit doch zur Schwierigkeit werden. Das heißt, du wirst deine Abstraktion und dein Modell anpassen wollen. Das ist nicht schlimm, es ist nur vorhersehbar und logisch.
Sei daher darauf vorbereitet und versuche nicht an überholtem festzuhalten.