Home
Produkte
HyperSenses
Herausforderung
Produkte
HyperSenses
Herausforderung
Copy-Paste-Adapt ist die verbreitetste Methode, um ähnliche Aufgaben zu lösen oder Varianten eines Systems zu erstellen (der Einfachheit halber wird im Folgenden von Systemfamilien gesprochen, wenn ähnliche Aufgaben oder eine Menge von Varianten eines Systems gemeint sind, einzelne Mitglieder der Familie werden entweder als Instanz oder Variante bezeichnet). Der Nachteil dieser Methode ist jedoch, dass Aufgaben wie Fehlerkorrekturen, Änderungen, Erweiterungen, etc. für jede einzelne Variante wiederholt werden müssen. Dieser Weg ist sehr zeitaufwändig, fehleranfällig und kann ebenso teuer sein.
Dieses kann durch die Verwendung von Generatoren und domänenspezifischer Sprachen (DSLs) vermieden werden.
I would rather write programs
to help me write programs
than write programs.
Dick Sites
Allerdings setzten die meisten Generatortechnologien entsprechende Vorkenntnisse des Entwicklers voraus. Oft werden Generatoren von Softwareentwicklern nicht akzeptiert, da die Generierung nicht beeinflusst werden kann und der generierte Code nicht oder nur schwer lesbar und wartbar ist. Nur selten erfüllt der Code unternehmensspezifische Richtlinien zur Programmierung.
Die Entwicklung einer DSL wird zumeist als eine kleine Fingerübung gesehen. Sobald jedoch DSL und Generator gemeinsam entwickelt werden müssen, damit sie zusammen spielen, und die DSL auch zu einem späteren Zeitpunkt noch erweitert oder geändert werden kann, wird aus der einfachen Übung eine zeitintensive Aufgabe für einen erfahrenen Entwickler. Soll die DSL nicht nur durch ihren Entwickler, sondern auch durch weitere Personen im Unternehmen verwendet werden, so ist häufig ein hoher Aufwand für die Erlernung dieser neuen Sprache erforderlich.
Erst, wenn der Generator und die DSL vollständig entwickelt wurden, erhält man ein testbares System. Dies hat zur Folge, dass (konzeptuelle) Fehler erst zu einem sehr späten Entwicklungszeitpunkt gefunden werden und im schlimmsten Fall nur mit großem Aufwand korrigiert werden können. Darüber hinaus verhindert es auch, dass Generatoren und DSLs in Kombination mit agilen Methoden verwendet bzw. Generator und DSL verteilt entwickelt werden können.
Aus den genannten Gründen scheuen viele Unternehmen den Einsatz von Generatoren und DSLs.
Das Ziel bei der Entwicklung von HyperSenses war deshalb eine Generatortechnologie,
Um diese Ziele zu erreichen, führt HyperSenses das Konzept „Model-Driven Meta-Development“, kurz MD2, ein. Während andere Vorgehensweisen Generatoren und DSLs für die modellgetriebene Entwicklung und generative Programmierung von Anwendungen benutzen, verwenden wir durchweg modellgetriebene Entwicklung und generative Programmierung, um Generatoren und DSLs zu entwickeln.
| White Paper - HyperSenses White Paper zu HyperSenses: HyperSenses vereinfacht die Entwicklung von Generatoren und DSLs und ermöglicht deren schrittweise und verteile Entwicklung. Erste Ergebnisse sind innerhalb von Stunden oder wenigen Tagen statt wie üblich in Wochen verfügbar, testbar und reproduzierbar. Deshalb ermöglicht HyperSenses die Verwendung von Generatoren und DSLs auch in Kombination mit agilen Methoden. |
![]() |