Living in your own bubble
DDD Foundations - Talk
There are a lot of farms in the Netherlands, and a lot of cows. All cows on a farm have a certain value, based on their history. Cows are sold and bought, being born and slaughtered, inseminated or milked, generating a large stream of information. Information which is used by the farmers but also by the government. Taxes, carbon footprints, CO2 reductions, business value, it all needs up-to-date and accurate animal information.
Due to new laws, some serious changes had to be implemented on a legacy system. Nightly processing of new information was already problematic, extending the business rules would even make it slower. Scaling and extending the legacy application, which heavily leaned on stored procedures and triggers, appeared to be too difficult. While Domain Driven Design could really help to bring clarity in this complex domain, rebuilding was not an option.
Time to introduce the Bubble Context of which Eric Evans wrote in his paper “Getting Started With DDD When Surrounded By Legacy systems”! In this session I will use a simplified version of the legacy system and demonstrate how to create your own bubble context to apply new business rules while keeping the existing system intact. In fact, we hardly touch the existing system! I will explain the advantages and disadvantages of a bubble context and how to move even further away from the legacy system.
About Jacob Duijzer
Jacob is a Software Engineer with a passion for quality, testing and sharing knowledge. He likes organizing Coding Dojos or even Code Retreats to help teams grow and learn to develop qualitative software.