Flowable引擎入门:子进程与事件范围

需积分: 50 167 下载量 16 浏览量 更新于2024-08-09 收藏 9.36MB PDF 举报
"这篇文章主要介绍了Flowable工作流引擎在处理子流程时的规范和使用方法,强调了子流程的开始和结束事件、序列流的限制以及图形表示法。此外,还提到了Flowable的版本控制策略和所需软件环境,如JDK和IDE的要求。" 在BPMN 2.0规范中,子进程(Sub-Process)是一种用于组织流程的结构,它允许将复杂的任务分解为更小、更易管理的部分。在"规范允许在-c语言小白变怪兽"中提到,子进程只能有一个无启动事件(Start Event),并且必须至少有一个结束事件(End Event)。虽然BPMN 2.0标准允许省略这些事件,但Flowable当前的实现并不支持这种做法。这意味着在设计Flowable流程时,应当为每个子流程明确添加开始和结束事件。 序列流(Sequence Flow)是流程中活动之间的连接线,它指示流程的执行顺序。在子流程中,序列流不能直接穿过子流程的边界,这确保了子流程内部的逻辑独立性。子流程的图形表示通常是一个圆角矩形,如果子流程被折叠,只显示名称和加号;如果展开,其内部步骤会显示在边界内。 使用子流程的一个重要原因是定义特定事件的作用范围。例如,在并行执行的任务(如调查软件和调查硬件)中,如果这些任务需要在一定时间内完成,可以通过子流程来限定计时器的范围,确保在规定的时间内进行第2级支持的咨询。这样,子流程为特定条件或时间限制提供了清晰的界限。 Flowable工作流引擎是基于Java的,需要JDK 7或更高版本运行。开发人员可以使用任何IDE进行开发,但若要使用Flowable Designer,推荐使用Eclipse Mars或Neon版本。Flowable的源代码托管在GitHub上,遇到问题或有建议时,开发者可以在用户论坛或GitHub问题追踪器中提交。 文章中还提醒,带有[实验]标记的功能不稳定,可能随时变化。而以.impl.结尾的包中的类是内部实现类,不保证稳定性,不建议直接使用。Flowable遵循一定的版本控制策略,但具体细节未在摘要中详细说明。