• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

分布式异地开发:GDD生命周期中的一天

发布: 2008-8-26 10:18 | 作者: 不详 | 来源: 测试时代采编 | 查看: 22次 | 进入软件测试论坛讨论

领测软件测试网

这种GDD场景为 Alcrohm 提供成本以及时间计划上的优势,例如可变化的人员安排、减小国外劳动率,并通过保持项目能够通过“昼夜不停”(也就是说,当位于东半球的开发团队在家或睡觉时,西半球的开发团队是在办公室中工作的)的运作以减小上市时间。但是这些优点的出现同时也增加了风险。这个项目有着很重大的技术困难,这些难题也会检验协同位置的团队有效协作、理解需求、交付高质量成果的能力。Alcrohm 选择了来自 IBM Rational 的强壮的、集成的软件工具以解决这些问题,并支持成功的成果。

建立任务

Site A 的室内开发团队集中于新特性开发和相关的测试,同时也包括构建/部署。Site B 的远程转包商承担维护开发、对现存的客户/服务器应用软件进行单元测试任务。这个高层次的职责分解对于什么角色、任务以及最终工具将在每个地点如何运行具有关键的影响。

在 Site A 执行的任务包括:

捕获需求、创建需求文档和管理需求

系统构架及建模

业务分析及高层次系统设计

新特性开发

对预发布的新应用软件的构造进行组件、功能以及系统测试

对当前应用软件版本的维护版本进行功能及系统测试

所有构造以及部署活动

项目和组合管理

在 Site B 执行的任务包括:

对当前客户/服务器版本的应用软件代码进行维护

对代码维护过程中所修正代码的组件进行单元测试

对维护阶段项目进行构造及修正需求

在进行了成功的单元测试后是在Site B开发下面维护版本的运行,Site B将代码发送给Site A,Site A执行确认、功能以及系统测试。项目规约以及与现有应用软件的维护版本有关的需求变更、模型和图表在Site A及Site B之间进行通信。项目管理是在Site A处理的核心能力,所有Alcrohm应用软件的组件以及资源组合都在这里进行监控。

这些强有力的任务划分允许Alcrohm以相对低的风险得到GDD的常规经验,特别是其非现场的合作伙伴。如果所有这些在次一级项目中都进行的很顺利,Alcrohm也许在未来会选择利用其它分布式开发模型,例如新特性组件开发。

确定资产位置及访问

现在让我们来看什么资产是在两个站点都需要的。Alcrohm的关键目标是能够在两个站点间引用资产。哪些工具要被使用以及他们如何进行配置将很大程度上取决于关键的开发资产在哪里创建以及他们又将在哪里被使用。

对两种版本应用软件的需求在Site A被本地的捕获。Site A因此需要对需求的读/写访问,同时包括业务模型以及用例图。对需求特性的更新以及大部分对需求的更改也都将在Site A发生。Site B也需要对需求的读/写访问。因为他们随着时间对现存的应用软件进行维护,Site B的团队将需要增加需求,对现存需求进行修正,对需求文件添加辅助信息,并分配属性,例如优先级、难度以及状态。Site B的团队成员还将需要在需求间跟踪关系的能力,这样,他们可以测量改变的影响。

虽然两个团队将在不同分支上进行工作,然而两个站点都将需要对共享代码库进行访问。两个站点还需要浏览、创建以及修正变更请求,增加需求以及缺陷报告。

为了达到这种高等级的共享访问,两个站点需要在本地服务器上对关键数据进行复制。

配置IBM Rational工具

当确定了什么资产是在每个站点上都需要的,Alcrohm需要找到一种分配他们的方法。IBM Rational工具为在两个Alcrohm站点间进行通信与协作提供了一个范围广泛的可能。实际上,在这个GDD项目中所使用的产品与很多企业,例如Alcrohm,已经使用的保证在他们更传统的、协同位置开发项目中的高质量产品的工具是相同的:

