JBoss胜任企业应用吗?
译:李彪
著:Bernard Golden
在这篇文章中,主要包括下面几个主题:
· 6步评测JBoss的成熟度。即(a)软件, (b) 支持, (c) 文档, (d)培训, (e) 产品集成, 和(f) 专业服务
· 概述开放源代码成熟度模型(Open Source Maturity Model)简写为OSMM,一种产品独立的,体系设计师和程序员用来评测开源项目的方法
· 对于JBoss是否适合企业应用进行评分===============================================================================
开源J2EE应用服务器JBoss一个月之前通过了Sun公司的认证,现在,我们从JBoss提供的技术,服务和文档等,请开源Java专家Bernard Golden给我们回答这个问题,”JBoss是否适合企业应用?”
对于通过J2EE的认证,只是说明了JBoss的兼容,同标准的一致以及功能方面的问题,但是其没有评测其他的对于主流IT应用的非常重要的方面,像技术支持,文档,培训以及扩展地像代码质量,而这些方面对于一个企业的IT主管觉得非常重要的。因此,很明显,很有必要需要另外的帮助来评估JBoss或者其他的成熟的开源项目是否能胜任繁重的企业应用。
1 介绍---评估JBoss的方法
开源成熟度模型(OSMM)是一种评测开源产品的重要技术或者非技术元素的方法,其设计为在少于两个星期内评估开源项目的轻量级的过程。其主要是回答问题”这个开源产品在企业应用中是否足够成熟(功能完备)?”,其分三个过程,即选择(selecting),评测(accessing)和实现(implementing)。OSMM输入的评测值是0到100。下表是一个推荐的针对试用和应用等最小的OSMM值。
Purpose of Use
Early Adopter
Pragmatist
Experimentation
25
40
Pilot
40
60
Production
60
70
Table 1. Recommended Minimum OSMM Scores
第一步:评测产品的元素(elements)
在OSMM的第一步中,一个组织要评测一个产品的元素,需要使用4步的过程:定义好需求,定位资源,评测元素成熟度以及给各个元素打分。的一部分输出的是核心产品元素的分值。
第二步:给各个元素定权重
当然,并不是每一个产品元素都是同等重要的。软件是基础,支持是关键,文档也是必须的,但是没有前面两个重要。在OSMM的第二部分中,对不同的元素给予不同的权重,来反应对整个产品的成熟度的重要性。下面给出默认的权重,但是不同的组织可以根据反映特点的需求来改变该权重。
Open Source Component
Score
Software
4
Support
2
Documentation
1
Training
1
Integration
1
Professional Services
1
TOTAL
10
Table 2: Default OSMM Element Weightings
第三步:计算所有的OSMM分值
将全部OSMM分值相加,得到成熟度分值,然后同推荐的最小的分值相对比,以此来看是否适合企业的应用。当然,在推荐的最小分中,只是推荐,各个企业或者组织可以不要严格地遵循,推荐的分值只是给看一个开源项目能否胜任企业应用提供一个指南参考作用。
2 对JBoss进行OSMM评测
那么JBoss的OSMM的分值是多少呢?下面我们从OSMM的六个部分来给JBoss进行打分。
2.1软件
对一个产品的软件部分进行OSMM评测,主要是下面四个方面:(1)功能,(2)寿命(这个软件已经发布了多久了)(3)质量(4)开发团队。
² 功能:如前述,JBoss最近已经通过了Sun Microsystem Inc.的J2EE兼容性测试,这就意味着其完全提供了J2EE要求的功能。JBoss在功能上有一个缺点就是跟它同类的商业产品中都嵌套了IDE。
² 寿命:JBoss产品已经发布使用有超过3年了,虽然没有一些商业产品时间长,但是也有一段历史了吧。同时很多人从JBoss的官方网站上下载(超过5百万了),因此可以认为其寿命比看起来长很多,并且还拥有大量的用户群。
² 质量:JBoss已经经历了惊人的测试(超过1700),同时通过了兼容性测试(包括23000多项测试)。另外,能够非常快地宣布一些产品的bugs,并且使用补丁的形式很快地修复好bug。平均下来,一个月有9个补丁,从而可以看出来,JBoss是非常注意产品的质量的。
² 开发团队:JBoss有一个大规模的团队,超过91个成员。其中活跃的很多工程师很大部分是在JBoss工作,其显示出来是一个规模适当,强大,有生气的团队。
软件得分:8分(10分总分)
【注释:因为缺少集成开发环境同时同其他的商业产品相比的话历史要短一点,所有失去了2分】
2.2支持
这有3个选项来决定开源技术支持:(i)社区,(ii)商业(付费),(iii)内部internal(一些组织提供给其用户的支持机制)
² 社区:JBoss含有一个非常活跃的社区,在其支持论坛上面进行发贴以及解答问题。事实上,是由JBoss公司的很多的员工来回答问题的,这样对用户非常方便。
² 商业:JBoss在开发和产品两个方面提供付费的支持。开发支持主要是针对于开发基于JBoss的应用程序的软件工程师。而产品支持是提供给负责基于JBoss的应用程序运行的操作人员。
² 内部:在一些公司,为其提供在线支持以及一些技术文档,培训等等,这样取决于其员工的水平。
支持得分:8分(10分总分)
【注释:在JBoss的技术支持中,有两个缺点:在用户论坛中,有一些问题没有回答(这样使得论坛的可靠性),同时现在JBoss提供了在线的支持,但是现在评定其效率还为时过早】
2.3文档
对于开源软件,其文档有很多形式。有用户写的正式的Web文章,也有一些商业的出版社的参考,教程。从刚刚开始,JBoss就给了文档很高的优先级,这在开源项目中真的是非常少见的。从很早就开始,JBoss的主管就专门要求一个人来写文档,并且将其材料以$30的价钱进行出售(虽然下载软件是免费的),虽然JBoss的文档写的非常好,现在还有两家独立的出版社提供它们自己的JBoss文档。
文档打分:6分(总分10分)
【注释:总的来说,JBoss的文档是一个综合的大包:非常优秀的项目文档,很好的web帖子和一些不是非常好的商业产品】
2.4培训
培训是开源项目中非常闪光的地方之一,包括用户写的教程和针对整个产品社区的教程。总的来说,有4个大类的培训:
1 在网上的非正式的产品使用者写的怎么用的例子
2 开发者写的在线教程
3 商业发布的教程
4 由一些开源开发团队或者商业的实体组织的教室式的培训
总的来说,JBoss都提供上述培训。
培训得分:8分(总分10分)
2.5集成
一般地,J2EE应用程序有很多种集成选项,像从现存的应用程序中推和拉数据,同时J2EE一致要求支持两种广泛使用的集成方式:Web Services和JMS。总之,JBoss完全兼容J2EE,意味着所有的商业的J2EE应用都可以在JBoss里面很好地工作。
集成得分:10分(总分10分)
2.6专业服务
能否获得专业的服务,对于开源项目是一个非常敏感的地方。JBoss在专业服务上也做的非常好,提供e-mail,电话以及在线服务,同时JBoss有很多的授权的专业服务伙伴,并且最显著的是,JBoss同一些非常有名的公司像Novell, Hewlett-Packard以及Computer Associates等等建立核心伙伴关系。
专业服务打分:6分(总分10分)
【注释:JBoss加强同硬件/软件厂商的关系,但是我们希望其能够在这个领域快速地发展】
总的OSMM评测过程
Element
Potential Score
Actual Score
Weighted Factor
Element Weighted Score
Software
10
8
4
32
Tactical Support
10
8
2
16
Documentation
10
6
1
6
Training
10
8
1
8
Integration
10
10
1
10
Professional Services
10
6
1
6
从上表可以看到,JBoss的OSMM总得分为78分,因此JBoss完全具备在企业环境下广泛应用的条件。