Alle Anwendungen der Firma tecInno bzw empolis (http://www.empolis.de/ ) besitzen einen gemeinsamen Kern zum Case Based Reasoning. Dieser gemeinsame Retrieval-Kernel aller Anwendungen ist für das Unternehmen von größter Bedeutung. Er sorgt bei Bedarf für die Integration verschiedener Datenformate in ein gemeinsames Modell. Dazu müssen Datenmodelle der Quelldaten sowie der Daten, die dem Vergleich zugeführt werden gelesen und verarbeitet werden. Verschiedene Einflussmöglichkeiten bieten vielfältigen Anlass, den Retrieval-Kernel als Familie von Varianten zu konzipieren, wobei die Schnittstellen zu den darauf aufbauenden Komponenten gleich gehalten werden müssen.
Im Projekt Software-Variantenbildung haben wir Szenarien entwickelt, die typische Anwendungen des Kernels beschreiben. Diese Szenarien dienten als Ausgangsbasis für die Entwicklung einer Referenzarchitektur für alle Kernel-Varianten.
Mittlerweile existiert eine neue objektorientierte Implementierung des Kernels, die bereits in mehreren Produkten eingesetzt wird. Ein wesentlicher Beitrag, der im Projekt Software-Variantenbildung geleistet wurde, war das Training von UML, also einer Notation für das objektorientierte Design von Produkten. Diese Notation erlaubt tecInno die geeignete Repräsentation des Kernel-Designs. Das trägt zum verbesserten Verständnis des Kernels und damit zu einer besseren und fehlerfreieren Nutzung durch die Entwickler während der Realisierung neuer Produkte bei. In diesem Projekt konnte also durch die Verwendung einer Standard OO Technologie wie UML die Modellierung, Darstellung und somit auch die Wahrnehmung von Variabilität und Generischen Konzepten innerhalb der Software gestärkt werden. Dies ist ein erster Schritt zur Entwicklung von Systemen in Produktlinien.