Implementierung von Lizenzmodellen in .NET, Teil 1

Vorüberlegungen

Ein Lizenzmodell für eine Software zu etablieren ist in der Regel kein leichtes Unterfangen. Es gibt einige Punkte zu beachten, die nicht nur das Lizenzmodell an sich beeinflussen, sondern auch die Anwendung, die entsprechend auszustatten ist. Zu beachten ist dabei, dass nicht jedes Modell für jede Anwendung passt – sowohl aus organisatorischer als auch aus technischer Sicht. Folgende Eckpunkte gilt es bei einer Lizenzierung zu berücksichtigen:

  1. Art des Lizenzmodells
  2. Verfügbare Lizenzierungsattribute
  3. Lizenzmanagement
  4. Lizenzierungsprozedur
  5. Lizenz-Deployment

Im Grunde beeinflussen alle Punkte das Lizenzmodell sowohl aus technischer als auch aus organisatorischer Sicht. Die ersten beiden wirken sich allerdings etwas stärker auf die technische aus, die verbleibenden drei auf die organisatorische. Unter der Art des Lizenzmodells wird die grobe Ausrichtung verstanden. Soll es beispielsweise die Zeit oder Feature zur Grundlage nehmen, lassen sich einzelne Komponenten lizenzieren oder basiert das Lizenzmodell auf dem Verbrauch von Ressourcen.

Anhand derartiger Überlegungen lassen sich verfügbare und für das Modell nutzbare Lizenzierungsattribute auswählen. Mit ihnen sind alle Daten und Eigenschaften gemeint, die sich innerhalb einer Lizenz nutzen lassen. Ein Lizenzmodell, das auf einzelne Features beziehungsweise Komponenten einer Anwendung zugeschnitten ist, muss auch Informationen über die Features und Komponenten besitzen. Ähnlich ist es bei Modellen, die eine Identität oder die Zeit zugrunde legen. Die besagten Daten müssen allerdings nicht nur bei der Lizenzerstellung bereit stehen, sondern auch in der Anwendung, um die Gültigkeit zu prüfen.

Je komplexer das Lizenzmodell, desto komplexer sind häufig die nötigen Daten. Ein Lizenzmodell auf Identitätsbasis kann auch bedeuten, dass einzelne Arbeitsplätze zu lizenzieren sind oder die Anzahl eingeloggter Benutzer zu überwachen ist.

Auch die Anwendung beziehungsweise das angepeilte Einsatzszenario kann die Lizenzierungsattribute vorgeben. Muss eine Anwendung zwingend in einem Offline-Szenario, also tatsächlich ohne Netzwerk oder gar Internet auskommen, sind an Zeitstempel gebundene Verfahren schwer bis gar nicht sicher zu realisieren. Denn woher soll man in ihnen eine zuverlässige Zeitangabe nehmen?

Daher sind die Art des Lizenzmodells und die verfügbaren Lizenzierungsattribute eng miteinander gekoppelt. Bevor also zu einem Lizenzierungsmodell oder einer technischen Realisierung gegriffen wird, ist gut zu überlegen, welche Szenarien abzudecken sind. Soweit technisch möglich, sollte die zugekaufte oder selbst implementierte Lösung auch den Wechsel zwischen Lizenzierungsmodellen erlauben.