Critical system without documentation: how to keep a system that cannot stop running

Oct 2026 · 7 min read

You can take over the sustainment of a critical system even without documentation. What protects the operation is not a complete manual, but a map of what the system does, a staged entry and the rule of not touching what works before understanding why.

Summary
  • Missing documentation increases risk, but it does not prevent the transition.
  • The system in production holds what the manual lost: code, data, logs and the people who use it.
  • Entry happens in stages, with close follow-up and no changes at the start.
  • Whoever takes over must deliver a ticket routine, monitoring and recorded knowledge.

No documentation does not mean no way out

The developer who built the system has left. Or the vendor ended the contract. The system is still live, supporting part of the operation, and nobody knows exactly how it works inside. The most common instinct is to touch nothing and hope nothing breaks. That caution makes sense, but it has an expiry date. A system with no owner accumulates risk every week: fixes nobody knows how to make, access only one person has, routines nobody remembers exist. The good news is that missing documentation does not prevent the transition. We call this work sustainment: maintaining, hosting and evolving systems that are already in production. People who search for "support" or "maintenance" usually want the same outcome, but sustainment covers the whole routine, not just the repair when something breaks. We have already written about the risks of legacy system maintenance. Here the focus is the hardest case: the critical system nobody explained.

The system in production holds what the documentation lost

The running system is the most faithful documentation there is. It just needs to be read. Each source reveals part of the picture:
Source What it reveals
Code and repository Business rules, dependencies and how the system was built
Database What information the system stores, in what volume and which tables change the most
Logs and monitoring What runs, when it runs and where it tends to fail
Scheduled jobs and integrations What triggers on its own and which other systems it talks to
The people who use the system What the team does every day and what can never fail
Ticket and email history Recurring failures and fixes made in the past
No single source tells the whole story. It is the cross-checking between them that shows what the system does and what it depends on.

Map first what cannot stop

Before any change, we define what cannot fail. This focus avoids the mistake of trying to understand everything and protecting nothing. Four questions guide the mapping:
  • Which flows cause losses if they stop? Billing, orders, customer service: what the business feels first.
  • Which accesses exist and work? Hosting, database, code repository, domain and certificates. Lost access is the hardest problem to solve later.
  • Who does the system talk to? Integrations with other systems, payment providers and external services.
  • Where is the single point of failure? A job that only runs on one machine, a password only one person knows.

Document only the minimum that protects the operation

Stopping everything to write the complete manual is a common mistake. It takes time, goes out of date and does not protect the operation on day one. What protects it is a minimum set of records:
  • how the system starts and how it is restored after a failure;
  • the map of integrations and external dependencies;
  • the scheduled jobs and their times;
  • who uses the system, who decides and whom to call;
  • known problems and how they were solved.
The rest of the documentation grows with use. Each resolved ticket leaves a record, and over time the system gets the manual it never had.

Enter in stages: observe, follow, and only then change

The central rule is do not touch what works before understanding why it works. A safe entry follows an order:
  1. Observe without changing anything. Read code, data and logs and watch the system in operation.
  2. Follow in parallel. If someone from the original team or the user area can still explain things, that knowledge comes in now.
  3. Secure a backup and a rollback plan. No change happens without a way to undo it.
  4. Start with small fixes. They teach how the system reacts before any larger change.
  5. Only then evolve. New features and improvements come after the operation is stable.
Each stage has a window agreed with the business, so the operation neither stops nor gets surprised.

What to demand from whoever takes over sustainment

Swapping "nobody knows" for "someone knows, but it is unclear who" solves nothing. A good sustainment contract for a system that cannot go down makes explicit:
  • SLA (service level agreement): response and resolution times by severity;
  • ticket pipeline: where problems are opened, tracked and prioritized;
  • monitoring: alerts before the user notices the failure;
  • escalation: who steps in when the problem is bigger than expected;
  • a stable team and recorded knowledge, so the system does not go back to depending on a single person.

What Espresso brings to critical systems without documentation

Taking over a system that cannot stop and that nobody explained is the kind of work Espresso does within its maintenance and sustainment service. The starting point is not a contract: it is understanding the system first.
  • Technical diagnosis before the contract: we understand the system, the risks and what needs attention before proposing sustainment.
  • Staged entry, without changing what works at the start.
  • Ticket pipeline, monitoring and formal SLAs, as in the systems we already maintain.
  • A stable team and knowledge recorded with every resolved ticket.
Today Espresso maintains more than 57 systems under continuous maintenance, and its partnership with a financial-sector client is over 5 years old. Have a critical system nobody can explain? Talk to people who understand critical operations or message us on WhatsApp. We have a conversation to understand the scope and point to a path with an estimate, no commitment.

Frequently asked questions

What is system sustainment? It means maintaining, hosting and evolving a system that is already in production. It includes fixing failures, handling security, monitoring operation and making improvements. Many people search for support or maintenance, but sustainment covers the whole routine, not just the repair when something breaks. Is it possible to take over a critical system without documentation? Yes, as long as the code, the data and the access exist. Missing documentation is replaced by mapping: we read code, database and logs, listen to the people who use the system and record the necessary minimum. Entering in stages reduces the risk of touching what works without understanding why. Does the operation have to stop during a vendor change? It should not. With initial observation, parallel follow-up, and a backup and rollback plan before every change, the system stays live while the new team learns how it works. Changes only begin afterwards, in windows agreed with the business. What should I hand over to the new vendor so they can start? The essentials are the source code, access to hosting, the database and the domain, and the list of integrations you know about. Old ticket history and contacts of the people who use the system day to day also help. If any access is missing, it shows up in the diagnosis.

Have a critical system nobody can explain?

We understand the system, the risks and what needs attention before proposing sustainment. We have a conversation to understand the scope and point to a path with an estimate, no commitment.