商业应用中的时间管理:原理与实践
1. 商业规则分类与时间管理的重要性
商业规则可分为以下几类:
- 静态数据约束
- 数据变更时的副作用,如流程启动
- 显示逻辑,包括推导和聚合
这些分类有助于我们思考应用模型的属性,也为后续设计中规则的实现位置提供了参考。而时间管理与商业规则密切相关,因为规则会随时间变化,其与数据的关系也需反映这一特性。
2. 回答“发生了什么?”
在商业应用中,用户常问“系统为何有这个值?”为回答此问题,系统需记住输入。以派生数据的商业规则为例,规则输入存储在系统中,派生值用于显示逻辑。我们可让计算输出包含输入副本,便于观察者验证计算。
但对于持久化的计算结果,若未明确要求记录输入,就难以知晓计算时的输入。若值持久化时包含时间戳,可尝试重构当时的数据。若系统未跟踪数据的历史状态,信息最终会丢失,这就是现状架构中的“原地修改”问题。
3. 跟踪变更
在现状架构中,有两种常见的变更跟踪模式:
3.1 使用历史表
若变更跟踪主要供应用支持人员使用,可使用历史表。例如,有一个跟踪客户的表:
CREATE TABLE customers (
customer_id BIGINT PRIMARY KEY,
customer_name TEXT
);
可使用以下历史表:
CREATE TABLE cust
超级会员免费看
订阅专栏 解锁全文
5万+

被折叠的 条评论
为什么被折叠?



