【软件架构】企业架构4A定义

news2024/11/23 0:26:50

文章目录

  • 前言
  • 战略、BA、DA、AA、TA五者的关系
  • 1、业务架构(BA)
  • 2、数据架构(DA)
  • 3、应用架构(AA)
  • 4、技术架构(TA)
  • 总结

前言

业务架构是跨系统的业务架构蓝图,应用架构、数据架构、技术架构是解决方案的不同方面。
多年来,全球业界已在业务架构、应用架构、数据架构、技术架构方面积累了大量经验。

近几年,数字化转型呼唤“懂行人”打通四种架构,确保技术支撑业务、业务支撑战略。

其中,文中涉及的缩写全称如下。

BA:Business Architecture,业务架构
DA:Data Architecture,数据架构
AA:Applications Architecture,应用架构
TA:Technology Architecture,技术架构

战略、BA、DA、AA、TA五者的关系

现在,我们来总览一下战略、BA、DA、AA、TA五者之间的边界与关系。如下图所示。
在这里插入图片描述

  • 首先,公司管理层是战略的提出者和总设计师。

    例如,一家大银行的全局战略规划出自何处?答:管理层是规划者,规划发展部是协助者。规划发展部持续研究行业政策方向、持续关注宏观环境变化、持续跟踪友商发力动向。

  • 其次,业务架构师是业务架构蓝图的设计师和描述者。

    例如,一个在银行的信息科技部工作的业务架构师。要研究战略、领会战略,把战略作为推动业务架构设计的原动力,定义出详细的业务架构蓝图。

  • 最后,解决方案由专业分工更细的数据架构师、应用架构师、技术架构师负责。

    例如,银行的信息科技部一般有架构办公室,部门中有专职或兼任的数据架构师、应用架构师、技术架构师,还要有专门的安全架构师。

  • 所以,战略、BA、DA、AA、TA这五者,实际位于以下三个层次上:

    • 公司战略;

    • 业务架构;

    • 方案架构。

  • 这五者的核心关系,概括为以下几点:

    • 战略是公司高层的设计,却是业务架构师的需求;

    • 业务架构师的工作是“战略进,业务架构出”;

    • 业务架构是业务架构师的设计,却是数据、应用、技术架构师的需求;

    • 环环相扣,上层驱动下层,下层支撑上层。

1、业务架构(BA)

  • 业务功能——买入股票。

  • 业务流程——由买入挂单、规则检查、上报给交易所等步骤组成。

  • 实现关系——业务流程到业务功能的箭头。

  • 业务数据——买入申报指令。

  • 业务事件——图中“交易所回报”事件会触发券商“处理成交结果”,当收市时,“当日收市”事件也会触发相应业务处理。可见,用好业务事件,有利于把“条件触发的业务场景”表达清楚。

2、数据架构(DA)

数据类型,数据模型,数据存储,数据流,数据管理

数据架构师应思考:买入股票业务流程需要哪些数据支持呢?

  • 券商的集中交易系统作为后台,首先要将委托记录排队,以备异步处理。

  • 券商App不保存“投资人账户”信息,但交易后台要保存,由证券经纪业务后台做交易规则检查。

  • 由证券经纪业务后台负责的交易规则检查,会用到投资人账户和投资人资产等数据信息,例如,账户余额不足时是不允许挂单成功的。

  • 后台存储“回报记录”数据,也是为了异步处理。

3、应用架构(AA)

应用功能,应用集成,研发管理
应用架构师应思考:买入股票业务流程需要哪些应用服务支持呢?

  • 业务流程一级的买入挂单、规则检查、上报给交易所、处理成交结果,需要IT应用服务支持,分别为挂单录入、规则检查、委托上报、接收回报、结果显示。

  • 进一步地,这些IT应用服务要由具体的应用系统来实现,分别为券商App、券商集中交易系统。

4、技术架构(TA)

技术选型,技术需求,物理选型,分布设计

