Software maintenance and support

The article is a part of Code Inspiration’s software development outsourcing Knowledge Base.


“We need development only, support is not needed”.

Most IT representatives should have heard this phrase at least once. Startups or individuals at the early stages of their project development usually are trying to do the development:

  •  Fast,
  •  Cheap,
  •  Compatible with all the firmwares and devices of the world.

Other than that, most people for some reason think that being developed few years ago the software should operate perfectly and no other development activities are needed in case you are not planning to develop an additional feature or to change something in the initial app.

Unfortunately, this is not true. And most of the code becomes legacy in a couple of years. The world of IT is the world of innovations. The intention of constant improvement is something essential. That’s why App store requires updated versions of Xcode to publish applications, there is always a notification that the version of Ionic should be not lower than XX for the apps to be published in App Store and Google Play. Libraries of websites require updates and code itself requires maintenance.

THE GOOD NEWS IS

If maintenance and support are done in time and constantly it won’t cost you a fortune and will provide you with a stable software for years.

THE BAD NEWS IS

That many companies do not pay attention to what is required when the software is released. The practice shows that most of the B2B representatives who are applying with a request to update legacy code were not told by their developers that the code will require constant updates. The developers were focused only on the delivery and the project. When the code became very difficult to update as few other versions were released since then.

Unfortunately, there were cases when small start-up ideas were developed by a developer who had left. Further, the app started to gain its popularity very quickly. The number of users was growing, but no one was maintaining the app. As the result, one day backend could not cope with the load. We won’t go into details what happens to users when the app stops working properly and how hard to get them back after. The main idea is: even when the app is little it is a good idea when someone is monitoring the load on the server side and other potentially weak points. This way you will always have some time for fixing or doing something before the app is unexpectedly down.

General cost of maintenance is about 5-10 % from the development cost. Usually, maintenance is provided via so-called Service Level Agreements, which include different packages and options.

The detailed information about SLA you can find in our CBDO’s article which was published on The Manifest:

Stability is something what is always great to have. Maintenance and support of your app will bring you stability and time to concentrate on your business goals.

In the IT community, maintenance and support are usually divided into 3 so-called variants:

  1. Maintenance. It includes only maintenance of existing code, bug fixing, update of libraries and frameworks.
  2. Maintenance and support. It includes option 1 together with a possibility to move on with additional development. Usually, if the project is live the additional development goes in so-called “dev branch” and only after full regress testing of the system the software is released with new pieces of functionality.
  3. Live Maintenance and Support. Provides customers with live consultants who are online to talk to users if they have any problems. This type of maintenance is usually required for betting, trading, banking software, where quick reaction is something what is very important. Sometimes customers proceed with 24/7 live support when there is always someone online, who can fix the issue quickly when needed. Or simply explain to the user what he is doing wrong.

If you are willing to bring stability and give your project a chance in this world where a new idea comes to the market each day – think in advance of the tech partner, which will be capable not only to develop, but also to maintain the software.Software without maintenance and support


The article is a part of Code Inspiration’s software development outsourcing Knowledge Base.