如何落地业务建模

如何落地业务建模 / Thoughtworks CTO带你重构建模技能

徐昊

Thoughtworks中国区CTO

  • 课程目录
  • 课程介绍
  • 开篇词|为什么你需要学习业务建模?

    业务建模首先是一个定义问题的方法,其次才是解决问题的方法。通过定义问题,甚至可以把解决方案的复杂度直接降低几个数量级。

  • 01|领域驱动设计到底在讲什么?

    在DDD中,Eric提倡用“知识消化”法来提炼领域模型。如今产生的很多提炼领域模型的方法,宏观上仍遵从知识消化的步骤。

  • 02|统一语言是必要的吗?

    虽然在理想中,我们希望直接使用模型作为统一语言。但从实际出发,直接使用模型的效果并不好。所以我们仍然需要统一语言。

  • 03|我们要怎么理解领域驱动设计?

    知识消化以一种权责明确的方式,让业务方与技术方参与到对方的工作中。同时也在整体上,给予了双方一种更好的协同方式。

  • 04|跨越现实的障碍(上):要性能还是要模型?

    关联对象是一种古老的设计/分析模式,使用它建模领域驱动设计中的聚合与关联关系,可以解决领域模型中对技术组件的封装问题。

  • 05|跨越现实的障碍(中):富含知识还是代码坏味道?

    将过载的上下文进行有效的分离,是我们现在需要面对的问题。方法上也有很多不同的选择,我主要介绍角色对象和上下文对象两种。

  • 06 | 跨越现实的障碍(下):架构分层就对了吗?

    分层架构的问题就在于如何处理领域层与基础设施层的关系上,所以我们应该重新思考分层架构是否正确,以及怎么分才更合理。

  • 07|统一语言可以是领域模型本身吗?

    我们能通过不同的建模范型,将领域模型本身当作统一语言吗?答案是肯定的,其中最关键的就是如何将隐藏在模型中的业务维度展开。

  • 08 | 什么办法可以在讨论中自然形成统一语言?

    事件建模法作为一类方法的共同性质,也就是通过事件表示行为,再根据事件顺序去组织业务逻辑。

  • 09|怎么才能更有效地获得事件流?

    我收到过很多对四色法的反馈,其中最多的声音,就是建模建出了职业经理人的感觉。因为它更容易从纯业务角度说服业务方采纳模型。

  • 10 | 将模型实现为RESTful API(上)

    通过领域模型驱动获得API的设计,是一种非常自然的选择。

  • 11|将模型实现为RESTful API(下)

    RESTful API是指符合REST架构风格的API设计。

  • 说点题外话01|好耦和与坏耦和

    学习的目的,是改变我们的行为和思维。

  • 说点题外话02|模式并不是解决方案

    是否能从解决方案反推它要解决的问题,以判断使用了什么模式呢?

  • 说点题外话03|银弹可以杀死狼人,但你怎么知道狼人不是你呢?

    盲目追求将附属性工作比例提高,而忽略本质性工作,这不是银弹。

  • 说点题外话04|面向对象的原则适用于RESTful API吗?

    迪米特法则本身的想法是不错的,但是场景改变了,我们就要重新思考它在新的环境中是如何被应用的。

  • 12|云时代的挑战(上):弹性边界还是业务边界?

    当我们要利用云平台架构软件时,寻找合理的弹性边界是最重要的。

  • 13|云时代的挑战(下):如何保持弹性边界的独立性?

    除了弹性边界外,我们还需要考虑流量的传播,以及在弹性边界间造成的依赖关系,最优化地利用云平台的能力。

  • 14 | 8X Flow(上):何为业务?何为领域?

    8X Flow注重通过权责关系,提取业务模式;并通过引入变化点构建可复用的业务模型。所以对于业务平台或业务中台这类系统来说,8X Flow可谓是量身定制。

  • 15|8X Flow(中):如何通过模型发现业务系统的变化点?

    领域驱动设计就是天真的谎言。因为它所畅想的美好的复用方式,大多源自技术领域的领域系统,并且不假思索地将这种复用模式推广到业务系统,而忽略了业务系统的运营特定性与领域中立性。

  • 16|8X Flow(下):多于一个例子

    归根结底一句话,不要把技术当大聪明,不要从技术解决方案上去定义业务问题,要回到业务本身,去理解业务问题。

  • 17|中台建模(上):到底什么是中台?

    我个人认为,中台是一种源自中国市场的、特有的、基于云平台的平台架构模式,并且它的出发点完全不是技术基建,而是寻找更好的组织结构和技术架构,以支持业务快速增长和发展。

  • 18|中台建模(下):如何寻找可复用的业务模式?

    对于业务模式的建模难点主要在于寻找合理的抽象程度。业务模式中既有泛化的概念,也有具体的实体。如果泛化概念不够,业务模式就会退化为具体的业务功能;如果泛化概念太多,则易引起过度抽象,丧失业务模式的价值。

  • 19|如何将模型实现为微服务?

    在我看来,行业内做伪微服务的人多,而做真微服务的人少。很多问题不值得去解决,因为没有将问题定义清楚。而一旦明白什么是真微服务,大多问题都变得不言自明。

  • 20|云时代的下一站:SaaS化与魔球建模法

    无论是微服务还是云时代,下一站都会是SaaS化。当SaaS化成为默认的运营和架构风格,我们就进入了云时代的下一章。在下一章,不仅是业务建模,产品化设计、产品化运维、服务消费体验、生态体验都将进入我们的视野。

  • 结课测试题|这些业务建模知识你都掌握了吗?

    《如何落地业务建模》结课了,来做一个小测试吧!

  • 结束语|吃喝玩乐如何让我成为更好的程序员?

    学习是一种状态(being),而不是一种行为(doing)。在学习的状态中,吃喝玩乐也可以让我成为更好的程序员。与诸君共勉,就此别过,他日江湖再见!

  • 用户故事01|知瑕:如何通过刻意练习,掌握建模方法?

    建模是一门技艺,所以我的看法是,需要通过大量的、不断的刻意练习,才能把这门技艺练会。

  • 编辑手记01|写给专栏读者的一封小信

    相比“分析-思考-改变”这种理性的变革模式,“目睹-感受-改变”则是驱使行为改变的更为有效的办法,其中“感受”是更为重要的一环。

