优秀工作流引擎功能标准.docx
- 文档编号:15720375
- 上传时间:2023-07-07
- 格式:DOCX
- 页数:15
- 大小:118.57KB
优秀工作流引擎功能标准.docx
《优秀工作流引擎功能标准.docx》由会员分享,可在线阅读,更多相关《优秀工作流引擎功能标准.docx(15页珍藏版)》请在冰点文库上搜索。
优秀工作流引擎功能标准
优秀工作流引擎功能标准
工作流引擎(WorkflowEngine)
[编辑]
工作流引擎概述
工作流引擎是指workflow(工作流)作为应用系统的一部分,并为之提供对各应用系统有决定作用的根据角色、分工和条件的不同决定信息传递路由、内容等级等核心解决方案。
例如开发一个系统最关键的部分不是系统的界面,也不是和数据库之间的信息交换,而是如何根据业务逻辑开发出符合实际需要的程序逻辑并确保其稳定性、易维护性(模块化和结构化)和弹性(容易根据实际业务逻辑的变化作出程序上的变动,例如决策权的改变、组织结构的变动和由于业务方向的变化产生的全新业务逻辑等等)。
Workflow引擎解决的就是这个问题:
如果应用程序缺乏强大的逻辑层,势必变得容易出错(信息的路由错误、死循环等等)。
就好比一辆汽车,外表做得再漂亮,如果发动机有问题就只是一个摆设。
应用系统的弹性就好比引擎转速方面的性能,加速到100公里需要1个小时(业
务流程发生变动需要进行半年的程序修改)还能叫好车吗?
引擎动不动就熄火
(程序因为逻辑的问题陷入死循环)的车还敢开吗?
Workflow关注的是如何缩短流程闲置时间,从而提高企业的业务处理能力并使企业能够关注于真正对企业有意义的增值业务上。
从建立企业神经系统的角度也许更能理解两者的区别。
传统软件不能解决工作流的问题,例如ERP关注的是企业的资源配置,但不可能解决资源传输过程中的损耗和降低传输(流程)的
成本;同样workflow也不能完全解决传统管理软件所能解决的问题,例如对生产管理的MRP系统所能解决的生产过程控制通过workflow很难实现。
但一个好的传统软件如果希望能自动化地在整个企业中应用起来,必须有一个强大的逻辑层,用以解决信息传递的逻辑判断和自动流转,这个时候就需要workflow的平
台。
今天的很多优秀的工作流解决方案集成了短信息、页面服务、目标管理、文件管理和其他一些操作系统才提供的服务。
[编辑]
工作流引擎的五大接口
工作流参考模型确定了工作流管理系统的基本架构。
该架构是开发工作流软件时应当采纳的系统模型,当然,一个工作流管理系统也可以不遵循这个模型标准,或只实现这个模型的一部分,但事实证明,这个模型结构是目前最为合理的。
系统的核心部分是工作流引擎,引擎是驱动流程流动的主要部件,它负责解释工作流流程定义,创建并初始化流程实例,控制流程流动的路径,记录流程运行状态,挂起或唤醒流程,终止正在运行的流程,与其他引擎之间通讯等等工作。
WfM(没有针对引擎的实现提供具体的标准,因为对引擎做过多的约束并没有多大的现实意义。
一个工作流管理系统可以包含一个或多个引擎,并通过API向外部提供五
个方面的功能服务,这些功能分别为:
•接口1—流程定义的导入导出
•接口2—同客户端应用程序和工作列表处理程序之间的交互
•接口3—软件工具和应用程序的调用
•接口4—不同工作流管理系统之间的协同工作
•接口5—管理和监视功能
接口1—流程定义的导入导出
许多不同厂商提供的工具可以进行工作流流程的分析、建模、描述和归档等工作。
这些工具需要识别公共的流程交换格式,以支持在这些不同的产品之间传
送工作流程流程定义。
接口1便定义了这样的交换格式。
此外,接口1还定义了设计环境与运行环境之间交换的规范,以使不同的建模工具产生的流程定义可以输入到不同的工作流产品的运行环境中。
为了提供一个访问和描述工作流定
义的公共方法,需要引入一个工作流元数据模型(meta—dataModel),这个模
型确定了流程定义中用到的一般的实体,这些实体都有不同的属性,不同厂商开发的工具可以根据公共的交换形式向工作流运行环境传送这些模型,传送可以通
过API实现,也可以通过批量(Batch)传送实现。
元模型提供了流程定义交换中用到的基本的实体及其属性,这些都是工作流
流程的组成部分,这些实体包括:
•工作流流程定义
•工作流流程活动
•过渡信息(TransitionInformation)
•工作流参与者
*组织模型
*工作流应用程序
*工作流相关类型
*工作流相关数据
*系统和环境数据
*数据类型和表达式
流程定义的交换
在不同的系统之间传递流程定义数据可能需要不同的机制,但在所有的情况
下,流程定义数据的表达必须是一致的,这些表达包括一些公共的对象、关系及其属性。
接口2与接口3:
工作流管理系统必须提供同用户之间交互的通道,以便用户参与到系统的运行中。
接口2主要完成这方面的功能。
WfM(在关于接口2的规范中定义了工作流管理系统必须提供的类型、数据结构、API和错误代码,并以C语言头文件的形式提供。
接口2所提供的功能大致可以分为一下五个方面:
•1、会话的建立和与撤销;
•2、获取工作流流程定义及状态;
•3、工作流流程实例的操作,如创建、挂起、终止流程,获取和设置流程属性等;
工作流活动实例的操作,如获取和设置活动的属性,改变活动的状态
工作列表(worklist)及工作项(workitem)的操作,如获取工作列处理工作项等。
通过这些功能,用户可以完成与工作流管理系统之间交互的所有任务:
登录
系统、打开自己的工作列表、处理自己的工作任务、将完成的任务提交给系统、将自己的任务转交给其他用户等等。
工作流系统在运行过程中有时需要调用外部应用程序,以完成系统不能完成的工作(比如,发送Email或传真,扫描文件等),或者与其他系统集成到一起。
此时可以通过接口3来完成。
接口3的功能同接口2的功能大部分是相同的,因此,这两个接口有融合的趋势。
接口3主要规定了调用外部应用程序的函数规范,以及外部应用程序返回数据的格式。
接口4—不同工作流管理系统之间的协同工作
在企业级的工作流系统中,流程往往需要跨越多个服务器或系统,比如应用于跨国公司或大型集团公司的工作流系统经常会有这种的需求,此时就需要服务器或系统之间进行通讯,交换流程控制信息和流程定义等数据,以实现流程跨地域运行。
WfM(在规范中以C函数的形式提供了这些控制的定义,其中包括以下几个方面的功能:
•1、创建流程实例;
・2、获取流程实例状态;
•3、获取和设置流程实例属性;
•4、启动或终止流程实例;
•5、改变流程实例的状态;
•6、改变流程实例的属性;
•7、更新流程实例。
服务器或系统之间信息交换的格式有多种,例如:
文件、数据库表、E-mail
或直接通过网络传送的数据流等等。
接口5—管理和监视功能
此接口提供给用户管理和监控系统的运行状态、查看系统运行的历史记录的功能。
WfMC在此接口的规范中定义了各种审计信息的数据格式,这些格式包括:
•1.流程实例(ProcessInstanee)审计信息:
包括创建、启动流程实例和子流程实例的审计数据;流程实例状态变化的审计数据;流程实例属性变化的审计数据;
•2.活动实例(ActivityInstanee)审计信息:
包括活动实例状态变化的审计数据;活动实例属性变化的审计数据;
•3.工作项(Workitem)审计信息:
包括工作项状态变化的审计数据;工作项分配合重新分配的审计数据;工作项属性变化的审计数据;
•4.远程操作审计信息:
包括开始和停止会话(Session)的审计数据;远程创建流程实例和远程改变流程实例状态的审计数据;远程获取和设置流程实例属性的审计数据;会话管理的审计数据;
•5.流程定义审计信息;
•6.扩展的审计信息及专用的审计信息。
这些审计数据在系统运行时刻由系统自动记录在数据库或文件中,可通过系
统提供的API进行统计和查询,或者通过系统工具导出到系统外部。
另外,此接口还要提供系统管理与流程控制的功能,如:
系统流程数据的备份和恢复,用户管理,流程管理等等。
通过这五个接口,工作流管理系统可以同外部的软件工具进行交互,这些工
具可以由同一厂商提供,也可以由不同的厂商提供,但前提是这些工具都必须遵循WfMC勺规范。
用户也可以有充分的选择空间来决定哪一厂商的产品,或者自己开发属于哪一个接口的工具。
这五个接口一般通过API的形式提供给用户或软件开发商,这些API称为WAP(WorkflowAPI),也有厂商将API封装成组件形式提供,以简化开发难度、降低成本并提高效率。
可以用下面的图来表示这五个接口的作用:
1:
作流参考模型
液程定文工具
[编辑]
工作流引擎的关键因素
工作流引擎主要功能之一帮助用户适应流程多变性的需要的,给客户带来价值就是在于流程发生变化时的易维护性和低成本,工作流引擎就像是汽车的发动机,一个汽车即使再漂亮,没有强劲的引擎支撑也能难成为一辆好车,工作流引擎的几个关键因素如下:
1、适合东方流程特性、易用的流程设计器
包括各种环节特性、路径定义、时限定义、流程关联、参与人员(主办、协办、阅知)、表单权限、各种特殊权限等等。
各种流程特性可以用工具通过简单易用的方式定义出来。
2、高性能、高稳定性的流程引擎
如果工作流引擎只是用于少数人玩玩的情况,大可不必那么严谨,工作流引擎对于大规模数据量、并发访问、各种流程逻辑的支撑能力非常关键,因此高性能和高稳定性是非常关键的。
E8.Net工作流引擎的高性能和高稳定性在大量实际的案例中得到了证实。
3、工作流应用的快速开发架构
单纯的工作流引擎对于用户来说是没有意义的,就像司机拿着发动机不知道要做什么一样,因此好的工作流引擎的关键因素之一是提供终端应用系统的快速开发能力,这样对于软件提供者和软件应用者是双赢的局面。
4、强大的业务扩展能力
工作流引擎帮助应用软件提供者很好的处理了流程逻辑的实现,可是如何支撑业务能力的扩展也是关键因素之一,比如:
流程设计是由用户通过流程设计器去定义的,那如何实现各种未知流程下的统计信息呢?
比如E8.Net工作流曾经开发过的物流配送系统,用户定义了各种未知流程同时又能统计各个配送点当月的配送量。
好的工作流引擎的关键因素远不止这几点,目前工作流引擎产品层出不穷,可是真正的区别是在于末端需求的实现能力和实现成本。
优秀工作流引擎功能标准
一般性功能(GeneralFunctions)
1.免程序开发(NoProgrammingorScripting)
2.可处理大量流程工作(VolumeTransactionProcessing)
3.三层式弹性化架构(ThreeTier,ScaleableArchitecture)
4.稳定的信息传递架构(RobustMessageTransports)
5.流程反向回传/抽单(ProcessRollback)
6.支持LDAP目录服务
7.支持企业级数据库(SupportforEnterpriseDatabases)
8.动态用户授权(ActiveUserLicensing)
9.统一的登入ID与密码(UnifiedID/Password)
10.使用者网域安全性(UserDomainSecurity)
流程与窗体设计功能(Designer)
11.图形化工作流程图(GraphicalWorkflowMaps)
12.基于角色的路由(RoleBasedRouting)
13.平行会签(ParallelRouting)
14.基于关系的路由(RelationshipBasedRoutings)
15.工作队列(Queues)
16.图形化数据路由(GraphicalDataRouting)
17.动态会签(DynamicRouting)
18.条件化步骤(ConditionalSteps)
19.条件化步骤跳跃(ConditionalJumps)
20.条件化取消流程(ConditionalAborts)
21.条件化退回(ConditionalReturns)
22.条件化收件人(ConditionalRecipients)
23.条件定义清单(EventConditionTables)
24.条件定义清单与其它步骤互动(StatusVariablesinEventConditionTables)
25.退件(ReturnStep)
26.动态定义群组(DynamicGroups)
27.整合智能型窗体设计工具(IntegratedIntelligentForms
Designer)
28.表格透过服务器端连接数据库(Server-SideDatabaseConnectivityforForms)
29.表格通用变量(GlobalVariablesinForms)
30.电子签章(Signatures)
31.备注留言板(Memos)
32.表格支持电子扩展表(SpreadsheetGridinForms)
33.多页表格(MultiplePagesperForm)
34.子表(Sub-Forms)
35.必备与必读文档(RequiredandMust-ReadAttachments)
36.附件功能(Attachment)
37.资料验证与格式化输入(DataValidationandMasking)
38.支持URL连结(URLLinks)
39.支持HTML/Java(SupportDHTML/Java)
40.支持第三方对象开发(Third-PartyObjects(Controls))
41.自订传递路径(AdhocRouting)
42.连接点(JunctionSteps)
43.重复激活流程(Iteration)
44.转折点(Anchors)
45.编辑业务规则(EditingBusinessRules)
46.自动暂停或恢复继续流程(HoldConditions)
47.发起子流程(SubProcesses)
48.同步/异步子流程(Synchronous/AsynchronousSub
Processes)
49.定时激活(PeriodicLaunches)
50.第三方软件接口(AgentAPI/SDK)
51.Excel接口(ExcelAgent)
52.Word接口(WordAgent)
53.ODBC接口(ODBCAgent)
54.ASCII接口(ASCIIAgent)
55.文件接口(FileAgent)
56.电子邮件接口(E-mailAgent)
57.呼叫DLL接口(InvokeDLLAgent)
58.接口中心(AgentStation)
59.流程仿真测试(Simulation)
60.流程仿真除错工具(DebuggingToolsduringSimulation)
61.连续激活案件(RepeatingSteps)
62.取消案件或步骤(AbortSteporIncident)
63.可重复送件的步骤(PerpetualSteps)
64.保密步骤(PrivateUserSteps)
65.禁止代理的工作(Non-assignableUserTasks)
66.复制流程步骤(ReplicatingTasks)
67.动态更改工作优先级(DynamicTaskPrioritization)
68.可定义工作流程拥有人(ProcessOwners)
69.工时成本计算(TaskRates)
70.工作完成时间(TaskCompletionTimes)
71.群体开发流程(CollaborativeDesignviaMapletsTM)
72.数据可传递至子流程(DataTransfertoSub-Processes)
73.可同时监控主/子流程(ViewSub-ProcessStatusinMonitorView)
74.数据捆绑通用变量(Databoundglobalvariables)
75.流程设计文件制作(ProcessDocumentation)
76.以邮件通知工作逾时(E-mailNotificationofLateCondition)
77.可自订通知邮件(CustomizableNotificationMessages)
78.群体响应(GroupResponse/Vote)
79.指定代号启始值(SeededIncidentNumber)
80.指定工作暂停(DelayedAssignment)
81.启始新流程权限(ProcessInitiationRights)工作流程服务器功能(WorkflowServerFeatures)
82.支持多个流程服务器(MultipleWorkflowServers)
83.集中式的服务器端数据库连结(Centralized,Server-side
DatabaseConnectivity)
84.以文字文件激活流程(ProcessLaunchviaTextFiles)
85.通过E-Mail激活流程(ProcessLaunchviaE-mail)
86.符合业务逻辑的服务器端动态连接库(Server-SideDLLsfor
CustomWorkflowLogic)
87.工作处理记录文件(TransactionLogFiles)
88.服务器定时清仓维护(PeriodicServerHousekeeping)
89.清仓窗口(HousekeepingWindow)
90.处理停顿流程(HandlingofStalledProcesses)
91.服务器自动复原(AutomaticServerRecovery)客户端程序功能(ClientFeatures)
92.B/S结构的客户端界面(Browser-basedClientInterface)
93.依重要程度优先级排列工作清单(PrioritizedClientTaskList)
94.主动式电子邮件通知(ProactiveE-mailNotifications)
95.进度落后工作调整(LateTaskEscalation)
96.用户监看流程状况(StatusMonitoringatClient)
97.分布式用户管理(DistributedUserAdministration)
98.用户指定代理人(ClientAssignFunctions)
99.由工作队列中选择工作(SelectTaskfromQueue)
100.用户自订工作窗口画面(CustomClientViews)
101.显示已被代理的工作(ViewAssignedTasks)
102.表格快取功能(FormsCaching)
103.表格样板(FormTemplates)
104.表格自动归档(AutomaticArchiving)
105.自动更新程序与组件(AutomaticSoftwareUpdatefor
BrowserClients)
106.浏览器端的数字认证功能(DigitalCertificateforBrowser
Software)
107.公众用户(PublicClient)
108.游移用户(RovingUser)
109.自动定时更新画面(AutomaticPeriodicRefresh)
110.异常状况通知(NotificationofAbnormalSituations)
111.数据库安全(DatabaseSecurity)
112.开放的客户端软件(OpenClient)企业组织图功能(OrganizationChartFeatures)
113.企业组织图(OrganizationCharts)
114.子组织图(Sub-Charts)
115.组织图拥有人(ChartOwners)
116.群组(Groups)
117.循序群组(SequentialGroups)
118.权重群组(WeightedGroups)
119.工作职务群组(JobFunctionGroups)
120.多重角色管理(MultipleRolesPerUser)
121.相对职务关系(RelativeJobFunctions)
122.职务搜寻(Search)
123.组织调整(Reorganize)
系统与流程管理功能(AdministratorFeatures)
124.图形化工作流程监控(GraphicalWorkflowMonitoring)
125.版本控制(VersionControl)
126.工作负荷量显示(WorkloadView)
127.任务成本统计(TaskCostStatistics)
128.工作流程成本统计(ProcessCostStatistics)
129.单一步骤超时统计(StepLagTime)
130.工作流程超时统计(ProcessLagTime)
131.流程暂时停用(DisableProcesses)
132.由队列中临时调派工作(PullTasksfromQueue)
133.工作重送(ResendSteps)
134.非工作日设定(ExclusionDays)
135.代理未来工作(AssignFutureTasks)
136.工作流程信息输出(WorkflowMetricsExport)
137.能临时更改收件人(AbilitytoChangeRecipient)
138.可显示进行中流程的内容(AbilitytoViewWorkflowData)
139.自订案件过滤清单(User-DefinedQueriesforReports/
MonitorView)
140.自动安装流程给新的部门成员(AutomaticInstalltoNew
GroupMembers)
141.可自行定义统计报表(ConfigurableReports)
142.可指定代理期限(AssignUntil)
143.可传回子流程统计数据(Roll-upSub-ProcessStatistics)
144.强迫第三方应用软件结束(AbilitytoCompleteThird-Party
ApplicationSteps)
[创
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 优秀 工作流 引擎 功能 标准