【经典设计】构建业务架构的3大视图

在软件设计过程中,架构设计、功能设计和数据设计是三个不同层次的设计工作。而业务架构是系统整体规划中重要的基础工作,通常用业务架构图来表达业务架构。

业务架构定义了企业的治理结构、业务能力、业务流程、业务数据。业务能力说明企业做什么,业务流程说明企业怎么做。

业务架构是企业治理结构、商业能力与价值流的正式设计蓝图。

业务架构图如何表达业务架构?  

在非软件行业中(如制造业、建筑业务等),传递设计意图、加工制造的依据都用设计图纸。

如:

建筑行业,设计师使用最多的是“建筑三视图”。分别为:

  • 平面图

  • 立面图

  • 剖面图

而软件行业的业务设计,也有类似的3视图,即:

  • 框架图:表达了对业务内容的体规划、范围、分区、区域之间的关系;

  • 分解图:表达了对架构图中的某个区域内容的静态分解关系;

  • 流程图:表达了对分解图中的某些活动之间的流程关系;

业务架构图从静态(框架、分解)、动态(流程)两种视角,通过表达要素间的关联关系(箭头、位置、包含)来说明业务特征;

在业务架构图中,描绘的是抽象的“事物”,不可触摸、不直观,所以表达的图形也是抽象的。用逻辑模型给企业的业务“画像”,让看不见的企业管理对象(如:营销管理、物流管理、经费报销等)可以变得能“看见”。

判断正确与否的依据是业务事理、逻辑关系、规则约束等;

框架图  

框架图,用于对研究对象进行规划,确定范围、内容、分区与边界、分区间的关系等。

框架图是业务架构三视图中的第一图,框架图对系统有一个整体的认识和把握。框架图通常被用来做架构图中的顶层规划、架构总图。

框架图用于对研究对象进行全面、局部的规划。系统开发中如果没有框架图作为总体规划,就象在看没有目录的书,找不到路线。

以企业的业务功能规划为例,框架图模型的表达有6个要素:

  1. 范围:框架图由3个区域构成,给出了全部的业务范围

    由区域①、②、③组成。

2. 区域:每个区域有主要的任务目标

   ①=主营业务、②=辅营业务、③=支持业务。

3.模块:每个区域内有若干个模块,每个模块的任务不同。

  以“主营业务”区域为例,其内部又划分为四个:领域,①-1=销售、①-2= 生产、①-3=采购、①-4=物流。

4.边界:每个区域、模块的背景框给出了领域的边界;

5.位置:由上下、中间与边缘的位置关系,可以看出主营、辅营与支持区域之间的关系,

  • 主营区:三个区域的中心位置心

  • 辅营区:是主营业务的基础

  • 支持区:是对主、辅营的支持工作

6.粒度:主营业务、辅营业务和支持业务,这三个区的粒度是相同的。

框架图不用“关联线”,是用相对的“位置”、“背景框”来表达它们之间的逻辑关系。“区域”就相当于“系统”、“子系统”、“模块”等。

模型制作

框架图的表达不拘泥于细节,是粗粒度的表达方式。画框架图,看似内容最少、粒度最粗、最简单,但却是最难绘制的。因为绘制框架图,必须要有全局观念。

1)核心位置的概念

架构图与设计软件的界面一样,通常以图的左上角为“上”,构图时,除了中心位置,一般最重要的内容放在左上角位置。

框架图是将要素进行规划、进一步分类的主要手段,框架图有容易观察、推敲、调整的特点。常见有5种分区方式(“★”为中心位置)。

“分区”是框架图设计最重要的步骤,要确定不同功能的区域、边界。分区的原则:

区的划分要遵循“一个区,一个目标”的原则;

  1. 同一区域内的功能要“高内聚”,区内各个功能都为完成同一个目标而存在。同时该区域内包括的成分紧密相连、缺一不可;

  2. 不同区域间要“低耦合”,当框架图的各个部分在外部的需求发生变化时,可以容易地进行调整,删除或是增加;

  3. 同一区域内各个要素的粒度要一致,如:都是子系统、或都是模块;

分解图  

分解图是对研究对象的有序分离、对细粒度要素的有序归集。

分解图是业务架构的第2张图,其目的包括:

1.自上而下的“分解”

2.自下而上的“汇集”

分解、汇总都是从上向下绘制的,因此统称为“分解图”。分解图可以给出研究对象内部要素间更细节的从属关系,是细粒度的表达方式。

任何可以进行拆分的对象,都可以绘制分解图。比如:

  • 功能:系统→子系统→模块→功能;

  • 组织:行业→企业→部门→岗位→角色;

  • 工作:企业经营→财务→预算→报销→支付;

  • 物品:材料分类→设备分类→固定资产;

