IT-Projekte in Form von Websiten und Apps werden oft nur anhand des aktuellen Anwendungsfalls entwickelt, was natürlich zeitsparend ist und weniger komplizierte Abhängigkeiten hervorruft. Doch genau dies wird aus unserer Erfahrung vielen Projekten bzw. Lösungen zum Verhängnis, sobald neue Features dazukommen, der Bereich und die Flexibilität wachsen oder bspw. der Markt erweitert werden soll. An diesen Punkten gewinnt die generische Entwicklung an Wichtigkeit, die ein hervorragendes Wachstum, Skalierbarkeit, Erweiterbarkeit und Wartbarkeit des eigenen Produktes/Lösung bietet.
Was ist generische Entwicklung bzw. Programmierung?
Unter generischer Entwicklung bzw. Programmierung versteht man das allgemeine Programmieren von dynamischen Funktionen, die möglichst viele Anwendungsfälle abdecken können und eine hohe Wiederverwendbarkeit aufweisen. Diese Funktion sind sehr flexibel, was die Entwicklung von Websites oder Apps erheblich vereinfacht. Die Schwierigkeit dabei ist, mögliche Anwenungsfälle im Voraus zu erkennen und diese abdecken zu können, um die Wiederverwendbarkeit für spätere Erweiterungen oder Anpassungen gewährleisten zu können.
Was bedeutet es?
Im Allgemeinen bedeutet dies, dass man bei größeren, aber auch bei kleineren IT-Projekten, die absehbaren Änderungen unterliegen (was so gut wie auf jedes Web- oder App-Projekt zutrifft), von Anfang an auf eine technisch einwandfreie Konzeption setzen sollte, da dies mit vielen Vorteilen verbunden sein kann.
Was sind die Vorteile bzw. Nachteile?
Vorteile der generischen Entwicklung bzw. Programmierung:
- Zeiteinsparung bei der Neu- oder Weiterentwicklung
- Minimierung der Entwicklungskosten auf Basis der Zeiteinsparung
- bessere Performance
- schnelles identifizieren von Bugs
- Vermeidung von Codeduplizierung
- Struktur und Funktionalität meist leicht durchschaubar
- sauberes Projekt –> kürzere Einarbeitungszeit von neuen Entwicklern
Nachteile ohne den Einsatz generischer Entwicklung bzw. Programmierung:
- exponentielle Steigerung der Entwicklungskosten für Anpassungen, Erweiterungen etc.
- Codeduplizierung
- viele Verzweigungen und Nebenabhängigkeiten
- schlechtere Performance
- Verständnis für Struktur und Funktionalität meist mit hohem zeitlichen Aufwand verbunden
- Gefahr vieler kleinerer Sicherheitslücken, die sich durchschleifen können und eine große Sicherheitslücke ergeben können
Wo findet man solche Entwickler und Agenturen?
Es gibt sehr wenige Agenturen, die über solche Entwickler verfügen, und auch auf dem freien Markt sind Entwickler, die dies beherrschen, relativ rar. Allgemein sollten sich Kunden vom Auftragnehmer ausführlich erklären lassen, wie Sie die Entwicklung durchführen, wie es mit späteren Änderungen aussieht und welche Erweiterungen in welchem Maße notwendig sind. Sind die zukünftigen Features (Kann-Fall, den man sich offen hält) grob zwischen Kunde und Auftragnehmer festgelegt, so ist es für beide Seiten zu einem späteren Zeitpunkt wesentlich unkomplizierter, schneller und effizierter, die eigene Website, Bestellsystem, App oder auch andere Entwicklungen anzupassen und/oder zu erweitern.
Über Anregungen, Fragen und Feedback freuen wir uns immer, ob per Facebookkommemtar, per Mail oder auch gern telefonisch.