CRM-Dienstleister empfiehlt: Bei verteilten Anwendungen eScript vermeiden

App-Server erleichtert Siebel-Integration

05.12.2003
MÜNCHEN (CW) - Wer sich für Siebels CRM-System entscheidet, steht meist vor der Aufgabe, dieses in unternehmensweite Geschäftsprozesse zu integrieren. Beim Koblenzer CRM-Dienstleister CHS Data Systems ist man der Meinung, dass sich Java und ein entsprechender Applikations-Server dafür besser eignet als die Siebel-eigene Skriptsprache.

Viele CRM-Anwendungen erheben den Anspruch, das "einzige Fenster zum Unternehmen" zu sein: Call-Center-Agenten oder Mitarbeiter im Point of Sales sollen nur noch mit einer einzigen Frontend-Anwendung alle kundenbezogenen Prozesse steuern. Doch hierfür reicht es nicht, wenn sich CRM-Systeme auf die üblichen Bereiche Vertrieb, Service und Marketing beschränken. Denn oft genug fragen Betreuer zusätzliche Informationen wie Kontostände von Kunden und Verfügbarkeiten von Waren ab, stoßen Bestell- und Versandprozesse an oder lassen Kundenkarten produzieren. Es kommen also Geschäftsvorgänge ins Spiel, die nicht mehr zum CRM-Standard gehören.

CRM im Kontext sehen

Die Lösung von Siebel bietet umfassende Funktionen, die sich auf den Vertrieb von Produkten sowie Service und Marketing beziehen. Doch lassen sich diese kundenorientierten Abläufe nicht ohne weiteres mit komplexen Unternehmensprozessen und Back-Office-Systemen integrieren. Laut Markus Stoth, Geschäftsleiter beim CRM-Dienstleister CHS Data Systems (www.chs.de), ist deshalb eine Lösung erforderlich, die im Sinn von Enterprise Application Integration (EAI) das gewünschte CRM-Funktionsspektrum auch im Zusammenhang mit logistischen, finanzwirtschaftlichen oder Produktionsprozessen nutzbar macht.

Siebel selbst bietet beispielsweise mit dem Siebel-Workflow oder dem Assignment-Manager viele Mechanismen an, um komplexe Geschäftslogiken wie Eskalationsprozesse innerhalb seines Systems darzustellen. "Wenn automatisierte Prozesse allerdings über die Siebel-Anwendung hinausragen, empfiehlt es sich, die Business-Logik aus dem CRM-System auszulagern und auf einem Java-basierenden Application Server (AS) abzubilden", rät Stoth. Dieser AS fungiert über Schnittstellen als Kommunikationsverbindung zwischen Siebel und anderen, individuellen Partner- oder Back-Office-Systemen.

Direkte Verbindungen von Siebel zu anderen Systemen existieren in dieser Architektur nicht. Denn die auf dem AS verwendete Programmiersprache Java verfügt laut Stoth gegenüber Siebels eScript über wesentliche Vorteile: Die Entwickler können den Code zusammenhängend erstellen, kompilieren und transparent modularisieren. Im Gegensatz zu eScript gibt es für Java eine effiziente Entwicklungsumgebung mit Debugging- und Analysewerkzeugen. Weitere Vorteile bietet der J2EE-Standard bei der Anbindung an Transaktions- und Messaging-Systeme sowie Ablaufplattformen.

In einer solchen Architektur findet die in Java programmierte, automatisierte und integrierte Verarbeitung von Daten (Business-Logik) auf dem Application Server statt. Die Definition von Geschäftsobjekten wie Kunde oder Vertrag sowie die Speicherung von Daten (statische Logik) erfolgt nach wie vor in Siebel. Die Daten eines Geschäftsvorfalls bewegen sich also mehrmals in den Application Server hinein. Hier berechnet die Business-Logik beispielsweise einen empfohlenen Kundenkontakttermin und spielt ihn wieder an den Siebel-Server zurück, wo der Termin gespeichert wird. Seinen Vorteil zeigt der Java-Server besonders dann, wenn er zur Berechnung dieses Kontakttermins Daten aus Back-Office-Systemen oder verschiedenen Kommunikationskanälen wie Internet oder SMS heranziehen soll. Die Architektur legt eine konsequente Verwendung von XML nahe und ist konform zur Universal-Application-Network-(UAN-)Strategie von Siebel.

Für die Verbindung zum AS sprechen die Entwickler die Geschäftsobjekte auf dem Siebel-Server nicht im Database-Layer (DBL), sondern auf der Ebene des Business-Logic-Layers (BLL) an. Das hat den Vorteil, dass die Logik sofort fachliche Regeln, denen Objekte unterliegen, mit erkennt und laufend berücksichtigt - so zum Beispiel, wenn die Laufzeit eines Vertrags auf zwei Jahre beschränkt ist.

Wesentlich für den Erfolg der Integration ist weiterhin die Auswahl geeigneter Adapter, die beispielsweise die Kontaktdaten der Kunden zwischen dem AS und Siebel-System übertragen. Praktische Erfahrungen aus CRM-Projekten zeigen laut Stoth, dass sich für den Transfer von Siebel zum AS der Siebel-EAI-HTTP-Adapter am besten eignet. Umgekehrt liefert für das Schreiben vom AS auf Siebel der Siebel-JCA-Adapter die besten Ergebnisse.

Die Verbindung über den AS ermöglicht eine Siebel-Integration mit einer Vielzahl von Backend-, Partner- oder Stammdatensystemen: Hierzu zählen unter anderem Bestell- und Logistiklösungen, Lettershops, Prämien- und Kartensysteme von Partnern oder finanzwirtschaftliche Kontensysteme. Weiterhin vereinfacht der Java-Server eine Multichannel-Kommunikation, indem er beispielsweise einen SMS-Provider integriert. Viele Geschäftsfälle werden laut Stoth nun erst möglich: Beispielsweise erfordert die Anmeldung eines neuen Teilnehmers für ein Kundenkartenprogramm sowohl die Erfassung der Kundendaten im CRM-Frontend als auch im Vertragssystem oder in verschiedenen Fachanwendungen.

Für die Integration von Geschäftsprozessen via AS sprechen Stoth zufolge zahlreiche Vorteile, unter anderem die kürzeren Entwicklungszeiten: "Unsere Großprojekte haben gezeigt, dass im AS mit Java eine Produktivitätsrate von 25 Function-Points (FP) pro Mannmonat (MM) erzielt wurde, während die Programmierer bei eScript-Code lediglich eine Rate von 11 FP pro MM erreichten." Daten transferieren, auf Plausibilität überprüfen und verifizieren sei bei der Verwendung von eScript wesentlich öfter erforderlich gewesen.

Release-Wechsel erleichtert

Ein konsequenter Verzicht auf eScript erleichtert außerdem den Release-Wechsel der beteiligten Systeme. Schließlich entlastet die Kommunikation über den AS das Siebel-System, was Ausfallzeiten und damit auch das Projektrisiko erheblich verringert. Weitere, durch den AS bereitgestellte Funktionen beinhalten einen vereinfachten Batch-Betrieb, eine effizientere Laststeuerung sowie die Kapselung der fachlichen Funktion von Schnittstellen.

Entscheidend für die Gesamtlösung ist laut Stoth jedoch, dass die Softwareteams gleichermaßen über hohe Kompetenz in Java und Siebel verfügen: "Getrennte Gruppen, die sich entweder auf eine Sprache oder jeweils nur auf statische oder dynamische Logik spezialisieren, arbeiten nicht immer gut zusammen", so seine verhaltene Kritik. (ue)

Abb: Verbindung zum Backend

Bei verteilten Prozessen empfiehlt es sich, die Business-Logik aus dem CRM-System auszulagern und in einem Java-Server abzubilden. Quelle: CHS