开源中间件提供商的另一个不足就是,它们没法雇用所有开源项目队伍的成员。因而,一旦发现问题,它们只好与众多队伍协调可能改动代码的事宜,而不是直接改动代码。诸如此类的考虑因素可能会让一些CIO不敢选择“只有一个责任对象”的开源支持方案。
3. 社区支持。成功的开源计划带来了活跃的网上社区,这类社区可提供多种支持方式,包括邮件列表、讨论论坛、甚至直接通过电子邮件与开源项目开发人员通信。不过社区支持想获得成效,组织要有强烈的主人翁感觉。
CIO千万不要把社区支持与免费支持混为一谈。完全依赖社区支持的任何一家公司实际上都是把支持问题交给自己来处理。比较明智的公司也会有内部专家: 一旦出现问题,他们就负责系统维护和寻求其他帮助。这些内部专家应当成为加入相应软件的庞大网上社区的用户。
与商用软件开发商不同,开源社区不会根据企业的规模大小来优先对待用户。也就是说,一家《财富》100强公司的CIO得到的支持级别与一家小型非营利性组织的CIO所得到的支持级别相同。同样,一家大公司的开发队伍所发的帖子不会自动得到优先处理权,哪怕这帖子是有关生产过程中的重大故障。要提醒的是,如果你向开源社区寻求支持,就要有一定的耐心。
4. 培训现有技术人员。虽然开源软件要求企业在很大程度上依靠自己,但未必需要新招技术人员。相反,企业可以对现有技术人员进行培训,以便熟悉使用相关软件。由于IT预算缩减、培训机会渐少,这种举措有望通过发掘新的增长点来提升员工们的士气。可以从越来越多的公司获得培训,其中包括Covalent、JBoss和LearningPatterns。
5. 雇用项目开发人员。依赖开源软件的一些组织雇用专职的开源项目开发顾问作为开发队伍成员。增加专业人员帮助组织自身提升了技术实力,并且增强了自我支持能力。另外,拥有这些项目开发人员让组织可以直接改动源代码。
不过这种方案也有其局限性。首先,必须慎重处理好客户对开源项目会产生影响的这个问题,因为社区可能会觉得参与者是在为自己谋利,而不是有益于整个项目。其次,雇用开源项目开发人员需要财力资源,而拥有这笔资源的公司比较少。最后,一旦开源计划规模迅速增加,这种模式不具备良好的扩展性,对项目开发人员的需求会超过现有人才的数量。
6. 借助顾问。如果组织无力雇用开源专家、没有时间进行内部培训,或者不需要专业支持协议,那么借助顾问不失为一种切实可行的选择。很容易通过开源项目邮件列表和开发队伍名册物色到专家。一些网上资源也有所帮助,譬如著名的FindOpenSourceSupport.com网站。2004年设立的这个网站列出了500多个开源顾问和提供商。
但借助顾问最好是过渡性地,因为从长远来看,他们的费用比较高,而且不如固定员工忠诚。他们可以逐渐对内部队伍进行培训,然后需要时仍可以随叫随到。
开源支持要讲究搭配
获得出众的开源支持服务并不在于单单选择其中一个方案,而是找到适合组织的最佳组合。没有哪个解决方案能满足所有组织的所有开源需要。CIO们应当先调查一下所有方案,然后在谨记自身需求的情况下,对诸多机会进行评估。
企业使用的开源软件用于非关键系统还是生产环境这很有关系。从开发阶段进入到生产阶段,支持需求也会随之变化。
尽管这道理听上去很显然,但许多组织常会犯这个错误: 对所有的支持需求一视同仁,不管涉及的风险有多大。这是因为CIO们习惯于同商用软件开发商合作,这些开发商提供从开发到部署,甚至部署以后的支持。不过如果用的是开源软件,可以获得代码和网上用户社区,假如组织内部的技术能力足以胜任的话,在评估或者开发过程中就不需要开发商的支持。这些早期阶段的开源支持往往更加注重于学习曲线,这可能会让一些公司受益。
一旦开源软件从部署阶段进入到实际使用阶段,其支持需求就会酷似商用软件。组织希望24×7的全面支持、服务级别协议、问题上报路径以及明确责任。
如果系统涉及风险越大,围绕软件构建可靠的支持结构就越重要。虽然没必要为非生产系统购买支持方面的“保险单”,不过对面向生产环境的系统来说提供可靠保障可能是基本要求。
随着开源开发商竭力满足企业用户的需求,支持模式会继续随之发展。与此同时,用户会逐渐接受软件开发方面新的社区模式。
培养开源方面的专长和技能需要藉以时日,同时,还需要CIO们愿意尝试新模式来开展业务、管理资源。不过只要方法得当,开源软件带来的好处会远远超过风险。
链接:三个月部署开源项目
不同组织对开源支持的需求各不相同,这取决于组织所用软件的类别和用途。你在着手拟订支持策略时,还要把将来的需求考虑进来。下面教你如何开始着手:
第一个月: 审查当前及将来使用开源的情况。
● 详细列出当前正在使用或者考虑使用的所有开源软件。连员工一直未经批准但在使用的软件也要考虑起来。
● 为每个开源组件确定内部负责人,并确定目前的服务如何提供。指定某个人负责确认的每个组件。
● 根据软件对企业的重要性,确定每个开源组件所需的理想的支持级别。譬如说,生产环境中的开源软件需要的支持级别要高于开发队伍所使用的开源工具。
第二个月: 拟订开源支持计划。
● 与组织的法律和采购部门商谈开源软件事宜。开源软件的使用不仅仅是IT开发部门的事,开发队伍应当与业务队伍密切合作。
● 拟订开源支持计划,包括明确定义预期目标。调查分析每个开源组件的所有支持方案。
● 检查资助新计划的预算。针对现有开源软件的补充支持需要额外成本。确保新成本已考虑在内,提议把新成本列为下一个预算周期的新添加项目。
● 即使你在评估商用软件,也要评估新的开源组件,并确定了选择支持服务的标准。
第三个月: 开始推广计划。
● 记下哪些社区支持所有开源组件。
● 对现有IT供应商的开源技能级别及支持机会进行调查,评估另外的开源软件服务商。
● 根据审查和支持计划,为开源支持拟订需求建议书(RFP)。把建议书发给提供商,包括现有的IT供应商以及产品和组件支持专家。让你的内部开发和业务队伍也要回复建议书,即把他们当成是外部供应商。
● 关注培训和雇用能力,以增强内部支持水平。
文章来源于领测软件测试网 https://www.ltesting.net/