技术架构师应思考:买入股票业务流程需要哪些技术组件支持呢?

  • 挂单录入、结果显示等技术,由客户端应用程序支持。

  • 规则检查、委托上报和接收回报是可重用的应用功能,可考虑实现成服务或微服务。

  • 基础设施的技术选型,由技术架构师决定。

总结

正向逻辑:战略决定业务,业务决定技术。

反向逻辑:技术支撑业务,业务支撑战略。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/786786.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

vue3+elementplus后台管理系统,实现用户登录

目录 1 创建登录页面2 验证用户身份总结 我们的后台管理系统目前已经搭好了一个初步的框架,作为后台系统必备的功能就是用户登录了。我们先问一下chatgpt,实现用户登录需要开发哪些内容。 vue3elementplus实现用户的登录 要实现用户的登录功能&#xff0…

微服务学习笔记-----Nacos安装教程(Windows和Linux版本)

Nacos安装教程 Nacos安装指南1.Windows安装1.1.下载安装包1.2.解压1.3.端口配置1.4.启动1.5.访问 2.Linux安装2.1.安装JDK2.2.上传安装包2.3.解压2.4.端口配置2.5.启动 3.Nacos的依赖 Nacos安装指南 1.Windows安装 开发阶段采用单机安装即可。 1.1.下载安装包 在Nacos的Git…

性能测试如何做?从0到1性能测试实战(手把手教)

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 什么是性能测试&a…

[Bug] ls: reading directory ‘.‘: Input/output error, Ubuntu系统某一挂载目录下数据全部消失

ls: reading directory .: Input/output error, Ubuntu系统某一挂载目录下数据全部消失 问题描述解决总结 问题描述 当天下午离开工作地点之前 启动了程序, 第二天早上来公司后发现: 工作目录/home/xxx/workspace下所有的代码文件全部消失, 然后之前运行的程序也是因为找不到代…

LeetCode[315]计算右侧小于当前元素的个数

难度:Hard 题目: 给你一个整数数组 nums ,按要求返回一个新数组 counts 。数组 counts 有该性质: counts[i] 的值是 nums[i] 右侧小于 nums[i] 的元素的数量。 示例 1: 输入:nums [5,2,6,1] 输出&#…

美团圈圈拉新10天7万佣金,是如何做到的?简单轻松易上手

科思创业汇 大家好,这里是科思创业汇,一个轻资产创业孵化平台。赚钱的方式有很多种,我希望在科思创业汇能够给你带来最快乐的那一种! 这两天,美团圆圈火了出来。 1.这个项目是什么? 三月底至四月初&…

easy弹窗默认最大化居中偏左显示问题解决

easy弹窗默认最大化居中偏左显示问题解决 0问题描述1尝试方法10弹窗加top,left 0参数11添加部分方法体 2最后解决方法3记录 0问题描述 如下图,弹窗默认最大化应该覆盖全屏幕,页面大小和屏幕大小是匹配得,但页面位置偏左了。 查看CSS发现整个…

SpringBoot整合RocketMQ 不多说直接上代码

文章目录 依赖yaml配置生产端发送消息消费端异步下单Business生产端消费端 依赖 <!--整合的依赖--> <dependency><groupId>org.apache.rocketmq</groupId><artifactId>rocketmq-spring-boot-starter</artifactId><version>2.2.2<…

基础算法-数组模拟栈

栈&#xff1a;先进后出 队列&#xff1a;先进先出 栈 例题&#xff1a; 实现一个栈&#xff0c;栈初始为空&#xff0c;支持四种操作&#xff1a; push x – 向栈顶插入一个数 x&#xff1b;pop – 从栈顶弹出一个数&#xff1b;empty – 判断栈是否为空&#xff1b;query …

正则表达式 —— Grep

文本处理三剑客&#xff1a;Grep、Sed、Awk 这三个工具都是基于对文本的内容进行增删改查的操作&#xff0c;此篇着重介绍grep与正则表达式的应用&#xff0c;以及扩展正则表达式。 正则表达式 什么是正则表达式&#xff1f; 它是由一类特殊字符以及文本字符所编写的一种模式…

