P R O D U K T
Nested Product Items
Eine Lösung für verschiedene Anforderungen: Die Nested Product Items erleichtern die Lizenzkonfiguration, vermeiden
Inkonsistenzen bei der Lizenzierung modularer Software und garantieren einen reibungslosen Lizenztransfer. Die Schachtelung
von Lizenzen gepaart mit Vererbung erfüllen die Wünsche so manchen Produktmanagers und vertreiben die Kopfschmerzen
des für Lizenzierung zuständigen Entwicklers.
Redundante
vermeiden
Informationen
Schaut man sich Lizenzen an, die von
Softwareherstellern
in
CmContainer
programmiert werden, findet man häufig
bestimmte Einträge in mehreren Lizenzen.
Die Jahreslizenz einer Softwaresuite enthält
Lizenzen für mehrere Produkte, aber
alle haben dasselbe Ablaufdatum. Eine
modulare Software, bestehend aus mehreren
Lizenzeinträgen (Product Items) hat den
gesetzten Wartungszeitraum in jeder Lizenz
stehen. Bei der Verlängerung muss man
dann für jede Lizenz einzeln diese Werte
umprogrammieren. Das ist mühsam und
fehleranfällig.
Für diese Anwendungsfälle und andere
Anforderungen, die wir später noch
kennenlernen
werden,
wurden
die
Nested Product Items entworfen. Diese
verschachtelten Lizenzeinträge ermöglichen
es, gemeinsame Eigenschaften nur einmal
zu setzen und doch überall zur Verfügung zu
haben.
10
Verschachtelung von Lizenzen
Ein Lizenzeintrag, das sogenannte Product
Item, kann verschiedene Optionen enthalten.
Mit ihnen kann der Softwarehersteller seine
Lizenzierung modellieren, wie zum Beispiel:
■■ Zeitliche Einschränkungen: Festes
Ablaufdatum oder vorgegebener
Nutzungszeitraum ab der ersten
Benutzung
■■ Lizenzanzahl
■■ Einheitenzähler: Herunterzählen in
variabler Menge, z.B. bei Verwendung einer
bestimmten Funktionalität
■■ Daten: In verschiedenen Datentypen
können geheime Schlüssel, geschützte
Informationen oder lesbare Daten
hinterlegt werden.
Mit den Nested Product Items besteht
jetzt für Lizenzen in einem Universal Firm
Code die Möglichkeit, einen Lizenzeintrag
unter einen anderen zu hängen. Letzteren
nennen wir Module Item. So ein Module
Item kann ebenfalls alle Optionen eines
Product Items haben; es gibt diesbezüglich
keine Einschränkungen. Ein Product Item
kann also kein, ein oder mehrere Module
Items enthalten. Die Schachtelungstiefe ist 1,
das heißt, ein Module Item selbst kann kein
untergeordnetes Module Item haben.
Vererbung der Optionen
Das Besondere an dieser Verschachtelung
ist, dass die Module Items alle Eigenschaften
von ihrem Eltern-Product Item erben. Wenn
man aber in einem Module Item eine schon
im Eltern-Product Item gesetzte Lizenzoption
explizit setzt, überschreibt dieser Wert
den geerbten. Es handelt sich also im
informationstechnischen Sinne um klassische
Vererbung.
Schauen wir uns mal ein konkretes Beispiel
an: eine Demo-Lizenz einer Bürosoftware.
Die
verschiedenen
Applikationen
(Textverarbeitung,
Tabellenkalkulation,
Adressdatenbank) sollen 30 Tage getestet
werden können. Die Lizenzmodellierung
könnte dann so aussehen: ein Product
Item „Demo Paket“ mit einem gesetzten
Nutzungszeitraum von 30 Tagen und