Das aus der Literatur bekannte Muster „Abstrakte Fabrik“ (Gamma et al. 2004) wurde zur Problemlösung hinsichtlich der Anforderungen an eine moderne Lagerplatzverwaltung herangezogen.

Von der „Abstrakten Fabrik“ zur PlatzAnweiserFabrik

Die aus dem Muster umgesetzte PlatzAnweiserFabrik deklariert eine Schnittstelle zum Erzeugen eines wiederverwendbaren PlatzAnweisers. Zusätzlich gibt es weitere teilnehmende Komponenten, wobei jeder der benötigten Teilnehmer seine eigene Aufgabe hat, die er erledigen muss:

  • Abstrakte PlatzAnweiserFabrik
    Deklariert die abstrakte Schnittstelle, die kundenspezifische PlatzAnweiser erzeugt.
  • Konkrete PlatzAnweiserFabrik
    Implementiert die Operation zum Erzeugen kundenspezifischer PlatzAnweiser zur Laufzeit.
  • Abstrakter PlatzAnweiser
    Deklariert die abstrakte Schnittstelle für einen bestimmten Typ eines kundenspezifischen PlatzAnweisers.
  • Konkreter PlatzAnweiser
    Implementiert, unter Berücksichtigung der kundenspezifischen Einlagerstrategie, die Lagerplatzsuche.
  • PlatzSucher
    Beschreibt die konkrete Anwendung, die einen Lagerplatz sucht. Sie verwendet nur die Schnittstellen, die von der abstrakten PlatzAnweiserFabrik und des abstrakten PlatzAnweisers deklariert sind.

abstrakte_Fabrik

Um die Gesamtaufgabe zu bewältigen, ist eine Interaktion der Komponenten erforderlich:

  • Der PlatzSucher erzeugt sich zur Laufzeit ein kundenspezifisches Exemplar einer PlatzAnweiserFabrik.
  • Diese konkrete Fabrik erzeugt anhand des übergebenen LHM’s und des Umlagergrundes einen geeigneten kundenspezifischen PlatzAnweiser.
  • Der PlatzSucher wendet sich an den erzeugten PlatzAnweiser, der ihm, auf Grundlage seiner implementierten Einlagerstrategie, einen Lagerplatz vorschlägt.

Das Entkoppeln von PlatzSucher und dem Dienstleister PlatzAnweiser ermöglicht die klare Aufgabenteilung zwischen Suche und Strategie. Daraus folgt, dass der PlatzSucher nicht die Platzstrategie selber vorgeben kann, sondern diese als Dienstleistung bezieht.
Die Dienstleister können wesentlich einfacher logistischen Prozessen und speziellen Ansprüchen angepasst werden. So ist es möglich, durch den Austausch eines konkreten Dienstleisters zur Laufzeit, logistische Prozessänderungen in der IT schnell und einfach an einer zentralen Stelle zu realisieren.
Es gilt: In der PlatzAnweiserFabrik wird entschieden,welcher Typ des PlatzAnweisers verwendet wird.

Die abstrakte Fabrik kapselt den zu verwendeten Typ des Dienstleisters, indem sie anhand von Eingangsparametern und kundenspezifischen Gegebenheiten den geeigneten Typ erzeugt. Der PlatzSucher kennt den konkreten PlatzAnweiser nicht, er kommuniziert mit ihm nur über die Schnittstellen seiner Abstraktion.

Mehr Informationen zur modularen Software finden Sie unter Modulare Software – Die Brücke angewendet auf das Transportgut: Verschiedene Lösungsvorschläge.

Bildquelle: © MNovelo – Fotolia.com