Many people think the app development process stops when your app launches. Unfortunately, that is not usually the case, so this article outlines some key considerations to take the “OMG, what!?!?” factor out of the equation if your app goes down or needs more work once it launches. After all, nobody wants surprises.
I know what you’re likely thinking: I launched an app, and my developer carefully considered all the necessary features and technical setup. Why would I ever need to plan for ongoing support and maintenance, downtime, or bugs?
It’s a very common response, and I’ve heard our customer support team on many occasions share details with clients as to why an app will inevitably need a little TLC. Just like a car won’t run forever without needing a tune-up every so often, your app will inevitably need work.
Bugs happen, and app maintenance is a normal part of running a successful app. So this article lays out considerations so you know what to expect.
Why app maintenance is normal
Many people don’t think about all the work done behind the scenes to make sure that their favourite apps continue running efficiently.
Did you know when you plug in your phone or tablet at night, chances are you have updates applied automatically and you likely get 5, 10 or even 20 apps updates overnight? It’s totally normal.
When you make the transition from consumer to company, you begin to realize that apps require maintenance for reasons that are out of your control.
In addition to changing data privacy laws and increased regulatory legislation in the digital sector, companies like Apple and Google regularly update their terms, policies, and system requirements without sending a proactive alert to organizations with apps.
If Apple or Google mandate a fix, app developers will need to keep the apps updated in order to remain compliant with app store policies. Or in other cases, a change could be introduced that breaks the functionality of the app when it was developed.
Factors that increase the need for maintenance
The number of potential fixes that will be required will vary depending on the complexity of your app, so here are some factors to consider that increase the need for app maintenance:
Changing system requirements:
Apple and Android are constantly updating their terms and requirements for apps that can be distributed on their operating system.
For example, if your app offers the ability to create an account, but not delete the account, Apple will reject it during App store approval. That might not have been an issue when you first developed your app, but if you are submitting an update, the update must follow current standards so you may be forced to develop features that didn’t exist when you first launched.
Another example — dark mode. We have heard of companies who designed their app (and chose colours for menus and branding) to work in normal mode, but when dark mode came out, the colours or menu options became difficult to see, or completely disappear.
We sometimes just have to keep your app updated in order to ensure it continues to work on Android or iOS.
A code library is essentially a repository of programming code or operating system routines that have been written by someone else and shared for others to use or access. There could be features such as log-in capabilities, or something that runs in the back-end to optimize databases, that a developer will use when building your app.
This code is often used by developers to save time (and save you money) from having to code from scratch. It also can improve reliability because it’s usually code that has been tested and running in other environments.
While there are many benefits to using code libraries, one drawback is that code that relies on third parties can sometimes break, or become unavailable. If a feature or coding framework used in your app is no longer supported, it will require redevelopment to meet the new system standards.
That can be a small adjustment, or in some cases a lot more work.
Deployment to multiple operating systems
It’s rare that companies will only offer their app on iOS or exclusively on Android. To make apps more accessible, they need to be available on both platforms, and maybe even on the web.
Because apps need to be deployed on many different platforms, they will also need to be updated and fixed according to policy and system changes on each platform.
Establishing a maintenance schedule can be difficult when numerous systems release updates and regulations on widely varying time frames.
Is your app integrated with Google or Facebook for streamlined login for users? If so, you can expect to update your app according to their requirements and fixes.
Any integrations lead to the increased frequency and need for app updates because each component is built to work in a specific way. When those integrations change the way they operate, your app will need to be updated.
Rapid pace of development
As technology continues to evolve, there will always be new features and protocols that render old systems obsolete. Apps will need to evolve and be updated over time to keep up with competitors and meet changing customer needs.
You can’t always predict what your future business needs will look like, so you may find you want to update the way your apps work to stay current and feeling new. As best-selling author Nir Eyal told us in an interview, some companies have had employees quit because the software they were forced to use at the office was outdated. So sometimes fixes are needed just to stay current.
The bottom line
As you can see, there is more to bugs than the code we write for your apps. Bugs can be caused by someone else, at no fault of anyone in your company or developers involved with your project.
When clients ask us how much of their budget should be allocated to app fixes and maintenance, we typically suggest you plan for 10-15% of the total app budget for post-launch updates and care.
Fixing bugs and developing updates is a normal part of owning and maintaining an app.
Have questions? Looking to get started on your digital product? Get in touch: