Can business capabilities be useful in DDD with Trond Hjorteland

video:

In this SPA conference special, we will talk with Trond Hjorteland about if business capabilities are useful in DDD. The DDD community seems to consist of mostly technical people, or at least with sort of hands-on programming experience, both now an back when the blue book was published. The decision to put the technical patterns at the start of that book was strategic (!) in that it was meant to invite the programmers in. As a consequence of that, it seems that most know very little about the enterprises' architecture space, and if they do, it seems to be with disdain for those dreaded ivory architects. And, for good reason in a lot of large waterfall-driven enterprises.

My thesis is that by this approach we as a community is throwing the baby out with the bathwater, at least parts. There are things we ought to take a look at and incorporate into our toolbox, like architectural principles and business capabilities. The latter has been something I have had a special keen interest for, coming from the SOA space, and see a lot of parallels with the strategic patterns in DDD. I even believe it can be a great technique for getting started with discovering the problem space and even guide defining the bounded contexts.

I would love to have a good discussion on this and maybe we all can gain new insights. That is always good, right?

Tags

Follow us

Read our latest news from Virtual DDD on any of these social networks!

Recent videos

Managing Domain Knowledge with Chris Simon

From example mapping, to BDD, to DDD practices like event storming and domain storytelling, we're fortunate to have a wide range of tools for collaboratively building domain knowledge and creating models of those domains in software. One gap that many...

Connascence: beyond Coupling and Cohesion – Marco Consolaro

In 2009 Jim Weirich defined Connascence as "The Grand Unified Theory Of Software Development". The concept it is simple, yet very powerful in context of Object Oriented software development. It generalizes the ideas of Cohesion and Coupling, combining them...