写点什么

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:011523
用户头像

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

关注

评论

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

Wicrypt:赋有激励的 DePIN 互联网共享生态

股市老人

初级Go工程师训练营第0期总结

刘博

Go 极客时间 课程总结

关于 .NET Core 中的 Host

雄鹿 @

ASP.NET Core

Penpad 生态资产 $PDD LaunchPad 在即,Season 2 规则解读

西柚子

构建多语言数字资产交易平台和秒合约系统:从概念到实现

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 公链开发 FT开发

公链系统开发全指南:从规划到实施,详解每个步骤

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

DAPP钱包燃烧质押合约挖矿项目系统开发

l8l259l3365

"数字货币市场回归价值导向:Somle预售事件的启示"

区块链软件开发推广运营

区块链浏览器 dapp开发 链游开发 NFT开发 公链开发

动力底盘域的“一小步”,智能汽车的“一大步”

脑极体

AI

纠个错……OpenAI和马斯克的两个开源项目都叫Grok?

天马行空的大杂烩

程序员 开源项目 马斯克

《Java并发编程实战》PDF

程序员李木子

定制Dapp开发:快速上线您的去中心化应用

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

Segment Anything(SAM)的哪些后续方法,又快又好?

AI帅辉

深度学习 计算机视觉 图像分割

2024-03-23:用go语言,一张桌子上总共有 n 个硬币 栈 。每个栈有 正整数 个带面值的硬币, 每一次操作中,你可以从任意一个栈的 顶部 取出 1 个硬币,从栈中移除它,并放入你的钱包里。

福大大架构师每日一题

福大大架构师每日一题

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