Software Maintenance & Support in Rwanda

Ongoing fixes, updates and support for software after the initial build ships.

Software maintenance and support keeps custom software working and secure after launch: bugs fixed by priority, security updates and dependencies kept current, hosting and backups checked, small improvements made, and the system documented so it never depends on one person. Any organisation running custom software without a maintenance arrangement, or whose developer has moved on, needs it. This page covers custom software and applications. Support for ERP platforms specifically is covered by ERP support and maintenance.

What is software maintenance and support, and who needs it

It’s an ongoing service with agreed priorities, response times and scope, covering corrective fixes, preventive updates and small adaptive changes to your software and the environment it runs in. It suits organisations whose systems were built by a developer who is no longer available, those running software that hasn’t been updated since launch, and any organisation whose operations depend on a custom system.

The problem it solves

Software decays even when nobody touches it. Libraries develop known vulnerabilities, browsers and phones change, certificates expire, hosting platforms retire old versions, and small bugs accumulate into workarounds. Knowledge of how the system works leaves with the developer. Regular maintenance keeps the system safe and current, and documentation keeps it maintainable by someone other than its author.

What maintenance covers

Corrective. Bugs fixed by priority, with root causes recorded.

Security. Dependencies and frameworks updated, vulnerabilities patched and secrets rotated.

Environment. Hosting, database and operating system updates, and certificate renewals.

Compatibility. Changes in browsers, mobile operating systems and app store rules handled.

Backups and recovery. Backups checked and restores tested.

Monitoring. Errors, performance and availability watched, with alerts.

Small improvements, within an agreed monthly allowance.

Documentation kept current with every change.

Taking over from another developer

Many maintenance agreements start with a handover from someone else. The first weeks focus on access and understanding: securing the code repository, hosting and database credentials in your name, building a working test environment, mapping dependencies and their security status, and documenting how the system is deployed. Urgent risks found during that review, such as unsupported frameworks, missing backups or exposed secrets, are fixed first.

Priorities that match the business

  • Critical: the system is down, data is exposed or a key process has stopped. Fastest response, worked until resolved.
  • High: a main function fails for a group of users, with no workaround.
  • Normal: a problem with a workaround, or affecting one user.
  • Request: questions, small changes and improvements, planned into the monthly allowance.

Response targets for each level are written into the agreement, and monthly reports show how they were met.

Releases without surprises

Every change, however small, goes through the same path: made in version control, tested in a separate environment, approved, released at an agreed time, and recorded with a way to roll back. That discipline is what lets a system be changed for years without becoming fragile.

What the work involves

  1. Review the system, code, hosting, dependencies and documentation.
  2. Fix urgent risks found in the review.
  3. Agree priorities, response times and monthly allowance.
  4. Set up monitoring, a test environment and a release process.
  5. Maintain on a regular cycle, with monthly reports.
  6. Plan upgrades and improvements each quarter.

What’s included and what’s not

Included: bug fixing, security and dependency updates, environment maintenance, monitoring, and monthly reports.

Not included unless separately scoped: new features and larger changes (see custom software development), hosting costs, third-party licences, and major modernisation (see legacy system modernisation).

Typical timelines and what drives cost

Onboarding a system we didn’t build typically takes one to three weeks, depending on its condition. Maintenance is a recurring fee driven by the system’s size and complexity, the number of integrations, the age of its technology, response targets, coverage hours and the monthly improvement allowance.

Equipment typically used

Version control, issue tracking, automated tests, dependency scanning for known vulnerabilities, separate test and live environments, error and performance monitoring, and backup and restore tooling.

Common mistakes we see

No maintenance after launch. Code and hosting held only by the developer. Dependencies never updated. Fixes made directly on the live system. No test environment. Backups never restored. And upgrades postponed until a component reaches end of support.

Businessman touching an 'IT' hexagon icon connected to data, communication and technology terms

Frequently asked questions

Can you maintain software you didn't originally build?

Yes, provided we can access the source code, the hosting and the database. We start with a review: how the system is built, how it's deployed, its dependencies and their security status, backups, and known problems. That review produces the documentation the original developer may never have written, and maintenance starts from an accurate picture.

What's included in ongoing maintenance versus new feature development?

Maintenance keeps what you have working and safe: bug fixes, security patches, dependency and framework updates, hosting and backup checks, compatibility with browser and operating system changes, and small adjustments. New features and significant changes are scoped and quoted separately, so the maintenance fee stays predictable.

How quickly are reported bugs addressed?

By priority, as written in the agreement. Problems that stop the system or expose data come first, with the fastest response; issues that block one group of users come next; cosmetic problems and small requests follow. Critical periods, such as month-end or a funding deadline, can have extra cover arranged in advance.

What happens if the software's underlying technology becomes outdated?

We track the support dates of the frameworks, libraries, databases and hosting your system depends on, and raise upgrades well before support ends. Small, regular upgrades are far cheaper than a large one forced by an unsupported component. If a system has drifted too far, we recommend a modernisation plan rather than patching indefinitely.

Why do software dependencies need regular updates?

Because most software is built on open-source libraries, and flaws in them affect every system that uses them. Log4Shell, disclosed in December 2021, showed how one vulnerable library embedded in thousands of products could expose systems worldwide within days. Knowing which libraries you use, and updating them promptly, is basic maintenance.

Have a process your current software can’t handle?

Describe what people do today and where it breaks. We’ll come back with options, including whether to build at all.

Welcome to GENIUS Advanced Technologies, your partner for IT infrastructure, security and software in Rwanda.

Bienvenue chez GENIUS Advanced Technologies, votre partenaire pour l’infrastructure, la sécurité et les logiciels au Rwanda.

Key services

  • IT Infrastructure & Networking
  • Cybersecurity
  • CCTV & Surveillance Security
  • Microsoft & Cloud
  • Software Development
  • IT Support & Managed Services

Choose your language

Choisissez votre langue

You can switch language at any time from the site menu. Vous pouvez changer de langue à tout moment depuis le menu.