首先十分感谢作者给我这个机会在他的作品即将问世之前做一些感想,也正好让我能在忙碌中抽空回顾一下这么多年在技术平台方面走过的路以及在Workflow方面的点点滴滴。因为本书是介绍jBPM的专业书籍,所以我谈不上给些什么评论,只是将对作者的印象和对书中内容引发的一些思考和回味分享给大家。

首先就要从我跟作者如何相识的初次合作谈起了。记得那应该是2005年,我们经历了两年多搭建面向ERP项目的研发平台初具规模,正在10多个大型项目中服务。当时从底层技术框架、代码生成工具、组织权限等诸多技术问题都得到了充分的考虑和解决。当然肯定少不了对Workflow业务的解决。当时我们选用的WfMC的XPDL语法,从引擎、设计器、监控器、模拟器、组织模型全套都实现了。最初因某些项目原因采用的.NET,后迁移到Java平台下,并且以Hibernate做存储,也是采用的微内核和状态机的设计思路。提供了一整套的API(类似jBPM等主流工作流引擎提供的方式)。但在几个大项目实际使用中发现这种纯粹API二次开发的方式,基于封闭工作流系统无法高效地支撑业务快速开发及流程仿真重组。

对业务系统快速实施有价值的是整合了组织定义、流程定义、业务表单定义、业务数据权限定义工具等全集成的定制系统,不用通过编写代码业务需求人员通过拖曳即可完成各种层级集团应用的定义,并适当设置一定的业务脚本即可完成业务系统的定义。所以我们在2005年6月启动了这件事情,基于已有的组织权限、工作流基础上加入业务表单定义及整合的设计定义功能。然后在公司内部到处挖人,我习惯于以技术geek的方式在公司内部到处引诱人,都是先通过非正式的方式从技术角度找到有想法感兴趣的人,然后再用各种手段搞到这个人加入。

记得那个时候一个意气风发、满怀抱负的年轻小伙子给我留下了深刻的印象。他刚刚做完一个电信的项目,爱好非常广泛,JS很好,也会Flash,想法特别多,手特别快。所以我就通过各种手段搞到这个家伙加入我们,那就是年轻时的作者。很快他先搞定了业务表单定义的技术攻关,可能当时我们是最早使用XmlHttpRequest的(Ajax的核心),然后基于Workflow如何接收表单传递过来的数据,然后接手了整个Workflow的优化及实现各种变态的中国特色的工作流需求。我们在10月左右发布了一个完整的版本,支持了上面讲到的那些功能。现在回头看看大家都很神奇,10个人不到3个月就搞定了这么复杂的东西,也许换到今天开源技术如此成熟可能都未必能做到。之后这个家伙就一定要坚持在专业上坚持以Workflow为方向不断成为专家。

再一晃就是多年以后的事情了,我也从搭建ERP研发平台到互联网SNS大型数据平台又转回到专属行业ERP产品平台。不论管理大型团队多少年,始终秉承着对技术的痴迷,从未放弃对任何技术细节的关注,也越来越推崇中庸、推崇妥协。

这期间我们有过断断续续的联系,也曾经为一些点子一起疯狂、一起兴奋,不过终究没有找到合适的机会再次合作。收到作者的邀请时,十分地受宠若惊,当时手头的事情也特别多。而且类似的书我也见得特别多,不外乎就是英翻中,所以就根本没放在心上。直到后来拿到作品仔细阅读了一番,渐渐地能体会和重现这个家伙几年的历程——一直在专业(Workflow)的道路上滋滋以求。

当然文中难免有大量资料的复制,但是能花大量心血组织起来,如此翔实全面地介绍已实属不易。而且加上了这家伙从当年我们一起做流程系统时的经验和他在jBPM系列产品应用实施上多年的咨询经历。

最近我也在平台中的多处集成了jBPM用于解决传统审批流,跨业务域集成BPM,以及ETL流等,当然不会孤立使用Workflow,肯定是结合ESB、MDA、规则引擎等一起使用。一直想给大家从概念到Workflow的历史、再到如何运用jBPM解决各种问题等进行一个全面的讲解,正好拿到这本书,省了我很大的力气。

这几年IT业内浮躁风气、快餐文化盛行,用过Spring、Struts、jBPM就敢说自己是架构师。而很少有人能够踏踏实实潜心研究各种技术的根源,为什么要这么设计,如何扩展更为有效。从我们做平台的人的角度来看简单会用没什么,关键是能理解精髓并扩展或改造才是本事。

像作者这样致力于在国内传播Workflow的模型,让更多的人少走弯路,快速上手,并不断将多年研究的心得和成果同大家分享的人太少了,国内太少这种人了。也许这本书可以为不少人提供了解jBPM的素食套餐。尤其本书中“第20章 中国特色工作流的jBPM实现”十分具有实战意义,是特别值得国内使用jBPM做应用的人们参考的最佳实践。

笔触于此,抬眼已很晚了,一气呵成就先写这么多。让我们一起读完全书后再回来一起思考和回味下面这两个问题吧!

l 有想法、专注、愿意分享的年轻人,我们应该有怎样的IT人生?

