We cover the whole legacy lifecycle.
From figuring the path forward, to steering migrations and to guiding rewrites.
We start by diving into your system. This is an intense, typically 4-8 weeks, period to learn your context and distill a path forward. We work closely with you and guide the whole process through custom tools through which the problem gets explained. The result is a concrete description of options and recommendations.
Steering agile architecture
Whether you migrate to a new technology, split the system into smaller pieces, or moving it to the cloud, it is the existing architecture that poses the greatest technical challenge. We accompany the team through this process, and we coach the team how to guide it by means of automatic views and constraints.
Executable domain specifications
Sometimes, building anew is the only reasonable choice. A new system requires discovery guided by a ubiquitous language that bridges the technical and business worlds. But, that language should not remain on a whiteboard. We make the system show the pictures and through this we enable faster feedback and iterations.
The unifying factor for all these is that we treat the inside of your system as data, and we make it explainable through custom tools that capture what is important in your context. These custom tools free the energy otherwise spent on manual investigations and enable significant process optimizations.
Say the business requires to migrate a core system or a database that is being used by many others systems. To put it in practice, you need to understand the current landscape. Only then can you make decisions knowingly.
Once you decide on a technical path, you want to ensure the system evolves the way you want. It starts from establishing conventions and detecting deviations. These enable higher-level patterns to be visualized and reasoned about.
A rewrite requires the recovery of the business knowledge burried in the old system. You want to capture it in an executable shape so that it can serve as a central source of truth for both business people and technologists.
Legacy is hard enough.
Eliminate the unnecessary risks.
The core proposition revolves around replacing manual views created through manual inspection by views generated automatically, yet are specific to the problem. It's much like data science, only applied to software.
This is important because we replace the single largest cost and the most important source for unnecessary risk. Your system is too large to be understood manually. As a consequence, pictures produced manually do not reflect the reality of the system. They constitute beliefs rather than accurate engineering tools. And beliefs are not appropriate for any decision making.
Automating how information is gathered from the system reduces risks and frees energy that can be used for experimenting and acting.
Tools are critical.
But, you still have to drive because only you know where the value is.
Steering a legacy system is a multi-dimensional problem. Due to the size of systems, tools are essential, but regardless how smart tools are, you cannot delegate the decision to them. You have to drive.
Legacy means value, but value is always specific. Every system is special in its own way. There are no recipes to deal with it. It relates to your technology, to your domain, to your business. However, there are patterns you can learn and skills you can build.
We show you how these work in practice. It's not easy, but it's lasting. And then we teach you how to do it yourself, too.
Yes, we know that your crisis needs addressing now. But, you can address it as an investment that will pay off continuously in the future.
Crises present many risks often due to opacity. Through our systematic approach, we decrease those risks by creating transparency through automation.
We act as your first tactical team. In a crisis, everything looks like a problem, but not all are valuable. We work with you identify what matters and you get a concrete path forward. And, you get the tools tailored specifically for documenting and ensuring that path.
Even more important is that you get a concrete case from which your team can learn. Solving the crisis becomes an investment into your long term skills.
Why work with us?
We bring a unique experience. We cover the whole spectrum, from a single line of code to decisions made at the company executive level.
We base our work on state-of-the-art scientific work, much of which we personally authored. We actively create new tools and techniques for thinking with and about software systems.
Our work was validated for more than a decade of working with highly difficult problems in legacy systems in multiple domains.