以企业的收支功能为例,分解图模型表达有6个要素

  1. 分解:从上而下将粗粒度的要素按照一定的关系逐级向下分解。

  2. 分层:在同一张分解图上,表现出3个层级,即:1层、2层、3层。

  3. 从属:主项和子项的关系,每个下层相对于上层都是子项。

  4. 分区:“分区”的表现。

  5. 关系:用关联线指出上下级之间的关系,图里没有使用带箭头的关联线,如果要强调分解的方向,可以使用带有箭头的关联线。

  6. 粒度:每一层的要素粒度必须要一致。

向下分解模型制作

分解图是对研究要素的“静态表达”,要确认你的分析结果用“分解图”表现是适用的。绘制时应按照“分层、分区、功能”的顺序来画:

1.分层:确定分层(横向)

  • 第一层是“对象”,

  • 第二层是对第一层拆分(2.1和2.2);

  • 第三层是对二层的拆分(3.1.1/3.1.2;3.2.1~3.2.1);

2.分区:确定分区(横向)

  • 分区④的构成:2.1;3.1.1和3.1.2;

  • 分区⑤的构成:2.2;3.2.1、3.2.2和3.2.3;

如果还有更下层的划分,也是重复同样的步骤,分解图用途广泛,形式多样,有横/纵向布局。

流程图  

流程是为特定目标由不同人分别协同完成的一系列活动, 活动间有严格的先后顺序,活动内容、方式、责任也都有明确的安排和界定,使不同活动在不同岗位角色之间进行流转交接。

流程图是业务架构的最后一张,也是描写业务最重要的架构图。

企业管理主要有两类流程:

  • 业务流程:业务操作的过程

  • 审批流程:对业务操作的管理

企业有规律的生产活动都是采用业务流程的方式表达的,对企业的标准化工作之一就是业务流程的标准化。

以企业的加工过程功能为例,流程图模型有6大要素

  1. 目标:每一条流程,必须要有一个明确的任务目标。

  2. 方向:用标准的图形符号表示出流程将要完成目标的方向,如:起点(s)、方向(→)、终点(e)

  3. 活动:达成目标过程中的活动、功能。

  4. 顺序:完成流程的顺序、前后关系。

  5. 分支:在那个地方会发生流程的分支

    流程从“签约”出发,根据分支条件,可以走向“设计”活动、也可以走向“采购”活动

  6. 主次:主流程和次流程,如:主流程“签约-核算”;次流程“采购”;

模型制作

流程图是对要素间相互作用关系的“动态表达”。

1.线形流程图

绘制过程:

  • 确定流程完成的目标;

  • 确定流程的起点、终点;

  • 确定完成流程所需要的活动(节点数)、顺序;

  • 确定流程中间的分歧位置、条件、规则;

流程图拓展:业务管理与流程的结合表达

对业务流程的管理控制方法进行分析,说明业务流程采取的控制方法,确定每个活动对应项目管理的过程,把业务执行过程与管控的控制点结合的流程图。

2.泳道流程图

将组织结构作为背景框与线形流程图相结合绘制泳道式流程图是最为常见的方法。

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

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

相关文章

想不到,AI爆发的趋势下,我会这么快被AI替代...

大家好,我是向阳 AI横空出世后,不少行业受到了冲击。第一批因AI失业的人,也已经出现了! 他们是游戏设计师、原画设计师、服装设计师……社交媒体上,不断能看到这样的新闻:引入AI后,某游戏公司…

<microros> 如何自定义uROS2数据类型

如何自定义数据类型 在microros中,我们可以看到,官方给我们提供了很多数据类型。 如果我们在实际使用的时候,这些类型无法满足我们的传输要求怎么办呢? 官方也提供了自定义数据类型的办法。 参考: https://github…

【活动通知 — 线上 Meetup】:ES|QL 及 B 站 Elasticsearch 平台实践 - 6 月 19 日

会议时间 2024年6月19日 19:00 — 21:00 参与方式 线上直播:Elastic 中国社区官方博客,elasticstack B 站号。链接请参考下面的报名地址。 活动议程 19:00-19:50 主题演讲:Elasticsearch 简单而高效的管道查询语言 - ES|QL 讲师&#xff…

想要提升地推效果吗?试试Xinstall数据查看功能,让您事半功倍!

在如今竞争激烈的移动互联网时代,地推作为一种直接有效的推广方式,受到了越来越多企业和品牌的青睐。然而,地推过程中产生的数据如何高效地收集、整理和分析,成为了摆在推广者面前的一大难题。Xinstall作为一款专业的App推广工具&…

AWS S3存储桶中如何下载文件

AWS S3存储桶中如何下载文件 1.单个下载 AWS S3 控制台提供了下载单个文件的功能,但是不支持直接在控制台中进行批量下载文件。您可以通过以下步骤在 AWS S3 控制台上下载单个文件:   1.1登录 AWS 管理控制台。   1.2转到 S3 服务页面。   1.3单击…