IBM Rational Unified Process,或称作RUP - 支持健壮的、迭代的过程。对很多GDD项目来说,包括本场景,最好的方法是首先在规程间建立工作流程,然后配置工具基础来帮助自动化这个工作流程。RUP包括了最佳实践,并提供了支持标准的、集成的以及迭代过程的指导,所有这些对一个分布式团队的成功来说都是极为关键的。RUP也定义了一个共享的词汇表和一个清晰定义的项目任务与责任,所有这些都促进了一个跨越分布式团队的公共视图。并且由于它是基于网络的,RUP很容易支持分布式工作。于是RUP成为使用其它工具的基础。

IBM Rational ClearCase ―― 用于安全的资产管理以及整体过程控制。没有健壮的、安全的资产管理能力,大部分GDD项目都会承担很大的风险。资产管理保证了只有被授权的人可以浏览或改变项目资产;它还提供了可靠的对被授权用户错误操作事件的恢复能力,例如对源代码文件的意外删除或该写。资产管理进一步为更改控制、审计、重新构建以及从可执行代码或者版本到需求、变更请求等的可回溯追踪性提供了基础。GDD团队需要对资产以及对资产的更改在分布式环境中无缝的协作。同时需要能够在一个项目的不通分支同时工作的能力,通过24×7开发模型加速部署。

在类似于Alcrohm的GDD场景中,每个分布式开发团队拥有一个数据存储,IBM Rational ClearCase MultiSite为分布式资产管理提供了一个健壮的、可扩展的解决方案。Alcrohm 将利用 Rational ClearCase MultiSite 与 Rational ClearCase 的结合以可靠的复制并同步包括二进制或文本对象的数据存储,从需求至代码、可执行应用以及其中的任何东西。每个站点中的团队成员用他们自己本地的数据存储的副本进行工作,因此WAN或企业内部网性能问题被最小化。特性的分支和合并简化了在多于一个位置中对相同文件所作改变的同步,因此有效地支持了24×7的开发工作周期。多个项目资产副本的存在同样帮助最小化停工、返工以及其它服务器的损耗带来的影响或灾难。IBM Rational ClearCase MultiSite还提供了一个基于浏览器的接口,以允许管理员从他们自己的本地站点管理所有的副本。

IBM Rational ClearQuest ―― 用于需求变更管理以及缺陷追踪。无论团队是分布式的或是协同位置的,开发资产都是活动焦点以及对客户来说业务交付日益增加价值的部分。有效的管理以及对开发资产缺陷、增强请求、新需求的响应和其他进行变更的追踪能力在GDD项目中都是极为关键的。关于缺陷状态的未回复问题和混乱是分布式团队所需要解决的最后一件事情,因为不确定总是会导致昂贵的延迟以及滑向崩溃的错误。

为了在GDD环境中提供优化的支持,Alcrohm 了使用 IBM Rational ClearQuest MultiSite,一个已证实的、健壮的、灵活的、能够跨越多个地点对本地数据存储同步化变更请求数据的工具,可以对IBM Rational ClearCase进行补充。这不但使对分布式站点数据更新变得更为容易,而且当服务器变得不可用时为数据存储提供了备份。

IBM Rational RequisitePro ――更有效的通信及管理需求。这个由不良的需求定义及在协同位置开发项目中的沟通所导致的问题在团队变为异地分布时更为明显。确实,不良的定义和不充分的需求沟通是导致GDD项目失败的最常见原因之一。毫不奇怪地是,对创建内容的不正确的假设通常会导致错误的解决方案 ―― 特别是当相关的人甚至不讲同一种语言时。为了减轻这种关系,Alcrohm将使用IBM Rational RequisitePro进行需求管理。RequisitePro使用数据库管理并追踪需求,并为它们分配属性例如优先级、状态以及难度级别等。使用Microsoft Word文件记录需求并提供关键的上下文信息。相关文件可以被链接,这可以使得对项目范围及资源变更影响的分析变得更为容易。

为了访问来自Site B或其它远程地点的需求,Alcrohm将采用Rational RequisiteWeb的基于浏览器的接口。这将使位于Site B的团队成员可以浏览、创建并修改存储于Site A的需求,同时对需求之间的关系进行追踪,而无需维护他们各自的数据存储或是在他们的桌面上安装另一个客户端。

