关于软件过程、或者是软件生存周期领域内的工作流、过程规范、产品研究了差不多半年时间了。研究的主要是开源、开放、业界标准相关,有点肤浅的心得,概要如下 :-)
对软件过程支持环境而言:
- Eclipse: EPF
比较成型的社区规模,没有深入研究。不过感觉 eclipse 下面的东西基本是比较难用的,而且社区开发进度令人担忧。
-
OMG: SPEM
规范就是规范,也只是规范。SPEM 的实现比较罕见,国内研究非常少,貌似中科院有个实现。国外关注也比较少,仍停留在理论上。规范,大而全啊....
- IBM: Jazz
基于 Jazz 的 Concert 在产品功能上非常有参考价值,终归是 IBM 精心打造的。可惜的是不是开源的,对外来开发者比较封闭,实现细节看不到。总的说OSGi 的应用目前总是在大投入的前提下才能做的。
-
EmForge
处于快速开发阶段,基于 jBPM 3 实现的流程处理,设计比较糟糕,实现代码质量底下。不过有一定的参考价值。特别是 Spring 整合 jBPM、JSPWiki 等有借鉴的价值。
- JIRA
非常成熟了,对开源项目提供免费支持。流程实现基于 OSWorkflow,不过 JIRA 修改了非常多的引擎实现,以支持其应用,在功能有很多可以参考的地方。
- mingle
对于开发人员来说过于封闭(毕竟是纯商业性质,不像 Jazz 的半封闭....),不过对于敏捷团队支持需求有非常值得学习的地方。
对工作流引擎、语言而言:
- jBPM 3
没有好的设计,作为客户代码的实现、设计者可以体会到其 APIs 的糟糕。从代码上可以看出设计者基本是修修改改,在前期版本上参考了非常多的理论,后期版本(3.2.3)基本是个四不象的东西,虽然提出了基于图的编程模型,但我认为这个是没有任何实际意义的。不就是个可视化流程设计环境与执行引擎么?但是,可以肯定的是作者让开源社区多了一种稳定的选择。
- jBPM 4 / PVM
目前还在开发中,设计上比较成熟了,至少暴露给客户代码的 APIs 设计上比较合理了。可惜,PVM 是不是像作者、JBoss 吹得那样好,那样可行(全面兼容 BPEL),只有作者才有谱。从目前的实现上看,全新的 jPDL 仍然是 PVM 的重点.... 这个版本的 jPDL 确实设计非常优秀,通用性很好(Java、Bean shell、SQL、etc),但是,支持越多越好????
- WS-BPEL / BPMN
还是那句话,规范就是规范。虽然 BPEL 主要针对的是服务编制,但从 sub-process 扩展、HumanTask、BPEL4People 上看,BPEL 是完全可以胜任工作流、BPM 的。可惜,扩展都是商业实现,要用得爽,钱跟上。BPMN 2.0 貌似是解决了到 BPEL 的变换问题,我还没有机会使用。
- 国内的一些解决方案
普元快速开发平台....买不起,我只看了工作流方面的设计,产品设计者确实功底深厚,理论扎实。不过类似目前比较惹人关注的是 fireflow 。其思想与实现不敢恭维....作者对 Petri 网理论的运用是有问题的,至少不是像作者说的那样基于“严格的形式化定义”,而且国外类似将“业务”与“引擎系统”分开的研究很多....Petri 网是可以解决问题,但要看怎么用了,如果是基于 Petri 网,一定要注意并发、选择的定义与实现。
题外话:
- 门户实现
Liferay 是值得看看源代码的,整合确实非常正宗,国外的应用确实值得我们国内开发者好好学习。
- Google
相信研究的人不少,最近的 GAE(Google App Engine)对支持 Java 更是引起了我们这些 Java 开发人员对它的关注。Google 下的东西确实是值得看看,特别是暴露给客户的 APIs 的设计。
分享到:
相关推荐
B级医疗器械软件生存周期过程,本文档适用于医疗器械注册 。 1.第一章 软件的安全性级别。(按产品预期用途、使用环境和核心功能进行判定,安全性特征问题进行判定) 2.第二章 软件开发过程。(软件开发策划,软件需求...
软件生存周期过程 CFDA 医疗器械软件
GBZ 20156-2006 软件工程 软件生存周期过程用于项目管理的指南.rar
GB-T 8566-2001 信息技术软件生存周期过程 国家标准
GB8566-2007信息技术软件生存周期过程(全网唯一文字版),非常珍贵,网上其它只有很不清晰的图片版本,此为本人制作。 本标准适用于系统和软件产品以及服务的获取,适用于软件产品的供应、开发、运行和维护,适用于...
YY_T 0664-2020 医疗器械软件 软件生存周期过程,适合上位机软件和下位机软件研发人员或质量等相关人员
《GB-T 8566-2007信息技术 软件生存周期过程》国标 可打印的标准电子件 如果用的好请大家好评,谢谢。
展示软件生存周期过程,用于开发者管理软件开发过程。
讲解对软件详细设计、软件测试要求、软件周期的要求。 在医疗器械中对于软件的需求。讲解对软件详细设计、软件测试要求、软件周期的要求。 在医疗器械中对于软件的需求。讲解对软件详细设计、软件测试要求、软件...
GBT 8566-2007信息技术软件生存周期过程
GBT 8566 信息技术 软件生存周期过程 全文 准备招标书
GBT 20158-2006 信息技术 软件生存周期过程配置管理
本标准是GB/T 8566的第二次修订。本标准与GB/T 8566-1995主要区别在于结构作了调整,把软件生存周期的所有过程归纳为基本过程、支持过程和组织过程;对部分术语名称作了修改。
GB-T 20158-2006 信息技术 软件生存周期过程 配置管理.pdf
GBT 8566 信息技术 软件生存期过程 GBT 8566 信息技术 软件生存期过程 GBT 8566 信息技术 软件生存期过程 GBT 8566 信息技术 软件生存期过程
这个ppt很详细的讲解了软件生存周期,这个是软件测试中很重要的一个方面
完整软件生存周期流程图.pdf
软件开发生存周期 作者:北京中信保科技发展有限公司 适合读者:经理,团队负责人,质量团队成员
YYT 0664-2008医疗器械软件软件生存周期过程
本标准为软件生存周期过程建立了公共框架,以供软件产业界使用。包括了在含有软件的系统、独立软件产品和软件服务的获取期间以及在软件产品的供应、开发、运行和维护期间需应用的过程、活动和任务。本书共计70多页,...