
2019年10月底某天,国泰第一次事件风暴工作坊,选定的案例场景是线上购买金融商品。工作坊内容包括了事件风暴四大步骤,包括事件风暴、命令风暴、寻找聚合和再次探索。第一个步骤“事件风暴”(如图左),由领域专家进行业务说明,展开业务流程贴标,排出顺序。接着进行命令风暴,贴标命令、用户和定期任务。第三步开始寻找聚合,以领域概念将不同的便条纸分组,最后第四步骤是持续探索,探索上下文关系(Upstream或Downstream),产出一份界限上下文关连图(如下图)。图片来源/国泰金控
“拔对服务上天堂,但拔错服务可是大灾难。”即使完成了两套中台架构设计,国泰金控数数发中心首席企业架构师张维仁至今仍然觉得,如何抉择,是设计微服务中台最大的挑战之一。
国泰金控以“技术转型来辅助整体集团数位转型”的战略相当顺利,近2年更是开始收获过去几年大力数位转型的成果,去年技术年会中,更是大秀多项崭新的金融商品、科技应用和内部作业革新。其中,最引人注目的就是全新保险商业模式“碎片化保险”。
国泰这个碎片化保险的商品颗粒度可粗可细,能细小到汽车上的一个车灯零件,保障期间可以更短,从开上高速公路到下交流道间的短短数小时,都能设计成一张保单产品。还可以提供高度多样性能力,能够按通路需求自由组装成套餐。
不只产品面碎片化,对于内部业务团队的产品开发上,也能分段多工进行,更大大缩短了新保险商品的开发时程,过去一款保单得花4个月,现在缩短到1个月,商品产量也从每月开发1支,提高到开发10支。
实现这个创新模式的关键是,由张维仁率领金控和产险技术团队所打造出来的保险中台新架构,这是国泰第二次中台架构大改造的成果。
第一次是设计国泰世华银行的中台,采用了当红微服务架构和容器化技术、K8s管理平台,在传统银行资讯架构中,带进了中台设计的作法,后来更发展出了数据中台和业务中台。
银行端这个新中台架构上线后,运作得相当顺利,国泰在2020年9月时揭露,透过中台的单日交易量平均高达1,700万次。
顺利完成了银行技术中台设计后,国泰将银行架构改造经验,变成了一套架构改造范本,带到了金控,进一步套用到产险领域,也就是保险中台新架构,碎片化车险专案就是第一个业务场景的应用成果。
国泰将银行架构改造经验,变成了一套架构改造范本,带到了金控,进一步套用到产险领域,也就是保险中台新架构,碎片化车险专案就是第一个业务场景的应用成果。(图片来源/国泰金控)
中台架构最高原则是新旧融合
国泰所采取的中台架构设计原则,“不是要用中台来取代后台大核心,而是利用中台弹性,快速回应通路的蓬勃发展,又能串接原有的大核心系统。”张维仁解释:“不是用新取代旧,而是用新技术包容旧技术,来形成一个新的架构,让发展可以持续进行,这是国泰最重要的架构思想。”
在这个“新包旧”的原则下,最大的挑战就是,那些原本在核心系统中的功能,拔出来改放到中台,让核心系统可以回归基本面的账务功能,专注于后台处理的角色。
这的作法有点类似许多银行近年陆续展开的“核心瘦身”、“小核心”等IT大改造,但不同的是,国泰是把从核心瘦身,拔出来的服务,放到微服务中台。“怎么拔”就是影响中台架构能否成功的最根本的课题。
“如何正确地把服务从传统核心中抽离出来,介接到中台,国泰采用的方法就是DDD(Domain-Driven Design,领域驱动设计)。”张维仁透露了背后的关键,而且,这是国泰经过两次中台建置,才逐渐摸索出来的体会。
在 2018年,国泰在第一次银行新中台架构建置时,以技术中台为主,当时还没有发展出业务中台的设计,也还没有碰触到非用DDD不可的后台议题。
“国泰真正导入DDD的第一个实际专案就是车险,而且范围不只中台,还跨到后台。” 张维仁回忆:“让中台架构、业务中台和传统大核心可以找出最大相容性、合作顺畅的关键,就是DDD。”
一般DDD方法结合了敏捷专案作法,大多从使用者需求端出发,端到端的设计出全套流程,甚至常会先设计出使用者端操作界面的雏形后,再迭代开发出相关的商业逻辑程式和后端程式。
“从通路端的需求出发,用不用DDD没有太大差别。”张维仁认为,或像是在银行技术中台设计时,单纯聚焦技术,例如容器、ESB、API、微服务,当时不需要用到DDD也能进行。
但是,在车险专案中,架构设计必须进入业务场景,除了常见从通路前端需求发动,来思考后端架构的设计角度,“难道没有从后到前的情况?”张维仁抛出了这个问题给架构团队。
因为国泰同样在产险资讯架构上,继续沿用了“新技术包容旧核心”的策略,原本在产险核心系统就有许多业务流程和逻辑的设计,从后到前的改造途径,第一个考验就是得先拆解后端核心系统的业务,国泰产险资讯系统开发部同仁透露,这就是国泰发展“保险碎片化”模式在系统面的挑战不只有“拆解”,还要考虑如何“组合”。
国泰先透过四个途径来拆解,由上而下,从通路端需求来思考、由客户端需求来思考,再由下而上,从数据资料中找出可以价值化的服务,或是找出现有流程中可以共用的功能,来拆解出需要微服务化放入中台的服务。
接着就是要解决“组合”的议题,张维仁指出,正确地拆解微服务,设定出微服务的边界,可以找出一个相对合理的颗粒度尺寸,但这样还不够,还得解决如何找出对的服务(适合拔到中台的服务)的课题,“就算是对的颗粒度,拔对或拔错服务,就是天堂与地域的差别。”
国泰金控数数发中心首席企业架构师张维仁表示,面临一群架构的设计,涉及中台、后台、通路不同系统的组合,因为组合需求,放对或放错非常重要,DDD可在事前提供一种“这个架构设计对了”的感觉,来协助服务定标、找对位置的信心。(摄影/洪政伟)
选定复杂场景,从事件风暴开始拥抱DDD
所以,国泰找来技术中台开发人员和熟悉车险场域的后台开发人员一起协作,尝试用DDD来验证,能否找出正确的业务逻辑切割和设计的途径。国泰决定从车险专案,来举办DDD最常见的实作方法,也就是事件风暴(Event Storming)工作坊。国泰金控数数发中心云端技术架构师颜胜豪表示:“国泰选定业务场景复杂,或者开发人员不容易理解的场景,来导入DDD。”
国泰金控数数发中心云端技术架构师颜胜豪表示,国泰过去先导入DDD战略设计,目前开始尝试战术设计方法,希望能将整个程式架构,都导入DDD方法论来切割。(摄影/洪政伟)
先找多角色共组读书会自我学习
不过,在工作坊之前,还有一些准备工作。第一步是组成读书会,国泰评估了几本坊间常见DDD书籍后,大多过于艰深,后来挑了相对容易理解的Vaughn Vernon的《领域驱动设计精粹》(Domain-Driven Design Distilled)来阅读。“这本书可读性高,更搭配了一个实际的保险案例,刚好符合我们的场景。”颜胜豪这样推荐。读书会也找来资深技术架构师、企业架构师、资深领域专家、BA、SA、SD等一起参与,每周一次,每次两人报告2个章节。不只有技术人员,加入了熟谙场景的资深人员,有助于从多面向引发讨论。
颜胜豪比较,敏捷是一种软件开发流程的方法,DDD是一种软件分析设计的方法,而DevOps则是开发团队和维运团队彼此为对方多想一点的文化。DDD和敏捷一样,都会透过工作坊,使用很多便利贴来讨论,但是敏捷关注的是需求、缺陷、交付、团队和开发团队的管理,而DDD的目的是要通过业务抽象,来建立领域模型,维持业务和程式的逻辑一致性。
国泰如何举办事件风暴工作坊
2019年10月底某天,国泰正式举办事件风暴工作坊,选定的案例场景是线上购买金融商品。
由曾接受过DDD专业训练,又熟悉保险领域知识的国泰金控数数发中心企业架构师高华志担任工作坊教练。他设计了相关教材,涵盖了事件风暴四大步骤,包括事件风暴、命令风暴、寻找聚合和再次探索。这个工作坊不只找来领域专家、技术人员也包括了需求单位的人员参与。
国泰这场工作坊中,第一个步骤是事件风暴,先由需求单位的领域专家进行业务流程说明,参与人员依据自身经验和知识,将预期会发生的事件,逐一写到橘色便条纸贴上大白板,这就是“业务流程贴标”的动作,接着进行事件排序,依据发生时间由左至右重新安排便条纸,并由领域专家检视进行校正,达成共识后就完成了业务流程事件。
光是进行业务流程说明和事件风暴时,就开始了共通语言的设计,例如在这次车险工作坊中,技术人员与业务人员对名词的认知会不一样,例如套餐跟商品,订单跟保单,都是不同的意义,商品是单一个产品,而套餐则是给使用者的一套保险,或者领域专家认为,订单就等于保单,但从技术角度来看是两种不同的概念,因为中间还有一个Kafka防火层设计。
传统软件开发方法,从使用者提出需求,SA设计需求文件,再由SA设计系统规格,最后交给开发者,高华志解释,开发人员永远都离需求很远,原始业务需求经过3次翻译,若每次损失2成细节,讯息递减的结果,最后开发出来的系统就会少了一半的内容。
但是,高华志表示:“导入DDD方法论,将多个单位集中一起进行工作坊,让大家彼此的认知有一致性,有共通的语言,这个语言就是领域语言。”另外,他还建议,DDD设计共通语言时,尽量用英文,好处是设计程式码时,工程师可以直接沿用,不用想命名。
第二步骤是进行命令风暴,这个阶段的目的是找出产生事件的命令,以及执行命令的相关概念实体,针对命令风暴任何一个程序,参与者共同讨论,找出更细节要执行的命令,并且定义出会触发这些命令的用户和外部系统。同样写到便条纸上,来进行贴标后,再次进行排序,也由领域专家检查确认做最后的校正,得到共识版本。举例来说,进行相关商品时,是否需要呼叫外部系统进行通算,查询理赔记录。
接着是关键的第三步骤“寻找聚合”,将白板上的相关命令和事件,以领域概念来进行分组,并且寻找聚合关系,用白板笔画线圈出同一类的便条纸,让聚合关系更视觉化。DDD有三种领域概念,包括了核心域、通用域和支撑域,来区分服务的三种属性,例如若要打造一套共用服务,可以将具有通用域或支撑域属性的事件,归类到这一个领域下。成员还是要再进行讨论和确认,最终产出“聚合模型”
最后一个步骤是持续探索,参加者从完成的聚合模型中,开始识别出有效的界限,并探索上下文关系(Upstream或Downstream),来定义上下文的属性,持续讨论调整达成所有成员共识,产出一份界限上下文关连图。聚合的一种作法是,从资料的上下游流程关系来分上下游关系,定义资料从这个部分,流向另外哪一个部分。最后讨论出有共识的上下游关连图,也就成了国泰设计中台微服务拆分时的初步参考流程,但不是最终定案版,还可以不断修改。张维仁指出,有了这个上下游关连图,就容易思考,什么服务与核心的相关性更高,有助于判断什么服务适合拔出去。
第一线开发团队的国泰产险资讯系统开发部同仁表示,事件风暴完成的最后那一张图,可以提供一个图像化结构的方式,让架构师建构出一个对整体系统的全局观,有助于在事前设计时,更清楚要将什么服务该放到哪一个适当位置,判断该放入核心或中台。不过,这也只是初步参考,最后还要靠实际开发和上线成果来验证。
国泰这场事件风暴工作坊用了一整个下午的时间,还有不少事前准备,例如各参与者得事先思考业务流程的需求和事件。担任工作坊教练的高华志提醒,不要一次全面导入DDD,先挑选重要的领域着手。
另外,这次指导工作坊流程运作的教练,不只熟谙DDD,同时也是保险的领域专家,高华志坦言,还不确定两种角色分开后,能否顺利进行,国泰目前先训练出具备双重角色的教练。
可以强化事前“架构设计对了”的信心来协助服务定标
从架构设计的大格局来看,张维仁总结,为了单一系统采用微服务设计,DDD的帮助可能有限,因为颗粒度大小不影响这个单一系统的运作,可是当面临了一群架构的设计,而是涉及各多个不同系统,包括了中台、后台、通路的组合,因为“组合”需求,放对或放错就非常重要,DDD可在事前提供一种“这个架构设计对了”的感觉,来协助服务定标、找对位置的信心。
从读书会开始自我学习,实际落实到专案来尝试,也找来外部专家参与讨论,2020年底更把导入经验也投稿到研讨会,跟业界专家交流。颜胜豪表示:“过去只采用了DDD战略设计的部分,目前则开始尝试战术设计的方法,希望能将整个程式架构,都导入DDD方法论来切割。”
国泰DDD导入一方面导入方法论,同时展开从车险展开第一个导入实作。张维仁期待,经过几次实作尝试,就可建立信任度,找出服务正确切割,安排到正确位置的一套方法,“国泰已经有了第一步的顺利尝试,后续还要用更多专案来验证。”
相关文章
YouTube更新违反规定政策,提升惩处透明度和一致性2023-12-31 14:00:52
传苹果将把中国iCloud正式交给本地化经营 苹果手机icloud换区存储操作2023-12-27 18:34:43
刘德华代言什么手机?刘德华成华为Mate 60 RS非凡大师华为5G新手机代言人2023-09-26 21:55:08
WebOS新系统:Palm Pre手机最新款高价登港2023-06-23 15:39:14
帮助企业组织对抗勒索软件,资安通报机构设立防护专区,可协助事前、事中与事后因应2023-06-22 09:36:10
蔚来全系产品降价3万 取消免费换电 换一次电池180元2023-06-12 17:27:49
电商平台三巨头开打最大规模折扣 价格战再次打响2023-03-05 18:58:40
爱立信节省成本裁员四千人 爱立信全球员工总数五分之一2023-02-24 22:27:29
蜜芽关停近况,八位数重金买三字顶级新域名mia.com也关闭2023-02-23 16:18:14
联想CEO杨元庆:联想集团需要裁员32%削减部分业务支出2023-02-18 12:45:25
蓝色光标2022营收亏损18亿 客户预算减少明显2023-02-18 12:40:08
三星工厂或将80%生产转至越南 因本地劳动力成本上升2023-02-17 23:09:16
香港八达通卡如何激活?没用失效过期余额怎么办2023-02-17 18:34:51
中兴通讯被曝将裁员20% 称只裁国外的2023-02-17 18:33:26
苹果新iPhone15Pro手机终于改用USB-C(火牛)数据线??Lightning充电接口退出2023-02-17 16:57:22
突发!蓝色光标曾为中国民企500强龙头 如今业绩亏损断崖下跌2023-02-16 14:31:19
三星发布自家carplay车载中控系统 Car Mode for Galaxy 可以连接carplay吗?2023-02-14 00:53:17
Opera浏览器宣布集成ChatGPT 一键生成网页内容摘要2023-02-14 00:32:08
谷歌google计划重返进入中国市场?但结果可能令你失望2023-02-13 16:57:15
Zoom紧急裁员1300人 佔员工总数15%2023-02-08 14:59:11
最新资讯
炒港股要补交多少税?我也接到催交补税特别行动的电话了2025-07-23 17:36:43
淘宝天猫仅退款属于诈骗吗?淘宝天猫开始部分取消仅退款2024-10-01 13:01:28
哈啰app借钱|哈啰借钱app下载安装免费小小上当和电话骚扰2024-10-01 11:22:38
白嫖党|山西大同大学学生网购申请“仅退款”被拒骂客服一小时2024-09-27 09:10:44
北大数学教授袁新意《姜萍事件的疑点分析》点评姜萍板书 阿里巴巴竞赛受质疑2024-06-28 10:07:40
手机
中国11月手机出货量增34% 5G手机出货量2709.2万部2023-12-28 19:27:57
荣耀发布新一代旗舰荣耀Magic5系列,新款上市价格分期0首付3999元起2023-03-06 16:12:32
美国商务部指违禁,长江存储被美国拜登制裁名单面临停工裁员2023-02-17 18:41:53
苹果Apple iOS车载系统CarPlay支持哪些更多汽车品牌2023-02-02 17:33:27
香港去哪买三星手机回来吗? 买香港便宜售价手机市场地点和网站2023-02-02 11:03:11
数码
华为5G芯片正式亮相:预示华为将发首款5G手机2023-08-31 13:22:33
腾讯传计划放弃虚拟现实VR硬件计划2023-02-17 23:32:30
三星手机份额大跌!三星手机中国市场份额变化国内仅剩3%2023-02-01 17:06:15
三星手机份额大跌在中国没市场了!国内市场占有率仅剩1%国外比苹果销量高2023-02-01 16:59:53
vivo发布2022 vivoNEX手机极简易浏览器下载:简洁流畅无广告!2022-12-02 17:29:30
科技
B站怎么炸崩了哔哩哔哩服务器今日怎么又炸挂了?技术团队公开早先原因2023-03-06 19:05:55
苹果iPhoneXS/XR手机电池容量续航最强?答案揭晓2023-02-19 15:09:54
华为荣耀两款机型起内讧:荣耀Play官方价格同价同配该如何选?2023-02-17 23:21:27
google谷歌原生系统Pixel3 XL/4/5/6 pro手机价格:刘海屏设计顶配版曾卖6900元2023-02-17 18:58:09
科大讯飞同传同声翻译软件造假 浮夸不能只罚酒三杯2023-02-17 18:46:15