Build, Operation, and Organization
Code migration alone is not enough to turn a legacy system into a microservices system.
The microservices must also be built. A suitable tool must be selected for this purpose. In addition, the continuous integration server has to cope with the multitude of microservices.
Similarly, technologies and approaches must be introduced to enable the deployment and operation of microservices.
Finally, a suitable test strategy must be established. This also requires the automated setup of test environments and the assurance that the tests are independent.
- For example, stubs that simulate microservices or the legacy system are useful for this purpose, as are consumer-driven contract tests. They safeguard the requirements for the interfaces of microservices or legacy systems with the help of tests.
- However, legacy systems are often very complicated, so these techniques are difficult to implement.
Therefore, dealing with the first microservice can require extra effort because the infrastructure for build and deployment needs to be set up. It is conceivable to build the infrastructure later, but it is recommended to start building the infrastructure as early as possible in order to reduce the risk of migration.
One or a few microservices can still be operated with an inadequate solution for build and deployment. However, once the number of microservices increases, without appropriate infrastructure, the necessary effort will become so high that it can lead to project failure.