1.1 流程和业务流程概念辨析

业务流程建模标注(Business Process Modeling Notation,BPMN)对业务流程的定义是:一个业务流程由为了配合一个组织性或技术性环境而开展的一系列活动组成。这些活动共同实现一个业务目标。(A business process consists of a set of activities that are performed in coordination in an organizational and technical environment. These activities jointly realize a business goal.)

业务流程再造最有名的倡导者托马斯·H.达文波特对流程和业务流程的如下定义被广泛引用:

流程是一组结构化且可度量的活动,旨在为特定客户或市场产生特定输出。它强调了如何在组织内完成工作。(A process is a structured,measured set of activities designed to produce a specified output for a particular customer or market. It implies a strong emphasis on how work is done within an organization.)

业务流程是“为实现已定义的业务结果而执行的一系列逻辑上相互关联的任务”。(Business process is defined as“a set of logically related tasks performed to achieve a defined business outcome”.)

“流程”和“业务流程”是不是一回事?我们先来咬文嚼字一下。

先说“流程”,一般认为这个词来自英文单词process,而这个英文单词的词源是拉丁语processus或processioat,拉丁语含义是指一个已完成的事情所执行过的动作,及其完成的方式。因此,流程是一组相互关联的任务和活动的集合,这些任务和活动是响应流程的使用者为实现特定结果的事件而启动的。流程在我们身边无处不在,它是所有涉及时间、空间和运动等概念的行为的基础。

process这个英文词常被翻译成“过程”,在使用网易有道或者百度翻译等翻译软件把process翻译成中文时,“流程”和“过程”是被混用的,这常给读者带来困扰。20世纪90年代“业务流程”这个词在中国还未开始流行时,在企业管理领域里很流行的业务流程改进标准和质量管理体系ISO 9000就把process叫作“过程”。这个叫法一直流传至今,直到今天在中国质量管理界还习惯将process叫作“过程”而非“流程”。

流程这个词用在企业管理语境里,最早是制造企业为了描述作业规范和岗位协作而产生的,其含义与另一个中文词“制造工艺”接近。化工业等没有物理变形的连续性制造的行业被称为process industry,常被翻译成“流程工业”,以示与机械行业这样有物理变形的“离散制造”行业的区别。对制造工艺(即制造过程中使用的设备、步骤顺序、加工参数等)的开发设计,在流程工业里常被叫作“过程工程”(process engineering),也有叫“工艺工程”的,化工厂的生产线控制系统称为process control system,即“过程控制系统”或“工艺控制系统”,也有些叫作“流程控制系统”,离散制造型企业的“工艺规划”也是来自英文process planning。这些词中process的含义和业务流程中“流程”的含义有些微差别。在上述语境里,中文的流程、过程、工艺等意思其实是一样的。

另外,英文里有很多和process意思接近的词,翻译成中文时经常和“流程”混用。在组织业务运营的具体任务执行中,一连串的标准化动作和规定操作程序,例如麦当劳餐厅服务员炸薯条、做汉堡的过程,叫“标准操作规程”(Standard Operating Procedure,SOP),这里的P代表procedure,它算不算流程呢?很多管理学者和经理人把SOP也归为流程的一种类型,即任务级的流程,SOP通常用文档而不用流程图的形式表达;不过,实际在中文应用中“规程”和“流程”常是混用的,没有很严格地区分。另外一个经常产生混淆的名词是“流”(flow),中文“流”和“流程”字面上相近,也常混用。在business process这个词组没被发明前,第二次世界大战前后,欧美制造业的工业工程专家们就发明了描绘工作过程的图表,被称为“流图”(flow chart),即现在的流程图的前身,“流程图”和“流图”两个词在实际使用中也没有严格区分。流的另一个组词是“工作流”(workflow),工作流是业务流程数字化在执行层级的实施方式,可以认为它是一个IT系统。可以说,“流”是“流程”的一种表达和实现方式。

