当前位置: 首页 > > IBM > IBM软件 > IBM Business Process Manager V8.5如何构建动态团队

IBM Business Process Manager V8.5如何构建动态团队

2014-04-29 09:57 来源:IBM 作者:末信 人气指数: 我要评论

团队定义可作为流程应用程序或工具包的一部分进行创建。在部署包含团队定义的一个流程应用程序快照时,团队定义被部署到运行时环境。

在完成部署后,可以使用 Process Admin Console 向团队添加用户或组或从中删除用户,以反映不断变化的业务条件。您也可以更改分配的经理团队。但是,如果删除经理团队,该团队和它的任务将不能再使用 Process Portal 中的 Team Performance 仪表板管理。

通过实现自定义的团队管理服务,可以扩展 Process Admin Console 所提供的管理性功能。

在 第 1 部分 中,介绍了团队的各种建模方面。在 第 2 部分 中,我们构建了一些服务,以便在运行时动态地构建团队。本文是第 3 部分,将介绍如何使用 Process Admin Console 管理团队,如何开发自定义的管理服务。

使用 Process Admin Console 管理团队

BPM 安全组的成员可使用 Process Admin Console 在安装的流程应用程序的快照中管理团队定义。要查看快照中的团队,可登录到 Process Admin Console,转到 Installed Apps 选项卡,选择一个快照,然后单击 Team Bindings 选项卡,如图 1 所示。

图 1. 检查团队绑定

点击这里给我发消息

Team Bindings 页面显式了每个团队当前的运行时定义,以及该团队是否自动刷新。该定义包含一个:

  • 用户集
  • 组集
  • 经理团队

可更改团队的运行时定义,添加或删除用户和组,或者分配一个经理团队。请注意,对于动态团队,该页面上还会显式一个额外的 Automatic Refresh 标志。

这个介绍 IBM BPM V8.5 团队功能的系列中的 第 2 部分 介绍了如何使用团队检索服务定义和实现动态团队。动态团队会在运行时重新计算,例如用来分配一个任务。为了预防覆盖管理性更改,Process Admin Console 提供了一个针对动态团队的 Automatic refresh enabled 复选框。在手动更改动态团队的运行时定义时,系统会自动清除该复选框,并暂停团队检索服务对该团队的计算。要切换回自动刷新模式并重新启用团队计算,可选中 Automatic refresh enabled 复选框,如图 2 所示。

图 2. Enabling automatic refresh

检查团队绑定

重新启用刷新模式时,团队定义会使用最新的信息刷新。

开发管理团队的自定义服务

如果希望扩展 Process Admin Console 所提供的团队管理工作,例如用以提供以下功能,可考虑开发自定义服务:

  • 用于团队管理的自定义用户界面 (UI)
  • 复杂的团队查找机制
  • 定期刷新团队的自动化服务

示例 1:刷新团队的管理性服务

作为 Process Admin Console 所提供的团队管理功能的替代功能,可定义一个扩展 Process Admin Console 的自定义用户界面。

要提供自定义用户界面,可在 Process Designer 中定义一个人工服务,并将作为管理服务向团队公开。只有指定团队的成员可以看到和使用 Process Admin Console 中的自定义管理服务。

图 3. 将一个团队检索服务公开为管理服务

Enabling automatic refresh

从建模角度讲,管理服务与其他任何基于缓存的人工服务相同。您可以建模用户界面和它需要的逻辑,以便向用户呈现所需的数据,应对来自用户的输入。

图 4 显示了如何建模一个刷新团队的管理服务。如果启用了 Automatic Refresh,当前的运行时团队定义(包括任何管理性更改)就会被最初建模的团队定义覆盖。对于动态团队,如果启用了 Automatic Refresh,则会触发计算该团队的服务,然后该团队会被服务调用的结果覆盖。

图 4. 建模团队检索服务

将一个团队检索服务公开为管理服务

图 5 显示了接受团队的名称的 coach。

图 5. 建模一个 coach

建模团队检索服务

使用输入的团队名称调用脚本,它会刷新团队定义,如清单 1 所示。

