大营销抽奖系统,DDD开发要如何建模?

一、战略、战术、战役

首先 DDD 是一种软件设计方法,Domain-driven design (DDD) is a major software design approach. 来自维基百科。软件设计方法涵盖了;范式、模型、框架、方法论,主要活动包括建模、测试、工程、开发、部署、维护。来自维基百科的软件设计涵盖信息介绍。

在 DDD 领域驱动设计中,常提到战略战术,和一少部分会讲到战役。这3个词主要讲的是不同的开发阶段所需要完成的事项;

  • 战略 - 建模;领域划分、界限上下文、核心领域

  • 战术 - 架构;工程结构、领域对象、领域服务、领域事件

  • 战役 - 编码;设计原则、设计模式

DDD 的战略、战术和战役设计相辅相成,战略提供系统的建模作为宏观指导,战术下面有N个战役,两者则关注具体的实现和编码落地。

在维基百科中有不少 DDD 非常好的资料,其中一个是关于事件风暴的,讲解了执行战略设计中风暴模型的步骤。

有了这基础认知,接下来我们通过《大营销项目》从需求到设计,一步步了解系统的领域驱动设计。

二、产品需求

1. 产品诉求

如图,是一个复杂的营销抽奖场景玩法需求,涵盖了;活动配置签到&奖励活动账户抽奖策略「责任链+规则树」库存扣减抽奖满N次后阶梯抽奖等。面对这样的复杂系统,非常适合使用 DDD 落地。

分析需求;

  1. 整体概率相加,总和为1或者分值计算,概率范围千分位

  2. 抽奖为免费抽奖次数 + 用户消耗个人积分抽奖

  3. 抽奖活动可给用户分配可抽奖次数,通过点击签到发放

  4. 活动延伸配置用户库存消耗管理&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值