IBM Rational TestManager ―― 用于在Site A进行功能及系统测试。在Site A的质量保证团队需要一个能够管理所有测试方面的广泛的解决方案,从初始测试用例计划直至测试开发、执行及测试结果分析。随着与Site A需求数据库的集成,对需求测试用例连接以保证所有需求在开发前被测试,Rational TestManager提供了所有这些能力。

IBM Rational Purify Plus ―― 用于Site A以及Site B开发者的单元测试。Rational Purify Plus是一个能够使设计师写出更加可靠代码的完整的运行时分析解决方案。Rational Purify Plus 通过提供对应用软件瓶颈高的亮化输出来帮助提高性能。

IBM Rational Software Modeler ―― 用于Site A的可视化建模及设计。建模工具可视化的对所有应用软件基础结构各个维度在所有站点的涉众之间进行沟通。Rational Software Modeler支持统一建模语言UML),工业建模语言标准以及最常见的全球化建模符号 ―― 当包括不同语言及文化时的一个最重要的优势。当需求变更时,相关的结构必须被更新。为了处理这个关系,Rational Software Modeler和Rational RequisitePro 进行集成以更容易关联需求与其相对应的模型元素。更新模型以反映新的需求使得在每个站点的开发者都可以看到更改对需求造成的影响。Site A的开发者同时也可以采用Rational Software Modeler进行模型驱动的UML开发。

IBM Rational Portfolio Manager ―― 用来进行项目组合管理。项目管理需要一种有效的方法进行计划、追踪并对GDD项目所有方面及资源组合进行管理。Rational Portfolio Manager能够捕获关键项目数据,例如成本、质量和完成情况度量,能够帮助进行管理评估、计算,并在所有项目组合的各个方面之间进行沟通。这些能力对评估并平衡GDD工作风险及收益极为重要,同时保证他们与项目优先级相符,并创建业务价值。

IBM Rational ProjectConsole ―― 用于跨越开发周期,对项目从需求定义直至变更请求的统计数据进行自动化的跟踪。Rational ProjectConsole 提供了对项目状态及质量的数据更新视图,因此你可以做出定性的评估以保持项目的健康轨迹并管理风险。

同步数据存储

为了使团队成员在24×7开发模型中跨越分布式环境地共享资产,每个站点所完成地工作必须保持同步,并在另一个站点中进行复制。正如前面所提到过的那样,Alcrohm将分别使用IBM Rational ClearCase MultiSite和IBM Rational ClearQuest MulitSite以保持项目版本化的资产和同步化的变更管理资产。对ClearCase和ClearQuest数据存储的复制及同步将自动每天两次的运行,分别在两个站点对应的每个工作日的结尾(07:00和19:00 丹佛时间)。

IBM Rational ClearCase MultiSite 和 IBM Rational ClearQuest MultiSite内建的复制能力保持了最新的以及简化的同步过程。ClearCase MultiSite 和 ClearQuest MultiSite数据库同时被复制。这保证了资产之间连接的数据更新。

对任何时间或任何地点访问的选择

在一些GDD环境中,也许考虑对共享数据存储提供基于web的访问是可行的,并且/或者可以采用Citrix技术以集中对开发工具的运行和管理。这些种类的“瘦客户端”的可选方法可以使分布式团队成员无论在哪里都可以访问项目资产。

在Alcrohm GDD环境中,Site A和Site B有足够的能力和管理资源以使得在两个站点的IBM Rational工具有最高等级的功能需求时,无论在哪里都可以通过它们内建的接口被访问。但是项目仍然存在极为重要的网络客户端的使用。特别是在Site B中的团队成员需要RequisiteWeb客户端对需求进行访问。

除了RequisitePro外,许多其它的IBM Rational工具支持基于网络的或是基于Citrix的客户端选项。例如:

远程用户可以通过基于Web的接口访问IBM Rational ClearCase变更管理功能。

IBM Rational ClearCase 远程客户端特性使得远程用户可以通过WAN访问目标版本。

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

32/3<123>

关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网