请详细介绍业务活动监控
#### 业务活动监控概述

业务活动监控(businessactivitymonitoring，BAM)这个术语是在2002年由高德纳咨询公司(GartnerGroup)提出的，是基于企业应用集成的一种用于监控企业运营状况的软件技术。它提供对业务绩效指标的实时访问，以改进业务运作的速度和效率。用于描述一些新兴的能力，这些能力将一些关键技术集中起来，从根本上改变业务系统的状况。
BAM是应用集成技术中发展最为快速、业务高级优化最有效的手段，其宗旨在于实时获得业务流程运行的状态，自动提供客观分析报告，以改进、优化业务流程，其改进包括技术层面，也包括人员、管理层面。业务活动监控的目标是提供当企业的业务环境发生变化时能够及时了解业务事件的能力，这样就能做出及时的决策。通过提供实时的信息，BAM方案可以减少成本和加速执行事务。某公司在集成的基础上成功的实施完BPM(businessprocessmanagement)方案后实现了BAM技术。BAM通过采集业务流程运行的实时信息，调用BPM对业务流程进行管理，使企业具备了敏捷型企业所要求的素质，能够快速地响应市场变化，快速地调整业务策略，快速地实施业务流程，同时根据反馈的信息对业务流程进行快速地优化调整。#### BAM与企业应用集成的关系

BAM是建立在集成平台基础上的，它将事件捕获引擎嵌入到集成平台之中，随时捕获异常事件。集成是BAM的基础，如果没有集成，那么BAM必须在每个应用系统中都嵌入一个引擎，每个引擎都要随时提供信息。考虑到如今众多企业信息系统的技术架构、规模及用途不一，只有借助目前日臻完善的集成技术才有可能把所有这些迥然不同的信息集成起来用于实时分析。企业有了集成平台，不仅使BAM系统的实施费用更低，而且使其运行速度更快。并且现在的大中型企业里至少都会有几十个，甚至上百个应用系统，如果其中的某个引擎出现故障，根本无法及时发现，并且检查也很繁琐。集成平台将所有的应用系统联系起来，所有的信息都要流通于这个平台，那么只需要一个引擎就可以捕获所有的信息，而且也便于管理。在该平台上同时集成了业务流程管理(BPM)，BAM可以实时的调用它。同时BAM将异常事件通报给信息门户，BPM将也将异常事件的处理结果告知信息门户。信息门户将所有的信息在portal上进行反馈，并将紧急信息向相关人员报警。BAM模块在整个系统中的位置如图1所示。

图1:BAM模块在整个系统中的位置
BAM系统的结构在BAM的实时分析模块中集成了规则引擎，它可以实时调用规则库中的相应规则，来判断当前的事件是否为异常，如果为异常就将错误信息报告给信息门户。因此用户可时时监控流程，对异常事件做出迅速的反应。当前的BAM系统应该具备如下几个基本的功能：事件捕获、信息加载、模式匹配和分析、智能反馈等，由此我们得出了BAM系统一个初步的技术架构，如图2所示。

图2:BAM模块基本架构
也就是说，一个BAM系统主要应该由以下4个部分构成：①事件捕获引擎；②上下文查找；③实时分析；④报告引擎。其中事件捕获引擎嵌入在集成平台中，对通过平台的所有的事件进行过滤、收集；上下文查找提供与异常相关的实时和历史信息；实时分析调用规则引擎来分析事件的性质；而报告引擎将信息发送到信息门户。事件捕获引擎和报告引擎是BAM与外部系统的接口。
业务活动监控系统的工作原理BAM是集成应用平台的一个组成部分，BAM模块的事件捕获引擎就是嵌入在集成平台中。它可以对所有经过的事件进行收集和过滤，并将它们标识优先级后存入BAM的数据存储区。在数据存储区中有～个优先级队列，而上下文引擎将对队首的事件进行归类、划分，并提供其对应的应用系统或部件的相关信息。然后将其送入实时分析模块的事实库，同时将其从数据存储队列中删除。实时分析模块中的应用程序按照预定的频度扫描事实库，如果有待处理事件就立刻通知规则引擎。规则引擎被触发后迅速测试工作区中的数据对象，从规则库中发现符合条件的规则，生成规则的执行实例。实时分析模块的结构如图3所示。
事件经过规则引擎的模式匹配器匹配后，如果正常就丢弃事件，等待应用程序的触发；反之就将异常事件提交给BPM进行处理，并且将错误类型及性质提交信息门户发布。事实库中可能包含数千个事实，规则库中的每条规则又可能有2、3个前提，规则引擎必须在很短的时间内将事实与对应的规则匹配起来不是一件容易的事。不过这方面的技术已经非常成熟了，很多模式匹配器都可以在极短的时间内完成匹配。

图3:实时分析模块组成
为了提高系统的效率，规则引擎采用基于Pete算法的Java规则引擎。Pete算法是在规则匹配中利用推理机的时间冗余性和规则结构的相似性，通过保存中间运算来提高推理效率的一种模式匹配算法。
业务规则存储在规则库中，完全独立于数据和程序。规则库可以依托于文件系统或数据库管理系统，文件格式一般符合可扩展标记语言(XML)的元数据交换(XMI)标准，遵循与元数据表示和交换相关的规范。#### BAM的应用特性

(1)BAM使业务管理人员能够监控企业中的业务服务和流程，使KPI与实际的业务流程本身关联起来，并且最重要的是，在业务环境变化时快速地修改业务流程或采取正确的措施。
(2)BAM是构建实时操作信息板并通过Web监控和警示应用程序的一套完整解决方案。该技术能够使业务用户构建实时的交互式信息板和预测性的警告来监视业务服务和流程。
(3)事件和警报(非原始数据)是一个业务活动监控系统的主动力。数据收集、下钻、止损信号、操作者干涉以及自动关机都属于业务活动监控系统内置的操作范围。
(4)BAM系统负责跟踪、整合和报告主要的业务事件，它们都使用底层的集成来访问和操作数据。通常实时商务智能与分析应用偏好使用胖客户端浏览器作为用户界面。
(5)BI和BAM有诸多共同之处。BI系统通常是分析历史数据、对照该历史数据运行复杂的分析流程，以支持决策者(BI)所关注的是战略问题。BAM同样支持决策者，但通常更多的是面向操作等的战术性问题。如果将这两种技术融合在一起，取长补短，优势互补，将会发挥更大的作用。#### 业务活动监控的实际应用

业务活动监控就是综合了商业智能和实时应用集成，用以减少管理和执行企业关键业务流程的延误。所以BAM的基本功用如下：
①提供关于系统中的IT事件(诸如网络失败、数据库存取加载、网站活动、所有资源上的规律性变化)影响高层商业交易流程的即时透视；
②允许响应系统事件(诸如当一次银行报告服务减速导致业务流程被停止时进行的重新调度)的实时业务决策；
③出现违反或即将违反业务层政策的事件时能自动发出实时通知；④提供业务流程绩效的统计数据。#### BAM在零售业的应用

通过对所有商品的销售情况进行监控，用户可以及时发现销售异常(如某种商品销量持续大幅下滑、不正常飙升等)的某样商品，乃至某个品牌，或某个大类的商品。然后在动态报表界面中结合“上下文”信息(如节气、大事、行情等)对相关条目作进一步的分析，以确定应采取的措施或策略。