The 4 types of software deployment
There are essentially four ways to deploy (install, launch & manage) a software application, they are:
Software deployment type #1: Self-hosted
You create the infrastructure environment, install the applications, manage the ongoing maintenance and updates of both devices and applications and monitor the performance of the systems. Generally, for a software, the infrastructure will be placed into a leased space in a data center.
This method can apply to both open source and closed source solutions. In either case, it is generally up to you to install version updates and service patches.
Software deployment type #2: Third-party hosted
You pay a third party to take care of all of the above, they source and maintain the infrastructure, they install and manage to applications and operating systems.
Again this method can apply to both solutions and contracts can include maintenance of version updates and service patches.
Software deployment type #3: Hybrid
A hybrid of self and third-party hosted. Sometimes you might contract the management and monitoring of the infrastructure, whilst you install and maintain the application.
Software deployment type #4: SaaS
This model generally applies to closed source solutions, however, it could be argued that SaaS – auto-scaling, security, uptime monitoring, patch maintenance, and ongoing innovation are provided as a black box and you pay for either through features or consumption.