The Care and Feeding of Custom Software

custom software development maintenance

Custom Software

Custom software applications help businesses get the exact functionality they need. When you’re the only business that does what you do, custom software is a way to add speed and enforce structure, while retaining your unique business processes.

Software Development Tools

Over the last 20 years, our software development team has developed, modified and maintained tons of custom applications. In our early years, we used Microsoft Access for many of the applications we developed.  In fact, we still do quite a bit of Access maintenance work. However, for new software projects, we’ve primarily switched to using rapid software development tools like Django and Python with PostgreSQL or Microsoft SQL Server.

If you’re the business owner or department head, you probably don’t care that much about the software development tools themselves. Your focus (rightly so) is on getting the right solution that fits your needs and is easy to maintain.

What often gets overlooked is the plan for routine custom software maintenance.

Maintaining Custom Software

Like ALL software, custom software needs to be regularly updated and maintained. Unlike off-the-shelf software, the maintenance schedule is primarily driven by you. Certain events may trigger an update:

  • Release of new operating system environments (like Windows 10)
  • Loss of a key software developer
  • Upgrade of a connected software application
  • Change in business processes and procedures

But some clients like to play the “How long can we hold out from upgrading?” game.

Is this you?

  • You have an older computer or server entirely dedicated to running this one application.
  • There’s only one person who is allowed to touch the programming code for fear the entire system will crash.
  • Your business can’t upgrade its systems or business processes because you don’t know how it will impact your custom software.

Outdated Custom Software Creates Risk

You may think you’re stretching your IT budget, but that’s not always true. Delaying custom software updates can add unnecessary risk and cost.

  • Clients who maintain their software regularly typically don’t have to start from scratch every few years.
  • As technology advances – and your custom software doesn’t – your company may be missing out on features that increase efficiency, security and profitability.
  • You may be “forced” to upgrade or replace your software at a time that’s inconvenient.
  • You risk having no one left who is willing or able to support your application.

Make Updates Part of Your Custom Software Plan

If you decide to build custom software, budget a certain amount of money to keep your software up-to-date and backed up. You may not know which operating system or database updates will require a patch to your software, but you can expect to do some software maintenance on a regular basis.

Backup and Recovery for Custom Software

Companies that use custom software need to have backup and recovery processes for both the production system and the software source code. The production system, which is the executable version of the software in use in your office, should be backed up regularly with the rest of your company files and databases.

You should also consider how and where the source code is backed up. Without the source code, you won’t be able to make changes to the software program itself. You and your software development company should discuss how many versions of the source code to keep, and the frequency and location of the source code backups. You should be able to access this code in the event something happens to your software development team.

Finally, insist on keeping a change log of updates to the software. If you ever need to bring in a different software development team, this documentation can help them get up to speed quickly.

Need Help?

The software development team here at Eclipse Consulting has built mobile apps, custom apps, integrations, and customizations using a wide variety of software development tools. We can help you build from scratch or update the solution you have in place today. Give us a call at 586.263.1775 or click on the image below to see how we can help.

Request a Tech Check