Web Services

Vorteile und Herausforderungen der Web-Services-Technologie

02.10.2003
Web Services bieten eine Reihe von Vorteilen bei Integrationsprojekten, es sind aber auch verschiedene Herausforderungen zu bewältigen. In einer aktuellen Studie zeigt Berlecon Research, welche Vorzüge Web Services gegenüber traditionellen Methoden mitbringen.

Web-Services-Technologie hat eine Reihe von Vorteilen bei Integrationsprojekten, es sind aber auch verschiedene Herausforderungen zu bewältigen. Beide sind Gegenstand dieses Kapitels, wobei vor allen Dingen betriebswirtschaftliche Aspekte im Vordergrund stehen, die sich in den meisten Fällen aber aus den technologischen Charakteristika von Web Services ergeben. Insgesamt können vier Hauptvorteile unterschieden werden. So versprechen Web Services: Eine einfache und flexible Gestaltung von Geschäftsprozessen, Effizientere Projektabwicklung und geringere Projektkosten, Investitionsschutz und Zukunftssicherheit.

Vorteile bei der Projektdurchführung

Die Durchführung von Integrationsprojekten mit Web-Services-Technologie verspricht zwei unmittelbare Vorteile. Zum einen können Geschäftsprozesse einfach und flexibel in der IT abgebildet werden, zum anderen können Projekte effizient und mit vergleichsweise geringen Projektkosten realisiert werden.

Serviceorientierte Architekturen, wie sie mit Web Services verwirklicht werden können, bieten zwei wesentliche Vorteile für die Modellierung komplexer Geschäftsprozesse: In serviceorientierten Architekturen werden funktionale Einheiten modelliert, die in verschiedenen Zusammenhängen wieder verwendet werden können. Die Modellierung von Operationen als kleinste Einheiten ermöglicht die Zusammenfassung von Aktionen auf einer sinnvollen und handhabbaren Granularitätsebene.

Beide Vorteile gelten zwar nicht nur für Web-Services-Technologie allein, sondern für serviceorientierte Architekturen im Allgemeinen. Aber Web-Services-Technologie ist besonders gut für die technische Realisierung von serviceorientierten Architekturen geeignet.

Serviceorientierte Architekturen sind nicht nur für Neuentwicklungen geeignet. Auch existierende Software, die ursprünglich nicht serviceorientiert entwickelt worden ist, kann durch das Einziehen einer Web-Services-Schicht entsprechend integriert werden. Dabei werden Web Services als so genannte "Wrapper" auf existierende Legacy-Software aufgesetzt. Dadurch können eingespielte Geschäftsprozesse und bereits implementierte Funktionalität weiterverwendet und direkt im Kontext von Intranet, Extranet und Internet genutzt werden.

Effizientere Projektabwicklung

Generell bietet Web-Services-Technologie eine optimale technologische Basis für effiziente Projektabwicklung und Minimierung von Projektkosten. Hierfür gibt es eine Reihe von Gründen: Automatische Generierung von Schnittstellencode, Keine komplizierten Installations- und Anpassungsarbeiten, Geringer Einarbeitungsaufwand, wenig Spezialwissen notwendig, XML-Format vereinfacht Tests und Überwachung, Kostengünstige oder frei verfügbare (Open-Source-)Tools für Pilotprojekte, Umfassende Unterstützung der Anwendungsentwicklung durch Plattformen, Unabhängigkeit von Herstellern.

Einige dieser Vorteile treffen auch auf vergleichbare Integrationstechnologien wie J2EE (Java 2 Enterprise Edition), CORBA (Common Object Request Broker Architecture) oder MOM (Message-oriented Middleware) zu. Web-Services-Technologie profitiert gewissermaßen von den Erfahrungen, die mit diesen Technologien gesammelt wurden, nimmt die jeweiligen positiven Aspekte der einzelnen Technolo gien auf und kombiniert diese in einer Art und Weise, dass der maximale Nutzen erzielt werden kann.

Vorteile für die IT-Infrastruktur

Nicht nur bei der Durchführung von Integrationsprojekten bietet Web-Services-Technologie beträchtliche Vorteile. Der Einsatz von Web Services erhöht auch die Flexibilität und Zukunftssicherheit der firmeneigenen IT-Infrastruktur und trägt entscheidend zum Investitionsschutz bei.

Ein besonders attraktives Versprechen von Web-Services-Technologie ist, dass mit ihr bereits existierende Anwendungen für die Verwendung in neuen Technologie- und Anwendungskontexten nutzbar gemacht werden können, unabhängig davon, in welcher Technologie sie ursprünglich entwickelt worden sind. Man spricht in diesem Zusammenhang vom Web Services Enablement. Dies hat im Wesentlichen zwei Vorteile: Anwendungen werden Intranet-, Extranet- und Internet-fähig und heterogene IT-Infrastrukturen können integriert werden.

