写点什么

业务规则管理——被遗漏的环节?

  • 2010-04-11
  • 本文字数:1773 字

    阅读完需:约 6 分钟

最近一段时间,提升 SOA 实现的尝试中包括了它与 BPM 之间的整合。 James Taylor 说,在这项工作中存在被遗漏的环节,那就是对业务规则的管理:

不要只顾 BPM 或者 SOA 而忽视了规则——未来将会涉及到规则、BPM 和 SOA 三者。业务规则给了你具有灵活性和一致性的敏捷,这会帮助业务不断成长。它们会帮助你区分并暴露出你需要驱动业务的“把手”和“杠杆”。

Jim Sinur 提出规则为什么很重要的问题,针对这条发言,Taylor 发表评论,概述了管理业务规则和决策的价值:

  • 通过监控警告信息并指出根本原因,防止不可接受的类型和级别的风险
  • 通过监控利益干系者和影响者,最小化产生风险的可能性,从而接受执行业务的必然的后果
  • 通过识别事件并实现快速响应来把握机会

在 Sinur 的发言中,他描述了 Gartner 关于规则的观点。那是具有适应性的软件的基础,它会平衡明确的规则和寻找目标的能力。它们还作为对过程的业务控制的第一驱动力而存在。

Jim 对其观点进行连续地描述——从少数将所有的规则都嵌入到系统中的公司,到大多数将规则和过程混合的半结构化的公司,直至极少完全基于规则的、动态的公司。当前,市场的曲线正处于上升的阶段,但大多数公司仍然会坚持明确的指导规则,其中带有少许更加复杂的指导。一旦市场成熟,那么一些公司就需要从过去的规则导向的过程行为转变为规则驱动的组合方式和基于规则的动态过程。

Tom Graves 对 Taylor 发布的文章做出了评论,他说:

这是一篇好文章——推荐大家阅读。我非常同意其中的观点,我们对于与业务规则相关的原则,有真实并且急切的需要…但是,读了它之后,几乎所有我的企业架构的警告都没有了。它将业务规则提升为“答案”——对于基于 IT 的业务规则引擎的大部分是那样的。

根据 Graves 的意见,这个方法与其他失败的 IT 驱动的业务——如业务过程重构——非常类似,:

  • 将所有业务规则都放到自动的系统中,那会导致“适应并遗忘(fit and forget)”的态度,除非在规则维护上做了非常重的强调——大量在 BPR 中被遗忘的“人为因素”会对“IT-ise”的所有业务过程产生很大的冲击。
  • 在对业务规则的识别和编写的时候,我们会假设规则可能来自于运行现有过程的那些人,这些规则是充分、不变、准确和完整的——然而,正如早期的知识管理所发现的,事情往往并非如此……
  • 在制定决策的时候使用自动化的方式是否可行,要依赖于具体的环境,让我吃惊的是,似乎很少有 IT 系统设计师了解这个事实。

Graves 说,Taylor 的方法的缺点在于,当 IT 负责实现业务规则的时候,情形会非常不容乐观。IT 的主要能力在于支持基于二进制的真伪逻辑的简单业务规则。当需要处理非二进制逻辑的时候,比方说模态逻辑或者机率逻辑,人会表现得更好。IT 在模式识别方面(如人脸识别)变得越来越好,这是基于与现有的模式和图片进行比较的基础之上的,但是如果有现实环境中的干扰,那么就无法表现得尽如人意了,因为在那种情况下,模式不为其所知或者根本就不存在。因此,针对业务规则自动化的 IT 方法可能是这样的:

一切……都被降为简单的规则,按照本末倒置的想法,所有一切都应该由 IT 完成,而简单规则正是 IT 最容易掌控的。也就是说,这种前后颠倒的做法是非常危险的。试图从 IT 中提取出某些有用的信息来做决策支持已经非常不好了;但是对于所有的决策都使用 IT——那是文中显然最喜欢的理想状况——似乎更是致命的。我不是很清楚,作为企业架构师,我们能够采取什么样的措施来防止这样轻率地一味地重复在 BPR 和其他过程中已经犯过的错误,而区别就在于这次它是更明确地来自于过程的规则部分,而不是总体上的过程实现部分。