【后端面经-Spring】Spring简介

【后端面经-Spring】Spring简介 1. Spring简介2. Spring模块3. Spring核心特性4. Spring的后续拓展面试模拟参考资料 1. Spring简介 Spring是为了简化java项目开发设计的一款设计层面开源框架&#xff0c;其设计目的就是为了“简化开发”。 它使用分层架构&#xff0c;解决业务…

基于Python实现种差值方法

完整资料进入【数字空间】查看——baidu搜索"writebug" 一、种差值方法的实现与问题 三种插值方法都是使用Python自己实现的。 1.1 最近邻插值 寻找每个中心点周围的八个点中有无未丢失的点&#xff0c;如果有的话就赋值为第一个找到的点&#xff0c;如果没有就扩大…

【C语言趣味教程】代码注释:小孩子才做选择,我全都要

【C语言趣味教程】(4) 变量&#xff1a;代码注释 | 变量的声明 | 初始化与赋值 | 作用域与生命周期 | 局部变量与全局变量 &#x1f517; 《C语言趣味教程》&#x1f448; 猛戳订阅&#xff01;&#xff01;&#xff01; ​—— 热门专栏《维生素C语言》的重制版 —— &#x…

MySQL的约束

目录 1.约束&#xff08;constraint&#xff09;的概述 2.约束的分类 1.约束的字段的个数: 2.约束的作用范围: 3.约束的作用/功能 3.如何添加约束 4.如何查看约束 5.非空约束&#xff08;not null&#xff09; 6.唯一性约束&#xff08;unique&#xff09; 7.主键约…

赛多利斯Sartorius天平java后端对接

业务场景 要将赛多利斯天平的数据读出来解析并且显示到对应的数字框,支持一台设备连接多种精度的天平 后端实现 通过协议解析数据,然后将数据存储 详细代码就不贴了,感兴趣的可以私聊我

区间预测 | MATLAB实现基于Bootstrap的区间预测

区间预测 | MATLAB实现基于Bootstrap的区间预测 目录 区间预测 | MATLAB实现基于Bootstrap的区间预测效果一览基本介绍模型描述程序设计参考资料 效果一览 基本介绍 区间预测 | MATLAB实现基于Bootstrap的区间预测 MATLAB实现基于Bootstrap区间预测&#xff08;完整源码和数据&…

被大厂抢着要,最终拿到20k的高薪offer

被大厂抢着要&#xff0c;各个大企业为留住自己不断给自己加薪&#xff0c;这种只在梦中见过的场景&#xff0c;真实的发生在黑马学长身上了&#xff01; 周同学&#xff0c;刚毕业后便从事的IT行业&#xff0c;但 2 年以来&#xff0c;工作一直没有什么起色&#xff0c;为了跳…

Redis高级篇(二)

Redis高级篇之多级缓存 什么是多级缓存 JVM进程缓存 Lua语法入门 实现多级缓存 缓存同步 一、什么是多级缓存 传统的缓存策略一般是请求到达Tomcat后&#xff0c;先查询Redis&#xff0c;如果未命中则查询数据库&#xff0c;如图&#xff1a; 存在下面的问题&#xff1a;…

React 框架下自己写一个braft编辑器,然后将编辑器内容展示在网页端

1.首先自己写一个编辑器 输入文字&#xff1b; 支持选择表情&#xff1b; 可添加小程序链接&#xff1b;可添加网页链接&#xff1b;并且可以编辑删除&#xff1b;效果如下 2.输入完毕后&#xff0c;点击文本输入框保存&#xff0c;将便携式内容回显&#xff0c; 渲染时…

python中——requests爬虫【中文乱码】的3种解决方法

requests是一个较为简单易用的HTTP请求库&#xff0c;是python中编写爬虫程序最基础常用的一个库。 而【中文乱码】问题&#xff0c;是最常遇到的问题&#xff0c;对于初学者来说&#xff0c;是很困恼的。 本文将详细说明&#xff0c;python中使用requests库编写爬虫程序时&…