昨天,Michael Chen和我探讨了有关“BMD”和“MDA”的一些问题,但是他对“如何有序的组装应用”不是很清楚。
其实,这也是大多MDA爱好者的迷惑——因为MDA的思想重在“模型”,但是这是一个很含糊的概念。所以后来冒出了“业务模型”,虽然这看似是个更加抽象的概念,但是却真正符合应用的思想。—— 因为从客户角度来说,其更注重对业务的描述。
但是,业务的粒度和领域是一个问题,一个业务可能是多个步骤组成的,也可能是一个系列的分流程组成的,甚至也可能只是简单几个无序的功能零散的组合;同时,不同的领域,其业务的抽象是不同的——这两个问题是目前影响BMD平台发展的瓶颈。
但是,从管理学角度,这两点却又一个企业的管理核心:不同的领域,决定了企业管理方式的特点;而同时不同的规模、行为、市场,也对企业的组织架构和管理策略的执行划分都有着根本地影响。
其实,这也决定了当然管理(信息化)软件的市场的划分:很难一个产品能够同吃所有的市场。
<!----><o:p> </o:p>
有点扯远了(这就是随笔的坏处,写之前没有一个主题)。
<o:p> </o:p>
言归正传。任何一个管理行为或业务,都是可以抽象为有序的“处理过程”的组合。虽然,我们可以肯定在现实中,业务处理的主体过程是较为有序的,业务过程的“细枝”却多是无序的。
这本身是符合管理的思想:一个企业的主核心业务或中层执行过程是较为严谨,而最外层的组织或业务执行,多以松散为主,这样可以较为迅速的适应市场和业务处理的变化。
<o:p> </o:p>
但是,这对业务处理过程的抽象却是一大难题。所以目前几乎所有的BMD平台都是以“提供二次开发”为主导的,而所有的平台都会提供workflow作为核心模块,用来“将业务过程处理串接起来”。
<o:p> </o:p>
我们需要明白:业务是一个个“处理过程”有序的组成的—— 这就是流水线思想;workflow将这些分散的处理过程,有序的融合在一起,成为一个完整的业务。
当然,workflow本身的Flow的最初含义,是来源自与企业经营管理息息相关的“物流”“资金流”“信息流”等。于是工作流就用一个个有序的任务点来抽象表示这些业务流的处理过程。
我们可以把业务的处理理解为“Process”,当然这个核心就是workflow。在这业务的处理过程中,其要协调资源、维护权限、控制成本、处理信息,这是保证和维护一个业务有效执行的根本。这本身就决定了workflow是一个复杂的“模块”。
<o:p>
</o:p>
<!----><v:shapetype o:spt="75" coordsize="21600,21600" stroked="f" id="_x0000_t75" filled="f" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe"><v:stroke joinstyle="miter"></v:stroke><v:formulas><v:f eqn="if lineDrawn pixelLineWidth 0"></v:f><v:f eqn="sum @0 1 0"></v:f><v:f eqn="sum 0 0 @1"></v:f><v:f eqn="prod @2 1 2"></v:f><v:f eqn="prod @3 21600 pixelWidth"></v:f><v:f eqn="prod @3 21600 pixelHeight"></v:f><v:f eqn="sum @0 0 1"></v:f><v:f eqn="prod @6 1 2"></v:f><v:f eqn="prod @7 21600 pixelWidth"></v:f><v:f eqn="sum @8 21600 0"></v:f><v:f eqn="prod @7 21600 pixelHeight"></v:f><v:f eqn="sum @10 21600 0"></v:f></v:formulas><v:path gradientshapeok="t" o:extrusionok="f" o:connecttype="rect"></v:path><o:lock v:ext="edit" aspectratio="t"></o:lock></v:shapetype>
(图摘自我做的workflow讲座的ppt:http://www.javafox.org 下载)
<o:p> </o:p>
分享到:
相关推荐
工作流管理思想与企业现代化管理密切相关,尤其与业务过程重组(BPR,Business Process Re-engineering)紧密相连。BPR是关于企业(组织)核心业务过程的评估、分析、模拟、定义以及后续的操作实现。虽然并非所有的...
本文将详细探讨EOS工作流引擎的工作原理,包括其核心调度算法、事件类型、事件调度机制以及时限管理服务。 首先,让我们深入理解EOS工作流引擎的工作原理。EOS工作流引擎设计的核心目标是实现业务流程的自动化,它...
流程定义数据库是工作流模板设计文档的核心部分,它包含了工作流系统的所有定义信息,包括工作流的 Activity、Relation 和 Mailnotify。流程定义数据库提供了一个灵活的方式来定义和管理工作流系统。 表单设计: ...
工作流引擎是工作流系统的核心,它负责执行工作流实例,控制流程的流转。在这个开源框架中,源码可能会包含以下组件: 1. **工作流定义**:工作流的逻辑被定义为一系列可执行的动作,如任务分配、审批、决策等。...
Jira作为一款广泛使用的项目管理工具,其工作流功能是支持团队高效协同工作的核心组件之一。本文将详细介绍Jira工作流的原理和相关知识点,以帮助用户更好地理解并应用这一强大功能。 首先,工作流是指一个问题在...
JBPM 工作流引擎内核设计思想及构架笔记分享 上文提到,工作流引擎内核是一种微内核的流程引擎架构,它只包含最基本的对象和服务,以及用于解决流程运行问题的调度机制和执行机制。引擎内核的设计思想是围绕着如何...
无堵塞(Non-blocking)设计的核心思想是避免线程在等待资源或完成操作时被阻塞,这样可以最大化CPU的利用率和系统的响应速度。在这个工作流引擎中,可能采用了异步处理和事件驱动的方法来实现这一目标。例如,当一...
K2工作流学习资料总结: K2是一款强大的工作流平台,尤其在.NET环境中,K2.net 2003版本提供了高效的企业级流程...K2.net 2003的学习资料可以帮助我们了解早期版本的工作流设计思想,为后续版本的学习打下坚实的基础。
3. **工作流引擎**:《揭秘jBPM引擎内核设计思想及构架》详细解析了jBPM这一流行的工作流引擎,包括其流程定义语言、任务管理、事件处理和持久化机制。同时,工作流引擎的核心调度算法在《工作流引擎核心调度算法与...
本文将从多个角度深入探讨E8.Net工作流架构的知识点,包括其设计理念、架构特点、核心功能以及对企业管理的深远影响。 #### 面向服务的体系架构(SOA) E8.Net工作流架构采用了面向服务的体系架构(SOA),这一...
**JWFD工作流引擎设计原理** JWFD(可能是“Just Workflow for Everyone”或“Java Workflow ...通过深入研究,开发者不仅可以利用JWFD实现业务流程自动化,还能借鉴其设计思想,提升自身在工作流领域的能力。
本文将深入探讨Spark的核心思想,并通过源码分析来深化理解。 一、Spark核心思想 1. **弹性分布式数据集(Resilient Distributed Datasets, RDD)**:RDD是Spark的核心数据抽象,它是一种不可变、分区的记录集合,...
通过阅读《深入理解Spark:核心思想及源码分析》,读者将能够全面了解Spark的工作原理,提升解决实际问题的能力,并为成为Spark专家奠定坚实基础。对于希望在大数据领域深化技术理解的开发者,这本书无疑是宝贵的...
IOC可以看作是DI的一种具体实现方式,它们的核心思想是反转控制权。在传统的编程方式中,对象直接创建或者依赖其他对象,而在IOC/DI模式下,对象的创建和依赖关系的维护被交给外部容器来管理。这样做的好处是降低了...
总结来说,尽管VML在工作流流程设计中的应用已逐渐减少,但其核心思想——使用图形化语言描绘和理解复杂流程——依然至关重要。理解并掌握这些原理,无论是在使用现代工具还是复古技术,都能帮助我们更好地规划和...
### Java实现工作流 #### 一、选题背景与组织结构 随着互联网技术和移动通信技术的飞速发展,传统的电信业务面临着前所未有的挑战。为了适应市场变化,提高服务质量与效率,许多电信运营商开始寻求技术创新之路。...
1. **工作流引擎**:工作流引擎是工作流管理系统的核心组件,负责解释和执行工作流定义,支持业务流程的自动化执行。 2. **关键业务**:指企业或组织中的核心业务流程,如订单处理、库存管理等,这些业务对于企业的...