主题演讲结束后,大会进入第三个流程,由IBM Rational高级咨询顾问靳超宣布Rational RTC正式发布。

IBM Rational高级咨询顾问靳超
Rational RTC的发布以一个根据中国古典小说西游记改编的Flash故事开始,在师徒四人的幽默出场中,引出了基于IBM JAZZ平台开发的新产品Rational RTC。Flash之后,靳超紧扣故事的环节,向各位来宾作关于的Rational RTC的深入介绍。在介绍中,靳超重点介绍了RTC项目组成员的相关工作以及工作进展。并且对用户如何通过web2.0体验RTC做了简单的模拟。最后又回到开始时的西游记小西天Flash中,通过画中人物对RTC肯定的认可来表示RTC的效果及成效。
靳超:小西天软件公司花了半天的时间部署和安装完成了Jazz RTC基础平台,并且顺利的开展工作。“51嫁人网”这个项目,小西天公司采用了Eclipse的开发流程,这个开发流程集成迭代化开发和社区模式的思想。它是在Eclipse的开发过程中提炼出来的一种敏捷开发方式,它将整个项目分成若干个里程碑和迭代过程,在每一个里程碑结束的时候,都可以给客户交付一个可以运行的平台。这样的话,可以把我们最新的一些需求及时的交付给客户使用,并且能最快的拿到客户最新的反馈意见。在下面过程中,我们可以看到我要嫁人网这个网站项目已经完成1.0的开发,目前正在进行2.0版本的开发,并且我们已经进入第二迭个迭代。由第二个迭代开始的时候,由项目经理看一下当前项目的进展状况,由于开发人员来提交在当天迭代中应该完成的代码编写工作,由构建人员进行代码的集成构建。当我们第一个集成构建结束以后,这时候用户会提出一些新的功能需求,由项目经理它进行重新安排来调整当前的迭代计划,以其尽快的提交给客户。我们可以看看屏幕上,看看客户完成RTC如何完成这些协作开发工作的。
首先在RTC中我们集成了项目的XP,像OpenUP这样的敏捷开发流程,并且客户把自己的开发流程定制到RTC中去,使软件开发的规范不知不觉带我们的项目当中得到贯彻。与此同时,在RTC当中我们可以用可视化的方式进行迭代计划的管理和对它进行更新和制作。我们下面由项目经理看一下项目的成员工作量以及他们的工作进度。
首先,我们从屏幕上可以看到当前的迭代码进入项目。我们可以按照工作类别和负责人进行浏览,我们可以看到红孩儿开发人员工作状态比较好,但是杀沙僧比较滞后。我们来看一下开发人员,开发人员可以在平时自己熟悉的环境当中直接调用RTC。包括我们可以交付自己及时更新的代码,并对代码进行配置管理,并且执行开发。与此同时我们可以完成构建构成的智能化和标准工作。首先,沙僧是利用Eclipse完成代码工作,当代码开发完成以后进行提交,并且对这次代码工作项目进行了关联。其他人员会收到这次修改的工作项目完成状况的及时的通知,第一个工作任务完成,现在完成第二个工作,所有完成工作进入当前工作区进入已经完成的工作区。我们一块来看一下构建人员的工作,在代码提交以后,构建人员一般要对所有成员提交代码进行构建,在RTC当中集成了构建管理的功能,我们可以对以前编写好的构建脚本进行集中管理,针对不同的目的进行不同的构建,实心了构建流程的自动化和标准化。同时我们还可以将相应的构建活动和这次构建中所完成的工作任务以及提交的最新代码变更实现关联,帮助大家实现这三者之间双向追踪。
我们看一下构建人员又是如何完成他的工作。首先我们可以在界面上看到有一个关于构建的文件夹,在这个文件夹中我们可以准备一些自动化的构建脚本,由系统自动提交,也有可以像人工提交,在服务器端完成构建,我们这里谈到的构建是端到端的构成,包含代码提取、静态分析、单元测试直到集成测试都是可以包含在自动化的构建过程当中,并且构建当中可以把构建当中发现的错误直接进行报告,并且在这里直接把这个错误提交成一个问题的表单,在这个问题的表当中,我们将自动化刚才发生的错误的时间点和错误的现象自动化记下来,帮助向相关人员有一个最清晰的错误的描述。
下面看一下用户。我们说RTC是一个协同开发平台,这种协同不单单是指开发团队内部的协同,还包括了用户和开发团队以及其他设计人员之间的协同,我们可以通过Web 2.0技术,让用户方便掌握我们目前项目的开发进度,包括我们项目下面要提交一些什么样的新功能,还有用户可以通过这个界面将他新的需求也提交上来,在这个基础上可以跟开发团队保持实时的沟通和协作,并且所有的协作和沟通的内容都会被系统自动记录下来。
我们看一下用户如果运用Web 2.0的界面提交一个新的需求。首先,用户在日常体验当中浏览了一个别的公司的网站,看到这个公司网站上有一个“爱情测试”的功能,他觉得非常吸引人,他希望在他的系统当中也有这个功能,所以他通过我们的界面把新的需求录入到RTC功能当中,并且希望这个功能及早的实现,所以把功能的优先级设置最高。在RTC当中我们可以方便通过波带的方式,把提交一些新需求和缺陷的更改工作安排到原来计划中。我们看一下项目经理该如何处理用户提交的新需求并且发现的一些错误。首先项目经理可以执行一个预定好的查询,把当前没有安排负责人的新的工作事项查询出来,并且可以简单通过拖拽方式,把这些工作新的事项安排相应的开发人员手里去。现在将用户刚才提交的最新的需求可以拖拽到沙僧这个开发人员这里,因为在这里我们可以看到工作符合是比红孩儿低一些,并且我们把这个缺陷修改任务也拖拽给沙僧,通过这种方式,我们非常简单的完成了新的迭代计划的更改。RTC可以用多种的方式查看团队之间的协作情况,包括团队的其他成员目前在做的工作以及他和我们之间的关系,与此同时,我们也可以有“我的工作区”观察区域,来观察团队本人在工作中需要做些什么样的工作。
下面我们看一下沙僧如何利用“我的工作区”来管理和协调日常的开发工作。首先沙僧可以在我的工作区,可以在我的工作区查找项目经理人提交给他的最新的任务,他可以把这些任务作为当前的开发任务,在代码方面做一个新的工作,并且把这个开发任务提交,大家可以看到,这边实际上是你当前做的开发任务也会出现在这儿。在整个开发过程中,我们可以对当前代码的变更历史有一个历史的记录,在这个历史记录当中大家可以看到,是由谁做了哪些工作在当前代码上是有非常清晰的表示,并且在代码内部可以用不同的颜色表示代码段不同的修改谁由谁修改,在什么时间修改,为什么修改等详细的记录。等我们完成新的代码以后,我们要将这些代码提交给集成库当中,并且对它进行构建工作。我们可以对个人私有的构建、对模块进行构建,对整个项目的构建,我们有不同的构建流程,我们看一下构建人员如何进行另外一个新的构建。构建人员对刚刚新提交的新的需求的代码进行了一个构建请求,在这些构建分成每日构建和周的构成或者里程碑的构建,每个构建都有不同的目的,通过这些层次化构建,我们降低大家在集成当中出现问题的可能性。这次构建大家可以看到是一个成功的构建。RTC还提供一些关于构建记录的查询、统计、分析报告的能力,这样的话,可以帮助构建人员或者项目管理人员去查询我们每一次构建的内容,包括这些构建是完成了哪些工作项,这些构建的完成情况,测试的情况怎么样,这样的话,可以帮助构建人和项目经理当前产品所处的质量状态。
我们下面看一下项目经理如何查询一个新的构建的详情。首先,项目经理可以从预定义这里调出所有构建的详情,在这些构建详情当中查找到这些构建包含哪些新的工作事项,通过这些工作事项又可以查找到所对应的代码变更。从代码变更这块可以看到,在两个最临近的版本之间,代码之间发生了一些什么样的变化,通过这种方式,我们可以灵活的掌握每一次构建的内容和构建之间的关系和不同。这时候,用户可以通过RTC外部的界面进行所谓的社区模式的协作方式的开发,我们可以通过Web 2.0可以看到完整项目信息,包括即将在下一迭代提交什么样新的功能,并且客户可以定制信息展现形式以及信息的内容,并且可以就这些信息不同意见和项目组借助这个平台展开一些交流和沟通,所有的交流和沟通的内容都可以作为项目相关信息记录在系统当中。我们可以一块看一下用户如何使用Web 2.0界面查询项目当前的进度以及所有工作人员的工作状态。
这是RTC仪表盘,在这个仪表板当中可以看到当前项目的信息,并且用户可以看到项目所有工作人员目前在做一些什么工作,工作的负载情况以及完成的情况。并且我们可以在仪表板上统一的查阅所有的模块完成情况,以及工作任务分布在谁的手里,包括所有的工作任务的优先级又是什么样的。在RTC帮助下,“51嫁人网”这个项目顺利问题,通过使用RTC小西天公司从以前手工作方式的开发和靠一些个人英雄开发模式终于办理流程自动化、规范化的开发模式,以组织的能力为核心,使整个软件开发过程变得可视、可预测、可以控制,这样的话,用户对公司更加放心,我们的员工对公司的前途更加的有信心。在公司重新崛起的时候,我们可以看一下唐僧师徒几人又在做什么呢?