Logistiksoftware Modularer Aufbau erhöht Stabilität von Software zur Lagerverwaltung

Autor / Redakteur: Fritz Mayr / Volker Unruh

Die meisten Prozesse und Arbeitsabläufe in Lager und Logistik werden heute von Lagerverwaltungssoftware gesteuert. Viele Anbieter solcher Systeme schwören dabei auf modular aufgebaute Software. Dieser Artikel erläutert die Vorteile modularer Software-Konzepte für die Lagerverwaltung.

Anbieter zum Thema

Ein wichtiges Merkmal, das unsere Software durchgängig erfüllt, ist ihr integrierter modularer Aufbau... .“ So oder so ähnlich kann man in den Broschüren diverser Softwarehäuser für Lagerverwaltung- oder für ERP-Systeme das Kapitel zum Aufbau der Software lesen. Aber was ist unter einem modularen Aufbau zu verstehen? Im Allgemeinen wird der modulare Aufbau von Geräten dahingehend definiert, dass die Konstruktion eines Gerätes aus zwei oder mehreren in sich funktionstüchtigen Modulen besteht.

Der modulare Aufbau erlaubt – ähnlich wie in einem Baukastensystem – eine einfache und damit kostengünstige Montage von Geräten. Diese Festlegung stammt von der Firma Bosch und bezieht sich auf den modularen Aufbau von Elektrowerkzeugen.

Was bedeutet das für Software-Systeme? Auch hier gilt der Hauptvorteil einer kostengünstigen Montage. Die Montage der Software findet nur einmal statt, nämlich nach der Programmierung der Einzelmodule. Später muss eine Software nicht nochmals zusammengebaut werden. Eine wiederholte Montage der Software entfällt, da es sich bei einem Software-System um Logiken handelt und nicht um physikalische Elemente, die zusammengebaut werden müssen. Daraus ließe sich schlussfolgern, dass Modularität bei einem Software-System gar nicht gravierend wichtig sei, Hauptsache, das Programm erfüllt seine Aufgaben.

Ein modulares Programm besteht aus in sich funktionsfähigen Einzelmodulen. Wie einfach ist schließlich das Zusammenfügen von Einzelmodulen zu einem System? Ein kleiner Ausflug in die Wahrscheinlichkeitsrechnung deckt auf, wie wahrscheinlich die Funktionsfähigkeit eines Einzelmoduls sein muss, um ein funktionsfähiges Gesamtsystem zu erreichen.

Die Wahrscheinlichkeit der Funktionsfähigkeit eines Systems errechnet sich aus dem Produkt der Wahrscheinlichkeiten der einzelnen Module. Besteht ein Gerät aus vier voneinander abhängigen Modulen, und jedes der Module hat eine wahrscheinliche Funktionsfähigkeit von 90%, dann errechnet sich die Funktionsfähigkeit des Gesamtsystems aus der Formel 0,9 × 0,9 × 0,9 × 0,9 = 0,66. Somit läuft das System mit einer Wahrscheinlichkeit von 66% fehlerfrei und stabil. Dieser Wert ist jedoch in der Praxis in keiner Weise akzeptabel. Alle Ergebnisse, die unter einer Wahrscheinlichkeit von 99% liegen, arbeiten nur unbestimmt und somit instabil.

Funktionsfähigkeit der Einzelmodule muss gesichert sein

Wird im Sinne von Java ein Modul als eine Klasse definiert, dann bestehen heutige Lagerverwaltungssysteme aus bis zu 2000 Modulen. Sicherlich hängen nicht alle Module eines Systems voneinander ab, aber dennoch wird die Problematik deutlich, der sich ein Software-System stellen muss. Das Beispiel zeigt anschaulich, wie wichtig die Funktionsfähigkeit des Einzelmoduls ist: Ohne Modularität sind Einzeltests nicht möglich und damit ist ein stabiles Gesamtsystem auf Dauer nicht beherrschbar. Wenn ein Software-System aus in sich funktionsfähigen Einzelmodulen besteht, ist die Robustheit des Gesamtsystems um Größenordnungen höher als bei einem nicht modularen System.

Ältere Lagerverwaltungssysteme weisen die Systemarchitektur eines Monolithen auf. Noch immer gibt es Unternehmen, die ihre betrieblichen Abläufe mit solchen monolithisch strukturierten Lagerverwaltungssystemen einigermaßen zufriedenstellend abbilden können. Doch ohne eine gewisse innere Modularität sind auch diese Lagerverwaltungsprogramme vollständig unbrauchbar.

Modularität ist für die Brauchbarkeit von Software unabdingbar. Modularität entsteht nie durch Programmierung, sondern immer durch Planung. Ohne Planung des Softwareaufbaus gibt es keine Modularität und damit auch keine funktionsfähige Software.

