What ensures the reliability and security of accounting software?
We’ve probably all encountered one or another software problem at some point. Whether it’s slow software that keeps freezing, e-MTA that crashes on the 20th, or in-house financial data that has gone haywire.
Jaanus Reismaa, Product Manager and Board Member of SimplBooks accounting software, talks about a very important, but often overlooked topic – the security, reliability and also the speed of the software. These features are obvious to most people, but when problems occur, they quickly catch everyone’s attention.
Software reliability: it all starts with the architecture
There are many different types of software development companies, and sometimes it can be tempting to postpone technical maintenance and upgrades to different systems. This is for the simple reason that the user may not be able to directly see and understand how well the kitchen (code) side of the software is maintained. Users do not subscribe to the developer’s technical code updates, and therefore invisible development may be postponed in order to come up with a new (visible) module.
Software reliability depends on more factors than meets the eye. In the case of cloud software such as SimplBooks, it is not only the software code and servers that play a role, but also the external interfaces, the internet connection and the user’s own devices.
The reliability of the servers and external interfaces used to run cloud software can be influenced to a certain extent, either directly or indirectly, by the software provider. However, in SimplBooks, we focus most on the first point, i.e. the reliability of the SimplBooks software itself. The main points are:
At SimplBooks, we focus most on:
- Thoughtful architectureArchitecture is a very broad concept. Here we are thinking first and foremost about the architecture of data and how and in which services/servers it is placed. If the data architecture is well designed and maintained, the rest of the software will be much easier to fix, correct or upgrade later. Fixing or updating poorly planned data is like fixing a moving train. The situation is particularly bad when you have to repair or upgrade the undercarriage of a moving train.
- Specific procedures
In fact, software development procedures are almost as important as architecture. Software upgrades and bug fixes at SimplBooks have been following a set of procedures close to ISO standards for a decade. This means having a set of rules in place, and in a set order. Procedures give the added reassurance that when changes to the programme reach the live stage, we haven’t missed anything important along the way. We’ve continually refined and adapted these procedures over time, and this has given us the confidence that our system works. The procedures related to development are probably the most thoroughly described in SimplBooks as an organisation, because we witness from our customers how important reliability is to them.
It’s a good idea to set rules on when not to update. These are generally days when you cannot afford the risk of something going wrong. For example, dates 10 and 20 (TSD and KMD form deadlines), as well as Fridays and weekends.
- Testing
If we change something in the software or upgrade something, we test it. And then we test some more. We also try to cover that change or enhancement with automated tests. We test some more before we launch. We do more testing after going live, before the change reaches everyone. Did I mention that we will test again just in case? Well, we’re still testing anyway, because the testing step is included in our basic development procedures. Can we do any better? Yes, we can write more automated tests.
Speed: the most important component of user experience
As mentioned above, it all starts with architecture and ends with testing. However, another important factor for cloud-based software is the speed of the internet in general, which is beyond our control. However, it is the data architecture and the algorithms running on top of it that have the biggest impact on speed. If these are poor, even the best server (hardware) can fall short. Maybe not with one client, but SimplBooks has tens of thousands.
How do we know if the software is fast enough? We test repeatedly, we measure page load speed and we are very demanding on speed. Thanks to this, we have reached an average page load speed of 0.22 seconds in SimplBooks accounting software.
Why is speed so important?
- User efficiencyEven a half-second longer loading time can mean significant time loss over the course of a day.
- Data volumeSpeed largely depends on how data is stored and processed. An efficient architecture ensures that even with large data volumes, the user experience remains smooth.
Security: protecting sensitive data?
Software security is more crucial than ever in today’s world. Particularly when it comes to sensitive data – be it personal data or company finances. Fortunately, there are many different standards and best practice guidelines on this, such as OWASP (Open Web Application Security Project). So there is no need to invent the wheel.
Ultimately, security comes back to ensuring overall reliability for us. In the case of security assurance, it is simply a matter of certificates, encrypted traffic between different parties, and so-called vulnerability testing from outside SimplBooks, for example.
Looking at security as a whole, there are a lot of things that we are doing that we could do better. And we are constantly doing so, because security is very much influenced by external factors and the ever-changing digital world.
Leave a Reply