- By test - In 战绩榜
【如何做好企业架构】
一、什么是架构?
架构的本质都是一个系统工程,设计过程就是利用整体与局部之间的关系协调和相互配合,实现总体最优的过程。
企业架构又分为业务架构、数据架构、应用架构、技术架构。业务架构影响着数据架构,同时影响着技术架构的设计。
企业架构框架:zachman、TOGAF(后续单独讲解这两个框架)
不管是什么样的架构,都是以业务为导向进行的。
二、业务架构(技术与业务的粘合剂)
业务架构是以实现企业战略为目标,规划企业整体业务能力并帮助技术人员理解、归纳业务思想和目标,从而让业务人员和技术人员处于同一目标之下。
1、业务架构的价值
业务架构的作用是为了将用户与技术紧密的绑定在一起,在系统设计中,业务往往可以从业务视角剔除技术为关注的问题或者需求,可以帮助技术人员确定业务及技术边界,明确优先级,同时傍午技术深度理解业务需求,例如业务要求的实时,业务与技术理解的实时往往是不同的,业务的实时往往是可以接受短时间内的同步例如5分钟,这对于技术实现的成本完全是不一样的。
2、业务架构的关键点
a、统一的语言(业务与技术用统一的语言进行沟通)
这代表着在系统设计之初,在需求的沟通过程中,需消除沟通歧义,业务人员常从流程、功能、价值等维度描述需求,技术人员则关注数据、逻辑、实现。统一语言通过定义明确的术语表(如“上刊”“下刊”“监播”等),使双方对业务概念达成一致认知。弥补业务与技术视角的鸿沟。他的意义在于降低沟通成本,避免因理解偏差导致的返工。
b、紧密的沟通(对产生分歧的部分进行紧密的沟通,并最终达成一致)
其核心在于消除信息差、弥合视角差异、构建共识基础,而非简单追求表面一致。针对歧义的地方,应组织专项沟通会,如跨部门会议、项目复盘会等,明确目标、时间、地点,同时建立共享信息平台,将争议性需求、技术方案、用户反馈等关键信息文档共享,消除信息差。紧密的沟通应避免深度沟通重复沟通,他的意义在于业务与技术达成共识,保证项目正常进行。
c、一致的方向(基于企业目标,为同一目标共同努力)
思考:业务架构的设计可以为系统带来怎样的改变以及好处???
三、数据架构
在企业中,数据存储与不同部门,在各个系统之间进行流转,同时产生新的数据,数据架构主要由四部分构成:
1、资产目录
用于梳理企业的数据资产,例如一个电商公司,数据资产就应分为商品、店铺、销售、用户、会员等资产数据目录,每个目录维护着不同业务类型的数据。
2、数据标准
用于指定企业数据标准,例如数据库的字符集规则,字段约束等。
3、数据模型(核心)
用于业务建立数据模型,即常说的表结构设计,这其中通常又包含了
概念模型(简单来说即确定业务关系,例如一个公司主体,公司与部门,部门与职员,各主体信息与各主体之间的关联定义)
逻辑模型(即表设计,表、列的关系,主键与外键约束,数据变更规则,例如删除数据,需同时删除关系)
物理模型(即对应的表字段的类型,长度,索引的建立,数据存储的分区存储规则等)
4、数据分布
数据分布主要是涉及到不同数据的存储及使用问题,这其中既要考虑到数据的准确性、一致性、时效性、完整性同时一般也会考虑到存储成本以及数据传输等环节。
例如日志数据可以存储于mongo中,涉及数据关联比较多的可以使用关系型数据库mysql。
思考:数据架构通常是架构设计中的重中之重,数据模型的建立通常影响系统的健壮性、扩展性、数据完全性,如何做好数据架构????
1、深度理解业务需求
2、丰富的知识储备(更好的技术选型)
3、建立完善的数据治理与安全体系(数据同步规范、数据安全规范)
4、充分考虑表的可扩展性(例如业务场景需要读写分离,合理冗余字段)
5、持续的迭代及优化(根据监控定期处理慢查询,反推数据模型上的优化)

