The Exit Door is part of the Architecture

Every supplier contract contains an exit clause. Most of us read some form of termination section in a contract. Some have and declared the lock-in problem solved. There was a notice period, an export clause and even a promise to help us leave. Legal had done their job, procurement had done their job, everyone had done their job.

Except the people that would actually do the exiting. They were looking at custom interfaces, provider-specific identities, event formats, deployment pipelines, scaffolding, retrieval assumptions and 8 years of data that was technically exportable. Technically exportable is a lovely phrase. My attic is technically organised because everything is in a box. Even boxes from the previous move from Amsterdam to Alkmaar. I still cannot find stuff (or understand why we keep all of it).

The door painted on the wall

I ended They Cannot Buy ASML with substitution cost, because I think that is where modern lock-in hides. It rarely lives in one licence or one API anymore, it accumulates through hundreds of small assumptions around them.

Your model can be swapped, except the replacement tokenises differently. Your database can be exported, except the application leans on its consistency or fail over model. Your SaaS platform has open APIs, except every business process now bends around its object model and that spread across your application landscape. Your cloud workloads use containers, except identity, logging, networking and recovery all assume the cloud underneath.

None of those choices are automatically wrong. I am not proposing we write every application for 7 clouds, 5 databases and whatever model was released while I was making coffee. Portability can become its own expensive fantasy, a fully packed moving van circling the house for 10 years just in case.

My point is that the exit door needs to be real enough to open. A door painted on the wall looks convincing until the room is on fire.

one-vehicle crash in the Shieldhall Road area of Glasgow.

The usual architecture diagrams do not show this (also because nobody asks for it, but that doesn’t help my article). They show boxes and arrows, maybe colour-coded by supplier if somebody was feeling ambitious. What they do not show is how many weeks it takes to replace a box, what fails when it moves, and who still understands the work.

Reversibility has a price

We tend to discuss vendor independence as a principle. I think it is more useful as a price.

Pick a meaningful component and ask what it would cost, in elapsed weeks and scarce people, to substitute it. Not to write a strategy power point, but to have the alternative running with production-shaped data, security controls, monitoring and a rollback path.

We can change models, sounds reassuring, doesn’t it? We can change models in 6 weeks, but only if Pieter is available and we rebuild 43 evaluations is entirely different information. So is “the export works, but nobody has tested importing it anywhere else”!

Let’s be honest. Any option has a certain carrying cost. Keeping schemas clean, isolating provider-specific features, maintaining evaluations, retaining people who understand the boundary and occasionally testing the alternative all cost money. If the organisation refuses to pay any of that cost, it basically has made a choice. It is almost like they have sold the option to leave.

And if you think about it, that might still be the right choice! A deeply integrated platform can produce more value than a carefully neutral one. I have seen architectures so frightened of commitment that they managed to get the disadvantages of every supplier and the benefits of none. Impressive in its own way, really.

But call it what it is, do not claim portability while stripping out every budget line that keeps it possible.

Open it once

Fire exits get inspected because discovering that the handle is decorative during the fire is considered suboptimal. Our technology exits mostly get reviewed in PowerPoint.

I think we should open one…

Take a bounded integration, model or data flow and substitute it in a non-production environment. Keep the scope small enough that the exercise can finish. Measure the hidden coupling, the missing documentation, the unavailable people and the assumptions that nobody knew were assumptions. For developers, that gives a practical reason to create seams instead of abstracting everything on principle. For architects, it turns reversibility from a slogan into an observable quality. For a CTO, it exposes where a supplier decision has quietly become a company decision.

Because the risk is not that simply for example that a vendor raises its price. Vendors get acquired, products get retired, regulation moves, geopolitical lines shift and occasionally somebody changes an API because Tuesday looked a little empty.

Procurement can negotiate the exit clause, Legal can protect the right to use it. But only the architecture can make sure there is still a door where the contract says one should be.

And maybe I need to start throwing away some of the stuff that we keep in our attic…


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.