Der Blog von fm-ProductNode

Der Blog von fm-ProductNode


Neueste Einträge

Brettspiel

Das Release 2.0 von fm-ProductNode

Verfasst von franz-mue am 3. August 2017

Die Fertigstellung des Releases 2.0 hat länger gedauert als ursprünglich angenommen. Allerdings hat sich auch sehr viel getan: Vieles wurde überarbeitet, ausgebaut und erweitert. So hat nicht nur die Funktionalität zur Verarbeitung von BMEcat-Produktkatalogen stark zugenommen, sondern es hat sich ein zweiter Schwerpunkt gebildet; fm-ProductNode enthält nun auch eine flexible Plattform zur Realisierung verschiedenartiger Datentransformationen, die in Workflows eingebettet und mit anderen Rechnern vernetzt werden können.

Nachfolgend gebe ich einen Überblick über die wichtigsten Neuerungen. In nächster Zeit werde ich im Blog mehr im Detail auf die neue Funktionalität und deren Anwendung eingehen.


Weiterlesen …

Stoppuhr

Die performante Validierung von BMEcat-Dokumenten

Verfasst von franz-mue am 25. März 2016

Bereits in einigen meiner früheren Beiträgen stand das Thema Performance auf der Tagesordnung. Im vorliegenden Beitrag beschäftige ich mich nun mit der Performance von fm-ProductNode selbst - und zwar mit dem Einlesen von BMEcat-Dokumenten von der Konsole. Die Variation einiger Stellschrauben zeigt, wieweit die Performance mit einfachen Mitteln beeinflusst und an die eigenen Bedürfnisse und Gegebenheiten angepasst werden kann.


Weiterlesen …

Von Clean Code zur Clean Specification

Verfasst von franz-mue am 25. März 2016

Vor etlichen Jahren erregte das Buch "Clean Code" von R. C. Martin in der IT-Welt große Aufmerksamkeit; den Ideen des Buches zum Schreiben "sauberen" Programm-Codes wurde schnell eine große Anerkennung zuteil und resultierte in weiter Verbreitung (siehe zum Beispiel die Initiative Clean Code Developer oder das Clean Code Cheat Sheet).

Allerdings liegen gute Gründe auf der Hand, bereits in früheren Stadien des Entwicklungsprozesses anzusetzen. Gerade in Fällen wie bei BMEcat bietet sich die Anwendung eines Teils der Heuristiken bereits in der Spezifikation an. Anhand einiger Beispiele zeige ich, wie die Anwendung der Regeln auf die BMEcat-Spezifikation aussehen könnte.


Weiterlesen …

Umwelt verstehen

Die Performance von Systemumgebungen vergleichen

Verfasst von franz-mue am 14. Februar 2016

Das Ausführen einer Anwendung unter verschiedenen Randbedingungen testet nicht nur die Anwendung selbst. Es können auch Unterschiede der Randbedingungen festgestellt werden - insbesondere Performance-Unterschiede.

Bei meinen Tests ließ ich die Anwendung auf verschiedenen Umgebungen ablaufen. Vorrangig ging es mir um fm-ProductNode selbst (auf die Performance von fm-ProductNode werde ich in einem späteren Beitrag eingehen). Doch ganz nebenbei erhielt ich dabei vergleichende Aussagen zu den Umgebungen. Einige Ergebnisse überraschten mich - und ich möchte sie hier nicht vorenthalten.


Weiterlesen …

Individualität

Beim Validieren ein Auge zudrücken

Verfasst von franz-mue am 7. Februar 2016

Beim Validieren und Einlesen von BMEcat-Dokumenten prüft fm-ProductNode die Einhaltung der Spezifikation akribisch. Doch in der Praxis mögen auch Situationen vorkommen, in denen diese Strenge nicht gewünscht ist. Vielleicht ist es den Akteuren bekannt, dass der Produktkatalog nicht bis ins letzte korrekt ist, aber dennoch wichtig, Fünfe gerade sein zu lassen, und den Katalog durchzuwinken. Vielleicht ist auch schon von vorne herein klar, dass der Katalog korrekt aufgebaut ist. Dann kann der Verzicht auf detaillierte Prüfungen das Einlesen und Weiterverarbeiten wesentlich beschleunigen.


Weiterlesen …

Vorsicht Ampel

Lieferanten- oder Branchen-Anforderungen in BMEcat-Produktkatalogen sicherstellen

Verfasst von franz-mue am 28. Januar 2016

BMEcat 2005 bietet mannigfaltige Möglichkeiten der Darstellung von Produkten und deren Eigenschaften. Die Vielfalt geht einher mit vielen Spielräumen der Darstellung.

Für spezifische Einsatzzwecke sind dagegen Beschränkungen dieser Freiheitsgrade erwünscht. Für den Einsatz von BMEcat in einer bestimmten Branche erleichtern Konventionen den Datenaustausch von Produkten oder Klassifikationssystemen. Auch manche einzelne Unternehmen sind erpicht, die eingehenden Daten ihrer Lieferanten zu reglementieren, um die Integration in die eigenen Systeme zu erleichtern.

fm-ProductNode bietet einen flexiblen Mechanismus an, um solche Anforderungen sicherzustellen. Über die anwenderspezifische Prüfung von Anforderungen hinaus erlaubt es fm-ProductNode auch, Felder in BMEcat-Dokumenten anzureichern oder anzupassen, damit vorgegebene Anforderungen erfüllt werden. Fehlerhafte Kataloginhalte können so innerhalb bestimmter Grenzen automatisch zurechtgerückt werden.

Das nachfolgende Beispiel zeigt, wie der Mechanismus bei fm-ProductNode eingesetzt wird.


Weiterlesen …

Schnell wie der Wind

PHP 7 läuft noch schneller als erwartet

Verfasst von franz-mue am 3. Dezember 2015

PHP 7 liegt nun endlich vor. Die Entwickler-Gemeinde - mich eingeschlossen - wartete ungeduldig auf das Erscheinen, denn es wurden deutliche Performance-Verbesserungen versprochen. Manche Ankündigungen sprechen von einer Verdoppelung der Geschwindigkeit oder sogar noch mehr. Für mich war das Grund genug, mich mit dem Thema zu befassen. Immerhin spielt die Verarbeitungsgeschwindigkeit bei großen Produktkatalogen eine wichtige Rolle. Vor einigen Monaten habe ich fm-ProductNode in Docker-Containern unter der ersten Beta-Version und dem ersten Release Candidate von PHP 7 laufen lassen. Meine Tests ergaben sogar noch deutlich bessere Geschwindigkeitswerte!


Weiterlesen …