Richard Veryard 同意 Graves 的观点,他指出:

  • 我们不应该假设业务规则已经是充分、不变、精确和完整的,尤其是当它们来自于运行现有过程的人。这样对业务规则的识别和编写一般就会留下一些需要请求的。(这样做的方式之一就是真正地抵制符号表现方法)
  • 对于规则的维护应进行着重强调,否则就会将所有业务规则放在一个自动的系统中,从而导致“适应并遗忘”的态度。(这样做的一种方式是要求进行双重循环或者二次学习)
  • 使用自动化的方式来制定决策是否可行依赖于具体的环境。

我们很难反对 Veryard 的观点。在我们的实现中包含业务规则的自动化肯定是很重要的。而决定哪个应该自动化,哪个应该由人来执行也是很必要的。

查看英文原文: Business Rules Management - the Missing Link?

2010-04-11 09:062108
用户头像

发布了 340 篇内容, 共 133.7 次阅读, 收获喜欢 13 次。

关注

评论

发布
暂无评论
发现更多内容

美团前端必会vue面试题合集

bb_xiaxia1998

Vue

【FAQ】集成分析服务的常见问题及解决方案

HarmonyOS SDK

HMS Core

LR性能测试常见问题及处理方法(一)

性能测试 问题排查 LoadRunner

Led透明显示屏的发展超乎你想象

Dylan

LED 显示器 LED显示屏

自己手写一个redux

helloworld1024fd

JavaScript

前端手写面试题总结

helloworld1024fd

JavaScript

react hook 源码完全解读

flyzz177

React

React源码解读之任务调度

flyzz177

React

百度前端必会react面试题总结

beifeng1996

React

目前兰州市等保测评机构有几家?有新增的吗?

行云管家

等保 等级保护 等保测评 兰州

谈谈Linux内核的噪声

统信软件

Linux 内核

Golang 编程“珠玑”

MatrixOrigin

golang 分布式数据库 编程语言 MatrixOrigin MatrixOne

vivo x TiDB丨解决云服务海量数据挑战

PingCAP

TiDB

堡垒机行业标杆产品是哪家呢?有哪些功能?

行云管家

网络安全 信息安全 等保 堡垒机

unittest中使用ddt后生成的测试报告名称如何修改?(如test_api_0修改成test_api_0_titile)

单元测试 自动化测试 unittest 参数化 ddt

解读Teradata结束中国直营背后的原因!国产数据库能填补空缺吗?

雨果

数据库管理工具 国产数据库 teradata SQL工具

React源码分析4-深度理解diff算法

goClient1992

React

LR性能测试常见问题及处理方法(二)

性能测试 问题排查 LoadRunner

写过vue自定义指令吗,原理是什么?.m

bb_xiaxia1998

Vue

SQL工具性能实测:居然比Navicat还快,数百万行数据导出仅51秒

雨果

sql 数据库管理工具 Web SQL sql studio

建设 TiDB 自动化平台:转转 DBA 团队实践

PingCAP

数据库 自动化 TiDB

React源码分析2-深入理解fiber

goClient1992

React

React源码解读之更新的创建

flyzz177

React

构建云边端一体的分布式云架构,软硬结合驱动边缘计算创新场景

百度开发者中心

云原生 边缘计算 #百度智能云#

Unittest接口测试生成报告和日志方法

日志 单元测试 自动化测试 unittest 测试报告

React源码分析3-render阶段(穿插scheduler和reconciler)

goClient1992

React

可视化分析能力MAX,瓴羊Quick BI带来全新数据分析体验

对不起该用户已成仙‖

腾讯前端一面经典手写面试题合集

helloworld1024fd

JavaScript

万亿级对象存储的元数据系统架构设计和实践

百度开发者中心

对象存储 文件存储 百度沧海

假如问:你是怎样优化Vue项目的,该怎么回答

bb_xiaxia1998

Vue

业务规则管理——被遗漏的环节?_SOA_Boris Lublinsky_InfoQ精选文章