Appendix B. Strategic Refactorings
For strategic transformation to be successful, you need smaller steps that can be taken—strategic refactorings that describe how the bounded context can be achieved. That is what we present in this appendix.
There are generally two options for a bounded context to come to life besides the big ball of mud:
-
Carve out, see Extract Bounded Context
-
Build new, see Implement Bounded Context from Scratch
Strategic refactorings are still big and have to be divided into smaller steps—tactical refactorings that support the strategic ones. A strategic refactoring serves as an umbrella to group tactical refactorings that belong together. A strategic refactoring is only done when all the supporting tactical refactorings are done. To find those, see Appendix C.
Strategic refactorings are often accompanied by team reorganization. You can find matching sociotechnical refactorings in Appendix D.
Extract Bounded Context
Also known as: Carve Bounded Context Out of Monolith
Alternative to Implement Bounded Context from Scratch
Motivation
A legacy system is full of domain knowledge that is probably documented nowhere else. Sometimes there isn’t even a domain expert who has this knowledge. To bring that knowledge into the modern world, transform it into a new bounded context.
Mechanics
-
Analyze the domain to find out which bounded contexts should be there. ...