Software kann mittels verschiedener Modelle für Kunden bereitgestellt werden. Diese können in unterschiedliche Gruppen aufgeteilt werden, abhängig von der Art des Betriebs. Erhält der Kunde bei Lizenzerwerb eine vollumfängliche Kopie der Anwendung, die er selbst betreiben muss, handelt es sich um das On-Premises-Modell. Erhält der Kunde mit Lizenzkauf lediglich Zugriff auf über das Internet freigegebene Dienste, liegt eine cloudbasierte Anwendung vor. Für diese gibt es drei Modelle, Software-as-a-Service (SaaS), Platform-as-a-Service (PaaS) und Infrastructure-as-a-Service (IaaS). Die Unterscheidung der drei Modelle findet dadurch statt, dass die Komponenten entweder in der Hand des Anbieters oder der des Kunden liegt.
On-Premises
Bei diesem Modell liegt die Software mit all ihren Komponenten in der Hand des Kunden. In einem klassischen Anwendungsszenario implementiert der Kunde die Anwendungen in seinem Rechenzentrum. So hat er die Kontrolle über alle Bestandteile der Software. Die vollständige Leitung aller Aspekte bringt viele Möglichkeiten der Personalisierung mit sich. Dies geschieht jedoch unter dem Nachteil, dass die gesamte Wartung und der Betrieb ebenfalls in die Verantwortung des Betreibers übergehen.
Software-as-a-Service
Dieses cloudbasierte Modell liefert dem Kunden den wenigsten Raum für kundenspezifische Anpassungen. Er erhält nach Abschluss des Abonnements den Zugriff auf eine voll funktionsfähige Desktop- oder Browseranwendung. Somit liegen alle Komponenten der Hard- und Software in der Verantwortung des Betreibers. Dies ermöglicht dem Kunden einen einfachen Zugriff auf die von ihm benötigten Funktionen, ohne dass er die Instandhaltung oder etwaige andere Probleme lösen muss . Treten Fehler auf, ist das Supportteam des Verkäufers für diese zuständig. Nachteile sind hier die fehlende Möglichkeit der Personalisierung und die Weitergabe von sensiblen Daten an den Anbieter, da dieser für die Verwaltung und Ablage zuständig ist.
Platform-as-a-Service
Beim Modell Plattform-as-a-Service liegen weniger Bausteine/Komponenten in der Hand des Anbieters. Hier wird durch die Vergabe der gesamten Hardware zusammen mit den notwendigen Betriebssystemen und Laufzeitumgebungen eine Plattform für die weitere Anwendungsentwicklung geschaffen. Anwendungen und die Daten für diese müssen durch den Kunden selbst erstellt werden. Deshalb eignet sich dieses Modell besonders für Anwendungsentwickler, die ihre Software als einen Cloud-Dienst bereitstellen möchten und möglichst ohne viel Eigenaufwand Zugriff auf die Umgebungen dieser benötigen.
Infrastructure-as-a-Service
Die letzte Form der Bereitstellung nennt sich Infrastructure-as-a-Service. Der Bereitstellungsumfang hier umfasst lediglich die Hardware und ein unvollständiges Betriebssystem. Alle weiteren Bestandteile auf Seiten der Software müssen durch den Kunden implementiert werden. Darunter fallen neben den Laufzeitumgebungen für die Anwendungsentwicklung auch die Applikationen und alle weiteren Daten für den fehlerfreien Betrieb. Bezahlt wird dieses Modell durch ein Abonnement.