The 4th article in our jargon series covers software deployment and the methods available to you for this, The 5 methods themselves could be separate articles of our jargon series! However I will try to keep each one as brief as possible and hopefully give you some guidelines on which one is right for your business.
Software deployment is basically where you want your software positioned and how you are going to access it. When considering this you need to think about your budget, the physical space of your premises, your internet connection and the sensitivity of the data you house. Thinking about these properly is going to influence which deployment method you use.
The 5 main options you have when considering software deployment are: –
On premise – Where you buy the software outright and install it on one of your internal servers. You will need to update the software when it is time to do so, your supplier will send you a CD or a link. Depending on the complexity of the software this can lead to downtime.
Remotely Hosted – You own the software though your licence but your software is installed in a datacentre providing you with online access to the software
Cloud hosted – This is a variation of the remote hosted option where the software is hosted in a virtual server environment.
SaaS – This stands for “Software as a Service”. Here you “rent” access to the software which is installed in a datacentre
Hybrid – As you can imagine this is just a mix where some applications are hosted on the cloud whilst others are hosted on premise.
Still a bit confused? (me too!) The below table should help to define which methods may be best for you depending on your circumstances or your environment: –
|Deployment method||When Should you consider it||When it is not ideal|
|On premise||· If you already have the server & network infrastructure in place
· If you have regulatory requirements to keep data on site
· If you have a poor internet connection
· If you prefer to have your own IT staff manage your applications or if you have customers that request it.
|· When you have limited space
· When you do not have the infrastructure already in place – servers & infrastructure can be expensive.
|Remotely hosted||· When you are not bothered about automatic software upgrades (you can control this manually)||· In scenarios where on-going maintenance is high
· Where your internet connection is poor or where you have poor bandwidth. When the hosted system needs to integrate with a locally hosted application/ system – there may be issues with real time integration.
· When you need multi-tenancy.
|Cloud hosted||· This is useful for companies expecting rapid growth as you have the flexibility to scale capacity,
· When you don’t want your IT staff burdened with maintaining systems,
· When you need multi-tenancy,
· When you don’t want to wait for upgrades (i.e. your system is upgraded as soon as upgrades are released)
|· Where your internet it poor or you have poor bandwidth,
· When you want to maintain a little bit of control over software updates
|SaaS||· When you are not bothered about owning software,
· When you want the lowest cost to access the software,
· When you want flexibility about changing your software,
· If you know you will only be using the software short-term.
|· When you know you are going to use this software over a long time – you may end up paying more for it by renting it than by just buying it,
· If you want to own the software,
· When you want to maintain control over upgrades
|Hybrid||· When you want to take a phased approach to moving to the cloud
· When you only have to host some types of data internally
· when you have applications like CRM (which is popularly hosted in the cloud) and core systems (like financial applications on premise)
|· When you have a poor internet connection
· When you need these applications to integrate with each other