`
timeson
  • 浏览: 147524 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

工作流_介绍_体系结构(B5)

阅读更多


        图2.6 所示为WFMC提出的工作流参考模型的体系结构图。该参考模型的体系结构给出了抽象的工作流管理系统的功能组成部件和接口,它能够满足工作流管理系统合产品所应该具有的主要功能特征,可为实现工作流产品之间的互操作提供公共的基础。按照WFMC的设想,工作流的每个功能部件可以在不同的软硬件平台上采用不同的方法实现,同样接口也可以在不同的软硬件平台上采用不同的设计技术和编程语言进行编程。当然,设想归设想,实际归实际。一般来说一套工作流系统会采取相同的设计技术,在作集群的时候也是采取相同的工作流系统来实现。



                                        图2.6、工作流管理系统体系架构


从图2.6可以看出,通用工作流系统的主要功能组件有三类:
  •  软件组件:为工作流管理系统的各种功能提供支持;
  •  各种类型的系统定义和控制数据:被一个或多个软件组件所使用;
  •  应用程序和应用程序数据:对于工作流管理系统来说,它们其实并不是工作流产品的组成部分,而是属于外部系统和数据,但是它们会被工作流产品调用来完成全部或部分工作流管理的功能,从而成为整个工作流系统的一部分。


通用工作流管理系统中涉及到四种数据,它们共同辅助完成工作流管理功能。
  • 工作流控制数据:工作流执行服务/工作流引擎通过内部的工作流控制数据来辨别每个流程或活动实例的状态。这些数据由工作流执行服务/工作流引擎进行控制。用户、应用程序或其它的工作流引拿工作流执行服务不能对其直接进行读写操作,它们可以通过向工作流执行服务/工作流引擎发消息请求来获得工作流控制数据的内容。
  •  工作流相关数据:工作流管理系统通过工作流相关数据来确定流程实例状态转换的条件,并选择下一个将执行的活动。这些数据可以被工作流应用程序访问并修改。因此,工作流管理软件需要在活动实例之间传递工作流相关数据。
  •  组织机构数据:通过参与者映射到业务系统的组织机构上。
  •  工作流应用数据(工作流系统不涉及到):指那些由应用程序操作的数据。它们是针对应用程序的,是企业完成具体的业务功能所需要的数据,如产品结构数据、订单数据、生产作业计划数据等。工作流管理系统无法也不需要对它们进行访问。


          过程导航判断或工作流引擎中的其他控制操作,都以工作流应用程序或者更新的数据为基础,这些数据可以被工作流引擎和条件工作流相关数据所访问,这是工作流引擎唯一可访问的应用程序数据。尽管工作流引擎负责在应用程序之间传递工作流应用程序数据,但工作流应用程序数据直接由被调用过程操作。不同的应用程序由工作流过程内的不同活动调用。







图2.7、工作流系统的系统组件和接口

        工作流管理系统经过对业务、公文流转过程的分析以及抽象,围绕着业务交互逻辑、业务处理逻辑以及参与者三个问题进行解决,业务交互逻辑对应的为业务的流转过程,在工作流管理系统中对应的提出了工作流引擎、工作流建模工具、流程操作来解决业务交互逻辑的问题;业务处理逻辑对应业务流转过程中的表单、文档等的处理,在工作流管理系统中对应的提出了表单设计器、与表单的集成来解决业务处理逻辑的问题;参与者对应的为流转过程中环节对应的人或程序,在工作流管理系统中通过与应用程序的集成来解决参与者的问题。


        工作流管理系统为方便业务交互逻辑、业务处理逻辑以及参与者的修改,多数通过提供可视化的流程建模工具以及表单设计器来实现:为实现工作流管理系统的扩展性,多数提供了一系列的API。


         一个完整的工作流管理系统通常由工作流引擎、工作流过程建模工具、流程操作、工作流客户端程序、流程监控、表单设计器、与表单的集成以及与应用程序的集成八个部分组成:

1. 工作流引擎:工作流引擎作为工作流管理系统的核心部分,主要提供了对于工作流定义的解析以及流程流转的支持。工作流定义文件描述了业务的交互逻辑,工作流引擎通过解析此工作流定义文件按照业务的交互逻辑进行业务的流转,工作流引擎通常通过参考某种模型来进行设计,通过调度算法来进行流程的流转(流程的启动、终止、挂起、恢复等),通过各种环节调度算法(split、AND、OR等)来实现对于环节的流转哪节的合并、分叉、选择、条件性的选择等)。

2. 工作流过程建模工具:工作流过程建模工具为可视化的流程设计工具,用户通过拖放等方式来绘制流程,并通过对于节点的配置来实现对于节点操作、节点表单、节点参与者的配置。工作流过程建模工具为用户以及开发商提供了快速绘制、修改流程的方式,工作流过程建模工具的好坏决定到工作流管理系统的易用性。按照实现方式和采用的架构可以分为独立的过程建模工具和B/S结构的建模工具。

3. 流程操作:流程操作指所支持的对于流程环节的操作,如启动流程、终止流程、挂起流程、直流、分流(单人办理)、并流(多人同时办理)、联审等,象这些流都是可直接基于引擎所提供的环节调度算法来直接支持的,而在实际的需通常需要自由的对于流程进行干涉,如取回、回退、跳转、追加、传阅、办理等,而这些流程操作对于工作流引擎来说是不合理的,因此必须单实现。流程操作支持的好坏直接决定了一个工作流管理系统的实用性。

4. 工作流客户端程序:工作流客户端程序为工作流系统的表现形式,提供待办列表、已办列表、执行流程操作、查看流程历史信息等来作流系统的功能。

5. 流程监控:流程监控通过提供图形化的方式来对流程执行过程进行监控,包括转状况,每个环节所耗费的时间等等,而通过这些可相应的进行流程的以提高工作效率。

6. 表单设计器:表单设计器为可视化的表单设计工具,用户通过拖放的方式来绘制需的表单,并可相应的进行表单数据的绑定。表单设计器为客户以及开发商提供了快速修改表单的方法,表单设易用与否以及功能的完善与否影响到工作流管理系统的易用性。

7. 与表单的集成:
通常业务流转需要表单来表达实际的业务,因此需要与表单进行集现业务意义,与表单的集成通常包括表单数据的自动获取、存储、修改,域的权限控制、流程相关数据的维护以及流程环节表单的绑定。与表单的集成的好坏影响到工作流管理系统是否能提高开发效率。

8. 与应用程序的集成:通过与应用程序的集成来完善工作流管理系统的业务意义,主要涉是与权限系统以及组织机构的集成。流程环节需要相应的绑定不同的执行而流程操作通常需要与权限系统、组织机构进行关联。


  • 大小: 38.1 KB
  • 大小: 35.1 KB
1
0
分享到:
评论

相关推荐

    面向B5G6G的三三三网络体系架构和优化学习机制.docx

    ### 面向B5G/6G的三三三网络体系架构和优化学习机制 #### 1. 研究背景与动机 随着技术的进步和社会发展的需求不断增长,下一代通信网络面临着前所未有的挑战。B5G/6G网络不仅需要处理海量的数据传输需求,还要满足...

    计算机系统导论2015-期末-无答案-B5-201601041

    【计算机系统导论】是一门深入探讨计算机内部工作原理的学科,主要涵盖了计算机体系结构、操作系统、编译原理等多个方面。本门课程的期末考试强调了考试规则和纪律,要求考生严格遵守,确保考试公正公平。 在考试...

    软件工程-理论与实践(许家珆)习题答案

    结构化方法的工作模型是使用螺旋模型进行开发。(×) 4. 结构化方法和JSP方法都不适合于大型软件的开发。(√) 5. 原型化开发方法包括生成原型和实现原型两个步骤。(×) 6. 面向对象的开发方法包括面向对象的分析...

    基于塞伯坦和antDesign的最佳工程实践解决方案

    5. **最佳工程实践**:这部分内容可能包括代码组织结构(如采用Git工作流)、性能优化(如懒加载、代码分割)、错误处理、测试策略(单元测试、集成测试)以及持续集成/持续部署(CI/CD)。 6. **项目构建工具**:...

    基于NSGA2与熵权TOPSIS的电力系统储能选址定容优化及Matpower潮流计算研究

    内容概要:本文详细探讨了利用NSGA2算法进行电力系统中储能系统的选址和定容优化,并结合熵权TOPSIS方法选择最优解。首先介绍了使用Matpower工具包进行潮流计算的基础步骤,随后深入讨论了储能系统引入后的复杂性和优化目标设定。文中展示了如何构建目标函数,包括储能的投资成本和系统电压偏差,并详细解释了NSGA2算法的具体实现,如种群初始化、交叉变异操作以及约束条件处理。最后,通过熵权法确定权重并应用TOPSIS方法对多个优化结果进行评估,选出综合性能最佳的储能配置方案。 适合人群:从事电力系统规划、优化算法研究的专业人士,尤其是对储能系统优化感兴趣的科研人员和技术开发者。 使用场景及目标:适用于需要解决电力系统中储能系统选址和定容问题的实际工程项目。主要目标是在满足系统稳定性要求的前提下,最小化储能系统的投资成本,提高系统的经济性和可靠性。 其他说明:文章提供了详细的代码片段和理论推导,帮助读者更好地理解和实施所提出的优化方法。此外,还提到了一些实际应用中的注意事项,如SOC约束处理、参数选择等,为后续的研究和应用提供了宝贵的实践经验。

    基于python+pyqt5实现视频自动化下载、剪辑和上传系统源码+项目说明.zip

    基于python+pyqt5实现视频自动化下载、剪辑和上传系统源码+项目说明.zip 该项目是用脚本实现部分视频网站视频内容的自动化下载、剪辑以及上传,其中界面是用PyQT做的。 使用的浏览器驱动是undetected_chromedriver,可以跳过tiktok的机器人检查 使用的浏览器是91,版本:Google_Chrome_(64bit)_v91.0.4472.77 【功能】 自动从各种视频网站下载视频 支持视频剪辑和合集制作 支持自动上传视频到视频网站 技术栈 Python PyQT undetected_chromedriver

    西门子S7-1200双套三坐标6轴联动控制系统的设计与实现

    内容概要:本文详细介绍了西门子S7-1200双套三坐标6轴联动控制系统的开发与调试经验。主要内容涵盖双PLC通信机制、轴控制逻辑、安全联锁设计以及触摸屏程序绑定等方面。文中通过具体代码示例展示了如何利用SCL语言实现高效稳定的多轴联动控制,并分享了实际项目中的最佳实践和技术难点解决方案。此外,还讨论了程序结构优化、报警代码设计、数据块管理等关键环节,强调了模块化设计思想的应用及其带来的效率提升。 适合人群:从事工业自动化领域的工程师,尤其是熟悉西门子PLC编程的专业人士。 使用场景及目标:适用于需要进行复杂运动控制的自动化生产线,如汽车制造、电子装配等行业。主要目标是提高生产效率,确保设备运行的安全性和稳定性。 其他说明:文中提到的许多技术和方法不仅限于特定型号的PLC,对于其他品牌的控制器也有一定的借鉴意义。同时,提供的代码片段可以直接应用于类似项目中,帮助开发者快速搭建可靠的控制系统。

    NFC Tools Pro

    NFC Tools是一个应用程序,允许你在你的 NFC 标签和其他 RFID 兼容芯片上读取或写入或编程代码任务。NFC Tools PRO版本包括很多其他的附加功能,比如配置文件管理等。保存你的NFC标签或任务的配置文件,以便你以后重新使用它们。导出和导入很容易。NFC Tools PRO官方版允许你直接从现有的 NFC 标签导入你的记录或任务。 你可以很快编辑你的标签。此外还可以直接运行你的任务配置文件,不需要NFC 标签。

    protobuf-6.30.1-py3-none-any.whl

    该资源为protobuf-6.30.1-py3-none-any.whl,欢迎下载使用哦!

    FLAC3D中壳单元与衬砌单元内力提取及处理技巧

    内容概要:本文详细介绍了如何在FLAC3D中提取壳单元和衬砌单元的关键内力数据,如弯矩、轴力和剪力。针对壳单元,文中提供了具体的FISH命令和函数,展示了如何利用gp.extra属性提取弯矩,并强调了局部坐标系方向的重要性。对于衬砌单元,则介绍了专门的命令和注意事项,如使用liner组件提取轴力和剪力,以及如何处理弯矩数据。此外,还分享了一些实用的经验和技巧,如批量数据处理、单位换算、内力符号规则等。最后,提到了使用Python进行后处理的方法,将提取的数据转化为更直观的形式,便于进一步分析。 适合人群:从事岩土工程、隧道工程及相关领域的工程师和技术人员,尤其是对FLAC3D有一定基础的用户。 使用场景及目标:帮助用户掌握FLAC3D中壳单元和衬砌单元内力提取的具体方法,提高工作效率,确保数据分析的准确性。适用于需要进行结构内力分析、支护设计优化等项目的工程师。 其他说明:文章不仅提供了详细的命令和函数示例,还分享了许多实战经验和常见错误的规避方法,有助于初学者少走弯路。同时,强调了内力符号规则和单位换算的重要性,避免因疏忽导致的重大失误。

    ST PMSM FOC电机控制资料包2.0:全面解析STM32电机控制核心技术与实战技巧

    内容概要:本文详细介绍了ST公司发布的HL07:ST PMSM FOC电机控制资料包2.0的内容及其应用。资料包涵盖了ST芯片电机控制的全源代码、详细文档、多个工程源码、stm32库培训资料及例程源码。文中通过具体的代码示例,如GPIO初始化、PWM配置、ADC采样、Clarke变换、PID调节器、SVPWM生成等,深入剖析了电机控制的关键技术和优化技巧。此外,还揭示了一些隐藏的技术细节和调试技巧,如硬件同步、动态调整PID参数、电机参数自识别等。 适合人群:电机控制工程师、嵌入式开发人员、尤其是对STM32和FOC算法感兴趣的开发者。 使用场景及目标:帮助读者深入了解ST芯片电机控制的具体实现,掌握从硬件配置到算法优化的全过程,提高实际项目的开发效率和质量。适用于需要进行电机控制系统设计、调试和优化的工程项目。 其他说明:资料包中的代码和文档非常实用,提供了丰富的实战经验和优化建议,尤其适合初学者和有一定基础的研发人员。同时,文中提到的一些特殊技巧和注意事项有助于避免常见的开发陷阱,提升系统的稳定性和性能。

    人工智能2025年AI领袖与技术发展趋势:多模态AI、量子计算及行业应用展望

    内容概要:文章探讨了2025年AI技术发展趋势及潜在的GPT级技术突破。首先回顾了GPT系列模型的发展历程及其对自然语言处理领域的深远影响。接着,通过介绍Geoffrey Hinton、李飞飞和张晨等AI领袖的观点,阐述了AI技术在实际应用场景中的挑战与机遇。文中详细描述了AI大模型的演进,包括多模态技术的发展、轻量化趋势以及可控性和可解释性的提升。此外,还介绍了AI计算力的革命性升级,如量子计算、云计算+AI和边缘AI的发展。最后,文章分析了AI在医疗、金融、教育、自动驾驶等行业的落地应用,并指出了面临的挑战与机遇,展望了未来的技术和社会影响。 适合人群:对AI技术感兴趣的从业者、研究人员、企业家及政策制定者。 使用场景及目标:①了解AI技术的最新进展和未来趋势;②探索AI技术在各行业的应用前景;③评估AI技术带来的挑战与机遇,为相关决策提供参考。 阅读建议:本文内容涵盖广泛,既有技术细节又有宏观展望,建议读者结合自身背景选择感兴趣的部分深入阅读,重点关注与自身行业或研究方向相关的章节。

    基于樽海鞘算法优化的极限学习机回归预测及其与BP、GRNN、ELM的性能对比研究

    内容概要:本文详细探讨了基于樽海鞘算法(SSA)优化的极限学习机(ELM)在回归预测任务中的应用,并与传统的BP神经网络、广义回归神经网络(GRNN)以及未优化的ELM进行了性能对比。首先介绍了ELM的基本原理,即通过随机生成输入层与隐藏层之间的连接权重及阈值,仅需计算输出权重即可快速完成训练。接着阐述了SSA的工作机制,利用樽海鞘群体觅食行为优化ELM的输入权重和隐藏层阈值,从而提高模型性能。随后分别给出了BP、GRNN、ELM和SSA-ELM的具体实现代码,并通过波士顿房价数据集和其他工业数据集验证了各模型的表现。结果显示,SSA-ELM在预测精度方面显著优于其他三种方法,尽管其训练时间较长,但在实际应用中仍具有明显优势。 适合人群:对机器学习尤其是回归预测感兴趣的科研人员和技术开发者,特别是那些希望深入了解ELM及其优化方法的人。 使用场景及目标:适用于需要高效、高精度回归预测的应用场景,如金融建模、工业数据分析等。主要目标是提供一种更为有效的回归预测解决方案,尤其是在处理大规模数据集时能够保持较高的预测精度。 其他说明:文中提供了详细的代码示例和性能对比图表,帮助读者更好地理解和复现实验结果。同时提醒使用者注意SSA参数的选择对模型性能的影响,建议进行参数敏感性分析以获得最佳效果。

    工业自动化中汇川PLC与基恩士PLC基于EIP通讯的联机实现及应用

    内容概要:本文详细介绍了汇川PLC与基恩士PLC通过Ethernet/IP (EIP) 协议实现联机的方法及其应用场景。首先,文章解释了硬件配置,包括基恩士KV-7300 CPU搭配KV-EP21v以太网通信模块以及汇川AM-400系列PLC的网口连接。接下来,分别阐述了基恩士和汇川PLC的程序框架,涵盖初始化EIP通讯模块、设置IP地址、建立连接、数据映射及心跳检测机制等关键技术点。此外,文中提供了具体的代码示例和调试建议,如使用Wireshark抓包工具排查问题,并强调了数据同步、字节序转换、超时处理等方面需要注意的地方。最后,分享了一些实践经验,例如确保正确的IP地址分配、合理的缓冲区大小规划、良好的接地措施等。 适合人群:从事工业自动化领域的工程师和技术人员,尤其是对PLC编程有一定基础并希望深入了解不同品牌PLC间通讯机制的专业人士。 使用场景及目标:适用于需要将不同品牌PLC集成到同一个控制系统中的工业项目,旨在提高系统的灵活性和互操作性。通过掌握本文介绍的技术要点,可以有效减少因PLC品牌差异带来的兼容性和稳定性问题。 其他说明:文中不仅提供了理论指导,还结合实际案例进行了深入浅出的讲解,帮助读者更好地理解和应用相关技术。同时,针对可能出现的问题给出了预防和解决方案,使读者能够在实践中少走弯路。

    基于STM32F4的VESC非线性磁链观测器移植与优化

    内容概要:本文详细记录了作者将VESC项目的非线性磁链观测器移植到STM32F4开发板的过程。首先介绍了FOC技术和VESC源码的重要性和特点,然后重点阐述了非线性磁链观测器的实现方法及其核心代码。接着讨论了移植过程中遇到的技术难题,如实时性、稳定性、中断处理、电流采样等问题,并分享了解决这些问题的具体措施。最后展示了测试结果,证明了移植的成功以及观测器的良好性能。 适合人群:具有一定嵌入式开发经验的研发人员,特别是从事电机控制领域的工程师和技术爱好者。 使用场景及目标:适用于希望深入理解VESC源码和非线性磁链观测器的工作机制,掌握STM32F4平台上FOC算法实现的人群。目标是在实际项目中应用这些技术,提高电机控制系统的性能。 其他说明:文中提供了大量实用的代码片段和调试技巧,帮助读者更好地理解和解决问题。此外,作者还分享了一些个人经验和心得,增加了文章的趣味性和实用性。

    Quectel-LTE&5G-Windows-USB-Driver-V2.2.6-beta-20201230

    移远EC20 Windows驱动 操作系统 - 桌面系统 - 移远EC20 Windows驱动

    检证资料jianzhen.ppt

    检证资料jianzhen.ppt

    ### 【嵌入式开发】基于Qt的ATK-DLRK3568实战指南:从入门到项目实战题:嵌

    内容概要:本文档《ATK-DLRK3568嵌入式Qt开发实战V1.2》是正点原子出品的一份面向初学者的嵌入式Qt开发指南,主要内容涵盖嵌入式Linux环境下Qt的安装配置、C++基础、Qt基础、多线程编程、网络编程、多媒体开发、数据库操作以及项目实战案例。文档从最简单的“Hello World”程序开始,逐步引导读者熟悉Qt开发环境的搭建、常用控件的使用、信号与槽机制、UI设计、数据处理等关键技术点。此外,文档还提供了详细的项目实战案例,如车牌识别系统的开发,帮助读者将理论知识应用于实际项目中。 适合人群:具备一定Linux和C++基础,希望快速入门嵌入式Qt开发的初学者或有一定开发经验的研发人员。 使用场景及目标: 1. **环境搭建**:学习如何在Ubuntu环境下搭建Qt开发环境,包括安装必要的工具和库。 2. **基础知识**:掌握C++面向对象编程、Qt基础控件的使用、信号与槽机制等核心概念。 3. **高级功能**:理解多线程编程、网络通信、多媒体处理、数据库操作等高级功能的实现方法。 4. **项目实战**:通过具体的项目案例(如车牌识别系统),巩固

    tcl-tclxml-devel-3.2-26.el8.x64-86.rpm.tar.gz

    1、文件说明: Centos8操作系统tcl-tclxml-devel-3.2-26.el8.rpm以及相关依赖,全打包为一个tar.gz压缩包 2、安装指令: #Step1、解压 tar -zxvf tcl-tclxml-devel-3.2-26.el8.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm

    C盘清理bat脚本自动清理C盘垃圾文件

    C盘清理bat脚本自动清理C盘垃圾文件

Global site tag (gtag.js) - Google Analytics