Neue Entwicklungsmethode

Softwaremaschine entwickelt Programme automatisch

22.05.2013
Von Victor Bodnarescu

Fazit

Eine derart konfigurierbare automatische Software-Produktionsmaschine braucht ein erprobtes Metamodel und Template Repository. Der hier skizzierte Produktionsprozess mit Modulen und Methoden erreicht eine standardisierte Qualität der Software bei bis zu 96 Prozent maschinell produziertem Code. Die fachlichen Anforderungen können frühzeitig und in kurzen Zyklen, auf lauffähigen Applikationen basierend, mit dem Kunden verifiziert werden. Dadurch vervollständigt sich die Applikation laufend bis zum Endprodukt.

Die Reduktion der Projektlaufzeiten führt zu einer schnellen Implementierung und wirtschaftlichen Inbetriebnahme der Geschäftsanwendungen. Durch den standardisierten Code ist zudem ein einfacher Austausch zwischen Entwicklern möglich. Der Code ist leicht zu verstehen und nachzuverfolgen. Darüber hinaus vereinfacht sich durch eine Produktionsmaschine die Softwarewartung und -weiterentwicklung. Veränderungen auf der Technologieseite lassen sich flexibel und schnell umsetzen. Die Qualität der Produktionsmethode bedeutet für die Unternehmen gleichzeitig auf lange Sicht Investitionssicherheit. (ba)

*Victor Bodnarescu ist Geschäftsführer VBO Services GmbH

FAQ maschinelle Softwareproduktion

Wie wird so eine Software-Produktionsmaschine genutzt – kaufen Anwender eine Dienstleistung und die Maschine bleibt im Besitz des Dienstleisters oder bekommt der Kunde die Maschine und kann auch selbst loslegen?

Antwort: Es gibt beide Fälle – Endkunden/Unternehmen bestellen in der Regel zu einem Festpreis eine Geschäftsanwendung. Diese wird basierend auf dem beschriebenen Verfahren schlüsselfertig geliefert und beim Kunden implementiert. Mit dem gleichen Verfahren erfolgt auch die Softwarepflege und Weiterentwicklung. Es gibt auch Kunden, in der Regel Softwareunternehmen, die Softwarelizenzen des Systems, inklusive Schulung und Beratung kaufen. Dann entwickeln diese selbständig ihre Softwarelösung, die sie selbst dann vertreiben.

Wie sehen Lizenzierungsmodelle aus? Wie steht es mit Wartung und Wartungsgebühren?

Antwort: Bezugnehmend auf die beiden oben beschriebenen Kundentypen:
1) Im ersten Fall zahlt der Kunde nur den Festpreis für die Entwicklung seiner Softwarelösung. Wenn er dazu Wartungsleistungen in Anspruch nimmt (in der Regel second level support) dann werden entsprechende Wartungsverträge mit SLAs vereinbart.
2) Die Lizenznehmer des Entwicklungstools kaufen auch eine Wartung. Im Rahmen dieser Wartung bekommen diese ohne Zusatzkosten weitere Entwicklungen mit aktuellen Releases der Entwicklungsmaschine, Generierungstemplates und dem Framework.

Wie lassen sich die maschinell produzierten Softwarebauteile in bestehende Infrastrukturen einbinden? Gibt es standardisierte Schnittstellen?

Antwort: Es gibt Standardschnittstellen, die modelliert und generiert werden können, entweder online oder im Batch, für: Webservices, Import- Export als XML, CSV, Datenbanktabellen, Excel. Die aktuellen Templates für Java Enterprise entsprechen dem JEE Standard. Konzernspezifische Standards lassen sich durch Anpassung/Erweiterung dieser Templates abbilden.

Für welche Unternehmen/Anwender eignet sich diese Methode Software zu erstellen?

Antwort: Für alle Branchen, solange es um Geschäftsanwendungen geht. Anwendungen mit Online-Benutzeroberflächen (Web- und/oder Desktop-Client), Reports, Batchprozesse, Workflows, Schnittstellen zu Drittsystemen, Datenmigration.

Gibt es Limitierungen, was Umfang beziehungsweise Komplexität der gewünschten Software betrifft?

Antwort: Bisher gab es keine Beschränkung. Das wird gelöst durch Aufteilung in Sub-Projekte und Sub-Modelle, die miteinander modular verknüpft sind und kommunizieren können.