我是小林,一名普通的软件工程师,从事BPM(业务流程管理)软件开发工作。我没有几十年的技术底蕴,无法像大牛们一样高谈阔论,品评BPM开发之道;也不是资深的流程管理专家,能与大家分析流程管理的时弊。我只是一名有着一轮工作经历的软件开发者,更准确说是流程开发者,有那么几次特殊的经历,可以窥探一丝BPM开发的发展轨迹。

2004年,我初入软件行业。当时,国内BPM软件产品大多还处在概念阶段,它们基本都是非常专业的中间件级产品,复杂的状态机、活动、事件等概念充斥其中,只有高水平的开发实施人员才能驾驭。而且,很多用户对BPM也没有足够的认识,难以形成良好的BPM生态环境,导致BPM产品无法充分发挥作用。而包含工作流的另一个产品OA(办公自动化软件)却迅猛发展,大行其道。通过工作关系,在为几家大型企业做软件项目的同时,我也对他们的OA系统深入了解了一番,对系统中工作流的表现形式与原理产生了浓厚的兴趣。这也开启了我的BPM之路。

2007年,我接手了两个信息管理系统项目,它们都有一块内容需要实现业务数据的收集、核对、补充、审核与发布。我联想到工作流的概念:是一系列相互衔接、自动进行的业务活动或任务。项目当用工作流无疑。但苦于公司没有工作流产品或方案,项目又无法引入外部产品,最后只能仿照之前了解的OA中的工作流自行实践。建模板、定义活动及顺序、代码控制流程走向、设定岗位由上级活动选择下级活动具体参与人……数月之后,所谓的“工作流”平台算是建起来了,最终也得到了用户的认可。可是,项目维护难、交接难,特殊应用场景流程不支持,流程经常出现流转异常,无法跟踪流程等问题层出不穷,让我苦不堪言。一种强烈的愿望油然而生:我需要一款专业的工作流产品!

2010年,我有幸参与了几家公司的工作流产品技术交流,注意到以H3 BPM为代表的产品,将BPM从中间件转变为“流程快速开发平台”,BPM是IT的开发工具,以流程、表单等常规概念为中心,普通IT人员即可上手。接下来,与H3 BPM合作,我接连做了几个大项目,都得到客户的认可。惊喜之余,我又陷入困惑,当BPM是中间件时,最大的成本是开发成本,当BPM变革为流程开发平台时,最大的成本却是“需求沟通成本”。据我们的项目统计,流程实施成本80%来自于需求沟通和项目管理。如果流程快速开发平台还可以变革为运维级平台,那么BPM的建设成本将大幅降低。特别是对于需要不停迭代优化的流程管理,更能随时优化管理,BPM的价值将进一步被放大,更为企业所推崇。如何才能降低开发成本,成为我们这些流程开发者日思夜想的问题。

所幸,2016年,H3推出10.0产品,以“天下没有难用的流程”为目标,把BPM从流程快速开发平台变为运维级产品,普通的IT管理员甚至业务人员都可以驾驭。H3 BPM为我打开了一扇崭新的大门,提供了一款易学易用、可自主开发,而且拥有普适双擎,整体成本显著下降的业务流程管理产品,让我可以更高效、快速地为客户提供流程开发服务。它比OA更易配置,不需要专业的开发人员,普通的企业IT管理人员甚至业务部门的人员即可玩转;比EAI更易集成,让企业的管理系统无限连接;像互联网产品一样易用,让用户尽享极致体验;还保持了BPM原有的深度扩展能力、深度分析功能等。在流程开发项目中,一次次看着客户在需求实现时露出的笑脸,我都倍感骄傲。

从最初的IT菜鸟成长为资深PM,从流程小白成长为半个流程专家,我看着流程管理产品从最初的业务流程管理概念变革为日益开放且强大的运维级开发工具。我在不断成长,BPM也在不断变革,你呢?