“业务流程”在“流程”前加了“业务”二字,这里的“业务”来自英文business,“业务流程”通常对应于英文business process。英文词组business process产生于何时也不太可考,我的观察是“流程”这个词自20世纪40年代制造业的工作简化、标准化以来开始普及,而“业务流程”作为一个企业级管理名词被广泛接受和传播则是从20世纪80年代末的“业务流程再造”开始的。business这个词在英文里有“生意、业务、公务、商业、公司”等多个含义,不同语境下的business,在中文翻译中经常产生歧义,例如2000年前后IBM的宣传口号说企业信息技术应用的战略方向是e-business,这个词在大众传播时的官方翻译是“电子商务”,这和意指在网上卖东西的线上零售的“电商”或“电子商务”(e-commerce)之间产生了广泛的误会。实际上,IBM用的是e-business这个词的本义“企业数字化”,business代表企业,不仅指卖东西、做生意,也包括企业内部的财务管理等活动,就相当于今天人们说的“数字化转型”。

如果把business process翻译成“生意过程”,可能会把很多人搞懵。当“process”前加上了business时,business这个词在这个语境里的本义究竟是指公司里的事务,即“业务”,还是指公司本身呢?是不是把“业务流程”翻译成“公司流程”,更能代表30多年前托马斯·H.达文波特等人在发明业务流程再造(BPR)这个词时,强调公司级而非职能级的变革的本意?

今天,业务流程这个词已经流传甚广,其微妙含义却有诸多混淆,我们来正本清源:business process(业务流程)指的是企业内相互连接的核心任务和活动,这些任务和活动可以分类和分组,如管理类、运营类、支持类。在管理语境下,说到“业务流程”这个词时就包含了三层意思的集合。

1.宏观层

对企业等组织的存在形态的抽象描述,用来说明其业务运行的操作集。例如企业涉及研发、制造、交付、营销、服务、财务等业务,或者营销部门涉及产品规划、渠道开发、品牌宣传等业务。这个抽象模型通常被称为“价值链”,即“企业价值链”或“营销价值链”。价值链是企业衔接业务战略和组织运行的结构性设计。

2.中观层

对宏观层业务操作集中的每项业务进行的逐一展开的详细描述。这样的描述通常用可视化的业务流程图(即前文说的“流图”)来说明,例如事件驱动流程链(Event-driven Process Chain,EPC)、BPMN等都是画业务流程图的标记规范。中观层的业务流程可以按流程、子流程来进行详细度嵌套,这个抽象模型就叫“流程”(process),可以对应到前文说的“流程”这个词的概念。对一个流程内容的文本描述,应该包含代表组织角色的代词、代表对象的名词、代表活动或任务的动词、代表状态的形容词,例如,“张三审批了订单,订单被审批通过”。

3.微观层

对中观层的活动或任务所拆解到的最细层面,也是整个业务流程里最小颗粒度的信息记录。在对最小颗粒度的名词定义上,不同的流程理论流派会采用不同的词语,有些叫职能(function),有些叫活动(activity),有些叫任务(task),还有些叫步骤(step)、操作(operation)、事务(transaction)等。不同语境下常有概念混淆,一般来说“职能”和“活动”的意思比较接近,而“任务”是比“活动”和“职能”更细一级颗粒度的动作。例如“把大象放进冰箱里”叫活动,而“打开冰箱门”“把大象放进去”“关上冰箱门”则叫任务;或者“通知客户”叫活动,而“打电话通知”“发微信通知”则叫任务。微观的业务流程可以用EPC、BPMN等结构化信息的标记规范来表达,但由于拆解到最小颗粒度的可视化流程可能已经很难阅读了,所以用文本、图片等非结构化信息的文档来表达可能更便于开发和使用。

综上所述,在严格意义上“业务流程”这个词相对公认的定义是“价值链+流程+任务”的集合。这就是“流程”和“业务流程”这两个词的概念区别——“流程”是“业务流程”的一个部分。不过,在实际表达中,“流程”和“业务流程”经常没有太严谨的区分,至少在口头表达上是经常混用的。

