虽然从事企业架构的人还是少数、但是接触过企业架构的人、都知道常见的企业架构框架Zachman,TOGAF,DoDAF等、也知道企业架构中、通常是从企业的战略出发、定义并演进企业业务架构、信息架构、技术架构、架构治理等。目前最为普及的就是TOGAF的企业架构框架、最经典的就是TOGAF的ADM即架构开发方法、会指导企业架构,应该如何一步一步的构建。
ADM+Achimate
对上面的图,了解TOGAF的人都非常熟悉、但是仅通过TOGAF并不足以支撑实际架构工作、就如定义所示、TOGAF是企业架构框架、主要是定义一个完整的架构包含哪些内容,每个阶段的输入、步骤和输出,具体每个步骤如何去做、如何去建模。还需要掌握 Archimate语言及、很多工具方法、才可以让我们更好的开展企业架构的工作。
可以看到ADM是一个大而全的架构开发方法、实际工作中、可能我们面对的是一个产品线或一个产品、或者只是业务架构、信息架构、技术架构的其中一个领域、同样也是可以遵循ADM开发方法去实践的、具体使用中、对于TOGAF的裁减定制及Archimate裁减定制会帮助我们更好的去映射。
根据组织发展理论、从一个创业型组织到成熟的法人组织、还有一个过度的合作伙伴型组织,每个阶段的企业在定义和开展自己的企业架构工作中,都要结合企业当前的流程、创新环境等实际情况去开展。
有了方法、企业架构如何来衡量,这里我们就要引入企业架构的成熟度概念。从0级到5级如下
- NO PROGRAM
- INFORMAL PROGRAM
- REPEATABLE PROGRAM
- WELL-DEFINED PROGRAM
- MANAGED PROGRAM
- COUNTUNOUSLY IMPROVING PROGRAM
主要从下面几点来衡量
- 治理角色与职责
2.企业架构的开发路标以及实现
3.流程模版
4.标准和规范集合
5.交流与发布EA和详细蓝图
6.遵循发布的标准、流程和其他EA元素、文档化流程并且能够跟踪变化
7.管理流程和EA的接触点
8.整个组织对EA的支持
具体的企业架构工作实践、需要在实践中不断的探索和总结、以逐渐提高组织的企业架构成熟度。
说完了企业架构、我们来看看软件架构、软件架构根据定义可以分为两类组成派和决策派
《软件架构设计 温昱著》
组成派 软件架构= 组件+交互
决策派 软件架构 = 一组重要的决策
整个软件架构设计过程包含6个步骤
1.需求分析
2.领域建模
透过问题捕捉领域概念及概念之间的关系
3.确定关键需求
包含功能需求及非功能需求、对架构起关键作用
4.概念架构设计
1个决定、4个选型 如何划分顶级子系统、架构风格选型、开发技术选型、集成技术选型、二次开发技术选型
5.详细架构设计
从不同的视图来分析和设计、最典型的就是C4视图(语境、容器、组件、基础设施)这里建议从逻辑架构、开发架构、运行架构、物理架构、数据架构等不同的视图进行设计
6.架构验证
架构验证 是容易被遗忘的工作,像需求一样设计的架构也需要验证。因此需要基于架构,进行原型开发验证,确保架构符合设计
那么软件架构、在企业架构的位置是在哪里呢? 我认为会对应其技术架构,也就是IT技术人员熟悉的领域。
最后我们来说说中台、各种中台满天飞。我接触比较多的还是阿里的中台。中台是一种能力、是企业发展过程中,构建的应对未来业务发展不确定性的战略。之所以中台满天飞、本质上是很多企业在发展过程中、遇到了挑战、新机会抓不住、老业务在萎缩。从而寄希望于存在一个叫”中台“的银弹来帮助自己应对挑战,寻求发展。
那么关于阿里中台
image.png
image.png
阿里的中台
• 不是所有项目 ,都是中台项目
• 选择成熟的技术平台, 关注稳定性和未来
• 中台是一 把手工程,全员共识是关键
• 中台本身不能解决所有问题
• 中台是一次变革 ,避免急功近利
从阿里中台的架构可以看出、最上面是业务能力的识别和路由、其对应我们企业架构的业务架构及企业战略,再往下是阿里业务中台技术支撑平台、以ALiware中间件平台为核心,而且这一层还在不断丰富、这些都是以一种确定性应对不确定性的一些实践。
所以最后对于中台的选择和落地、每个企业都首先要想明白自己的业务、自己想要解决什么问题、绝对不是单纯的IT建设。