Als Applikationen in die Cloud verlagert wurden, dachte man, das Thema Lizenzierung hätte sich erledigt. Aber nicht alles ist in der Cloud gut aufgehoben. Beim Betrieb von Containern ist Lizenzierung aufgrund der damit einhergehenden Skalierung jetzt noch wichtiger geworden.
In grauer Vorzeit wurde Software auf Disketten ausgeliefert, später auf CDs und DVDs. Die Anwender installierten die Software in diesem Fall auf ihren Personal Computer. Diese Lösungen werden heute als On-Premises bezeichnet und stellen die Hersteller damals wie heute vor Herausforderungen. Eine davon sind die Systemvoraussetzungen beim Anwender: Um eine Software auszuführen, wird entsprechende Rechenleistung benötigt, außerdem können durch Wechselwirkung mit anderer auf dem Computer installierter Software Probleme auftreten. Eine weitere, aus Sicht der Hersteller noch wichtigere Herausforderung ist das Verhindern von unberechtigter Nutzung der Software. Dazu wurden einst kopiergeschützte Disketten oder CDs eingeführt. Bei höherpreisiger Software kommt oft ein Dongle zum Einsatz. Die Software kann dann beliebig oft installiert werden, läuft aber nur dort, wo der Dongle verbunden ist. Auch rechnergebundene Aktivierungen werden für diese Art der Software eingesetzt. Kopiergeschützte Disketten und CDs sind heutzutage nur noch in Museen zu finden.
Nach mehreren, mehr oder weniger erfolgreichen Versuchen, Software online zur Nutzung bereitzustellen – so zum Beispiel unter dem Namen Application Service Providing, kurz: ASP –, hat sich mittlerweile Software as a Service (SaaS) in der Cloud etabliert. Anwendungen wie Online-Karten oder Online-Übersetzungstools haben ihre On-Premises-Versionen komplett abgelöst. Bei dieser Cloud-Software wird die Anwendung in der Regel vom Hersteller betrieben und den Nutzern online zur Verfügung gestellt. Anwender benötigen lediglich einen Browser, in einigen Fällen einen Thin-Client. SaaS reduziert damit die Anforderungen an die lokalen Computer, öffnet die Türen zu Software auf mobilen Geräten und verändert die Anforderungen an Schutz und Lizenzierung. Im Gegensatz zur On-Premises-Software wird hier kein Kopierschutz benötigt und die Lizenzierung kann an eine Benutzeridentifikation (Login) gekoppelt werden. Auch haben sich die Entwicklungswerkzeuge der Programmierer beim Sprung in die Cloud geändert: Während On-Premises-Anwendungen oft in C++ oder .NET geschrieben sind, kommen nun mit Python, JavaScript & Co. viele verschiedene Programmierumgebungen zum Einsatz. SaaS-Lösungen in der Cloud sind in der Regel bereits durch ihre Architektur hoch skalierbar.
Zudem schwappt der Trend „Cloud First“ aus dem Endkunden-Umfeld auch auf B2B-Anwendungen über. Ein Beispiel dafür sind Predictive-Maintenance- Anwendungen für Steuerungen und Anlagen.
Die neue Cloud-Welt könnte aus Sicht des Herstellers so schön sein, wenn nicht Fragen wie Verfügbarkeit der Cloud, benötigte Bandbreite, Latenzzeiten und vor allem rechtliche Fragen wie „Wo sind meine Daten?“ dem Cloud-Computing entgegenstehen würden. Die Kompromisslösung ist Edge Computing. Hier laufen die Cloud-Lösungen am Rande der Cloud bei Anwendern und tauschen, wenn überhaupt, nur minimale Daten mit der Cloud aus. Die Hersteller möchten dabei alle Vorteile ihrer Cloud-Software nutzen: Skalierbarkeit und Flexibilität bei der Entwicklungsumgebung. Docker und anderen Container-Lösungen sei Dank, ist es technisch verhältnismäßig einfach umzusetzen, eine Cloud-Lösung als Edge-Lösung bereitzustellen. Die verschiedenen Dienste werden dazu zusammen mit allen notwendigen Software-Bestandteilen in einzelnen Containern bereitgestellt und erfordern auf Anwenderseite weder komplizierte Installationsvorgänge noch Abhängigkeiten auf andere Software. Durch die Isolation sind zudem Wechselwirkungen mit Software anderer Hersteller ausgeschlossen.
Ein Punkt wird bei dieser Art der Migrations-Projekte oft übersehen und kommt gerne als Last-Minute-Change-Request unter Zeitdruck hinzu: die geänderten Anforderungen an Lizenzierung und Softwareschutz. Während bei Cloud-Lösungen, die durch den Hersteller betrieben werden, Kopierschutz sowie Schutz des geistigen Eigentums irrelevant sind, kommt dieser Punkt bei einer Edge-Lösung zum Tragen: Ähnlich wie bei einer On-Premises-Anwendung läuft die Anwendung in der Obhut der Anwender. Auch bei der Lizenzierung kommen neben altbekannten Anforderungen aus der On-Premises-Welt noch neue Anforderungen hinzu, zum Beispiel wie man die Skalierbarkeit der Systeme in der Lizenz abbildet. Analog zur On-Premises-Welt wird ein nicht kopierbarer, sicherer Anker für die Lizenzierung benötigt.