惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google DeepMind News
Google DeepMind News
爱范儿
爱范儿
J
Java Code Geeks
L
LangChain Blog
V
V2EX
大猫的无限游戏
大猫的无限游戏
S
SegmentFault 最新的问题
博客园 - Franky
Microsoft Azure Blog
Microsoft Azure Blog
Jina AI
Jina AI
Blog — PlanetScale
Blog — PlanetScale
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
The Cloudflare Blog
博客园 - 司徒正美
B
Blog
G
Google Developers Blog
Stack Overflow Blog
Stack Overflow Blog
罗磊的独立博客
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Apple Machine Learning Research
Apple Machine Learning Research
Engineering at Meta
Engineering at Meta
MyScale Blog
MyScale Blog
有赞技术团队
有赞技术团队
Hugging Face - Blog
Hugging Face - Blog

博客园 - 温森特

企业应用架构研究系列十三:整合EFCore&Dapper 通用ORM框架EFDapper 企业应用架构研究系列二十四:SQL Server 数据库调优之XEvent 探查器 企业应用架构研究系列二十五:IdentityServer4 认证服务搭建 企业应用架构研究系列十二:网络模型与网络协议 企业应用架构研究系列二十三:微服务之程序网关YARP 企业应用架构研究系列二十六:信号量SemaphoreSlim与Semaphore 企业应用架构研究系列二十八:身份认证 Beginning Out With IdentityServer4 企业应用架构研究系列二十七:Vue3.0 之环境的搭建与Vue Antd Admin探索 企业应用架构研究系列五:极限编程(XP)& 敏捷管理(Scrum) 企业应用架构研究系列二十:创建&发布Docker 企业应用架构研究系列十九:Docker开发环境 前端NEXT实践系列:(一)ECMAScript 6.0技术栈 企业应用架构研究系列三:应用系统集成 企业应用架构研究系列二:MSF&Scrum 项目管理 .NET Standard 跨平台支持的实践 Azure技术系列之Redis篇---第一章数据缓存 MERGE MOSS 2013研究系列---修改默认Logo MOSS 2013研究系列---隐藏Ribbon
企业应用架构研究系列一:业务拆分
温森特 · 2022-03-22 · via 博客园 - 温森特

企业应用架构研究系列一:业务拆分

2022-03-22 09:09  温森特  阅读(1056)  评论()    收藏  举报

  现代软件开发和以前的软件开发有很大的不同,以前软件一般都会根据业务流程,设计程序的入口和程序的出口,即软件耦合性很强。随着软件技术的不断发展和DDD领域设计模型的不断深入研究,在微服务化开发框架的大力推广下,Docker技术和K8s 技术的普及,新一代的企业应用架构再次革新了软件行业。

  无论是软件开发者还是应用架构者,我认为只是一个工作角色而已,没有必要分的太清晰,作为软件行业从业者,大家都应该具备软件的设计架构理念。最近深读了《Microsoft.NET企业级应用架构设计》和《企业应用架构模式》这两本书,还是启迪很深,特别是开头这句话“完美的设计不是保罗万象无所不有,而是完整自洽不可精简”。

  开启企业应用架构之旅,首先我们需要有一个专门的架构描述语言工具,就是UML 统一建模语言,这个是也是软件设计领域被国际公认的标准。后期我会单独抽出一个章节进行UML建模语言的Knowledge Discovery(探索)。本章之谈谈企业应用架构中对业务拆分的理解。

  首先进行分功能分解,分解的原则就是,符合通用开放-关闭原则 , 将每个业务逻辑模型进行封装,关闭对该业务的所有业务数据的操作,开放关联接口或服务。通俗点讲,就是我的地盘我管,不允许非授权操作我的数据和业务,所有操作统一接口。

  

  每个业务领域里面,以应用的控制为中心,对业务的活动记录和业务实体的属性进行不断的操作,而这些操作都是基于业务模块里面定义好的规则进行,这种逻辑有着严格的控制,而且这些控制又不依赖外部影响。就是自己的逻辑故事自己来撰写,同时业务模型对外提供标准的操作说明,而这些操作由 单独的关联映射去管理。这样就可以将自己领域内的事情自己来维护。关联映射部分,就是负责协调对外的承诺,自己内部无论怎么调整,我对外的承认或关联不会变。

  业务领域拆分,就是把一个生态环境拆分若干模块,业务生态是千变万化的,是不断发展和演变,每天的故事都是不一样的。而拆分的业务领域模型,就是一个工厂,工厂内的机器控制产品的装配,产品的包装,产品的质检,工厂生产环节不关心外部的事情,外部的事情都由工厂的对外经营负责,自己站好自己的岗。

  总结一下,封装了领域内的故事,开放对外的承诺,专业的事情由专业的模块处理。业务拆分达到这个目标,就能在整个企业应用架构中保持稳定的架构模型。

您的支持,我的动力!