Archiv


Baukasten für Programmierer

Das rasante Wachstum von Internet und die stetig steigende Nachfrage nach Anwendungen und Diensten für Mobiltelefone setzen auch die Gemeinschaft der Programmierer unter Druck: In immer kürzerer Entwicklungszeit müssen zunehmend komplexe Softwarepakete für die Nutzung der neuen Angebote geschaffen werden. Allerdings verursacht der enorme Zeit- und Kostendruck immer öfter gravierende Mängel in den Programmen. Zwar gab es bislang etliche Versuche, auch die Softwareherstellung in das industrielle Zeitalter zu befördern, doch bislang nahmen viele Programmierer diese modernen Fertigungsmethoden nicht an. Das GMD-Forschungszentrum Informationstechnik stellt jetzt mit Lava ein Programmiersystem vor, mit dem Flüchtigkeitsfehler kaum noch auftreten können.

Mirko Smiljanic |
    "Programmieren im Lego-Stil" heißt das Motto, das so manchen Softwareentwickler aufhorchen ließ. Die Versprechungen der Entwickler von "Lava" sind vollmundig, sollen doch die gefürchteten Bugs der Vergangenheit angehören und die Entwicklungszeiten drastisch verringert werden. Die Entwickler vom GMD-Institut für Sichere Telekooperation in Darmstadt ersetzten dabei zunächst den herkömmlichen Texteditor durch einen Struktureditor. Der Vorteil: "Dabei werden nicht mehr einzelne Zeichen eingegeben, sondern mit einem einfachen Knopfdruck fügt der Autor ganze Befehlsfolgen in den Quelltext", berichtet Klaus Günther vom GMD Institut für Sichere Telekooperation Darmstadt.

    Auch die Übersichtlichkeit wird durch Lava stark verbessert: So stellt der Struktureditor etwa Deklarationen in einer Baumdarstellung dar, vergleichbar mit dem Explorer von Microsoft Windows. Dabei lassen sich einzelne Elemente ineinander verschachteln: "Untergeordnete Hilfsdeklarationen in der zweiten Ebene können bei Bedarf schlicht ausgeblendet werden. So kann der Programmierer sich ganz auf die Hauptstruktur des Programms konzentrieren", erläutert Klaus Günther. Programme ließen sich entsprechend schneller entwickeln und besitzen aufgrund des Bausteinprinzips weniger Fehler. "Auch fällt weniger Schreibarbeit an, denn lediglich Identifier, Konstanten und Kommentare müssen vollständig manuell eingegeben werden - alles andere geschieht mit Point and Click oder Drag and Drop." Auf diese Weise werden viele Fehler, wie etwa Klammerungs- oder Interpunktionsfehler, von vornherein vermieden.

    Interne Namenslisten vereinfachen die nachträgliche Umbenennung von Variablen und Identifiern – an allen Stellen des Programms erfolgen so die zentral vorgenommen Änderungen automatisch. Besonders nützlich ist dies, wenn viele Programmierer an derselben Software arbeiten. Lava ist angelegt als universelle Programmiersprache, etwa vergleichbar mit C++ oder Java, kann aber sehr viel einfacher erlernt werden. Dazu der Entwickler: "Während beispielsweise die offizielle Java-Sprachdefinition über 800 Seiten umfasst, befinden sich alle Konstrukte von Lava auf der Oberfläche der Programmierumgebung in Form von Knöpfen."

    Zwar steht Lava bereits in ihrer Grundstruktur, doch bedarf es noch weiterer Arbeit zur Marktreife. Dies könnte durch ein kommerzielles Softwarehaus erfolgen, das die Rechte an der neuen Sprache erwirbt. Eine Alternative wäre, Lava in Form eines Open-Source-Projektes im Internet etablieren. Voraussetzung dafür sei jedoch ein entsprechendes Interesse der Programmierer-Gemeinde an dem Vorhaben. "Die Reaktionen auf unsere Veröffentlichung werden über den weiteren Fortgang entscheiden", so der GMD-Programmierer.