【交流群入群口】

订阅专栏后,点击此处入群,与同行一起交流学习

你将获得

  • 洞悉建模设计的本质和目的
  • 全套业务建模思维指导性训练
  • 微服务、中台建模方法及最佳实践
  • 构造SaaS化服务的全新方法论

讲师介绍

徐昊(八叉),Thoughtworks全球技术策略顾问、中国区首席技术官(CTO),Thoughtworks技术雷达编撰人,谈话节目“八叉说”作者。

他同时也是北京Java用户组(Beijing Java User Group,简称BJUG)和 Agile China的主要创始人之一。

他曾主持ThoughtWorks中国区技术特种兵小巨人管培计划,为行业输送了多位技术带头人。近年提炼了大规模工程实践方法SEELE,以进一步提升研发团队的工作效能。

徐昊在业务建模上也有深刻的洞见。由他发明的8X Flow业务建模法,可以用来解决以微服务、分布式事务为主导的架构风格中的业务建模问题,以及构建中台系统,也是目前ThoughtWorks用于中台建模的主要方法。

他还根据Peter Coad的彩色建模演化出了四色建模法,以保证模型能够支持企业的运营。同时,他还发明了魔球服务建模法,用以构造SaaS化服务。

除了技术以外,他还是国际上颇有名望的古典吉他制琴师与收藏家。在他看来,制琴让他成为了一名更好的程序员。

课程介绍

说起业务建模,我们很多人可能不知道这个东西到底有什么用,毕竟面试也很少会被问到,对平时写代码也没有什么直接的帮助。

