熟悉工作流的功能,自己实现一个工作流。
工作流实现的功能:
1、 提供表单定义功能,能够方便的将 jsp 等动态表单和工作流衔接;
2、 通过 WEB 的方式定义工作流(和现在的 Activex 控件定义工作流类似, flash 或者 applet )
3、 能够方便的嵌入到其他框架中,提供方便的用户权限管理接口,提供完善的 Api 二次开发接口;
4、 方便查询和归档,能够方便的将表单数据提取出来,给业务系统使用;
5、 方便将运行期的工作流所有的数据,转移到 history 库中;
6、 通过数据库的 view 将运行库和历史库合并,提供查询和统计功能;
7、 工作流的节点,能够方便的执行多个业务逻辑;
8、 能够对工作流进行监控管理;能够看到每一步工作流执行的详细信息,能够图形化的展示出流程的轨迹;
9、 能够撤回、催办、返回到上一步;
10、 能够实现分支、汇聚功能;( split and,split or ,join and ,join or )
11、 稳定,能够达到 200 人并发,程序流畅执行;
12、 能够实现委托代办功能; (可以为任务设置外出代理人,也可委托他人执行任务)
13、 能够支持子流程,父流程和子流程表单数据传递;
14、 能够动态的指定下一个环节执行人,流传到下一个环节的时候,当前参与者可以指定下一个执行人员;
15、 活动可以自动执行、人工执行、定时执行;
16、 能够通过邮件、内部消息、短信的方式提醒(能够和 IM 工具及时通信最好,例如类似 qq 的即时通信软件) ;
17、 对工作流的设计实现版本控制。(能够实现不同版本的工作流同时进行更好!已经在运行的工作流运行版本 1.0 ,新发起的工作流按照版本 2.0 执行;这个要求有点高,不实现也好。)
18、 跨数据库、跨浏览器;
19、 能够方便的和各种 office 控件、盖章软件结合,实现办公自动化;
20、 支持多附件上传;
21、 支持两个相同的工作流引擎流程的导入导出;
22、 支持两个工作流引擎之间文件下发上传(好像不是工作流的事情)
23、 表单留痕(从 anyflow 上学习到的,能够看到什么人在什么时间修改了当前表单域)
24、 能够从指定的节点重新执行已经执行过的工作流。(从 joinwork 上看到的,要求也挺高。)
支持顺序会签、并行会签;
支持任务分解(按参与者生成环节实例)