工作流程 | Mendix评估指南

Skip navigation

工作流程

如何将工作流添加到我的应用程序?

工作流是Mendix逻辑功能的一部分。

Mendix Studio和Mendix Studio Pro中的可视化工作流编辑器允许您以紧跟BPMN概念的格式构建可扩展流程。工作流逻辑与其他可视化语言(如微流和页面)完全集成。

构建工作流的开发人员对工作流数据有完全的控制,因为相就支持整个应用程序,同一个域模型是工作流定义的基础。这意味着您可以先构建工作流数据。

工作流在Mendix运行时执行,该运行时能够运行长期流程。您不需要包含外部工作流引擎,也不需要将工作流及其编排与主应用程序分开部署。

注意:工作流最初随Mendix 9发布,目前已在Beta版中提供。不久将全面上市。

谁能构建工作流?

训练有素的开发人员和精通技术的业务用户都可以将流程捕获到工作流中。

Mendix Studio使业务用户能够构建功能齐全的工作流应用程序,而专业开发人员可以利用Mendix Studio Pro的全部功能,以最高的细节级别对任何流程的细节进行建模,应用高级逻辑,与任何系统集成,并创建可重用的工作流人工制品。

使用Mendix,流程定义成为应用程序的一部分。这增加了可维护性。这也意味着开发人员可以更轻松地使用不同的应用程序,因为理解每个应用程序中的总体逻辑变得更容易。这大大减少了切换事件背景所需的成本和时间。

此外,由于流程是明确和可视化定义的,因此您可以利用Mendix Studio的审查功能,让有业务头脑的用户参与高级工作流逻辑的开发过程,从而大大缩短了反馈循环。

Workflow example

如何触发工作流?

可以用按钮和微流触发工作流。由于微流可以通过REST公布和调用,这意味着也可以远程调用工作流。

将工作流视为跨多个用户任务(向执行任务的用户显示页面)和微流任务(将微流配置为系统任务时工作流运行)的流程编排。在工作流领域,微流还可用于启动工作流或完成用户任务,例如,当需要高级验证时。

On-click action to call a workflow

有哪些可用的工作流操作?

本质上,工作流由用户任务(人工任务)和系统任务组成。

  • 用户任务需要用户交互:最终用户将看到包含完成任务所需信息的页面。这些页面是可以在Studio和Studio Pro的页面编辑器中编辑的常规Mendix页面,因此具有Mendix中任何页面的全部配置灵活性。
  • 系统任务称为微流。它们不需要用户交互。

其他工作流元素包括以下内容:

  • 网关将流拆分为多个分支,允许您使用独占行为(决策)或并行行为(并行拆分)将流拆分为多个路径。决策操作根据条件做出决策,并遵循一条且仅一条传出路径。并行拆分会将两个或多个并行路径添加到工作流中。
  • 跳转元素,允许您直接进入工作流路径上的一个工作流步骤。例如,您可以在流程中跳回以再次重做路径上的任务,或者跳过许多下游任务。
  • 开始活动和一个或多个结束活动。
  • 可重用元素,开发人员可以通过将微流公开为工作流操作,将其添加到工作流编辑器工具箱中。有关更多信息,请参阅下面的“如何重用工作流逻辑和内容”部分。

Workflow toolbox

进程管理员如何处理运行中的进程?

长寿命的业务流程意味着需要功能流程管理。例如,分配的用户正在休假,流程定义发生更改,或者某些流程实例作为例外情况耗尽了流程。

开发人员可以在页面和微流中使用一系列操作,使流程管理员能够有效地管理工作流实例。

Mendix为开发人员提供了构建过程管理功能的完全控制权。为了加快速度,Mendix提供了一个功能齐全的工作流共享模块,其中包含预配置的流程管理屏幕、仪表板和通用收件箱屏幕。所有这些都是可定制的,可以由您选择的模块替换。这允许公司对页面进行品牌化,并实现其他公司特定的流程要求。

Workflow Commons module

工作流定义中的更改对运行中的进程有什么影响?

长期存在的业务流程意味着在工作流发生变化时需要迁移。运行时中的默认行为是,正在运行的实例将升级到新的工作流定义,如果无法自动升级,则将其标记为“冲突”。然后,流程管理员角色需要处理这些问题。如果希望继续按照旧定义运行实例,开发人员可以克隆工作流,从而有效地创建新版本。

更多信息,请参阅《Mendix Studio Pro指南》中的更新工作流定义

如何将任务分配给潜在用户?

用户任务需要以用户为目标,这意味着可以接收任务的潜在用户集。开发人员可以通过使用XPath或通过使用每个用户任务的微流实现更灵活、更高级的逻辑来完全控制对这组用户的建模。

此外,每个用户任务都提供OnCreated属性,使开发人员能够使用微流实现委派策略。还可以使用现有的Mendix构造对升级进行建模。

User Assignment Example

如何配置工作流安全性?

使用现有的Mendix安全模型处理安全性。例如,只有指定的角色才能启动工作流、在任务收件箱中查看工作流、访问底层数据以及使用任务结果之一完成任务。这为开发人员提供了有效建模工作流安全性的粒度。有关更多信息,请参见安全模型

如何重用工作流逻辑和内容?

Mendix为开发人员提供了构建可重用工作流人工制品的完全控制权。对于初始速度,Mendix提供了一个功能齐全的工作流公用模块,其中包含预配置的流程管理屏幕、仪表板和通用收件箱屏幕。Workflow Commons还包含其他预配置的文档,如代码段、页面模板和微流。

要启用工作流功能,不需要安装此模块。然而,它确实简化了开发人员的工作,使他们能够从开箱即用的功能中获益。所有内容都是可自定义的,可以由您选择的模块或工具来替换。

此外,开发人员可以通过将微流公开为工作流操作,将可重用元素添加到工作流编辑器工具箱中。这些也可以通过来自Marketplace和其他存储库的包含已公开微流的模块导入。

通过这种方式,公司的最佳实践可以与公司中希望构建工作流的任何人共享,包括有业务头脑的用户以及团队中的其他专业开发人员。

如何查看企业中的所有工作流?

在所有Mendix应用程序中,每个工作流都以标准的、可公开访问的格式存储其执行数据,该格式是系统模块的一部分。这意味着,开发人员可以将数据提取到中央存储库或报告服务(如商业智能工具)中,以获取公司中工作流的企业视图,包括正在进行和已完成的工作流实例。