阿里云「飞天发布时刻」2024来啦!新产品、新特性、新能力、新方案,等你来探~ 了解详情
写点什么

Greg Young 谈使用文档和流程代替事件

  • 2013-07-07
  • 本文字数:802 字

    阅读完需:约 3 分钟

并非所有系统都是基于事件或事实的。在某些问题域里,使用事件非常贴切,它们表示在各个时间点所发生的事实。“但是,也有很多系统却关注流程中的信息流动”, Greg Young 近日在伦敦举办的 DDD Exchange Day 大会的一场演讲中如是说,他的演讲主题是“基于文档的消息机制及分析”

一个示例是银行的抵押贷款。某人提交一条抵押贷款申请,接下来该申请在各部门间流动;不同岗位的人轮流对这一申请做些处理,最后该申请获得担保。这是不同于事件的另一种消息风格,Greg 演讲的关注点是文档在流程中的流动。

根据 Greg 的经验,通常在域模型中创建结构是非常愉快的工作,但是描述行为却绝非易事。

让人们描述行为通常是最困难的。

事件方式要求业务人员去思考“行为”,分析系统中发生的各种事件,这样做起来就会很漫长。而文档则带来了不同的视角,它们将关注点转到流程的流动,而这是大多数组织有的,或以前有的。实在不行还可以通过纸质流程做为备选。你若从这些纸质流程着手,就会发现业务人员能够更好地参与到这件事情当中。

业务人员可以轻松地理解纸张在流程中的流动。

Greg 发现了一个很好用的方法,将业务人员请进会议室,让他们忘掉电脑,询问他们如何创建一个表格或文档以及之后如何在流程中进行处理。通过这种方式描述流程有助于理解计算机如何完成这项工作。这么做还能得到一个副产品,那就是在该建模过程的同时还可以得到一份灾备方案。
这种做法之所以好用,是因为在电脑出现之前的很长的时间里,业务人员一直在操作基于纸质文档的流程。

“我们现在有两套概念模型,一套基于事件,一套基于文档”,Greg 强调,“二者并非完全互斥。事件可以包含文档,文档也可以包含事件。基于文档的流程里可以触发一个事件,而该事件又包含了当前的文档”。

Greg Young 是一个独立咨询顾问,它因创造了 CQRS 而闻名,同时他还是 Event Store 的首席架构师。


查看英文原文: Greg Young on Documents and Processes as an Alternative to Events

2013-07-07 10:011323
用户头像

发布了 184 篇内容, 共 76.7 次阅读, 收获喜欢 7 次。

关注

评论

发布
暂无评论
发现更多内容

Java8的这些集合骚操作,你掌握了嘛?

爱好编程进阶

Java 面试 后端开发

JavaOOP面试题50题(含答案)

爱好编程进阶

Java 面试 后端开发

Java树结构实际应用(平衡二叉树-AVL树)

爱好编程进阶

Java 面试 后端开发

啃论文俱乐部的团队之道和成长之路

PaperResearch

开源 OpenHarmony 啃论文俱乐部 技术自由

Go能实现AOP吗?

捉虫大师

Java Go aop 4月月更

打基础丨Python图像处理入门知识详解

华为云开发者联盟

Python OpenCV 图像处理 图像 二值图像

你真的了解IT资产管理系统(ITAM)吗?

低代码小观

资产管理 企业管理系统 CRM系统 企业管理工具 资产安全

Java之Java特点

爱好编程进阶

Java 面试 后端开发

Java并发之Condition详解

爱好编程进阶

Java 面试 后端开发

JDK、JRE、JIT

爱好编程进阶

Java 面试 后端开发

确定还不来看看?这样管理你的代码库既方便又省心!

Jianmu

开源 持续集成 工作流 代码管理 workflow

银行应构建主动式客户体验管理体系,助力客户价值增长

易观分析

银行 客户体验管理

Java基础知识点总结

爱好编程进阶

Java 面试 后端开发

数字化赋能塑化产业,B2B电商模式引领企业增长新引擎

数商云

产业互联网 数字化转型

数据库性能优化方案

五分钟学大数据

4月月更

从安全和不安全两个角度,教你如何发布对象(含各种单例代码)

华为云开发者联盟

安全 线程 高并发 发布对象 对象溢出

Java流程控制语句-分支结构(选择结构)

爱好编程进阶

Java 面试 后端开发

Java中高级核心知识全面解析——常用框架(Spring中-Bean-的作用域与生命周期)

爱好编程进阶

Java 面试 后端开发

InfoQ 公开课开放报名,融云场景化低代码平台探究

融云 RongCloud

【二级等保】二级等保需要做日志审计吗?

行云管家

等保 日志审计 等保2.0 二级等保

IndexedDB 代码封装、性能摸索以及多标签支持

网易云信

JavaScript 数据库

车联网通信安全之 SSL/TLS 协议|车联网系列专题 06

EMQ映云科技

车联网 物联网 IoT ssl emq

Java中IO字符流、File类

爱好编程进阶

Java 面试 后端开发

Java基础 - Eclipse,API,Object常用方法

爱好编程进阶

Java 面试 后端开发

Java面试题总结(附答案)

爱好编程进阶

Java 面试 后端开发

FTP指的是什么协议?由什么组成?有什么作用?

行云管家

运维 网络协议 服务器 ftp

蕉下招股书里提了26次的DTC,到底是啥?

易观分析

DTC

服务可用性成险企智能运维关键破局能力,博睿数据APM下场助力

博睿数据

在Redis中使用Pipelining提升查询速度

CRMEB

旺链周 | 我们的价值观,我们来代言

旺链科技

区块链 活动 价值观

高层次人才一站式服务平台开发 人才综合服务平台系统

a13823115807

Greg Young谈使用文档和流程代替事件_架构_Jan Stenberg_InfoQ精选文章