Existing software & audits

Testing software recovery: a backup is not yet a working business journey

Prepare a recovery exercise covering records, configuration, dependencies, safe execution and verification of daily operation.

On this page

A successful backup notification describes a copying operation. The organisation also needs to know whether the application can start from that copy and whether staff can resume important work. These questions become concrete when recovery is treated as an exercise with defined checks.

This guide prepares and assesses such an exercise. Its scenarios are fictional and do not predict your recovery time. Testing an agreed route can support confidence within that scope while other dependencies or record groups may still need investigation.

Choose a recognisable recovery objective

Describe a business journey that should work again, such as locating an existing enquiry and preparing an internal task. This is more concrete than saying the server is running. Identify the information needed and work that may temporarily remain manual. Involve the people who actually perform the process in assessing the outcome.

Distinguish minimum resumption from complete recovery. A readable work list may be useful while an integration is still being restored. This is manageable only when staff understand what they can and cannot do. Agree who accepts that limitation. The exercise then examines continuity rather than merely displaying a technical start screen.

Bring the necessary components together

An application may require files, configuration, scheduled jobs and external services as well as a database. Identify components that need to match for the chosen journey. A preserved database without related files may produce incomplete records. The right application version with incorrect configuration may point at the wrong environment.

Record who manages access to each component and how it remains available during an interruption. Avoid a recovery path relying on one developer’s device or memory. Do not collect unnecessary credentials in a document. Describe secure locations, responsible roles and access-recovery arrangements so an authorised replacement understands the steps required.

Examine what the copy actually contains

Ask which records are copied, how success is identified and which exceptions generate alerts. A recently dated file might contain only a partial application export. Clarify the intended recovery point and information that may be absent after it.

Examine how long older copies remain available and who notices a failure in the copying process. This inventory does not yet demonstrate recoverability. It helps select an appropriate exercise. Keep unknown components visible as open questions so the organisation can distinguish demonstrated behaviour from what the configuration is expected to do.

Technical recovery may leave unfinished work behind. Examine recovery of the process chain too: A failed n8n workflow: investigate and recover without duplicate actions.

Make the exercise environment identifiable and bounded

Agree where the recovery exercise runs and which data may be used. Ensure test operations create no real messages, invoices or other external actions. A restored copy may retain the original integrations and scheduled tasks. A different URL alone is not a sufficient boundary.

Identify who removes the exercise environment afterwards and which records or logs are retained as evidence. Include external-service owners when necessary. Notification behaviour can often be tested with an agreed test recipient or isolated connection. The exercise should make intended behaviour observable without using an unplanned production operation as proof that it works.

Check that records form a usable state together

Different components may have been copied at different times. Investigate what that means for the selected journey. A request may refer to a document missing from the corresponding file copy. The restored application can start while still displaying incomplete cases.

Use examples with known relationships and expected outcomes. Check not only that a table opens, but that staff can understand the record as a whole. Trace missing or unexpected information to the selected recovery point. Establish the state actually restored rather than assuming all components automatically represent the same moment.

Actually perform the selected journey

Have an authorised staff member perform the agreed example operation. Can they find the correct record, understand its status and prepare an allowed next step? Have an operator investigate a deliberately exceptional case too, covering failure information and supporting documentation. Record steps that require verbal guidance.

Google SRE discusses testing as a way to support confidence within known changes and conditions. For this exercise, preserve the version, environment and cases. A successful trial supports a bounded conclusion. It does not demonstrate that every interruption, dataset or future software version will behave the same way.

Google SRE: Testing for Reliability ↗

Measure the whole recovery path and identify waiting

Record more than the time needed to restore a file. Obtaining access, selecting the right copy, restoring configuration, verifying results and making a decision may take time too. Separate execution from waiting where that clarifies dependencies. A fast technical operation says little about resumption if the decision-maker is unavailable.

Use the exercise to revise assumptions. If a step requires extensive guidance, follow-up might improve instructions or prepare a second operator. State that measured time belongs to this exercise. A general recovery commitment needs additional agreement on circumstances, staff availability and the actual coverage of the recovery arrangements.

Check what happened outside the application

Restoring a database does not automatically reverse external consequences. A message, order or manual agreement may still exist. Identify effects that need checking before resumption so staff do not blindly repeat an operation.

For each relevant integration, define how to locate the business outcome. A stable reference can help, provided the systems support it usefully. Specify when a person must decide because the outcome remains uncertain. Recovery then extends beyond restoring technical components to the organisation’s practical treatment of partially known work.

Example: assessing a restored scheduling system

Illustrative example: a maintenance company rehearses recovery of its scheduling application in an isolated environment. The database restores, but some attachments live in separate storage. A sample job therefore contains an appointment but lacks a necessary work document. This matters even though the application starts without an error.

The team adds the storage relationship to its recovery instructions and repeats the selected journey. A planner checks a normal job and an amended appointment. The report records observed time, missing elements and remaining questions. The organisation can then decide what needs improvement before relying on this recovery path.

Keep recovery evidence useful after changes

A recovery exercise belongs to a particular state. A new storage service, changed authentication or different import may alter the path. Agree which changes trigger review of instructions and relevant tests. This need not always mean repeating the entire exercise, but explain why a narrower check is sufficient.

Keep instructions and results somewhere authorised replacements can find them. Record ownership of follow-up and unresolved questions. The backup notification then becomes one component of a wider verifiable continuity approach. The organisation gains a clearer understanding of what has worked and where it still relies on assumptions.

Turn the explanation into a project decision

Record your assumptions, unknowns and acceptance checks in the matching tool. Use the service guides to discuss delivery and scope.

Open the preparation tool ↗

Questions about this topic

Does a recent backup prove recovery works?

No. The copy, application, configuration and dependencies must be usable together. An agreed exercise can investigate this for a selected journey.

Must an exercise interrupt production?

Not always. A bounded trial can often use an agreed separate environment. Make production differences and dependencies not yet tested visible.

Can the measured time become a guarantee?

An exercise time is an observation under particular conditions. A recovery agreement also needs scope, people, dependencies and limitations. Do not treat one measurement as a universal promise.

Continue with a related question

Sources and technical background

Discuss your project with Ricardo ↗