Freitag, September 16, 2005

Programmiermaschine

Eine Woche voller Staunen ist vorbei.

Diese Woche hatte ich ein Training für den Oliva Nova Modeller von CARE technologies / Spanien. Wobei die Schulung nicht in Spanien stattgefunden hat, sondern bei uns im Unternehmen, und (auch wegen unserer Spanischkenntnisse) ein deutscher Consultant das Training hielt. Doch das eigentlich nur nebenbei.

Die Idee des Oliva Nova Modeller ist am ehesten für mich mit einem Codegenerator zu beschreiben. Nach einer Modellierung, die UML ähnlich vonstatten geht, wird das - auf in-sich-Geschlossenheit geprüfte - Modell an einen Übersetzungsdienst gesendet und der schickt einem 1 Minute später fertig ausgecodeten Applikationscode zurück. Dieser wird nur dann auf dem eigenen Rechner durch den Compiler geschickt - und fertig ist die Software.

Die Software die man erstellt ist dabei eine fertige Client-Server Anwendung. Man bekommt den Server, den Client, die Datenbank-Skripte zum Anlegen der Datenbank und ... eines der Besten Dinge: man bestimmt vor dem Versand an den Übersetzungsdienst (Tranformationsserver, um es mal beim Namen zu nennen) für welche Datenbank und für welche Servertechnologie und Clienttechnologie man sich entschieden hat. Dabei werden eine Menge an Zieltechnologien abgedeckt. Im Datenbankbereich von Oracle, Informix, MS SQL und Standard SQL, im Applikationsserverbereich COM, .NET und etliche Java-Applikationsserver (auch JBoss) und als Programmiersprache hat man die Auswahl zwischen Java, Enterprise Beans, ASPX, Coldfusion, VB, C# und ich glaube noch 1 - 2 Varianten.

Man generiert sich also aus seinem Modell einen Server, einen richtigen PC-Client und etwa für den Zugriff via Web durch seine Lieferanten / Kunden eine Webanwendung.

Die Definition des Softwaremodells mit Klassen, Events, Transaktionen, Zuständen, Abhängigkeiten, Vererbungen, Rechteverwaltungen, usf. ist nach Verstehen der Konzepte von CARE reine Übungssache. Ich habe in einigen Stunden Dinge vollbracht die einem beim manuellen Coden zwar intelektuell erfreuen würden, aber sicher das 5 - 10 fache an Zeit gebraucht hätten. Ein Wahnsinn wenn man sich vor Augen führt dass durch das komplette Ausmodellieren der reinen Klassen, die Beschreibung von Regeln und Abhängigkeiten, dem definieren von Transaktionsabläufen, von Vorbedingungen und möglichen Zuständen einer Klasse und dem gewünschten Aussehen an der späteren Oberfläche ja schon beinahe alles erledigt ist.

Einige Abers gibt es natürlich auch, wobei ich diese schon wieder relativieren möchte: man wird durch die immense Beschleunigung bei der Entwicklung dermassen schnell verwöhnt, dass man bei Kleinigkeiten die nach Wunsch im Nachhinein anzupassen sind schnell etwas enttäuscht ist. Hält man sich aber die gesamte Performance der Entwicklung vor Augen. Wow! Nun, die Kleinigkeiten: ein Standardgui. Das ist ausgereift, keine Frage - will ich aber etwa einen Kalender dann bedeutet das eine Änderung und Einbindung von fremden Komponenten im Source. Bedeutet aber auch, dass man existierendes wunderbar wiederverwenden kann. Eine Schnittstelle zur Telefonanlage - wird etwa bei uns auch als Zusatz zur Verfügung gestellt. Reports werden als PDF vom MS Report Server generiert (in unserer Lösung, andere Ansätze sind ebenso möglich - es ist ja eine Erweiterung). Und als letzten Punkt den wir diese Woche als Anpassung fanden: Icons die nicht gefallen, werden ebenso im Source manuell nachgereicht. Alles in sich kein Thema, es liegt halt nur in der Verwöhnung durch den Modeller.

Das Geschäftsmodell von CARE ist ebenso interessant wie fair: Die erzeugte Anwendung kann man in ihrer Komplexität wie jede Anwendung in Funktionspunkten messen (Paper zum Thema undauch wie das ONM genau berechnet). Und genau anhand dieser zahlt man für jeden generierten Funktionspunkt eine Summe.

Was bleibt ist: Schnellere, sicherere (fehlerfreie), günstigere, individuell exakte Software.

Und das klingt mir schon beinahe zu reißerisch, doch nach dieser Woche und dem nahendem Abschluß unseres 4 Monatsprojekts gemeinsam mit CARE will ich sagen: stimmt. Für einen ersten Überblick gibts auch einige Screenshots.

Für Alle die Zeit haben: es braut sich auch in der OOS Szene etwas zusammen.

Keine Kommentare: