Systemarchitektur - ein Blick unter die Motorhaube eines ERP-Systems - News auf topsoft

Systemarchitektur - ein Blick unter die Motorhaube eines ERP-Systems

Wie sieht die Zukunft der ERP-Softwareentwicklung aus? Lassen sich ERP-Systeme beliebig gross bauen? Welchen Einfluss hat die Cloud auf die Systemarchitektur von ERP-Software? Simon Lüdi, CEO dynasoft AG, im Gespräch mit Christian Bühlmann, IT-Experte und Chefredaktor des topsoft Fachmagazins gibt Antworten.

 

 

Herr Lüdi, für viele Anwender zählt oft nur das äussere Erscheinungsbild eines ERP-Systems. Den Blick unter die digitale Motorhaube wagen nur wenige. Fehlt dafür das Verständnis? Unterscheiden sich die Architekturmodelle zu wenig? Warum lohnt es sich aus Ihrer Sicht, der Systemarchitektur auf den Grund zu gehen?


Oberflächlich betrachtet gibt es tatsächlich gar nicht so viele Unterschiede. Bei jedem ERP geht es einerseits um Daten, andererseits um Prozesse und schliesslich um die Präsentation gegenüber dem Anwender. Das bestimmt auch den Aufbau. Für die Daten steht wohl fast ausnahmslos eine Datenbank zur Verfügung, welche das Fundament der ERP-Software darstellt. Für die Prozesse benötigt das ERP eine Applikationsschicht, welche für alle Geschäftsprozesse Funktionen zur Verfügung stellen. Und schliesslich benötigt das ERP eine Präsentationsschicht, um die Daten darzustellen bzw. die Funktionalitäten den Benutzern anzubieten.


Mit welcher Technologie die jeweilige Schicht umgesetzt wurde, kann zu unterschiedlicher Wahrnehmung der Architektur führen. Alle namhaften ERP-Systeme haben in ihrer langen Lebenszeit mehrere Technologien durchschritten. Entscheidend ist, dass ihr Aufbau einen Technologiewechsel überhaupt erst möglich macht, wie das z.B. bei tosca ungefähr alle acht Jahre unter Beweis gestellt wird.


Die Unterschiede in den Architekturen werden erst sichtbar, wenn man der Systemarchitektur auf den Grund geht. Auf dieser Ebene müssen Softwarearchitekten Herausforderungen meistern wie zum Beispiel: Wie werden Umsysteme angebunden? Wie sieht das Datenmodell aus? Wie generisch sind die Prozesse?


Stichwort Datenbanken: Lassen sich da Unterschiede feststellen und welche Auswirkungen haben diese?


Es gibt sehr wohl unterschiedliche Datenbanken. Ein fundamentaler Entscheid ist, ob eine relationale Datenbank oder eine Objektdatenbank eingesetzt werden soll. Bei ERP-Systemen trifft man sehr oft auf relationale Datenbanken. Diesen haben den Vorteil, dass die Daten auch unabhängig von der Applikationsschicht verwendbar sein können. Für beide Paradigmen, relational oder objektorientiert, existieren hervorragende Produkte, welche den hohen Anforderungen einer Unternehmenslösung in Bezug auf Stabilität, Performance und Sicherheit genügen.


Wie hat sich die Systemarchitektur von ERP-Systemen in den letzten Jahrzehnten verändert? Kann man gewisse Trends feststellen? Wie eingangs erwähnt, ist es weniger die Architektur, sondern die Technologie, welche die Trends vorgibt. Eine rigorose, klare Trennung der Schichten – Persistenz (Datenbank), Businesslogik (Applikation) und Präsentation (User-Interface) – liegt den heutigen Entwicklern  immer mehr am Herzen. Der Grund dafür ist einfach: Trends kommen und gehen, daher es ist wichtig mithalten zu können und die «time-to-market» so niedrig wie möglich zu halten. Wichtig ist aber auch: Es sind nicht die Technologie-Trends, sondern die Markt-Trends, die Bewegung verursachen. Obwohl die beiden Trends natürlich in Abhängigkeit zueinanderstehen. Die Anforderungen des Marktes sind massgebend. Aktuelle Trends heute sind z.B. Orts- und Geräteunabhängigkeit sowie Interoperabilität.


Welchen Einfluss hat die Cloud auf die Systemarchitektur eines ERP-Systems?


Spricht man von Real-Cloud, so hat die Cloud effektiv einen Einfluss auf die Architektur, da die Mehrmandantenfähigkeit fundamental verankert sein muss und auf entsprechend skalierbaren Produkten aufzusetzen hat. Oft wird der Begriff Cloud auch verwendet, um lediglich den Betrieb des Systems in einem Rechenzentrum zu beschreiben. Diese Form der Cloud hat für den Anwender bereits viele Vorteile, bei einer gleichzeitig niedrigeren Hürde für den Hersteller. Cloud-Produkte bieten idealerweise eine Präsentationsschicht im Web an. Das bedeutet, dass die Cloud auch einen Einfluss auf die einzusetzenden Technologien hat.


Welche Systembereiche haben den meisten Einfluss auf die Leistungsfähigkeit eines ERP-Systems? Und was viele Benutzer interessiert: In wie weit hängt die Performance eines ERP von der Programmierung ab?


Einen bedeutenden Einfluss auf die Leistungsfähigkeit hat die Datenbank, welche auch bei sehr grossen Datenmengen performant sein muss. Eine leistungsfähige Hardware unterstützt die Datenbank in jedem Fall. Die Programmierung ist tatsächlich ein weiterer Faktor. Eine Optimierung von einer schlecht formulierten Abfrage an eine Datenbank hin zu einer perfekten Abfrage, kann durchaus zu einer hundertfach schnelleren Durchlaufzeit führen. Hier ist Expertise gefragt, wie sie in den Entwicklungsabteilungen von ERP-Systemhäusern vorhanden ist.


Wie lässt sich ein zentrales ERP mit unterschiedlichen Drittsystemen verbinden?


Das Ziel muss eine API sein, welche über standardisierte und parametrierbare Wege die Kommunikation mit Umsystemen ermöglicht. Diese API kapselt die jeweiligen Transkriptionen zwischen den verschiedenen Umsystemen und schützt die systemimmanente Logik vor direktem Zugriff. Ein heutiges ERP beherrscht das ganze Repertoire der Interoperabilität, sei es in Bezug auf Formate, Kanäle und Protokolle.


Welche Rolle spielen dabei EAI- bzw. SOA-Konzepte? Vielleicht können Sie gleichzeitig auch etwas Licht in die begriffliche Dunkelheit bringen?


Beide Technologiekonzepte haben zum Ziel, innerhalb heterogener Systemlandschaften systemübergreifend Geschäftsprozesse zu ermöglichen. Entsprechende Systemlandschaften gehören beinahe zum gewöhnlichen Bild einer IT-Landschaft eines mittleren oder grösseren Unternehmens. Nicht selten gibt es Legacy-Systeme deren Ablösung gerade im Hinblick auf Kosten/Nutzen schwierig ist, oder man verfolgt partiell den best-of-breed-Ansatz und arbeitet in bestimmten Abteilungen mit denjenigen Softwareprodukten, welche als beste dieser Disziplin gelten.


EAI und SOA versuchen nun diese verschiedenen Systeme zu verbinden. Bei EAI (Enterprise Application Integration) wird grundsätzlich mit den bestehenden Schnittstellen der Systeme gearbeitet, während SOA (Service Oriented Architecture) davon ausgeht, dass die verschiedenen Systeme über geeignete Services verfügen, welche angesprochen werden können. Bei SOA ist somit ein Anspruch an die zu verbindenden Produkte da, bei EAI entfällt dieser auf Kosten einer Verlagerung von mehr Businesslogik in den verbindenden Enterprise-Service-Bus.

Bedeutet das, dass man ein ERP beliebig gross «bauen» kann? Wo liegen die Grenzen des Machbaren bzw. Sinnvollen?


Im Prinzip kann ein ERP wirklich sehr umfassend sein. Somit ist fast alles machbar, sinnvoll hingegen ist es nicht. Es gilt zu bedenken, dass jede Komponente des ERP-Systems permanent gepflegt und weiterentwickelt werden will. So entscheidet die Aufwand-/Ertrag-Betrachtung über den Umfang. Exotische Disziplinen, die nur von einem Bruchteil der Anwender verwendet werden und gleichzeitig einen gewissen kontinuierlichen Pflegeaufwand nach sich ziehen, nimmt man besser nicht in das Standard-Portfolio mit auf.


Wohin geht die Reise der ERP-Systemwelt? Wie sieht die künftige Entwicklung aus?


Eine geeignete Architektur für die Zukunft bedient sich einerseits der oben beschriebenen Modelle und Technologien und unterstützt den Architekten gleichzeitig darin, eine Systemlandschaft zu bauen, welche eine zentrale Einheit für die Daten und Prozesse vorsieht und eine Vielzahl zielgruppenoptimierter Applikationen (ZOA) für den Anwender bereithält. Die ZOA kommuniziert z.B. in Anlehnung an SOA mit der zentralen Einheit, welche wir die ERP-Engine nennen. Die ZOA hält nach Möglichkeit keine eigenen Daten vor, sondern ist in erster Linie eine Präsentationsschicht, welche Daten und Prozesse der ERP-Engine dem Anwender zur Verfügung stellt. Ausserdem vermag sie Geschäftsprozesse eines Bereiches zu orchestrieren.


Der Vorteil dieser Systemlandschaft ist, dass die ZOA-Komponenten, welche typischerweise stärker technologischen Trends zu folgen haben, austauschbarer werden. Sie sind nur lose an die ERP-Engine gekoppelt. Selbstverständlich wird es auch in Zukunft nicht nur eine zentrale Einheit für Daten und Prozesse geben. Heterogene Systeme sind ein Faktum und werden es wohl auch bleiben. Daher ist das Bild der ERP-Engine, umgeben von ZOAs, ein idealtypisches.

 

Vielen Dank, Herr Lüdi, für den kompetenten Blick in die Tiefen von ERP-Software.

 

Simon Lüdi, CEO dynasoft AG

 

 


dynasoft AG
Niklaus-Konrad-Strasse 16
4500 Solothurn
www.dynasoft.ch