How to Choose the Right Deployment Option for your Accounting Software
In one of my previous posts, I discussed the issue of how to choose the right accounting software for your business. I made it clear that there is no one-best choice to fit every organization or situation, and that arriving at the right choice will require the following:
- Knowing the standard things every accounting software should do, in the first place
- Understanding your business and what you want to achieve with accounting software—the “best” accounting software may not be the right one for your business.
- Understanding your environment and making sure that you choose accounting software that will meet the infrastructural, business, political, and legal requirements of your environment
- Making sure the accounting software is easy enough for you to use within the context of resources available to you
- Making sure there is provision for supports and updates
- Cost, as a factor, should be considered only to ensure you don’t pay for what you not will use
Today I want to discuss one important issue so many people talk about without taking adequate time to think through all the nuances—the issue of knowing which software deployment option is the right one for your business. It is becoming so common for people to talk about web- and cloud-based applications as the best solution for every organization and situation. They may have several sound arguments in favour of this position, but before you take a plunge I want you to pause and take time to understand all available deployment options and their deliverables.
Structure of Computing System
Before the advent of Cloud computing, we used to talk about application in terms of tiers—single-tier (single-user desktop applications), n-tiers (client-server multi-tiers, multi-user applications). Today, these terms have been overshadowed by (or subsumed under) a new set of terms which form the three layers of computing, namely the Infrastructure, the Platform and the Software.
The Infrastructure comprises the hardware and all associated accessories and peripherals (including servers and disks for storage), as well as networking and connectivity to link these resources together. The Platform is the operating system which provides the environment for the Infrastructure to function, while the Software is the application you deploy to perform specific task, such as accounting.
Available Deployment Options
Having given you a hint of the three layers of computing, let us now take a look at the various deployment options available. Each of these deployment modes is defined in terms of the location of your Software, the Infrastructure and the Platform.
A file-server is the deployment mode where both the data and the software sit together on the same desktop computer, with or without a Local Area Network (LAN). Where connectivity is required, this can be achieved through simple peer-to-peer connection which allows individual computers to share resources, such as disks and printers with each other, but works independent of each other. Multi-user accounting software deployment in this environment will require the designation of one of the computers in the network as a server, and sharing a common database by mapping the shared folder onto the other computers. Those computers can then connect their local copy of the software to the shared data file.
Under the file-server arrangement, you provide and own both the Infrastructure and the Software, while desktop operating systems, such as Microsoft Windows, provide the Platform. A file-server deployment requires no central server hardware or software, and thus is cheap and easier to set up and maintain. However, the drawbacks are speed and lack of central control, among other things.
The traditional client-server deployment provides an environment for multiple users within a local area network. Unlike the file-server, there is a central control and the system can accommodate more and perform better. However, there must be at least one central, dedicated server running server operating system and server-based Database Management System (DBMS), such as Microsoft SQL Server or Oracle. It is called a client-server because your application runs as a client on your desktop while the database sits on the server. The business objects could be running on a separate server, while your network provides the connection between the client, business objects and the database.
Under the client-server arrangement, you provide and own both the Infrastructure and the Software (including the DBMS), while operating system, such as Microsoft Windows, provides the Platform for both the client and the server. Setting up a client-server environment is more expensive and costs more to maintain, compared to the file-server.
A web-based application is, technically, a client-server application. The only difference is that the application software runs on the web browser, such as Mozilla Firefox or Microsoft Edge. You have the option of providing database server in-house or using remote internet servers to run your database. You can also deploy web-based application over your local area network (intranet) or over the internet.
Under the web-based scenario, you may still have to acquire and own the Software and the Infrastructure, while the web, in conjunction with your operating system, provides the Platform.
Many of those I have come across who talk about cloud-based application do not quite understand the meaning of this term. Storing and retrieving your data from dropbox.com does not fully constitute cloud computing, although it is a part of it. The definition of Cloud Computing must embrace all the three layers of computing. It is cloud computing when Infrastructure is provided for you as a Service (IaaS), Platform is provided as a Service (PaaS) and Software is provided as a Service (SaaS). You do not own or maintain any of these resources in your location, and you may not even know where they are located. Your only task is to subscribe to these services, pay for them (on monthly or annual basis) and cosume the services via the internet.
Which Deployment Option is the Right One for You?
What I have discussed under the 3 layers of computing are meant to provide the basic information needed to equip you with the working knowledge of the four deployment options. Let us now take a look at, not the advantages or disadvantages of each option, but when one should be preferred over the other.
The bottom-line is do not choose anything just because it is popular—let your environment, needs and requirements dictate your choice. There are many folks around me whose systems, environment and budget can only support file-server accounting software, but you will be surprised when you witness the ease with which they talk about web-based and cloud-based accounting software, albeit without a clear understanding of the terms and terminologies.
- You need to consider a file-server (or at most a client-server) application if you are running a small business, and
- Your data requirement is not quite enormous
- Only one person will use the application, or you want to share data among limited number of your staff within the office
- Your internet connectivity is not fast and reliable
Cloud-based system offers the greatest advantage in many ways, especially by its ubiquity and ability to free you from the responsibility of buying and maintaining computing infrastructure. But there are important things people need to know.
- You will require a fast and reliable internet connection
- You will pay rent monthly or annually
- The security of your data is not so much in your hands. Although the safety of your data within the cloud environment may be better than your local infrastructure, but you will never know who is gleaning from your data.
- There could be downtime and accident which may be outside your control. How many hours of disruption can your system withstand?
- Consider what may happen to your data if you are no longer able to keep up with the subscription. You will not only lose your right to use the software, but might also lose your data, eventually. After all, data storage is not free.
- Note that you are not limited to popular public clouds—you can also build your own private or community clouds
If you have the need to share data and resources with people in different parts of the world across different devices; if you have office branches in different locations and you want to create a common accounting solution for the group, you have no better choice—you must head straight to the cloud.
However, we cannot afford to do away with file- and client-server applications in an environment with about 30% internet penetration rate, out of which about 60% involves the use of cell phones. Although it is quite easy to chat and carry out transactions online with cell phones, when it comes to inputting data into accounting software, along with other back office operations, there is no credible alternative yet to hitting the keyboard of a computer on your desk.
There is no doubt that the Cloud is the present for many, but there are also many others to whom the cloud remains future aspiration.