John D. Gómez

Ideas for practice

Modernization begins with what must be preserved

How to define the scope of a modernization effort around the capabilities that sustain operations and a recovery approach that can be tested.

In this article
  1. Separate capability from implementation
  2. Choose a boundary that can be verified
  3. Prepare for recovery
  4. Use evidence to decide the next step
  5. References

Authors: John D. Gómez

Topics: Continuidad operativa

Other edition: Modernizar empieza por saber qué debe conservarse

An existing system contains decisions visible in the code and others that emerge only in operation. Before replacing it, identify which behaviors support everyday work, which exceptions it handles and which information must not be lost.

Separate capability from implementation

Recording a payment, issuing a document and reconciling a transaction are business capabilities. A database or a library is a means of delivering them. This distinction makes it possible to discuss what needs to improve without making the replacement of a tool the project’s objective.

Choose a boundary that can be verified

Select a process whose behavior can be described and checked. Define inputs, outcomes, exceptions and responsibilities. If components will coexist, agree on which one is authoritative for each piece of data and how differences between results will be detected.

Prepare for recovery

Returning to the previous program does not always undo the data written by the new one. The strategy must account for compatibility, reconciliation and possible compensating actions. Test it before relying on it during an incident.

Use evidence to decide the next step

After each intervention, review the outcome and the cost of maintaining coexistence. Continuing, adjusting or stopping are valid decisions depending on what has been observed. Modernization makes sense when it improves a necessary capability at an acceptable cost and level of risk.

References