11. Februar 2009 00:51
Mykhaylo Libovych hat geschrieben:Aber bevor los zu legen, muss man zuerst ein Konzept erstellen, was damit gesteuert werden soll und immer über die Zukunft nachdenken, was dazu noch kommen könnte. Sonst hat man angefangen, die Lösung umzusetzen, sind die nicht berücksichtigten Anforderungen schon aufgetaucht, und das Ganze muss überarbeitet bzw. angepasst werden. Bzw. noch schlimmer ist, wenn alles funktioniert, aber die neuen Anforderungen alles auf den Kopf stellen.
Genau hierin besteht die große Kunst der Consultants und Programmierer:
Sie müssen ihre Glaskugel auf Hochglanz polieren und (aufgrund ihrer jahrelangen Erfahrung) vorhersehen können, was der Anwender in Zukunft sich noch wünschen könnte.
Der Programmierer muss seine Lösung dann so umsetzen, dass sie in möglichst viele Richtungen flexibel erweitert werden kann.
In meinem Lösungsvorschlag habe ich ja schon ein Beispiel genannt, wie so eine "Vision" aussehen könnte: Anstatt nur Editierbar/Nicht editierbar könnte es zukünftig gewünscht werden, die Felder einzeln komplett auszublenden.
Von daher sollte man in diesem Fall von Anfang an auf ein Option-Feld (anstatt eines Boolean) setzen, da man dies jederzeit entsprechend erweitern kann.
Hätte man auf ein Boolean gesetzt, so müsste man später entweder die Daten konvertieren oder der Programmcode wird mit der Zeit unüberschaubar ("Spaghetti-Code").
Im Laufe der Zeit habe ich sowas wie einen 7. Sinn entwickelt und erkenne recht zuverlässig die zukünftigen Wünsche.
Manche Kunden fordern solche Erweiterungen zwar niemals ein, sind jedoch beeindruckt, dass
ihre Lösung solche Erweiterungen zulassen würde.
Abgesehen davon hat es für einen MBSP den Vorteil, dass er ein entsprechendes "Snippet" auch in anderen - ähnlich gelagerten Fällen - wiederverwenden kann und das Rad nicht nochmal erfinden muss.