一个软件开发者的BPM之路的更多相关文章

  1. 易用BPM时代,软件开发者缘何选择H3?

    近年来,企业级软件开发市场暗流汹涌,呈现出多种态势.软件开发团队规模趋于小型化,工作方式趋于快捷化,超过半数的软件开发者在工作中会选择使用易用的软件开发工具.随着流程管理越来越受到企业的重视,流程开发 ...

  2. 《软件开发者路线图:从学徒到高手》【PDF】下载

    <软件开发者路线图:从学徒到高手>[PDF]下载链接: https://u253469.ctfile.com/fs/253469-231196346 图书简介 作为一名软件开发者,你在奋力 ...

  3. 来谈谈 WebAssembly 是个啥?为何说它会影响每一个 Web 开发者?

    作者:link 原文:What is WebAssembly and why it affects web developers! 你听说过WebAssembly吗?这是由Google, Micros ...

  4. ActiveReports 大数据分析报告:2019软件开发者现状

    “C++很不错,PHP是世界上最好的语言,所以我选Java …” 在全球软件开发者群体中,关于最优语言与最优框架的争论从未停止. 本次 ActiveReports 大数据分析报告,将借助权威数据,为您 ...

  5. 一个iOS开发者的修真之路

    在微信上有童鞋问我iOS开发者的入门标准是神马?这个问题难到我了,而且贸然给一个答案出来的话,必定会有万千高手来喷. 凡人修仙,仙人修道,道人修真.当我们还是一个在青石板上蹲马步汗水涔涔的废柴时,或许 ...

  6. 解决由于一个软件限制策略的阻止,windows无法运行此程序cmd.reg

    解决由于一个软件限制策略的阻止,windows无法运行此程序cmd.reg Windows Registry Editor Version 5.00 [-HKEY_LOCAL_MACHINE\SOFT ...

  7. 一个java高级工程师的进阶之路

    宏观方面 一. JAVA.要想成为JAVA(高级)工程师肯定要学习JAVA.一般的程序员或许只需知道一些JAVA的语法结构就可以应付了.但要成为JAVA(高级) 工程师,您要对JAVA做比较深入的研究 ...

  8. ubuntu完全卸载一个软件

    今天卸载一个软件,老是有配置残留,网上找到了解决方案: 查看已安装的软件: dpkg -l |grep 软件名 找到一大堆相关的包,然后卸载核心的包: sudo apt-get remove --pu ...

  9. 每一个web开发者都应该了解的HTTP/2

    我认为每一个 web 开发者都应该对这个支撑了整个 Web 世界的 HTTP 协议有所了解,这样才能帮助你更好的完成开发任务.在这篇文章中,我将讨论什么是 HTTP,它是怎么产生的,它的地位,以及我们 ...

随机推荐

  1. html中如何添加提示信息

    提示:在标签中添加title属性 1.文本中如何添加提示信息? 1.1直接在标签中加title="值": 例如:<p title="爱笑,爱哭,爱生活"& ...

  2. UWP中新加的数据绑定方式x:Bind分析总结

    UWP中新加的数据绑定方式x:Bind分析总结 0x00 UWP中的x:Bind 由之前有过WPF开发经验,所以在学习UWP的时候直接省略了XAML.数据绑定等几个看着十分眼熟的主题.学习过程中倒是也 ...

  3. 获取Canvas当前坐标系矩阵

    前言 在我的另一篇博文 Canvas坐标系转换 中,我们知道了所有的平移缩放旋转操作都会影响到画布坐标系.那在我们对画布进行了一系列操作之后,怎么再知道当前矩阵数据状态呢. 具体代码 首先请看下面的一 ...

  4. ElasticSearch 5学习(10)——结构化查询(包括新特性)

    之前我们所有的查询都属于命令行查询,但是不利于复杂的查询,而且一般在项目开发中不使用命令行查询方式,只有在调试测试时使用简单命令行查询,但是,如果想要善用搜索,我们必须使用请求体查询(request ...

  5. angular2系列教程(十)两种启动方法、两个路由服务、引用类型和单例模式的妙用

    今天我们要讲的是ng2的路由系统. 例子

  6. Chrome V8引擎系列随笔 (1):Math.Random()函数概览

    先让大家来看一幅图,这幅图是V8引擎4.7版本和4.9版本Math.Random()函数的值的分布图,我可以这么理解 .从下图中,也许你会认为这是个二维码?其实这幅图告诉我们一个道理,第二张图的点的分 ...

  7. Struts2实现ajax的两种方式

    基于Struts2框架下实现Ajax有两种方式,第一种是原声的方式,另外一种是struts2自带的一个插件. js部分调用方式是一样的: JS代码: function testAjax() { var ...

  8. JSP 标准标签库(JSTL)

    JSP 标准标签库(JSTL) JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能. JSTL支持通用的.结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签, ...

  9. (资源整理)带你入门Spark

    一.Spark简介: 以下是百度百科对Spark的介绍: Spark 是一种与 Hadoop 相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些有用的不同之处使 Spark 在某些工作负载方 ...

  10. ubuntu下配置vimtab空格数

    vim ~/.vimrc  没有就创建 set tabstop=4 //4就是4个空格