Besonders vorteilhaft ist dabei, dass das Web Services Enablement nur einmal durchgeführt werden muss und die Funktionalität dann in beliebigen Zusammenhängen nutzbar ist.

Ziel von Web Services Enablement ist meist, Anwendungen, die auf Großrechnern oder in Client-Server-Architekturen laufen, über Intranet, Extranet oder Internet zugänglich zu machen. Dies ist insbesondere von Nutzen für so genannte Altanwendungen oder Legacy-Systeme, beispielsweise Großrechneranwendungen, die in vielen Unternehmen einen wesentlichen Anteil an Funktionalität ausmachen. Häufig haben die Unternehmen bereits in beträchtlichem Umfang Know-how und Entwicklungsaufwand in diese Systeme investiert. Durch die Anbindung einer Web-Services-Schnittstelle lassen sich diese Systeme somit auch unter veränderten technologischen Rahmenbedingungen weiter nutzen. Die getätigten Investitionen können so geschützt werden, kostspielige Neuentwicklungen werden vermieden.

Zukunftssicherheit

Da Web-Services-Technologie inhärent offen ist, erhöht sich auch die Zukunftssicherheit der mit Web Services realisierten E-Business-Anwendungen. Prinzipiell ermöglicht der Einsatz von Web-Services-Technologie Interoperabilität sowohl mit der Innenwelt im Unternehmen als auch mit der Außenwelt, also über Unternehmensgrenzen hinweg.

Web-Services-Technologie garantiert nicht nur Unabhängigkeit von einzelnen Softwareanbietern, sondern sogar von den verwendeten Programmiersprachen und Betriebssystemen. Dies ist insbesondere vor dem Hintergrund der nach wie vor starken Heterogenität zwischen der Java- und der Microsoft-Welt hochgradig relevant: Mit Web-Services-Technologie lassen sich beispielsweise J2EE-Anwendungen problemlos über Excel als Bedienungsoberfläche ansprechen. Somit kann Funktionalität auf Basis von Web Services implementiert werden, ohne dass damit eine Festlegung für zukünftige Nutzungstechnologien getroffen wird.

Herausforderungen

Natürlich sind auch Web Services kein Wundermittel. So können sich bei einer falschen Anwendung von Web Services alle Vorteile, die Web Services prinzipiell bieten, leicht verflüchtigen. Auch beim Einsatz von Web Services müssen generelle methodische Aspekte des Software-Engineering berücksichtigt werden. Darüber hinaus gibt es noch einige Herausforderungen, die spezifisch für Web-Services-Technologie sind, wie etwa der Umgang mit noch nicht gefestigten Standards.

Ein wesentlicher Vorteil von Web Services und serviceorientierten Architekturen im Allgemeinen besteht in ihrer Wiederverwendbarkeit. Dabei ist die Wiederverwendbarkeit umso höher, je besser die Services modelliert sind. Das bedeutet: Services müssen auf der richtigen Granularitätsebene zur Verfügung gestellt werden. Services müssen nach allgemeinen funktionalen Kriterien modelliert werden und nicht nur nach den spezifischen Anforderungen der jeweiligen Anwendung, für die sie entwickelt werden.

Die richtige Wahl der Granularität von Web Services ist ein Balanceakt. Werden Services nicht granular genug modelliert, sinkt ihre Wiederverwendbarkeit. Auf der anderen Seite führt eine zu feine Modellierung von Services in der Regel dazu, dass der Aufwand für ihre Nutzung steigt, da das Client-Programm, das die Services nutzt, die einzelnen Services korrekt kombinieren muss.

Einige weitere Herausforderungen sind spezifisch für Web-Services-Technologie. Dazu gehören insbesondere Lösungen für die Bereiche Komposition, Sicherheit und Management, für die noch keine so etablierten Standards existieren wie bei den Basisfunktionalitäten mit XML Schema, SOAP oder WSDL. Solange für diese Facetten allgemein anerkannte und stabile Standards fehlen, besteht die Gefahr, dass proprietäre Lösungen entwickelt und eingesetzt werden, die die ohnehin schon begrenzte Interoperabilität noch weiter verringern.

Eine weitere Herausforderung besteht derzeit in der mangelnden Interoperabilität zwischen verschiedenen Web-Services-Plattformen. Unabhängigkeit von Programmiersprachen und Herstellern ist erst dann wirklich gegeben, wenn Interoperabilität für einen hinreichend großen Umfang von XML Schema, SOAP und WSDL Realität ist. Die Aktivitäten der WS-I (Web Services Interoperability Organization), in der wichtige Softwareanbieter zusammengeschlossen sind, können hier einen entscheidenden Beitrag leisten.

Der Auszug wurde der Studie "Integration mit Web Services" von Berlecon Research entnommen. Der vollständige Bericht steht zum kostenlosen Download bei Berlecon Research zur Verfügung.