作者: 夏小丹
•1 RTC和Jazz概览
何为Jazz? 我们知道,软件开发通常由一组职责分明的开发人员承担,他们为了一个共同的目标--提交优质软件产品而工作在一起。这是一个相互协作,共同努力的过程。这就好比一个交响乐队演奏一首交响曲,需要乐队的每个成员,既分工明确,又互相关注,默契配合。因此,IBM把其推出的这套用于提高软件开发效率的软件产品称为Jazz。从广义上来说,我们现在所说的Jazz, 是指包括Jazz技术平台及其基于该平台的系列工具在内的Jazz大家族。Jazz技术平台是一个基于团队协作模式,以提高软件开发效率为宗旨,以eclipse client端的插件技术,Web 客户端的Dojo Ajax技术,Web服务器端的REST service技术和基于EMF存储模型为核心的,可伸缩、可扩展的平台。目前,以Jazz平台为基础的工具主要有RTC(Rational Team Concert), RQM(Rational Quality Manager)和RRC(Rational Requirements Composer)。
RTC是一个针对各种软件开发人员,包括系统架构师,项目经理,软件开发工程师等的团队协作平台。它覆盖整个软件开发生命周期,提供对包括过程管理,以敏捷开发技术(如Scrum和Eclipse Way)为模板的项目计划,构建管理,源码版本控制等各个方面的支持,并以work item机制跟踪协调每个开发人员的任务和工作流程。
为实现其可扩展性,Jazz/RTC提供了众多扩展点。任何一个团队,都可以利用这些扩展点,定制适合自身的RTC。本文即以一个简单的hello world service插件,详细说明如何在RTC上根据自己的要求定制扩展,并最终将其部署在web server上。
•2 开发环境的搭建
RTC支持Windows, Linux等常用操作系统,你可以在https://jazz.net/downloads/ 下载到RTC的各种平台上的各种最新版本。此处我们使用运行于Windows上的RTC2.0 Beta1的Express-C版本(包含server和client的All-in-one zip包)。至于各种不同版本的区别,可参考https://jazz.net/downloads/rational-team-concert/betas/2.0Beta1.
把zip包解开至某固定目录,比如c:/jazz。zip包的结构如下:
/buildsystem
用于系统构建的工具
/client
RTC客户端
/repotools
用于创建repository的工具
/scmtools
用于配置管理的工具
/server
RTC服务器端,内置Tomcat和Apache Derby
我们在本例中主要用到的是RTC客户端和服务器端,至于其他工具,比如系统构建工具、配置管理工具等,将在其他文章中论述。
为开发需要,还需下载如图1所示的三个源程序包。把这三个源程序包解压到c:/jazz/client/eclipse目录下。解压后的目录结构如图2。
图 1