next up previous contents
Next: Übersetzungsprozeß Up: Visuelle Sprachen Previous: Ikonen

 

Programmierung durch Beispiele

Programmierung-durch-Beispiele (Programming-by-Example, PBE) ist eine Technologie, die nicht ausschließlich in Verbindung mit der visuellen Programmierung eingesetzt wird. Myers betont aber, daß viele PBE-Systeme Konzepte der visuellen Programmierung benutzen, so daß diese beiden Technologien im Zusammenhang betrachtet werden können [Mye86]. Die grundsätzliche Idee von PBE-Systemen ist die, daß aufgrund von Beispieldaten, die ein Entwickler eingibt, das Programm, das diese Daten auf eine bestimmte Art und Weise verarbeiten soll, mit Hilfe eines Inferenz-Mechanismusses automatisch generiert wird. Die Beispieldaten können dabei entweder Paare von Ein-/Ausgabedaten oder Beispiele für eine spezielle Programmausführung sein. Von diesen inferenzierenden PBE-Systemen, die Halbert auch als ,,Do What I Mean``-Systeme charakterisiert [Hal84], können nach Myers sogenannte Programmierung-mit-Beispielen-Systeme unterschieden werden, die kein Inferenzieren beinhalten [Mye86]. Diese ,,Do What I Did``-Systeme speichern einmal getätigte Benutzereingaben und können sie in späteren Programmläufen wiederverwenden.

Ein klassisches System, das die Prinzipien der visuellen Programmierung und des Programmierens-durch-Beispiele kombiniert, ist das User-Interface Management System Peridot ([Mye87, MB87], [Mye88]). Ziel des Peridot-UIMS ist es, über die Fähigkeiten eines klassischen Interface-Builders hinausgehend nicht nur das statische Layout einer Benutzungsoberfläche sondern auch das Verhalten, d.h. den Dialogablauf einer Benutzerschnittstelle graphisch-interaktiv spezifizieren zu können. Die generelle Strategie von Peridot ist die, daß ein Designer in einem speziellen Editor die Gestaltung der Bildschirmoberfläche einer Anwendung zeichnerisch so entwirft, wie sie der Endbenutzer sehen soll, gleichzeitig aber auch auf dieselbe Art und Weise wie der Endbenutzer Interaktionen durchführt. Das System versucht, aus den Aktionen des Designers Schlußfolgerungen zu ziehen, fragt nach, ob diese im Sinne des Designers korrekt sind, und generiert schließlich Code. Da der Designer dem System quasi das Verhalten der zu generierenden Benutzerschnittstelle demonstriert, wird in diesem Zusammenhang auch von Programmierung-durch-Demonstration gesprochen.



Dietrich Boles
Thu Nov 14 14:58:01 MET 1996