Wege zu einem sinnvollen modularen Software-Aufbau

Die Mitarbeiter der Fürstenfeldbrucker CIM GmbH orientieren sich am Endergebnis, dem funktionierenden Prozess. In der Praxis wird ein Logistik-Gesamtprozess in Einzelprozesse zerlegt. Diese Einzelprozesse wiederum bilden die Grundlage für die Definition der jeweiligen Module. Was im Maschinenbau die normierte Werkstattzeichnung ist, ist für die Informatik das UML-Diagramm (UML= unified modeling language). Und diese Prozessdiagramme eignen sich sehr gut zur Definition von Logistikprozessen.

Sind alle Prozesse im Lager auf diese Art beschrieben, stehen sämtliche Module fest. Sie bilden dann nicht nur die technische Grundlage des Systems, sondern definieren das System auch kaufmännisch. CIM beispielsweise gibt jedem der Module seines Warehouse-Management-Systems Prolag World einen Preis. Dies ist die Grundlage, ein modulares Gesamtsystem zu kalkulieren.

In weiteren UML-Diagrammen wird das Modul feiner definiert. Ein Use-Case-Diagramm, welches mit dem Modul verbunden ist, definiert die Programmierung genauer. Ein Klassendiagramm beschreibt die Modulgrenzen und ein Aktivitätsdiagramm die innere Logik. Erst mit der spezifischen Definition kann mit der Programmierung des Moduls begonnen werden. Das Vorgehen ist analog zum Bau einer Anlage im Maschinenbau.

Jetzt Newsletter abonnieren

Verpassen Sie nicht unsere besten Inhalte

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung

Damit wird ein Modul nach dem anderen von der Funktionsweise und von den Modulgrenzen definiert. Bereits nach der Planung des Moduls steht fest, wie es zu testen ist. Die Testmannschaft hat, noch bevor die Programmierung fertig ist, einen vollständigen Testplan für das Modul. Die Verknüpfung der Module untereinander geschieht durch fest definierte Schnittstellen. Ein solches System ist wie das Wabensystem eines Bienenstocks aufgebaut.

Öffentliche Schnittstelle des Warehouse-Management-Systems zum ERP-System

Neben internen Schnittstellen sind auch externe Schnittstellen definiert. Das Modul „Versandsystem“ von Prolag World beispielsweise wird über eine feste, öffentliche Schnittstelle eingebunden. Das hat den Vorteil, dass das in das WMS integrierte Versandsystem entweder durch ein Versandsystem eines anderen Herstellers oder ein Update einer höheren Version, in der beispielsweise weitere Paketdienstleister angesteuert werden können, problemlos möglich ist – und all dies, ohne die Version des Kernsystems wechseln zu müssen. Das Versandsystem bietet sich über feste Schnittstelle den anderen Modulen als Dienst an.

Genauso wird eine öffentliche Schnittstelle des WMS zum ERP-Systemen angeboten. Damit steht das gesamte Lagerverwaltungssystem dem ERP-System als Dienst zur Verfügung.

Moderne objektorientierte Programmiersprachen wie zum Beispiel Java bieten die Möglichkeit, angepasste Methoden außerhalb des Standardcodes zu bearbeiten. Dazu wird die Vererbungstechnik verwendet.

Jede Standardklasse hat eine leere Kundenklasse, die von der Standardklasse erbt. Änderungen werden nur in die Kundenklassen geschrieben. Bei einem Releasewechsel werden nur die Standardklassen ausgetauscht. Haben die Module weiterhin unveränderte und klare Schnittstellen, so ist ein Releasewechsel genauso einfach wie ein Reifenwechsel bei einem Auto: Aufschrauben, Wechseln, Zuschrauben, Testen, Nachjustieren.

Ein modularer Softwareaufbau ist für die Herstellung stabiler Software-Systeme unabdingbar. Modulare Software kann nur erstellt werden, wenn der Aufbau der Software geplant wird. Ein geeignetes Mittel zur Planung der Software bieten UML-Diagramme. Module, die häufig genutzt und auch häufig geändert werden, verfügen über feste und öffentliche Schnittstellen, damit sie unabhängig vom Releasestand ausgetauscht werden können.

Die Module der Lagerverwaltungssoftware Prolag World, um bei diesem Beispiel zu bleiben, werden so gebaut, dass sie als Dienst anderen Modulen zur Verfügung stehen. Derart umgesetzt, bietet Modularität, wenn sie richtig implementiert wird, ein leicht änderbares und im Unterhalt kostengünstiges System.

Fritz Mayr ist Geschäftsführer der CIM GmbH in 82256 Fürstenfeldbruck. Weitere Informationen: CIM GmbH, Tel. (08141) 5102-0, info@cim.de

Artikelfiles und Artikellinks

(ID:239626)