1. UI-FW:主要处理用户登录、任务列表、查看表单内容、完成表单任务等的用户界面。它需要与TMS进行交互,来获取最新的任务列表;当用户点击某个任务(Task)的时候与XFormManager(Tempo可以实现多个表单管理器(Form Manager),在这里的XFM专指XForm格式的表单的管理器)交互,UI-FW获得由XFM推过来的表单(XFM产生表单的过程下文叙述)显示给用户,用户点击完成按钮(或者其他按钮),则由XFM给TMP发送消息告知该人工活动流程已经完成。
2. XFM:它是一个表单管理器,主要是生成表单,并实现多个人工活动所支持的action。它会从WDS获取真正的表单文件(.xform),从TMS处获得当前具体表单细节信息。当用户点击表单上的某个按钮之后,由XFM告知TMP流程状态的改变。
3. TMP:它其实是一个BPEL流程,部署在Ode中,该流程由FDS启动,等用户完成该人工流程之后结束。它对于任务状态的控制还是TMS(可以认为TMS就是数据库的DAO),所以这一点在某种程度上和原本我们自行设计的B4P有相似之处。同时,TMP对外提供的接口不光是启动流程一个,还有completeTaskRequest接口,当TMP接收到该消息之后,会调用TMS修改任务状态和设置任务的output。然后,告知FDS该人工任务完成。
4. TMS:它其实是一个WebService,主要完成任务数据、任务状态、表单信息等的持久化工作,可以任务他就是数据库(这样更容易理解)。
5. WDS:是一个Servlet应用,主要完成表单内容、任务描述等的远程部署,可以认为它存有运行过程中所需的表单文件等数据。
6. FDS:也是一个servlet,主要做转发,UBP(用户业务流程)中对人工任务的调用首先发送到FDS,再由FDS做一定的命名空间的处理后调用TMP。可以认为是一个中转或者代理。