在一些中国公司的管理语境里,这两个词之间有细微差别,同时,这些语境下“流程”“业务流程”等所表达的意思,又和主流的业务流程管理理论里的意思有所区别。例如,一些管理培训讲师将岗位职责或者SOP叫作“业务流程”;又如,很多中国公司习惯将办公自动化(OA)中的审批流称为“流程”。有一派国内理论将采购到支付、生产计划等业务运营过程称为“业务流程”,而将审批流称为“管理流程”,以示和他们说的“业务流程”相对应。请注意,他们说的“管理流程”和流程分类里说的“管理流程”又是完全不同的概念。表达上的混乱常造成沟通误会,例如“流程挖掘”(process mining)常被误解为针对审批流程的发现,而不是针对业务活动的发现,当你给对方解释清楚“流程挖掘”的含义的时候,对方会说,你这个不叫“流程挖掘”,而应该叫“业务流程挖掘”,可是英文里还真没有“business process mining”这种表达方式。

在辨析了“流程”和“业务流程”的字面意思及其在企业管理语境里的常用含义后,为了叙述方便,同时符合读者的语言理解习惯,本书后文对这两个词不做刻意的区分,如无特殊说明,两个词可以互换使用。

我们再从本体论的角度,对构成流程的要素做个深入描述,在工程化流程建模方法里,还可以对这些要素做进一步的模型细化。

●流程分类和分级:根据流程抽象的颗粒度以及流程所属的业务领域来组合,可分为流程域(流程类)、流程组、步骤等概念。每个流程步骤是一个工作单元,由一个或多个流程角色在一组规则的约束下执行活动或任务,这些参与者更改一个或多个资源或企业对象的状态,以创建某个期望的输出。

●活动和任务:指一个实际的操作过程,对于一项输入,通过执行本过程,可以形成该输入的状态变化。这个过程涉及监督或完成与其他参与者的交互,根据知识、判断、经验和本能做出复杂的决策。

●事件(event):事件是触发流程和活动产生或结束的机制,只有能够识别流程的事件触发机制,才能描述清楚一个流程。触发事件可分为三类:一是行动性事件,当个人或组织出于某种原因决定做某事时,就会触发流程,例如客户决定下订单、经理决定需要雇用新员工等,你不能提前准确地预测该事件何时会发生;二是时间性事件,当到了某个预设的日期或时间,就会触发某个流程,例如设备定期维修、算薪发薪、月末结账、库存盘点等,与另外两类事件不同,时间性事件是可以预知的;三是条件性事件,对业务活动进行监测,一旦达到某种条件或者符合某个规则时,就触发相应的流程,例如股票价格达到预定的水平,触发买入或卖出流程,设备运行出现故障,触发维修流程等。不仅流程由事件开始和收尾,流程中的活动与事件也总是交替出现的,这是EPC描述流程的原理。

●流程流:根据流程的输入和输出状态的顺序、序列和进展,定义执行流程的流程流。

●流程路径(path):流程中活动的连接走向,通向一个子流程。

●流程规则(rules)和关口(gateway):在流程中定义或限制工作的某些特性,解析为“或”“与”“非”等逻辑判断,确定流程的走向;根据表达的条件和流程规则,在关口决定流程的分叉或者合并。

●流程绩效:企业评估流程或活动在特性、质量、效能、成绩等方面,是否达成预期目标。

●流程角色(process role)和流程执行者(process actor):流程角色是跟流程相关的一套具体规定的预期行为和行动权力,旨在使其执行者在工作中成功地履行职责。每个角色代表组织内一组被允许的操作,表现了企业运营所需要和被赋予的权限,流程角色会对应到组织中某个岗位或某个具体的人,而这个人就是流程执行者。

●流程所有人(process owner):指流程参与者中对流程管理承担端到端责任的角色,该人具有适当的权力、胜任力和个人能力,可以做出决策以确保流程得以开展和控制,并管理流程生命周期的所有规则和关键决策。

业务流程概念的产生跟企业应用计算机密不可分,当用计算机程序来抽象企业和流程的本体,并且实现流程运行的半自动化(即流程中的活动一部分是由人来操作的,一部分是由计算机来操作的,从而实现流程的流转)或全自动化(即流程从开始到结束,不需要人的介入,完全由计算机和机器来自动运行)时,将业务流程建立为一个计算机可以理解、管理并执行的工程化流程模型,便是“业务流程工程”,其中几个流程相关关键对象(流程、工作流管理系统、活动、任务、活动实例、调用应用软件)的逻辑如图1-1所示。

图1-1 工程化流程模型的关键对象