工作流平台总体功能规格说明书.docx
《工作流平台总体功能规格说明书.docx》由会员分享,可在线阅读,更多相关《工作流平台总体功能规格说明书.docx(15页珍藏版)》请在冰豆网上搜索。
工作流平台总体功能规格说明书
工作流平台
工作流平台1
1.总体功能概述2
2.系统技术结构3
3.功能规格描述4
3.1.工作流定义4
3.1.1.功能分类4
3.1.2.流程定义5
3.1.3.表单定义7
3.1.4.使用帮助8
3.2.工作流引擎8
3.2.1.流程驱动服务8
3.2.2.催办提醒服务8
3.2.3.异常监控服务9
3.3.工作流管理9
3.3.1.活动流程管理9
3.3.2.历史流程查询9
3.3.3.错误流程处理10
3.4.工作流平台应用接口10
3.4.1.工作流活动10
3.4.2.转办和参考10
3.4.3.工作代理11
3.4.4.催办提醒11
3.4.5.数据统计11
3.5.工作流平台开发接口(SDK)11
1.总体功能概述
工作流平台的设计目标是为项目实施过程中出现的流程相关的客户需求提供平台化的解决方案支持,同时其本身又能够作为独立的工作流管理系统运行。
企业实施工作流管理所带来的好处是非常明显的,这包括提高企业运营效率、改善企业资源利用、提高企业运作的灵活性和适应性、提高工作效率、集中精力处理核心业务、跟踪业务处理过程、量化考核业务处理的效率、减少浪费、增加利润、充分发挥现有计算机网络资源的作用。
实施工作流将达到缩短企业运营周期、改善企业内(外)部流程、优化并合理利用资源、减少人为差错和延误,提高劳动生产率等目的,另外为企业的管理者提供对自身业务流程进行负荷分析和决策分析的工具,帮助客户提高企业的整体工作效率,节省时间,降低成本,提高IT的投资回报率。
我们的工作流平台在设计上参考工作流管理联盟(WFMC)制定的工作流参考模型(WorkflowReferenceModel),工作流参考模型标识了构成工作流管理系统的基本模块和这些基本模块交互使用的接口。
另外我们的工作流平台的设计在参考工作流参考模型的基础上融入了我们对客户需求的理解,更加贴近用户。
工作流平台的功能结构如下:
1.流程定义工具(WorkflowDesigner)
工作流定义主要包括流程模型的定义,表单模板的定义,它将逻辑模型转化为物理模型,它为工作流平台提供模型数据的来源
2.流程执行引擎(WorkflowEngine)
工作流引擎根据流程定义规则对流程信息和用户数据进行加工,推动流程运转从而实现流程的自动化
3.流程管理工具(WorkflowAdmin)
监控和管理工具对流程实例的运转情况进行监控,对流程实例的数据进行管理,保证系统正常有序的运行并及时的发现和解决流程运转过程中出现的问题
4.工作流应用接口(ApplicationInterface)
工作流应用为用户提供人机交互接口,用户通过执行工作流应用中的每一个工作项将信息提交给处理控制台,进而由工作流引擎进行处理
5.工作流开发接口(SDK)
工作流开发接口为工作流平台中的其他模块提供了统一访问流程数据的方法,除此之外还为对工作流平台进行二次开发提供了便利
工作流平台的功能结构图如下:
2.系统技术结构
工作流平台在功能上可以划分为工作流定义,工作流引擎,工作流管理,应用接口,开发接口(SDK)。
工作流平台的各个模块都采用三层架构设计,分为表现层、逻辑层(处理层)、数据层。
系统基于微软.NET平台构建,使用MicrosoftVisualStudio2005开发。
表现层要求使用IE5.5及更高版本,另外流程模型定义客户端使用了微软的最新技术SmartClient;系统使用IIS作为Web服务器和应用服务器;系统使用MicrosoftSQLServer2000或MicrosoftSQLServer2005作为数据库服务器。
工作流平台的流程引擎构建在微软BizTalkServer2006之上,BizTalkServer2006不仅能够为系统提供强大的流程引擎功能,还为系统提供了强大的EAI功能,这使得工作流平台与企业现有系统得集成能力大大增强。
另外,工作流平台的报表功能与SQLServerReportingService实现无缝集成,用户可以使用ReportingService的各种功能轻松定制报表。
3.功能规格描述
3.1.工作流定义
工作流定义工具将采用智能客户端的方式实现,MicrosoftVisualStudio2005基于.NetFramework2.0为实现智能客户端应用程序提供了更加全面的支持,自动探测网络连接,自动更新等功能与生俱来,其集中部署的特性更是为窗体应用程序提供了同Web应用程序一样的可维护性。
3.1.1.功能分类
1.流程模型管理
2.表单模板管理
3.流程实例管理
4.系统配置管理
对流程模型信息,表单模板信息,流程实例信息等以目录的形式进行分类管理,分类依据可以是部门,也可以是业务类型或者是其他自定义的分组方式。
用户可以对目录进行新建、删除、重命名、权限设置、移动或复制等操作,用户可以对目录以鼠标拖放的方式进行移动,复制。
用户既可以基于角色对目录进行权限设置,也可以基于人员对目录进行权限设置。
目录权限控制系统遵从自上向下继承的规则,但是应该提供给用户取消继承父级目录权限的选项。
3.1.2.流程定义
3.1.2.1.模型管理
授权用户可以对流程模型进行以下操作:
1.新建
2.删除
3.编辑
4.查询
5.复制
6.剪切
7.只读模式
8.编辑模式
9.签入/签出
通过查询功能,用户可以在大量的流程模型信息中迅速找到目标模型,并可以自定义查询条件以及对查询字段进行模糊匹配。
通过复制和粘贴操作,用户可以轻松的创建现有流程模型的副本,减少大量的重复性操作而不需一切从头做起,为客户节省了宝贵时间,加快对业务变更的响应速度。
通过剪切和粘贴操作,用户可以对现有流程模型在不同的目录间进行移动。
通过删除操作,用户可以放心的删除现有流程模型而不会对正在运行中的流程实例产生任何影响。
为了防止并发冲突,用户在对流程模型进行编辑的情况下必须首先签出。
在当前用户签出流程模型并进行编辑的情况下,其他用户不能对此流程模型进行编辑,只有当前用户完成编辑并签入流程模型之后,其他用户才可以对流程模型进行编辑。
打开操作允许用户在不进行签出的情况下直接以只读的方式打开流程模型。
图形化流程定义工具,用户可以通过鼠标拖放的方式建立流程模型,直观形象的反映业务流程。
流程定义过程简单易用,无需编程即可完成,不需要专业的IT技术人员。
3.1.2.2.模型定义
图形化流程定义工具为用户提供以下类型的流程控制节点:
1.开始
2.结束
3.分支
4.合并
5.条件
6.循环
7.子流程
除此之外还包括以下非流程控制节点:
1.表单任务
2.组件任务
图形化流程定义工具为用户提供以下两种连接线工具:
1.直线连接线
2.折线连接线
图形化流程定义工具还为用户提供辅助工具来帮助用户完成业务流程的设计工作,这些工具包括:
1.语法检查
2.页面设置
3.架构浏览器
4.规则编辑器
5.数据导入/导出(XML和数据库之间进行转换)
3.1.2.3.流程节点
1.权限设置
对于表单节点,用户可以通过访问控制列表(ACL)来设定节点的执行权限,权限设置支持以下三种方式:
●基于人员设置
●基于群组设置
●基于变量设置
2.表单设置
对于表单节点,用户可以通过表单列表框来选择想要设定的表单。
表单设置支持多种表单方式:
●XML/XSLT
●ASPX
3.规则设置
系统提供独立的规则定义工具,规则定义工具具备以下特征:
●支持关系运算(>,<,>=,<=,<>,=)和逻辑运算(AND、OR、NOT)。
●支持基于数据库字段表示的运算成员,并为用户提供数据源操作向导。
●支持基于XML架构元素表示的运算成员,并为用户提供XML架构操作向导。
4.并行设置
如果当前表单节点有多人同时执行,则用户可以对此节点的执行方式进行设置:
●并行执行(所有人必须都执行)
●协同执行(只需其中一个人执行)
5.提醒设置
用户可以设置是否启用提醒,如果选择启用提醒则用户可以进行以下选项的设置:
●提醒开始时间
●提醒结束时间
●提醒时间间隔
●提醒方式
√邮件提醒
√短消息提醒
√Web页面弹出提醒
提醒方式可以选择邮件提醒,SMS短消息提醒,Web页面弹出提醒等方式,并且用户可以进一步设置提醒标题,提醒内容,提醒接收人等。
3.1.3.表单定义
3.1.3.1.模板管理
授权用户可以对表单模板进行以下操作:
1.新建
2.删除
3.查询
4.复制
5.剪切
6.预览
7.导入/导出
8.签入/签出
通过查询功能,用户可以在大量的表单模板信息中迅速找到目标模型,并可以自定义查询条件以及对查询字段进行模糊匹配。
通过复制和粘贴操作,用户可以轻松的创建现有表单模板的副本,减少大量的重复性操作而不需一切从头做起,为客户节省了宝贵时间,加快对业务变更的响应速度。
通过剪切和粘贴操作,用户可以对现有表单模板在不同的目录间进行移动。
通过删除操作,用户可以放心的删除现有表单模板而不会对正在运行中的流程实例产生任何影响。
用户可以从XML/XSLT文件导入表单,也可以通过指定表单的URL对表单进行引用,用户可以对表单模板进行预览。
为了防止并发冲突,用户在对表单模板进行编辑的情况下必须首先签出。
在当前用户签出表单模板并进行编辑的情况下,其他用户不能对此表单模板进行编辑,只有当前用户完成编辑并签入表单模板之后,其他用户才可以对表单模板进行编辑。
3.1.3.2.导入/导出
表单模板导入工具实现如下功能:
1.导入XML架构和XSLT样式
2.导出XML架构和XSLT样式
3.通过ASPX表单的URL进行引用。
用户可以通过XML架构文件和XSLT样式文件导入表单并对XML架构和XSLT样式文件进行管理,其中一个XML架构文件可以对应多个XSLT样式文件(如下图所示),在创建表单时,用户必须首先导入XML架构文件,然后才能导入此XML架构文件所对应的XSLT样式文件
。
系统支持自定义开发的ASPX表单,用户只需要对现有ASPX表单的URL进行引用即可在流程定义的时候选取此表单。
ASPX表单使用户可以实现任意复杂的表单逻辑。
3.1.4.使用帮助
提供与内容关联的(F1按键)帮助将会使用户感觉到软件本身的专业性和软件厂商的专业性。
3.2.工作流引擎
3.2.1.流程驱动服务
1.用户驱动
当用户新建一项工作任务或用户办理工作完毕提交数据表单,则调用流程驱动服务,自动处理工作任务状态和触发下一个工作任务,当工作任务流转到自动分配规则节点,流程驱动服务将根据流程定义中的自动分配规则处理工作任务状态和触发下一个工作任务。
2.数据驱动
系统数据的状态,系统的时间或是某一事件可以触发一个新的工作流程。
例如:
周报提交会在每周固定时间发起。
3.2.2.催办提醒服务
1.催办服务
催办提醒服务会对定义了催办通知规则的工作任务进行监测,当满足发送催办通知的条件,会自动发送催办通知。
催办通知可以是Email或Web应用消息的形式。
2.提醒服务
催办提醒服务会对定义了提醒通知规则的工作任务进行监测,当满足发送提醒通知的条件,会自动发送提醒通知。
提醒通知可以是Email或Web应用消息的形式。
3.2.3.异常监控服务
监测系统内部出现的异常,当出现错误流程的时候可以调用异常监控服务将错误流程挂起,并将错误信息写入系统日志。
3.3.工作流管理
用户可以对流程实例进行查询统计,分类汇总,监控管理。
1.通过查询功能,用户可以在大量的流程实例信息中迅速找到目标实例,并可以自定义查询条件以及对查询字段进行模糊匹配。
2.用户可以根据流程状态对流程进行分类汇总,分别对运行状态、结束状态、挂起状态、错误状态、逾期状态的流程实例进行查看;用户也可以对流程实例按照业务类型、发起部门、当前位置、发起时间、等待时间等进行分类汇总。
3.用户可以对流程实例进行终止,删除,恢复,重启等操作。
4.用户可以查看错误流程实例信息并将出错信息发送给指定邮件接收人或软件开发商,以方便快速解决问题。
5.用户可以快速对流程实例的相关流程包括父流程,子流程进行查找。
系统可以根据查询和汇总结果生成图表。
3.3.1.活动流程管理
1.当前活动流程列表
列出系统内部当前的活动流程,管理员可以方便的查看当前系统内部活动的流程。
2.显示流程内容
可显示流程中的已处理过任务的表单数据。
3.图形化的流程监控
通过图形化的流程监控可以图形化的现实某个流程的具体进度信息,查看已经处理的任务信息。
4.状态管理
状态管理功能可以设置当前流程的状态,包括取消流程,挂起流程,继续已挂起流程。
3.3.2.历史流程查询
1.历史流程列表
可以查看系统所有历史流程列表。
2.图形化的历史流程信息
通过图形化的显示历史流程的全部任务信息,包括流经的任务路线已经每个任务的基本信息。
3.显示系统历史流程任务中的数据
查看图形化的历史流程中任务中的具体表单数据。
3.3.3.错误流程处理
1.流程错误自动挂起
流程在一个任务向下一个任务提交时,如果发生错误自动将流程设置为错误挂起状态,等待管理员的处理。
2.出错流程回退
管理员可以通过查看出错流程列表发现当前系统内部处于错误挂起状态的流程,对于错误流程管理员可以将流程退回上一个任务,等待该任务执行人的重新处理。
3.历史错误日志分析
流程的每一次错误事件都会记录到流程错误日志中,管理员可以查看并分析错误的多发原因及时调整流程设置。
3.4.工作流平台应用接口
3.4.1.工作流活动
1.创建活动
用户可以根据流程模型列表,创建一个工作任务。
该用户为新创建工作任务的发起者。
2.未处理活动
等待当前用户办理的工作任务列表,用户可以选择办理工作任务。
3.处理中活动
用户一旦选择办理某个任务,该工作任务就会出现在用户“处理中活动”列表中,用户可以保存正在办理的工作任务。
4.已处理活动
列出用户办理过的历史工作任务,用户可以图形化的查看工作任务的详细流转信息。
5.搜索活动
根据关键字或是类型搜索当前活动和历史活动,对于搜索到的活动用户可以图形化的查看活动的详细流转信息。
3.4.2.转办和参考
1.使用转办
用户可以选择就目前某一项工作或审批参考其他用户的意见和建议,选择需要他人协同参考的工作加入协同参考列表。
2.处理转办
显示需要当前用户协同参考的工作或审批列表,用户可以对每一项工作或审批给出具体的参考意见和建议。
3.4.3.工作代理
1.工作代理设置
当用户因为外部原因,在未来的一段时间内不能正常处理工作,可以指定其他用户作为工作代理人,代理目前用户工作,防止工作流程因为某个用户的而停止和延误。
当用户可以正常处理工作的时候,取消工作代理人就可以正常处理工作。
2.代理工作列表
显示当前用户的代理他人工作列表。
用户可以办理列表中的工作和审批。
3.4.4.催办提醒
1.催办信息
催办提醒服务发送的某个任务的催办信息,在用户登录系统的时候,如果有催办信息自动弹出催办信息列表。
2.提醒信息
催办提醒服务发送的某个任务的提醒信息,在用户登录系统的时候,如果有提醒信息自动弹出提醒信息列表。
3.4.5.数据统计
1.工作量统计报表
可以按照部门、人员统计消耗在工作任务上的工作时间灵活的统计工作量。
2.工作效率报表
可以按照工作任务的总体运行时间对部门和人员的工作效率进行灵活的统计。
3.系统负荷报表
可以统计系统在某一段时间或某一个时间点上的同时运行流程,计算和展现系统的负荷。
数据统计报表通过使用SQLServer2000或SQLServer2005的ReportingService可以轻松和工作流平台实现集成。
3.5.工作流平台开发接口(SDK)
除为系统提供有限的应用接口外,系统还为开发人员提供了丰富的开发接口(SDK),开发接口由工作流平台基本类库(ClassLibrary)和开发指南(DeveloperGuide)组成。
使用开发接口,用户可以随心所欲的对工作流平台进行定制和扩展。