清单 1. 实现团队刷新脚本

	// get the team
	var team = tw.system.org.findTeamByName(tw.local.teamName);
	
	// refresh the team
	if (team!=null) {
	    team.refresh();
	}

图 6 显示了如何在 Process Admin Console 中公开该服务。要查看和调用该服务,用户必须是在该服务公开时指定的团队的成员。

图 6. 调用一个公开的管理服务

建模一个 coach

示例 2:定期刷新团队的代理驱动的服务

在运行时使用动态团队分配任务时,团队检索服务会重新计算这些团队的成员和经理。

如果系统中没有发生任何事件来触发团队刷新,团队信息可能会过时。举例而言,如果团队的团队检索服务使用动态参数来确定团队成员和经理,那么该信息可能会过时。动态参数的示例是一天中的时刻、分配给一个团队的工作总量或公司当前的股票价格。在这些情况下,定期刷新团队对确保正确的人在其工作列表中获得正确的任务很有用。

要刷新该团队,需要一个服务来执行该工作,还需要采用一种机制循环地调用该服务。要满足这些需求,可使用秘密代理(undercover agent,UCA)定期触发该服务。

图 7 显示了一个名为 Periodic Team Refresh UCA 的 UCA。该 UCA 在每天午夜触发 Team Refresh Service。

图 7. 定义一个秘密代理

调用一个公开的管理服务

调用的服务是一个集成服务,包含一个 JavaScript 元素,如清单 2 所示。

清单 2. 刷新所有团队

	// get all teams
	var allTeams = tw.system.org.getAllTeams();
	// refresh teams one by one
	for (var i=0; i<allTeams.length; i++) {
	    var team = allTeams[i];
	  team.refresh();
	}

更加现实的实现会考虑更多的方面,例如将一次刷新的团队数量限制到一定的数量,以避免系统过载。

您可以使用 Process Admin Console 启用或禁用代理触发的服务。如果禁用了该服务,代理服务会触发关联的 Team Refresh Service,如图 8 所示。

图 8. 检查 UCA 的时间安排

定义一个秘密代理

结束语

本文介绍了团队的运行时管理方面。文中介绍了如何使用 Process Admin Console 管理团队,以及如何定义自定义服务来轻松地扩展这些功能。本文是一个介绍 IBM BPM V8.5 团队功能的文章系列的最后一篇。

为您推荐: IBM 动态团队
大家感兴趣的内容
小伙伴最爱的新闻
小伙伴还关注了以下信息
小伙伴关注的焦点

小伙伴都在关注的热门词

芈月传 老司机玩法 萌乐网 黑科技 坐骑揭秘 三国令 铁血皇城 竞技场攻略 书剑恩仇录 披风玩法 装备强化攻略 野外BOSS玩法 全网曝光 赤壁传说 半回合制国 ACT 哥们网 天书世界 奇珍商城 热血战歌 传奇宝藏抽奖 门徒 范伟打天下 打开方式 门徒获取玩法 三大萌宠简介 新手攻略 挂机系统简介 材料副本 大海战 鸵鸟 大黑 激情玩法 门徒战力提升 万世 强化属性 上古降魔 提升战力 装备攻略 九阴绝学 品质推荐 老干妈 激战来袭 大黑游戏 新服亮点 福利多多 画江山 资料片 玩家 九阴真经 江湖儿女 真实场景 现实 虚拟 随机副本 风色轨迹 听天由命 ppwan 神助攻 武林秘药 激活八大脉门 九天劫变 猎命格 天问 大型PVP 花千骨 激战更尽兴 网易mumu 手游玩家 安卓模拟器 安卓 单挑群战 武侠传说 女神 孙尚香专访 胸猛抱团 新游 占山为王 跨服城战 蜀山战纪 剑雨江湖 攻略 实时VR交互 七大女神代言 酷炫走江湖 世界四大杀手 玩家专访 三国经典 大制作 好玩网页游戏 盘点 宇宙霸主 境界玩法 莽荒纪 勇闯难关 镜像副本 荒漠霸主 装备精通 三大战役 鹌小彦奇谈