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概述的更多相关文章

  1. 软件定义网络基础---OpenFlow概述

    一:OpenFlow概述 二:交换机模型架构 (一)OpenFlow构架三个组成成分 三:OpenFlow 1.0版本 自OpenFlow1.0发布以来,目前已经有多个版本的OF规范版本被发布 四:O ...

  2. openflow 和 sdn (软件定义网络) 原理和教程

    OpenFlow概述 OpenFlow简介 通俗的讲,OpenFlow是使用类似于API进程配置网络交换机的协议.OpenFlow的思路很简单,网络设备维护一个FlowTable并且只按照FlowTa ...

  3. ovs flow 原理及实验

    OpenFlow概述 在支持OpenFlow的交换机中包含了若干个Flow table,Flow table可以用来控制数据包的处理,交换机会执行与flow相匹配的表项中所罗列的动作. OpenFlo ...

  4. 基于Open vSwitch的OpenFlow实践

    Open vSwitch(下面简称为 OVS)是由 Nicira Networks 主导的,运行在虚拟化平台(例如 KVM,Xen)上的虚拟交换机.在虚拟化平台上,OVS 可以为动态变化的端点提供 2 ...

  5. SDN概述:简介、工具、环境部署

    一.前言: 本文初步接触 SDN 的相关概念.需要依次完成下面几项任务: SDN 简介 SDN 工具 SDN 环境部署 推荐阅读 推荐阅读下述内容: Ethane 项目,openflow 的基础 op ...

  6. OpenState: Programming Platform-independent Stateful OpenFlow Applications Inside the Switch

    文章名称:OpenState: Programming Platform-independent Stateful OpenFlow Applications Inside the Switch Op ...

  7. 天马行空-Ops平台建设概述

    1           概述 什么是Ops平台,Ops平台的目标是什么,建设的考虑点有哪些?本章节以实际生活中医院的例子来进行各形象的阐述. 医院包含各种诊断治疗设备,病历库,医生.一个孕妇需要到医院 ...

  8. OpenFlow技术白皮书-V1.0

    1.  概述 OpenFlow是由斯坦福大学的Nick McKeown教授在2008年4月ACM Communications Review上发表的一篇论文OpenFlow: enabling inn ...

  9. 软件定义网络基础---OpenFlow协议

    一:OpenFlow协议概述 OpenFlow协议为控制器与交换机之间的通信,提供了一种开放标准的方式.OpenFlow交换机通过安全通道与控制器进行信息交互 二:OpenFlow消息类型 (一)co ...

随机推荐

  1. (剑指Offer)面试题29:数组中出现次数超过一半的数字

    题目: 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字. 例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}.由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2. ...

  2. 数据库 SQL :有关 NULL 值引发 TRUE、FALSE、UNKNOW 三值逻辑

    在 Java.C# 中,相信如果是 boolean 类型值,只有两种选择 true.false.然而,在 SQL 查询中,NULL 值的引入,使得新增了 UNKNOW ,因此,就产生了 TRUE.FA ...

  3. 关于request.getsession(true|false)

    request.getSession(true):若存在会话则返回该会话,否则新建一个会话.request.getSession(false):若存在会话则返回该会话,否则返回NULL

  4. [置顶] Android AlarmManager实现不间断轮询服务

    在消息的获取上是选择轮询还是推送得根据实际的业务需要来技术选型,例如对消息实时性比较高的需求,比如微博新通知或新闻等那就最好是用推送了.但如果只是一般的消息检测比如更新检查,可能是半个小时或一个小时一 ...

  5. Hadoop on Mac with IntelliJ IDEA - 8 单表关联NullPointerException

    简化陆喜恒. Hadoop实战(第2版)5.4单表关联的代码时遇到空指向异常,经分析是逻辑问题,在此做个记录. 环境:Mac OS X 10.9.5, IntelliJ IDEA 13.1.5, Ha ...

  6. myeclipse 10 载入新的项目报错Cannot return from outside a function or method

    myeclipse 10 载入新的项目报错Cannot return from outside a function or method 解决方法: 方法一: window -->prefere ...

  7. Owin管道与asp.net管道模型

    ------2016.3.6 更新 文中提到没有Microsoft.Owin.Host.SystemWeb 这个dll 便不会加载Startup.Configuration,因为这个dll 其中有个O ...

  8. Shared File System Master Slave 全配置以及测试

    在本机完成2个broker的共享文件测试 2个broker的完整配置文件如下 <!--     Licensed to the Apache Software Foundation (ASF) ...

  9. win7远程桌面连接

    远程桌面连接 1.在防火墙上设置同意同意远程桌面通过防火墙: 2.为管理员设置password.以便訪问者訪问: 3.我的电脑-右键属性-远程设置-远程-选上"同意远程协助远程这台计算机.同 ...

  10. Perl 小知识之多行匹配

    如果想匹配多行文本(即文本中有换行符)中的内容,比如: aaa ... bbb ... 要匹配aaa和bbb之间的内容,我们可以使用 /aaa.*bbb/s 其中/s修饰符可以让.匹配任何字符,包括换 ...