- 大话软件工程:需求分析与软件设计
- 李鸿君
- 2186字
- 2021-09-16 18:26:45
2.3 分离1——业务与管理
掌握了业务与管理定义、各自的特点以及分离的意义后,下面要具体考虑如何进行业务与管理的分离,分离的对象包括:要素、架构以及流程等内容。
2.3.1 要素的分离
从前面的介绍中已经知道,“业务”和“管理”各有各的门道,分离研究对象首先是要会识别“业务”和“管理”这两种要素,因为一般来说客户是不会分别讲述业务和管理的。
在了解一个企业的业务时,第一手获得的需求中“业务”和“管理”的要素通常都是混在一起的,需要将它们拆分开来,识别出哪些属于业务、哪些属于管理,分离开的业务和管理在设计时再将它们架构在一起,如图2-10所示。
图2-10 业务与管理:分离与架构
拆分的目的就是要搞清楚:
● 哪些要素是在“做事”,做事的要素构成了业务架构,做事的目的是为“生产”价值。
● 哪些要素是在“管事”,管事的要素构成了管理架构,管事的目的是为“保证”业务可以生产出预期价值。
另外,由于习惯所致,通常在提到“业务”时都不特别区分是“业务”还是“管理”,为了和一般习惯保持一致,在本书中做如下的约定,如图2-11中①、②、③所示。
图2-11 业务与管理的区分
①在泛指“业务对象、研究对象”时,对象中包含“业务和管理”的两类要素;
②在强调“业务相关的内容”时,对象中仅包含“业务要素”,简称为“业务”;
③在强调“管理相关的内容”时,对象中仅包含“管理要素”,简称为“管理”。
2.3.2 架构的分离
由于业务要素和管理要素的内容、理论、技术、标准等都不同,所以由要素构成的业务架构和管理架构的形态也不同,区别主要表现在:架构、模型及数据方面。
1.架构的分离
1)业务架构
一般来说,某类业务的处理步骤都是按照某类业务的事理、技术要求、规章制度、标准等而定的,例如,某条生产流程(业务流程)如图2-12(a)所示,只有走完规定的全部步骤从签约到交付后,该业务才算处理完成。业务架构是由业务要素、业务逻辑、架构模型组合而成的,详见设计工程各章的内容。
图2-12 业务架构与管理模型
2)管理架构
一般来说,采用何种管理方法来管控业务没有一定之规,管理的方式取决于业务形态,管理方法会因某个外部因素的变化而变化。确定管理之前必须要先给出稳定的业务形态(架构)。
管理模型是基于各种管理理论、技术、标准等建立的,例如,闭环管理(PDCA,如图2-12(b)所示)、全面质量管理(TQC)等。在信息系统中的管理架构主要是由业务架构、管理模型/管理规则等构成的,它需要与具体的业务管理规章制度相结合。详见第19章。
2.形式的区别
以PDCA循环管理模型为例,观察业务架构图形和管理架构图形的不同之处。
1)业务架构图(业务流程)
从图2-12(a)业务流程图上可以看出,流程的节点是“业务活动”,业务流程图符合架构模型中“流程模型”的标准,有流程的开始与结束、有流程分歧的判断等内容。
2)管理架构图(PDCA循环模型+业务架构)
从图2-13管理架构中可以看出,按照管理架构的规定,将管理模型上的管理规则设置到业务流程的相应节点上,这些管理规则在业务流程启动后,就会形成一个看不见的循环“架构”,对每个流程节点进行管控,这就是一个管理架构。
图2-13 管理架构
根据管理的需要,将每个管理规则(P、D、C、A)放在业务流程的不同节点上,当管理需求发生变化时管理架构图也会随着出现变化,应用A和应用B就是管理的两种不同变化结果,可以看出虽然管理的设置发生了变化,但是业务流程没有因为管理的设置变化而变化,这是因为能够影响到业务发生变化的业务标准和技术没有出现变化,这也是业务与管理分离带来的利点。
3.数据的区别
业务架构和管理架构中流动的“数据”是不同的。
(1)业务架构:是用来处理业务的,因此,业务架构上各个节点(活动)之间流动着的数据是“业务数据”。
(2)管理架构:是用来管理业务的,因此,管理架构中传递着的数据还包含“企业管理规则”(此处,将管理规则也视为一种数据)。
2.3.3 业务流程与审批流程的分离
除前面讲的分离外,还有一对重要的分离应用,即业务流程和审批流程的分离。
通常在软件工程师看来,业务流程和审批流程都是流程,都可以用一个称为“工作流”的技术进行处理,在业务&管理分离的观点来看,使用同一个技术来实现两种流程是可以的,但是将业务流程和管理流程简单地看成是同一类的“流程”则是不合适的。
从图2-14可以看出,“业务流程”和“审批流程”的目的、内容、形式及技术是不同的,业务流程和审批流程分别起着不同的作用。
图2-14 业务流程与审批流程的关系
(1)业务流程:业务处理的过程,流程上各节点的操作依据是来自于生产相关的技术、标准。
(2)审批流程:管理控制的过程,由多人判断业务流程上某个节点处理的结果是否合格,判断是否合格的依据是企业制定的相关管理规则。
业务流程上的每个节点都可以设置一条与该节点内部业务处理相关的审批流程,每条审批流程的构成与审批角色都可能不一样(审批流程遵守着不同的企业规则),因此可以看出,业务流程和审批流程不是一回事。针对同一条业务流程,可以设置若干条不同的审批流程,业务流程:审批流程=1:n(n最多可以与业务流程上的节点数相同)。
可以将审批流程看成是一个处于“黑盒状态”的管理要素(如审1~审3),审批流程是管理的一个特殊形式。如果想要深入地研究审批流程的细节,则可以展开该审批流程(如审2),让审批流程处于白盒状态,此时,审批规则、审批人、审批条件、流转条件等内容就可以表达出来了。
注:
关于黑盒/白盒的概念详见第3章。