确实,业务建模是一项软技能,不会像其他的硬性技术那样让你直呼很爽。但是,具备良好的业务建模能力,会在认知层面影响你对业务、代码等方面的理解。

因为业务建模首先是一个定义问题的方法,其次才是解决问题的方法。而我们通过定义问题,甚至可以把解决方案的复杂度直接降低几个数量级

有了这方面的理解,你就可以成为能给出更合理的问题解决方案的架构师,而不是一个只会倒腾各种技术方案的程序员,进而不断提高自己的职业发展天花板。

不过,在业务建模的学习上,很多人是一团乱麻,不知道该从哪里入手。归根到底,业务建模真正的学习难点有两个。

难点一:如何清晰定义业务问题,并让所有人接受?

学习业务建模,对我们的挑战不仅是建模本身,而在于如何获取业务方的信任,并展开有效讨论。关于这一问题,大部分的建模教程都不怎么涉及,但这却是能否有效应用业务建模方法的关键。

难点二:如何在特定架构的约束下实现模型?

在学习建模方法时,我们往往会不自觉地忽略架构对模型的影响。于是就会出现这样一种情况:学会了一种方法,却因为不知道怎么处理架构约束,而无法将其应用到工作中。

所以我们特意邀请了ThoughtWorks 全球技术策略顾问、中国区CTO徐昊,来帮助你解决学习业务建模中的难题。他会将纷繁复杂的业务建模知识,融汇贯通成一个整体的架构,帮你建立起对业务建模的整体认知,切实提高你的建模能力。相信通过学习,你会感受到业务建模所蕴含的价值和力量。

老师会以问题为导向,结合案例,帮助你快速掌握在单体分层架构下,业务建模的最佳实践和实现模式。同时也会讲解由自己发明的8X Flow建模法,教你如何将模型映射为微服务,以及构建中台。

而课程的最高阶目标,就是让你在大量的实例锻炼中,掌握抽取业务逻辑、推导有效模型的思维方式,将模型真正应用到实际工作中,解决你的建模难题。

课程设计

课程主体分为两大模块。

旧约:前云时代的领域驱动设计

在“旧约”部分,老师会总结并提炼领域驱动设计的核心逻辑和步骤梳理领域驱动设计在模型实现上遇到挑战时,有哪些具体应对策略。同时,还会深入讲解四种建模方法,包括:催化剂法、角色-目标-实体法、事件风暴和四色法。

相信通过实战锻炼,你会高效掌握在单体分层架构下,业务建模的最佳实践及实现模式,并形成自己的知识结构。再遇到类似场景,就可以举一反三,灵活运用。

新约:云时代的业务建模

在“新约”部分,老师会深入讲解由自己发明的8X Flow法,以及用于SaaS化服务的魔球服务法。前者用于解决以微服务、分布式事务为主导的架构风格中的业务建模问题,构建中台系统;后者会从运营角度出发,构造SaaS化服务。

而这些,完全可以满足你在更云化的架构风格下进行业务建模的诉求,让你从容应对云时代的业务建模难题。

课程目录

特别放送

免费领取福利

限时活动推荐

订阅须知

相关教程

Learnfk - Perl教程

Learnfk - Apache POI教程

Learnfk - Arduino教程

Learnfk - PL/SQL教程

Learnfk - Flask教程

Learnfk - Xpath教程

随机推荐

奥克斯茶吧机家用多功能智能遥控温热型立式饮水机入手评测到底要...

华亚杠铃杆抓举举重杆曲直杆奥杆使用两个月反馈!性能评测

斐纳扫地机器人智能家用吸尘器哪个值得买!评测好不好用

菲莱仕单筒望远镜高倍高清微光夜视观鸟镜演唱会儿童望远镜T19这...

齐心Comix12支装评测下来告诉你坑不坑,只选对的不选贵的

佳佰鞋拔子来看看图文评测!评测质量好吗