Frameworks solve problems in a generalized way, so we can reuse the code and the language if we want to solve a related problem in our application. We meet with them typically by integration, but what if we have a framework which implements a complete subdomain? For example identification and authorization? Should we use it? What is it from DDD perspective, is it a bounded context?
Let's we are in some kind of security domain (our core domain). The security software that we will build, going to be our company advantage.
In here it has no sense to buy/use some public authorization component. We will want continuously make such component better.
If we wont, our company will stop increasing its business value and we can't allow that.
From the other side, if we are in selling domain, we may want to want to use external component.
This is related with time, that we need to spend on building/maintaining it.
If this is much time, we will lose time that we could spend on incresing our business value in selling component.
Also we may have no security experts, because it's not our domain. We may read some books/articles, but we probably won't deliver as good software as company who's core domain is security :).
That is why we should really consider buying such component.
"What is it from DDD perspective, is it a bounded context?"
Bounded Context as a term is very abstract.
From my perspective we may talk about bounded context (the good one, which goes one to one with subdomain), when we have
Framework from it's definition is just an skeleton, you can't just download framework and run it. It will not provide any value. So framework just helps us to build Bounded Context around some subdomain, but it doesn't provide BC by itself.
If it's component ready to deploy and exposing some API, we would just go with integration patterns.
"what if we have a framework which implements a complete subdomain?"
If it's a framework, then depending on the need.
build a bounded context around it, by adding some code and exposing some external interface.add it, to our bounded context which is probably describing some other subdomain. As long as it doesn't break our model it's fine.If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With