As a provider of software systems, we are often asked to discuss the architecture of our system. Our typical customers don’t have extensive in-house IT resources, and want to make sure the system won’t be more complicated than they can manage. We find through these discussions that there is a great deal of apprehension (and understandably so) surrounding the differences between on-premise client-server, desktop virtualized client-server and cloud-based software systems.
The core Minotaur software system is built using client-server architecture. This means that the system requires both a client (ie. a workstation computer) and a server (a more powerful computer capable of hosting the application’s files and information). In the simplest terms, this means that Minotaur’s files (and your information) are on your server and you access them from computers on your network, which would the most typical arrangement for most Minotaur customers.
Client-server architecture means your data is centrally stored on your server and the server does the majority of the work, whereas the device you are connecting in from (workstation, laptop, mobile device) is really the conduit to your information. It allows for multiple clients to access the server, as compared to local applications which run entirely on one machine, eg. Photoshop, where you are the only person working on that program.
In an enterprise software implementation, such as Minotaur’s implementation, it’s important that everyone in your company can access and manage information that is stored in one place, without having to email around a bunch of data files, which is why we (and the majority of our competition) use client-server architecture.
Where searching for software can get confusing is when people throw around the term ‘cloud’ and expect them to understand what that means and the potential risks and benefits.
What’s the cloud? Is it different from client-server?
A cloud is simply a way of delivering client-server applications, where there is a data centre which holds many powerful servers, and clients (ie. computers, mobile devices, etc.) which access the software over the internet using a web browser as the ‘client’.
Cloud is not a type of architecture, rather a delivery method for client-server software applications. The economy of scale achieved by building servers all in one place, instead of supporting them on-site, can often provide the cost benefits referred to by popular media and enterprise software sales people. That is, you can more easily scale to meet your needs.
While the core Minotaur system is designed to be run on-site, it doesn’t have to be that way. We are seeing more of our new, especially smaller, clients looking to outsource their IT functions like maintaining the server. Because Minotaur can be accessed remotely using Terminal Services (a Microsoft connectivity tool that is already on every Windows computer–also called remote desktop), you have been able to access your Minotaur system over the internet from outside your office for many years. What’s new is that some of our customers are choosing to have their main server located in a data centre. We have partners that can host your entire system on their servers, with all users accessing it over the internet.
The only difference between this scenario and cloud is that when using cloud you are using a web browser to access the system instead of Terminal Server. The architecture is client-server either way and the server is someone else’s problem (and property) either way.
It is important to understand what cloud is and the risks, benefits and limitations before beginning selecting a software provider and delivery method. There is a great deal of buzz surrounding cloud services, but the architecture of these systems has not changed in decades. The cloud introduces great new opportunities and challenges for providers of client-server software like Minotaur, and we will continue to discuss these opportunities and challenges in further posts.
If you have any questions about this article, please contact us at 1-800-668-1284 or email email@example.com.