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 ...
随机推荐
- extjs 点击复选框在表格中增加相关信息行
功能效果:点击复选框在表格中自动增加相关信息行,复选框取消则表格中内容自动删除 初始效果大概是这样~~~~~ // 定义初始 存放表格数据 var gridItems = []; //省份复选框 va ...
- Android实现静默安装与卸载
一般情况下,Android系统安装apk会出现一个安装界面,用户可以点击确定或者取消来进行apk的安装. 但在实际的项目需求中,有一种需求,就是希望apk在后台安装(不出现安装界面的提示),这种安装方 ...
- ASP.NET加载主题和皮肤样式的各种方式
一.加载主题(皮肤.样式表)的多种方式 除了在页面指令中采用Theme或者StylesheetTheme为单个页面加载主题外,还可以通过配置文件为多个页面批量加载主题,另外,还可以通过改变页面的The ...
- java连接mysql批量写入数据
1.采用公认的MYSQL最快批量提交办法 public void index() throws UnsupportedEncodingException, Exception { //1000个一提交 ...
- SharedObject.getLocal("application-name")
package { import flash.display.Sprite; import flash.events.MouseEvent; import flash.events.NetStatus ...
- C++学习笔记之函数指针
与数据项类似,函数也有地址.函数的地址是存储其机器语言代码的内存开始的地方. 一.函数指针的基础知识 假设要设计一个名为estimate()的函数,估算编写指定行数代码所需时间,并且希望不同的程序员都 ...
- Cocos2d-x 3.0 动作
http://blog.csdn.net/lnb333666/article/details/16858635 //运行一个action动作对象 runAction("action对象&qu ...
- OS_TASK.C
/*************************************************************************************************** ...
- vs 设置生成的实体为复数
- 了解PHP中Stream(流)的概念与用法(转)
Stream是PHP开发里最容易被忽视的函数系列(SPL系列,Stream系列,pack函数,封装协议)之一,但其是个很有用也很重要的函数.Stream可以翻译为“流”,在Java里,流是一个很重要的 ...