WF工作流与管理类应用系统工作流需求实现的一些误区
WF工作流是微软的工作流基础架构,很多公司采用WF技术实现工作流需求。 WF功能非常强大。可是它的技术细节和架构原理对于管理类应用系统流程需求的实现存在一些误区。
因为管理类应用系统(OA CRM ERP 客户服务系统。。。)的工作流需求与WF工作流的原理是存在一些区别的,主要体现在以下几个方面
1、WF 是宿主型的工作流,是工作流引擎依据流程定义(XOML)的逻辑进行检测并执行,是在同一个运行空间里,而管理应用中的流程需求则是一个夸时空的协作需求,可能需要一段时间(一周 甚至 一年)不同运行空间的执行
2、WF中的 Actively(活动)之间的交互主要的体现是 输入和输出,是输入的条件和对输出产生的流程运行逻辑的影响,而管理应用中的流程需求主要体现的交互是人机交互,主要是用户的行为产生对流程运行逻辑的影响
3、WF 的价值体现主要是提高开发人员处理流程变化时的便利性降低开发成本,从技术的角度去调整流程,而管理应用中的流程价值主要是业务流程发生变化的时候对系统开发的依赖,从业务的角度去调整流程
.......
看一个E8.Net的范例:

这是变更管理业务流程需求的一个典型的范例,流程体现的需求是一个夸运行空间的协作需求,很多角色 部门 用户的参与,有人机交互的选择,有条件路径的判断。。。一旦业务流程发生变化的时候业务人员可以在流程设计器上去制定新的业务流程。
WF功能强大,但管理类应用的流程需求不一定适合用WF去实现,因为原理上存在一些差异,WF更多适合状态机的工作流 和 数据集成、智能处理、自动化控制,这些领域其它工作流却不一定适合。
选择合适的才是正确的。
WF工作流与管理类应用系统工作流需求实现的一些误区的更多相关文章
- 产品管理开发之Git工作流和分支规范推荐
前言 无论是开源项目还是内部项目,使用Git都是大势所趋,尤其是在产品管理这块,使用Git大大提高了开发效率和产品的交付频率.本篇,针对Git的工作流和分支使用,进行了一些推荐. 目录 1 产 ...
- 总结描述用户和组管理类命令的使用方法,系统用户相关信息,取出主机IP地址
1.列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可. [root@db146 ~]# who|cut -f1 -d' ' |sort -u root 2.取出最后 ...
- .NET Core微服务 权限系统+工作流(二)工作流系统
一.前言 接上一篇 .NET Core微服务 权限系统+工作流(一)权限系统 ,再来一发 工作流,我在接触这块开发的时候一直好奇它的实现方式,翻看各种工作流引擎代码,探究其实现方式,个人总结出来一个核 ...
- Activiti工作流学习(三)Activiti工作流与spring集成
一.前言 前面Activiti工作流的学习,说明了Activiti的基本应用,在我们开发中可以根据实际的业务参考Activiti的API去更好的理解以及巩固.我们实际的开发中我们基本上都使用sprin ...
- 用户管理 之 Linux 系统中的超级权限的控制
在Linux操作系统中,root的权限是最高的,也被称为超级权限的拥有者.普通用户无法执行的操作,root用户都能完成,所以也被称之为超级管理用户. 在系统中,每个文件.目录和进程,都归属于某一个用户 ...
- [转]3天搞定的小型B/S内部管理类软件定制开发项目【软件开发实战10步骤详解】
本文转自:http://www.cnblogs.com/jirigala/archive/2010/10/07/1845275.html 2010-10-07 21:39 by 通用C#系统架构, 5 ...
- 管理支撑办公系统技术架构选型对照讨论(J2EE与SOA对照)
续:管理支撑办公系统技术架构选型及相关技术应用范围.方法分析 M域办公系统改造.整合涉及到OA.业务流程.部室信息站点.部室专业管理等系统和信息共享等新需求,从信息化视角来看,内容多并且杂,这里核心业 ...
- XMPP得知--建立一个管理类
参考其他demo之后,设立一个管理类的发现看起来更舒服,理-- 但在建立与server连接其中.发现 Connect Error: { NSLocalizedDescription = &qu ...
- 主机管理+堡垒机系统开发:strace命令用法详解(六)
一.简单介绍 strace是什么? 按照strace官网的描述, strace是一个可用于诊断.调试和教学的Linux用户空间跟踪器.我们用它来监控用户空间进程和内核的交互,比如系统调用.信号传递.进 ...
随机推荐
- 让Windows Server 2008 + IIS 7+ ASP.NET 支持10万并发请求(转)
转自:http://www.cnblogs.com/dudu/archive/2009/11/10/1600062.html 今天下午17点左右,博客园博客站点出现这样的错误信息: Error Sum ...
- [Whole Web, Nods.js, PM2] Passing environment variables to node.js using pm2
learn how to pass environment variables to your node.js app using the pm2 config file. This is usefu ...
- 进程控制之vfork函数
vfork函数的调用序列和返回值与fork相同,但两者的语义不同. vfork用于创建一个新进程,而新进程的目的是exec一个新程序.vfork和fork一样都创建一个子进程,但是它并不将父进程的地址 ...
- HDU1016(bfs)
import java.util.Scanner;public class Main1016 { public static void main(String[] args) { Scanner ci ...
- Android 自定义View修炼-【2014年最后的分享啦】Android实现自定义刮刮卡效果View
一.简介: 今天是2014年最后一天啦,首先在这里,我祝福大家在新的2015年都一个个的新健康,新收入,新顺利,新如意!!! 上一偏,我介绍了用Xfermode实现自定义圆角和椭圆图片view的博文& ...
- 【原】Shell脚本-判断文件有无进而复制
2016年7月5日某同学在群上求助要编一个判断文件或目录在某路径下有无进而有的就复制粘贴到另一路径下,无的则将代码中断(不往下执行命令)的脚本.逐一完善.模板如下(生产环境可用到路径环境变量) --- ...
- bootstrap整理-1
基本的HTML模板 小伙伴们,上一小节的视频课程已经对Bootstrap提供的模板做了详细的介绍,在这一小节中我们把这个模板代码粘贴过来,以供你们学习查看,你们可以根据实际情况在此基础上进行扩展,只需 ...
- PHP + ajax 实现异步登录验证
login.html: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:/ ...
- Linq to SQL只支持SQL Server(所选对象使用不支持的数据提供程序)
- div置于页面底部
一直对于页面置底有一些困惑,下面这个例子不知道能不能解决 <!DOCTYPE html> <html lang="en"> <head> < ...