l 业内规范的演化进步,我们又会遭遇怎样的IT进程?

吴俊

就职于北京天大天科科技发展有限公司,首席架构师

jBPM4工作流应用开发指南相关推荐

  1. 《jBPM4工作流应用开发指南》这本书

    本人从六七年前就开始接触工作流系统的设计与开发,一共参与过三套工作流系统的设计与开发过程,应用涵盖了OA系统.行政审批系统.ERP系统.在这么多年的工作流系统的设计与开发过程中,感触颇多,其中有如下两 ...

  2. jBPM4工作流开发实战 之 第一部分 工作流基础【私塾在线原创】

    视频配套PPT,视频地址[  最新jbpm4工作流开发实战视频课程] 考虑这样一个实际问题,如果公司派我们出差,会发生差旅费.那么,差旅费报销的流程是什么样的呢? 首先,要先填写一张单子,写明出差的时 ...

  3. 《iOS 8开发指南(第2版)》——第1章,第1.3节工欲善其事,必先利其器——搭建开发环境...

    本节书摘来自异步社区<iOS 8开发指南(第2版)>一书中的第1章,第1.1节1.3 工欲善其事,必先利其器--搭建开发环境,作者 管蕾,更多章节内容可以访问云栖社区"异步社区& ...

  4. Spring高级程序设计(Spring框架创始人倾情推荐的权威开发指南)

    Spring高级程序设计(Spring框架创始人倾情推荐的权威开发指南) 市场价 :¥99.00 会员价 : ¥74.25(75折) 样章免费试读:http://www.china-pub.com/1 ...

  5. 积木Sketch插件进阶开发指南

    前段时间,美团外卖技术团队积木Sketch插件"意外走红".为了帮助更多的设计师小哥哥.小姐姐落地设计规范,提升产研效率,积木Sketch团队开始着手打造一个平台化的产品.本文介绍 ...

  6. 用于实时操作系统固件更新开发指南的MediaTek Linkit MT2523开发平台

    LinkIt_for_RTOS_Firmware_Update_Developers_Guide--用于实时操作系统固件更新开发指南的MediaTek Linkit™开发平台 MediaTek Lin ...

  7. Apache Beam开发指南

    http://blog.csdn.net/blwinner/article/details/54908057 本指南用于指导Beam用户使用Beam SDK创建数据处理pipeline(pipelin ...

  8. [新书推荐]Autodesk地理信息系统解决方案——FDO、MapGuide、AutoCAD® Map 3D二次开发指南...

    MapGuide及其相关技术一直缺乏中文资料,针对这种现状,最近Autodesk上海研究院出版了一本新书,系统的介绍了Autodesk地理信息系统解决方案,包括FDO.MapGuide.Map3D等等 ...

  9. severless 开发指南 q593393454

    q593393454 q593393454 q593393454 q593393454 Serverless 架构应用开发指南 – serverless q593393454 code{white-s ...

  10. WatchKit-Programming-Guide-Apple-Watch开发指南官方翻译及总结

    鉴于CSDN的Markdown很多bug,大家请看这里: WatchKit-Programming-Guide-Apple-Watch开发指南官方翻译及总结 Overview ### Developi ...

最新文章

  1. ASP.NET 文件操作实例
  2. 'utf-8' codec can't decode byte 0xb6 in position 34: invalid start byte
  3. cad关闭图层的快捷命令是什么_CAD快捷命令汇总
  4. request获取中文乱码的问题
  5. 容器编排技术 -- Kubernetes Pod 优先级和抢占
  6. 引用opencv异常
  7. Windows 编程[11] - WM_SIZE 消息
  8. Q88:全局光照(Global Illumination)——Path Tracing
  9. php无线级输出数据,thinkphp5.0无限极分类及格式化输出
  10. 项目管理文档_项目管理和团队协同的轻量级工具——PMS,来了
  11. java并发编程实战读书笔记2
  12. vos3000_v7.x版本的快速安装方法
  13. Device模块管理设备信息,用于获取手机设备的相关信息,如IMEI、IMSI、型号、厂商等
  14. Unity 网格合并MeshBaker(一)
  15. 计算机毕业设计ssm小区宠物管理系统k8n96系统+程序+源码+lw+远程部署
  16. moviepy音视频剪辑:使用concatenate_videoclips和clips_array将多个视频合成一个顺序播放或同屏播放的视频
  17. 特征值与特征向量、特征矩阵
  18. ubuntu 手机连接不到电脑,配置
  19. 深度学习工程实践 6. 使用pytorch训练自己的眼球分割模型
  20. 医学图像处理相关代码分享

热门文章

  1. Ztree 仿淘宝树结构完美实现 移动 右键增删改
  2. 基础知识及命令(1)
  3. [转载]MySQL优化之索引的运用(2)
  4. BackgroundWorker的使用
  5. Taking a serious look at grids
  6. RocketMQ开发指导之一——RocketMQ简介
  7. 运行roscore出现unable to contact my own server无法启动小海龟的部分故障问题解决
  8. 集合点(lr_rendezvous)
  9. struts2+spring+hibernte整合示例
  10. CentOS6.6安装cobbler