DDD是BDUF的倒退吗?

本文关键字:BDUF DDD | 更新日期: 2023-09-27 17:53:31

我是DDD(领域驱动设计)的新手,我喜欢它的许多想法。但是对于DDD,我需要花很多时间分析领域,定义实体和值对象,选择聚合并定义它们的边界等。所以我想知道,这是不是又回到了BDUF (Big Design Up Front)?把DDD和敏捷结合在一起有什么好的经验吗?

DDD是BDUF的倒退吗?

嗯…没有。

DDD说在你的设计中做什么——把你的领域模型放在它的核心,并从那里派生其余的(这并不意味着它需要完成)。

敏捷说做设计时——不断地发展它,而不是在开始编码之前试图让它完美无缺。

这根本不矛盾。例如,在Scrum中使用DDD,你可以选择在30天内实现的最重要的功能,确定该功能所需的领域模型,并在30天内基于该模型实现它。然后,您将选择现在具有最高优先级并且可以在30天内完成的功能,扩展域模型以支持该功能,并实现它。