Neue Entwicklungs-Tools verheißen Produktivitätsschub
Software-Entwicklung ist im Zeitalter konfigurierbarer Standardsoftware à la SAP, Siebel und Peoplesoft nur scheinbar ein Fall für die Mottenkiste.
Es rührt sich was im Markt für Entwicklungs-Tools: Microsoft gewährt erste Blicke auf ‘Longhorn’, Marktklassiker verschmelzen, und Bea, Hersteller eines Applikations-Servers, taucht unter den Anbietern von Programmierwerkzeugen auf. Entwicklungsklassiker wie Code-Generatoren und Modelle aber erleben eine Wiedergeburt.
Software-Entwicklung ist im Zeitalter konfigurierbarer Standardsoftware à la SAP, Siebel und Peoplesoft nur scheinbar ein Fall für die Mottenkiste. Denn überall dort, wo Fertigmischungen nicht ausreichen, Unternehmen an neuralgischen Punkten in spezifischer Funktionalität einen Mehrwert sehen, wird auch in Anwenderunternehmen Software entwickelt.
So erstellt Martin Lucas, IT-Leiter beim Beratungs- und Marktforschungsunternehmen Tech Consult, eine Business-Intelligence-Anwendung für die Kunden und die internen Consultants. Früher, erläutert er, bekamen die beiden Gruppen die Ergebnisse von Erhebungen im Umfeld von Informations- und Telekommunikationstechnik in Deutschland, Österreich und der Schweiz in Form von Berichten. Doch diese Form des Angebots ist längst unhandlich.
Die Alternative, die unter der Lucas’ Ägide entsteht, besteht im Zugriff auf die statistischen Angaben per Internet beziehungsweise per Intranet. Die zugrunde liegende Datenbank enthält derzeit rund 3 Millionen Einzeldaten und wird ständig erweitert. Doch nicht nur die Datenbasis wächst. Auch die Anwendung, die beiden Frontends für die Kunden und Berater, ändern sich und müssen weiter entwickelt werden.
Den intern genutzten Applikationspart beschreibt Lucas als “klassische Windows-Anwendung”, für die er hauptsächlich das Borland-Tool ‘Delphi’ nutzt. Obwohl das Wort “angestaubt” das Image des Werkzeugs gut beschreibe, sei die Entscheidung für das Tool einfach gewesen, erläutert der Entwicklungsleiter, denn das Know-how habe bereits existiert: “Wir konnten gleich durchstarten.”
Für den Internet-Bestandteil der Statistik-Anwendung nutzt Tech Consult die Open-Source-Skriptsprache PHP. Lucas lobt insbesondere die Flexibilität der Sprache, wenngleich er bedauert, dass insbesondere eine “sauber funktionierende Debugging-Umgebung” fehle. Einen weiteren Mangel stellt er bei den Tools fest, die dazu dienen könnten, Performance-Probleme zu analysieren.
Trotzdem sieht er keine Notwendigkeit, zu einer anderen Entwicklungsumgebung zu wechseln, zumal die einmal erstellten Komponenten wieder verwendbar seien. Obwohl Delphi 7.0 viele der zusätzlichen Funktionen wie Hilfsmittel zur Code-Verwaltung, zum Entwickeln einer Software-Architektur, Applikationsmodelle und Design unterstützt, nutzt Lucas sie für seine Zwecke nicht. Der Einsatz wäre “unverhältnismäßig”, sagt er. Allerdings wünscht sich Lucas eine Möglichkeit, die Abhängigkeiten der Softwarekomponenten, der Teilprozesse und der damit verknüpfen Daten zu dokumentieren.
<b>Entwicklung als Tanz auf dem Vulkan</b>
Für Johann Mühlgrabner, General Manager und Head of IT bei UCP Morgen, einem Softwarehaus, das Applikationen im Konvergenzbereich von Internet- und Mobilfunkportalen entwickelt, ist eine solche Funktion keineswegs nur ein Wunsch. Sie ist eine Notwendigkeit, die die Existenz des 70-Mitarbeiter-Unternehmens aus Wien sichert. Auftraggeber sind Mobilfunkgesellschaften und Portalbetreiber.
Bis vor etwa einem Jahr hat das Mühlgrabner-Team hauptsächlich mit C, C++ und Perl entwickelt. Doch die stetig steigenden Anforderungen an die Komplexität der Anwendungen und die Middleware sowie an die Skalierbarkeit und die zeitlichen Rahmen lässt die Firma in Abgründe blicken. Zum Beispiel muss Mühlgrabner mit einer Skalierung um den Faktor 10.000 rechnen, obwohl die Anwendungen selbst kaum drei Monate leben. Denn Downloads zum Beispiel sind abhängig vom jeweils aktuellsten Musiktrend oder vom neuesten Superstar, von Gewinnspielen und von einer Fernsehsendung oder Marketing-Aktionen. Ein Ausfall, sei es um Minuten, kostet die Kunden ein Heidengeld und stürzte das Softwarehaus in die Existenzkrise.
Weil die Kundschaft Microsoft-basierte Entwicklungen ablehnt, kam für Mühlgrabner nur ein Java-Tool in Frage. Er entschied sich für das Compuware-Werkzeug ‘Optimal J’. Das Tool gehört wie ‘Archstyler’ von Interactive Objects zu einer Produktklasse, die die Model Driven Architecture (MDA) unterstützen, einen Standard der Object Management Group (OMG). Hierbei geht es darum, Geschäftsmodelle in ausführbaren Code umzusetzen.
<b>Modelle steigern die Produktivität</b>
Technische Mitarbeiter wissen wenig über die Unternehmensprozesse und die Anwender finden technische Themen zu komplex. Ein Modell, so die Überlegung, könnte bei der Verständigung behilflich sein. Das Business-Modell entsteht unabhängig von technischen Spezifika, weder von Applikationslogik noch von Plattformabhängigkeit. Aus diesem vergleichsweise abstrakten Modell lassen sich weitere Modelle in einem höheren Detaillierungsgrad ableiten und schließlich Code generieren. Die Architektur basiert auf weiteren OMG-Standards wie der Unified Modelling Language (UML), Meta-Object Facility (MOF) und dem Common Warehouse Meta-Model (CWM). Die Beschreibungen können demzufolge in CORBA-, Java-, Dotnet-, XMI/XML- und Web-basierten Umgebungen verwendet werden.
Nach Aussagen von Herstellern und Analysten kann die formale Beschreibung von Software-Architekturen mittels Modellen und der Einsatz von Code-Generatoren die Produktivität eines Entwicklungsteams beträchtlich erhöhen und die Fehlerrate signifikant verringern. Wie die britische Butler Group jüngst in einer Studie herausfand, sparen etwa Unternehmen, die Optimal J einsetzen, bis zu 40 Prozent der Entwicklungszeit gegenüber herkömmlichen Entwicklungsmethoden. In der Wartungsphase, in der rund 80 Prozent der Kosten der Anwendung anfallen, sogar bis zu 90 Prozent.
Tatsächlich scheint es einen enormen Bedarf an mehr Komfort und Sicherheit zu geben, was die J2EE-Entwicklung angeht. Gartner-Analysten fanden heraus, dass rund 70 Prozent aller Projekte aufgrund mangelhaften Könnens fehlschlagen. Von rund 2,5 Millionen Java-Entwicklern weltweit seien nur 800.000 Entwickler fit genug im Umgang mit Enterprise Java Beans (EJBs) und J2EE (Java Enterprise Edition, Version 2).
<b>Die Code-Wartung ist das Problem</b>
Trotzdem scheinen die MDA-Tools nur für große Entwicklungsabteilungen tauglich. So hält Entwicklungsleiter Lucas den Aufwand, den er in die Applikationsmodellierung stecken müsste, für zu hoch. Dem stimmt auch Andreas Bitterer zu, Analyst beim Marktforschungsunternehmen Meta Group. Zugleich bescheinigt er der MDA, nur ein möglicher Bestandteil neuartiger Entwicklungsumgebungen zu sein. Heute müssten die Produkte den gesamten Lebenszyklus eines Entwicklungsprodukts abdecken. Dazu gehören unter anderem Design und Test, Versionskontrolle und Projekt-Management. Das zugehörige Stichwort lautet ‘Integrated Lifecycle Development Environment’.
Aus diesem Zusammenhang erklären sich insbesondere die Übernahmen von Rational durch IBM sowie von Togethersoft durch Borland. Durch die Akquisitionen seien IBM und Borland heute sehr gut aufgestellt. Schlechte Noten vergibt Bitterer dagegen an Sun und Oracle. Trotz des Zukaufs von Forte, trotz des Entwicklungsrahmens Orion und trotz der Stellung als Java-Erfinder habe Sun schlichtweg “den Zug verpasst”. Auch Oracle hinke der Zeit hinterher, was die Abdeckung des Lebenszyklus von Code angehe.
<b>Wo bleibt die Integration?</b>
Auch Gartner-Analysten machen eine neue Kategorie von Tools aus, die so genannten Application Platform Suites (APS). Sie sollen sowohl der Anwendungsentwicklung als auch der Integration dienen. Dank Standards wie Java und XML, dank Applikations-Server und Portal verschwinden die Unterschiede von Entwicklungs- und Laufzeitumgebung. Rund 5 bis 10 Prozent Produktivitätsgewinn ließe sich hiermit erzielen, behaupten Experten.
Offenbar ist die Nachfrage groß, stärker als selbst die Hersteller erwartet haben. Das liegt an dem Wunsch von Anwenderunternehmen, die Anzahl ihrer Schnittstellen zu reduzieren und nicht durch neue Anwendungen zu vermehren. Sie wollen die Komplexität ihrer Infrastruktur mindern und somit die Kosten für die Pflege. Bei einem Durchschnittsunternehmen mit 60 bis 70 Prozessen fallen immerhin rund 3600 Schnittstellen an. “Es geht um folgende Frage”, erläutert Meta-Group-Experte Bitterer: “Wie bekomme ich meine Prozesse systemübergreifend hin?”
Schon bei der APS-Definition durch Gartner ist klar, dass nur wenige Anbieter die Tool-Kriterien erfüllen können; denn gefragt sind drei grundlegende Laufzeit-Techniken: Enterprise Application Server (EAS), Enterprise Integration Suite und Enterprise Portal. Dazu gehören IBM, BEA, Oracle, Sun, Novell, Fujitsu, SAP sowie Iona, Sybase, Fujitsu-Siemens und – Microsoft.
<b>Microsoft macht alles anders</b>
Ende letzten Jahres veröffentlichte Microsoft erstmals Details seiner Tools- und Methodenstrategie. Nach Einschätzung der auf Web-Services spezialisierten Marktforscher und Berater von CBDI wird diese nämlich die Marktprämissen entscheidend verändern. Die Auswirkungen treffen etwa die MDA-Tools. “Was wir sehen”, schwärmt ein CBDI-Berater, “sind visuelle Tools, die Modelle wie Interfaces nutzen, um die Verwaltung von Metadaten zu erleichtern und Code zu integrieren.”
Zu dem Entwicklungssystem, das derzeit noch den Code-Namen ‘Longhorn’ trägt, gehört zunächst das System Definition Modell (SDM). Es handelt sich um ein Metadaten-Modell, das von den Entwicklungs-Tools, dem Betriebssystem, Applikationen, Hardware und Management-Tools unterstützt wird.
Mit den ‘Whitehorse-Tools’, den eigentlichen Verwaltungs- und Modellierungswerkzeugen, lassen sich Elemente eines verteilten Systems spezifizieren: Services, Endpunkte, Beziehungen, Datenbanken und ganze Subsysteme. Damit erhält der Software-Ingenieur eine Art Gerüst des Gesamtsystems für jegliche Service-orientierten Architekturen. Die so gewonnene Struktur kann dann mit weitergehenden Informationen bestückt werden, zum Beispiel über logische und physische Ressourcen, Verteilungsinstrumente und Konfigurationsstati.
Modell und Code erscheinen in Visual Studio als Fenster, so dass der Entwickler zwei Sichten auf denselben Systemausschnitt erhält. Laut CBDI ist Modellierung und Codierung keine Abfolge von Programmierschritten, in der die Modellierung häufig nur als Mehraufwand wahrgenommen wird. Die enge Verzahnung entspricht einem Zugleich; denn ein Großteil des Codes wird generiert.
Gegen das Microsoft-Konstrukt, dessen Bestandteil SDM im Sommer des kommenden Jahres veröffentlicht werden soll, wirken die OMG-Standards geradezu altbacken. In jedem Fall aber sei der Markt für Modell-basierte Systeme viel, viel interessanter geworden.