OpenFlow概述
OpenFlow名称里面虽然包括“Flow”,但其并不是“又一个流程引擎”,我们认为世界上的流程引擎已经足够多了,每个流程引擎都各有千秋,有的甚至免费,所以我们不需要再做一个流程引擎,我们做OpenFlow的目的是解决所有流程引擎都有的问题。
客户的问题是:
- 一旦选择了一个流程引擎,那么其就被此引擎捆死,因为所有业务流程都基于此引擎开发,随着客户业务的改变,他想用别的引擎,那么之前所有的流程需要根据新的引擎完全重写,耗时耗力,重写之后又被新的引擎捆死,直到下次重写
- 客户的另一个问题是,有些企业有不同流程引擎同时在运行,每个引擎跑不同的流程,结果是这些流程不能融合。
OpenFlow彻底解决了这些问题,在OpenFlow的世界里面:
- 首先用户是可以自由切换流程引擎的,比如之前使用某开源流程引擎,之后可以切换成Agile Point;或者之前使用K2,后来切换成G2;总之,用户可以随意切换引擎而不用改变流程
- 其次通过OpenFlow,用户可以整合跨越流程引擎的不同流程,这样消费者程序比如企业门户,就可以自由享用各个流程引擎带来的好处了
OpenFlow的具体做法是OpenFlow带有各种"流程引擎的驱动程序",OpenFlow透过"驱动程序"与后端的“流程引擎”互动,然后所有流程都针对OpenFlow进行编程,这样,在OpenFlow层面自然就可以整合所有流程,如果客户想换引擎,那么只要通过设置,把流程指向新的流程引擎(就是换个“驱动程序”),那么所有流程就跑在新的流程引擎上面了;然后各种消费者程序,比如企业门户,也调用OpenFlow的接口,这样最后端的所有引擎就都可以为之所用了。
具体功能点如下:
OpenFlow(服务提供者)部分,主要是API和Server短程序:
- 支持切换流程(K2换成AP或CCFlow,或者任何流程引擎换成任何流程引擎)
- 通过Driver和任意后端流程引擎互动(当然需要事先安装相应的流程引擎)
- 合并多种流程引擎
- 合并多种流程引擎中的流程
- 流程分类(多级分类,支持多维多标签)
- 流程授权(支持角色,角色里面包括组或者用户)
- 与AD系统双向高效同步ID(用户,组),这东西叫OpenID
- 待办流程,已办流程,我的申请,三个二级页面列表,以及每部分的总数字
- 获取流程图
- 发起流程的列表(多级分类),也是二级页面列表
- 支持多语言
- 支持多租户
- 支持任意浏览器,或者APP
- 支持包括但不限于OpenShare在内的任何消费者应用(包括任意平台的APP)
- 可以单独打包,安装,运行,也可以和OpenShare一起运行
OpenShare(是OpenFlow的一个消费者)部分:
- 3个流程中心的入口:1,主页上的WebPart,2,Dock的弹出菜单(就叫流程中心,里面包括流程中心的全部Icon)3,主菜单
- 流程中心的二级页面UI都完成了:待办流程,已办流程,我的申请,创建流程(分类,图标,发起流程),支持所有皮肤
- 三级页面没做也不准备做(就是具体的流程,这个要根据客户的要求定制)
顺便说一句,OpenFlow和OpenShare一样,都是免费的,当然需要我们1对1的进行具体流程的定制开发,我们是要收人工费的
OpenFlow概述的更多相关文章
- 软件定义网络基础---OpenFlow概述
一:OpenFlow概述 二:交换机模型架构 (一)OpenFlow构架三个组成成分 三:OpenFlow 1.0版本 自OpenFlow1.0发布以来,目前已经有多个版本的OF规范版本被发布 四:O ...
- openflow 和 sdn (软件定义网络) 原理和教程
OpenFlow概述 OpenFlow简介 通俗的讲,OpenFlow是使用类似于API进程配置网络交换机的协议.OpenFlow的思路很简单,网络设备维护一个FlowTable并且只按照FlowTa ...
- ovs flow 原理及实验
OpenFlow概述 在支持OpenFlow的交换机中包含了若干个Flow table,Flow table可以用来控制数据包的处理,交换机会执行与flow相匹配的表项中所罗列的动作. OpenFlo ...
- 基于Open vSwitch的OpenFlow实践
Open vSwitch(下面简称为 OVS)是由 Nicira Networks 主导的,运行在虚拟化平台(例如 KVM,Xen)上的虚拟交换机.在虚拟化平台上,OVS 可以为动态变化的端点提供 2 ...
- SDN概述:简介、工具、环境部署
一.前言: 本文初步接触 SDN 的相关概念.需要依次完成下面几项任务: SDN 简介 SDN 工具 SDN 环境部署 推荐阅读 推荐阅读下述内容: Ethane 项目,openflow 的基础 op ...
- OpenState: Programming Platform-independent Stateful OpenFlow Applications Inside the Switch
文章名称:OpenState: Programming Platform-independent Stateful OpenFlow Applications Inside the Switch Op ...
- 天马行空-Ops平台建设概述
1 概述 什么是Ops平台,Ops平台的目标是什么,建设的考虑点有哪些?本章节以实际生活中医院的例子来进行各形象的阐述. 医院包含各种诊断治疗设备,病历库,医生.一个孕妇需要到医院 ...
- OpenFlow技术白皮书-V1.0
1. 概述 OpenFlow是由斯坦福大学的Nick McKeown教授在2008年4月ACM Communications Review上发表的一篇论文OpenFlow: enabling inn ...
- 软件定义网络基础---OpenFlow协议
一:OpenFlow协议概述 OpenFlow协议为控制器与交换机之间的通信,提供了一种开放标准的方式.OpenFlow交换机通过安全通道与控制器进行信息交互 二:OpenFlow消息类型 (一)co ...
随机推荐
- MFC中关于子对话框中编辑框不能编辑的问题
最近在用MFC写程序.发现子对话框中的编辑框不能编辑.具体问题是这样的: 我有一个对话框YhglDlg,创建了这个对话框的子对话框ZjyhxxDlg,子对话框的Style属性为Child,Border ...
- EXTJS项目实战经验总结一:日期组件的change事件:
1 依据选择的日期,加载相应的列表数据,如图: 开发说明 1 开发思路: 在日期值变化的事件中获得选择后的日期值,传给后台,然后从后台加载相应的数据 2 问题:在查看extjs2.2 的a ...
- C#利用SharpZipLib解压或压缩文件夹实例操作
最近要做一个项目涉及到C#中压缩与解压缩的问题的解决方法,大家分享. 这里主要解决文件夹包含文件夹的解压缩问题. )下载SharpZipLib.dll,在http://www.icsharpcode. ...
- oracle中substr函数的用法
1.substr(string string, int a, int b) 参数1:string 要处理的字符串 参数2:a 截取字符串的开始位置(起始位置是0) 参数3:b 截取的字符串的长度(而不 ...
- ZTE AD3812 3G模块在linux 2.6.34 内核的开发板上的支持方法
先说段废话,话说在linux 2.6.34 下,好多比较新的3G网卡及3G模块都没有很好的支持.如果想支持的这些3G网卡/3G模块呢,基本上有两种方式: 1.使用该3G模块的 linux 下的驱动,交 ...
- 组件化CSS--管理你整站的CSS文件
为什么要拆分样式文件? 更易于查找样式规则. 简化维护,方便管理. 还可以针对某一页面提供特定的样式. 为什么要添加桥接样式? 你可以随时添加或移除样式而不需要修改HTML 文档. 为什么要定义两种媒 ...
- Codeforces Good Bye 2015 D. New Year and Ancient Prophecy 后缀数组 树状数组 dp
D. New Year and Ancient Prophecy 题目连接: http://www.codeforces.com/contest/611/problem/C Description L ...
- Theatre Square
http://codeforces.com/problemset/problem/1/A Theatre Square time limit per test 2 seconds memory lim ...
- [Angular2 Router] Programmatic Router Navigation via the Router API - Relative And Absolute Router Navigation
In this tutorial we are going to learn how to navigate programmatically (or imperatively) by using t ...
- Python 读写文件和file对象(转)
1.open使用open打开文件后一定要记得调用文件对象的close()方法.比如可以用try/finally语句来确保最后能关闭文件. file_object = open('thefile.txt ...