Please log in to watch this conference skillscast.
As a practitioner of domain-driven design, Thomas wants to model and align his software with the business, but, like many of you, has experienced how legacy code bases holds him back. They provide value, but are often constraining, making it harder to apply domain-driven design. Have you not fantasized about the greenfield rewrite with proper models and abstractions, only to realize how hopeless it would be? Enter microservices: The promised land and seemingly silver bullet for tidying up an unwieldy monolith. They certainly appear tempting, but arenâ€™t suitable for all of us, and cleaning up a messy monolith really isnâ€™t their job. Eric Evans proposed the notion of bubble contexts back in 2012 as a means to create space for modelling in a legacy system. Perhaps we could take a step back and build a better understanding of our monolithsâ€™ boundaries using this heritage.
This case study will look into how we started our journey of cleaning up a mission-critical monolith at a major Scandinavian payment solutions provider using bubble contexts and other aspects from domain-driven design. Using these we found a low-risk method of attacking our monolith and how to structure it based on our newfound insights of the domain.
You will learn how we took control over our monolith using DDD, why we chose not to use microservices - as well as both the failures and successes we had. You will also learn more technical details of some of the techniques we employed, and how we went about to adjust our surrounding organization to start thinking about business and development as one.
YOU MAY ALSO LIKE:
- Scala eXchange London 2018 (in London on 13th - 14th December 2018)
- Alberto Brandolini's EventStorming Workshop (in London on 25th - 26th February 2019)
- Alberto Brandolini's DDD Modelling Workshop (in London on 27th February - 1st March 2019)
- Greg Young's CQRS, Domain Events, Event Sourcing and how to apply DDD (in London on 3rd - 5th June 2019)
Cleaning up an Unwieldy Monolith Without Using Microservices
Thomas is a consultant from Norway who specializes in software architecture and development. He's been a practitioner of Domain-Driven Design for the past 7 years or so and finds great joy in pondering in business problems. Clients and colleagues know him as an energetic and passionate craftsman who loves to learn, experiment, fail and succeed while sharing his own experiences and knowledge. Having worked with too many languages and technologies to mention, Thomas has found the intersection between business and IT to be a far more rewarding approach to problem solving and easing up the everyday work of software development. He's known for holding workshops and talks for both his clients and at local user groups.