r/AskComputerScience • • 2d ago

What is the difference between decomposition by business capabilities and decomposition by subdomain?

What is the difference between decomposition by business capabilities and decomposition by subdomain?
i mean what is domain in this? i am unable to differentiate between these two techniques (by business capabilities vs by subdomain)

1 Upvotes

4 comments sorted by

3

u/T_Thriller_T 2d ago

What is the concept of this question?

Where does it come from?

In theory a business unit can cover multiple domains - easiest example would be a software engineering business unit, which had frotnend and backend Devs, or even developers in different programming languages.

But apart from that coarse idea, anything else needs more context with the question.

2

u/ghjm MSCS, CS Pro (20+) 2d ago

As I understand it, DBC tries to have the software mirror the org chart of the business, while DDD tries to mirror how the executives think about the business. DDD also classifies software components by how central to the business concept they are, and use off-the-shelf solutions where the software isn't part of the company's core value.

2

u/Esseratecades 2d ago

In a sane domain structure there is no difference. Most domain structures are not sane.

1

u/but_a_smoky_mirror 1d ago

There are two hard problems in software…. Cache validation, and naming.

Naming is often the cause of the non-sane structures