【IT168 技术文章】
软件在不断的演进中变得越来越复杂,智力高度集中的软件开发也需要从个人英雄主义进入紧密配合的团队协作时代。IBM高级技术经理王守慧从事软件开发已经超过10年,软件开发的生命周期管理之痛是她这十年来一直思索着的问题。王守慧认为:“在传统的软件开发流程中,项目组中的每个成员在理解自己所完成的部分在整个软件中所起的作用时,是非常抽象的,因为新产品在整体交付之前,无论是对客户还是对它的建造者来说,几乎是不可见的”。
软件开发应该是一种高度协作的过程,每个人不但要完成自己这部分的代码,更重要的是需要和项目中的各个模块完美的结合在一起。就像是一支乐队在集体演奏,每一个音乐家不但要集中精力演奏自己的部分,同时还要与乐队保持合拍与同步,否则表演就会失败。王守慧说,“过去,每个人都在寻找适合自己的工具,导入导出着各种信息数据,用来提高软件开发过程中的协作、效率和透明度,现在,我们需要一个平台,它能够将整个软件开发生命周期中的各个环节都无缝的管理起来。”
这个平台就是Jazz,IBM Rational的软件协作开发管理平台。你可以把它看做是一个可以扩展的开发框架,可以即时的同步你的软件开发进度,并在同一个平台上实现项目组成员之间沟通、讨论和变更的无缝管理,Jazz将改变了人们协作构建软件的方式。
首先它是一个Client/Server的结构,平台上所有的工具,信息都将存储在Server上,这将令它具有超强的计算能力;其次,它以Eclipse开放平台做为基础,编程模型以插件的形式实现扩展。你可以用DB2或者Oracle来代替Apache Derby的数据库,也可以用WebSphere代替ApacheTomcat的应用服务器。还可以用Jabber替换sametimes,整个体系结构都是开放的。“Jazz不仅整合了Eclipse开发工具,”王守慧说:“对于常见的网页浏览器、RSS等一些Web2.0的方式都可以整合在Jazz开发环境中,更好的成为协同开发的沟通工具。”
在一场Jazz与RTC新品尝鲜会上,IBM的项目组现场演示了利用Jazz平台进行软件协作开发管理的全过程。不同于传统的瀑布式开发方法,Jazz平台下项目的推进过程都是敏捷的。运用了迭代式、增量式和高度协作的开发方法,每个人都可以持续的看到增长和运行状态,客户也可以在项目进行的过程中参与进来,这种敏捷的开发方法对于需求变化的快速响应、项目交付时的风险控制都有了明显的提升。
在Jazz的客户端,新创建的Project被分成Plans、Builds、Reports、Streams和Work Items五部分,源代码的控制管理可以记录下你对code的改动,并用视图的方式展现出来,项目组中各个模块的成员都很清楚的在同一个界面上看到项目进行的状态,每一个人的操作都会被记录,进度信息对于每个人也都是透明和公开的,而且所有的信息也都可以在Web浏览器上访问。
我们一直期待软件开发人员也能像乐队一样进行团队协作,能够让软件产品在激烈的市场竞争中立于不败之地。Jazz整合了开发平台和项目管理平台,伴随着Rational全线产品逐步向Jazz平台迁移的进程,新一代的面向软件交付的协作开发平台将会全新的展现在我们面前。