将web项目打包成electron桌面端教程(二)vue3+vite+ts

说明:我用的demo项目是vue3vitets,如果是vue2/cli就不用往下看啦,建议找找其他教程哦~下依赖npm下载不下来的,基本换成cnpm/pnpm/yarn就可以了 一、项目准备 1、自己新创建一个,这里就不过多赘述了 2、将需要打包成…

docker构建java项目镜像

资料参考 参考自黑马教程:10.Docker基础-自定义镜像_哔哩哔哩_bilibili 初步准备 打包好java项目jar包,和Dockerfile文件一起放到指定目录下,后续操作都是在该目录下操作, 我这边是:/usr/local/src/train-ticket/ …

【git】TortoiseGitPlink Fatal Error 解决方法

背景 使用 TortoiseGit报错: TortoiseGitPlink Fatal Error No supported authentication methods available (server sent: publickey) 解决方法 1、有很多是重置git的秘钥解决的 2、重置ssh工具

AI-知识库搭建(一)腾讯云向量数据库使用

一、AI知识库 将已知的问答知识,问题和答案转变成向量存储在向量数据库,在查找答案时,输入问题,将问题向量化,匹配向量库的问题,将向量相似度最高的问题筛选出来,将答案提交。 二、腾讯云向量数…

路由器设置桥接(作为网络扩展器)

下面提到的路由器都是家用路由器 一、原理图(使用交换模式,有线连接) 二、无线连接 (副路由器的无线信号 连接 主路由器的无线信号) 三、注意事项 1、路由器之前配置过怎么办? 长按重置键7秒,重置路由器 2.副路由…

python脚本打包为exe并在服务器上设置定时执行

python脚本打包为exe并在服务器上设置定时执行 1. Python脚本打包2. 将打包好的Python脚本放入服务器3. 在服务器上设置其定时执行 1. Python脚本打包 首先,下载pyinstaller 键盘winR打开终端,输入命令:pip install pyinstaller,…

谷歌的AI大变革:商业模式转型

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

界面控件DevExpress WinForms的流程图组件 - 可完美复制Visio功能(二)

DevExpress WinForms的Diagram(流程图)组件允许您复制Microsoft Visio中的许多功能,并能在下一个Windows Forms项目中引入信息丰富的图表、流程图和组织图。 P.S:DevExpress WinForms拥有180组件和UI库,能为Windows F…

【论文速读】| BIOCODER:一个具有上下文实用知识的生物信息学代码生成基准测试

本次分享论文:BIOCODER: A Benchmark for Bioinformatics Code Generation with Contextual Pragmatic Knowledge 基本信息 原文作者:Xiangru Tang, Bill Qian, Rick Gao, Jiakang Chen, Xinyun Chen, Mark Gerstein 作者单位:耶鲁大学, Go…

爬取基金收盘价并用pyecharts进行展现

爬取基金收盘价并用pyecharts进行展现 一、用到的第三方包 因为使用到了一些第三方的包,包还是比较大的如果直接从社区下载比较费劲,所以建议配置国内镜像源,这里以清华的镜像源为例。 pip config set global.index-url https://pypi.tuna…

具有 MOSFET 的电压到电流 (V-I) 转换器电路

设计说明 该单电源、低侧、V-I 转换器向可以连接到比运算放大器电源电压更高的电压的负载提供经过良好调节的电流。该 电路接受介于 0V 和 2V 之间的输入电压,将其转换为介于 0mA 和 100mA 之间的电流。通过将低侧电流检测电 阻 R3 上的压降反馈到运算放大器的反相…

十、C语言:数据存储(大端小端存储,整型、浮点型存储)

一、大端存储与小端存储 大端字节序: 数据的低位字节序内容存放在高地址处,高位字节序内容存放在低地址处 小端字节序: 数据的低位字节序内容存放在低地址处,高位字节序内容存放在高地址处 //每个地址单元对应一个字节 二、 整型存…

AI绘画如何打造高质量数据集?

遇到难题不要怕!厚德提问大佬答! 厚德提问大佬答11 你是否对AI绘画感兴趣却无从下手?是否有很多疑问却苦于没有大佬解答带你飞?从此刻开始这些问题都将迎刃而解!你感兴趣的话题,厚德云替你问,你…

鸿蒙开发教程:新手入门必看

一 开发设备要求 Windows环境运行要求: 根据华为官方文档,为了开发基于鸿蒙系统的应用,电脑的配置需求如下: 操作系统:建议至少为Windows 10 64位或Windows 11 64位版本。内存:至少需要8GB以上。硬盘空间…

使用Redis缓存实现短信登录逻辑,手机验证码缓存,用户信息缓存

引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency> 加配置 spring:redis:host: 127.0.0.1 #redis地址port: 6379 #端口password: 123456 #密码…