Jazz 平台技术概览
在团队中开发软件非常类似于在乐队中演奏乐器。每个音乐家必须集中精力演奏他或她自己的部分,同时还要与乐队保持合拍和同步。他们必须就将要如何沟通达成一致,并注意彼此发送的信号,否则表演就会失败。强有力的协作和个人的精湛技艺都是出色的乐队表演所必需的。类似地,开发人员一定不能仅集中于构建高质量的代码,他们还必须对自己的活动进行协调,以便所有各个部分能完美地结合在一起。
Jazz 平台术语和概念
Jazz 构件存储在存储库(Repository)中,只有授权用户(Users)才能访问存储库。
存储库包含项目区域(Project Areas),项目区域包含项目的构件。每个项目区域具有一个关联的流程(Process),流程控制项目如何运行,并自定义 Jazz 的行为方式。流程通过流程规范(specification)、流程状态(state)和流程描述(description)进行定义。流程规范定义项目的迭代(Iterations)和项目在这些迭代期间的行为方式。流程状态定义当前迭代。流程描述对应于一个说明该流程的网站。
图 1: 项目区域结构
存在两个预定义的流程可供选择:Eclipse Way 和 OpenUP(正在开发中)。但是您还可以定义自己的流程或修改现有的流程。
一旦连接到某个项目区域,您就可以访问该项目的构件。
项目区域分解为一组团队区域(Team Areas),团队区域描述从事该项目的团队。每个团队区域都具有团队成员和团队成员在该团队中扮演的流程角色(Process Role)的列表。一个用户可以是多个团队的成员。每个团队区域可以定义流程的流程自定义项(Process Customizations),以便为该团队及其子团队定制 Jazz。
对于简单项目,所有活动都在具有单个流的单条主开发线(Development Line)上进行。可以为诸如维护活动等事情创建附加的开发线。每条开发线具有自己的团队区域和流程自定义。
计划的工作由工作项(Work Items)进行描述。项目区域中使用的工作项的类型由流程定义。例如,Eclipse Way 流程定义了针对缺陷(Defects)、任务(Tasks) 和增强功能(Enhancements)的工作项类型。每个工作项类型可以具有自己的状态转换和自定义字段。工作项按分类(Categories)进行归档,分类使您可以按功能领域对工作项进行组织。每个项目区域都定义了可用分类的列表。每个团队区域与该团队负责的功能区域所属的分类相关联。
可以通过执行查询(Queries)来查找工作项。查询可以由您私人所有,也可以与团队共享。
项目区域中的工作在一系列的迭代中完成,迭代的开始和结束日期在流程的状态中进行定义。流程将其中一个迭代定义为当前迭代。在进行工作计划时,您将针对某个特定迭代中的某个工作项。可以通过创建迭代计划(Iteration Plan),从而计划应该在某个迭代中完成的所有工作。
您将使用个人存储库工作区(Repository Workspace)在源代码控制(Source Control)下处理项目文件。您将加载存储库工作区,以将文件和文件夹复制到您计算机上的 Eclipse 工作区中。Jazz 使用变更集(Change-Sets)来跟踪对受源代码控制的文件所做的变更。每个变更集逐项记录对一个或多个单独文件或文件夹所做的变更,附带注释,并引用促成该变更的相关工作项。您将签入(Check-in)自己的变更集,以将修改后的文件副本从 Eclipse 工作区上载到存储库工作区。
团队使用主开发流(Stream)来存储项目文件的主副本;每个存储库工作区包含一个副本。存储库工作区和团队的主开发流(Stream)通过子开发流(Flow)进行连接。您将变更集从存储库工作区交付到流,以将变更合并到主副本中;这些变更集是传出变更集。传入变更集是已经由其他团队成员交付到流的变更集。您将接受传入变更集,以将其他团队成员的变更合并到存储库工作区和 Eclipse 工作区中。
受源代码控制的文件库是在稳定增长的变更集基础上构建的;每个变更集都以之前的所有变更为基础。变更历史记录(Change History)是某个存储库工作区或流的变更集序列。
可以将受源代码控制的文件库划分为一个或多个单独的组件(Components),每个组件具有自己的文件夹和文件的树形结构,并具有自己的变更历史记录。简单的存储库工作区和流包含单个组件。如果团队构建分层软件,其中的各个部分以半独立的方式发展,并单独地部署,则多个组件是非常有用的。
您可以在存储库工作区中创建单个工作区的基线(Baseline)以捕获某个相关的时间点,或者创建快照(Snapshot)以捕获所有组件的同时基线。
每个团队可以具有自己的构建(Build),并在与该团队区域关联的构建定义(Build Definition)中对其进行描述。构建定义指定构建间隔、要使用哪个构建脚本,以及要使用哪个存储库工作区来获取文件。可以在不同的构建引擎(Build Engines)上运行某个构建。
您可以使用订阅源(Feed) 来了解您的同事正在干什么工作,以及其他团队发生了什么事情。在存储库中的构件被修改时,事件通知将自动发送到订阅源(Feed)。
Eclipse 用户界面元素
视图(视图标题以粗体显示)
团队工件(Team Artifacts) 视图管理到存储库和项目区域的连接。连接到某个项目区域以后,您就可以访问其构件。构件被分组到不同的节点中。
团队控制台(Team Central) 视图为您提供与您的工作相关的信息的简要概述,包括构建、工作项活动或变更集交付。该视图具有一组可由用户配置的部分。通常存在一个与每个部分关联的专门视图或编辑器,其中提供了更多的详细信息。
待定变更(Pending Changes) 视图显示按组件分组的传入和传出变更集。您通常从此视图交付和接受变更集。
我的工作(My Work) 视图显示当前分配给您的工作。您通常从此视图中开始从事某个工作项。
工作项(Work Items) 视图向您显示从某个工作项查询返回的工作项。
构建(Build) 视图向您显示构建结果的摘要。您可以打开构建结果编辑器以详细检查构建结果。
当您执行违反流程规范的操作时,团队顾问(Team Advisor) 视图将弹出来。此视图告诉您什么地方出错,并且通常提供了该问题的快速修复。
编辑器
用户(User) 编辑器为您提供对 Jazz 用户的名称、电子邮件地址、权限和照片的访问。这也是用户指定其工作环境、工作日和计划的缺席情况的地方。
项目区域(Project Area) 编辑器为您提供对项目区域的流程规范、开发线、工作项分类和流程状态的访问。
团队区域(Team Area) 编辑器为您提供对团队的成员及其角色的访问。这也是团队自定义其流程的地方。
工作项(Work Item) 编辑器允许您创建或修改某个工作项,变更其状态,添加注释、附件和指向其他构件的链接。当您保存编辑器时,更新后的工作项将传输到存储库。
规划(Planning) 编辑器允许您创建或修改某个迭代计划。迭代计划是为某个特定的迭代目标而定义的。
构建结果(Build Result) 编辑器向您显示某个构建的情况概要,并具有选项卡,用于显示从该构建的不同步骤中收集的详细信息输出。
事件日志(Event Log) 查看器允许您查看事件或某个时间线中的订阅源(Feed)。可以从团队控制台(Team Central)中的某个事件部分或者通过在某个查询、迭代计划、团队区域或用户上选择“显示最新事件(Show Recent Events)”来打开事件日志。
状态行修饰
当前工作(Current Work) 在 Eclipse 工作台窗口右下角的状态行中显示当前工作项。您做出的变更将收集到一个与该工作项关联的变更集中。
工作项(Work Item) 输入字段允许您通过输入工作项编号或者描述或摘要中的某个单词,从而快速导航到某个工作项。该工作项将出现在 Eclipse 工作台窗口左下角的状态行中。
在线状态(Online Presence) 允许您快速变更您在 Jazz 中的在线显示状态。此外,您可以使用此修饰来断开或重新建立到协作服务提供程序的连接。
分享到:
相关推荐
《RTC安装及设置》这篇文档主要涵盖了IBM Rational Team Concert(RTC)的安装、配置和基本使用,这是一个基于Jazz技术平台的协作开发工具。本文档适用于全球分布式开发团队,特别是那些希望通过Jazz平台构建可扩展...
压缩包中的 "Jazz_RTC_Introduction.ppt" 文件很可能是一个关于Jazz RTC的介绍性演示文稿,它可能会包含以下内容: 1. **系统架构**:解释Jazz RTC的组件、服务和它们如何交互以支持协作开发。 2. **安装与配置**...
这篇文档虽然标题和描述中并未直接涉及IT行业,但可以从部分内容中提炼出一些与技术相关的知识点: 1. **智能汽车系统**:文中提到车内的电脑系统能自动根据预设参数调整方向盘高度、座椅舒适度和观后镜角度,这...
这篇博士论文《Design Techniques for High Efficiency Highly Linear RF Power Amplifier》深入探讨了如何在提高效率的同时保持良好的线性度。 #### 关键知识点详解 **1. 降低功耗的重要性** 在设计无线系统时,...
这篇文档标题为“好莱坞电影发展史英语学习教案”,是一份以好莱坞电影的发展历程为主题的英语教学材料,涵盖了电影从诞生到现代的重要阶段。好莱坞作为全球电影业的中心,其历史不仅代表了电影技术的进步,也反映了...
3. **爵士舞(Jazz)**:爵士舞融合了古典芭蕾和舞蹈技术的动作风格。课程将专注于传统爵士舞,让学生接触爵士风格的节奏和动作。为了确保孩子的合适位置,学生被邀请参加样本课程,与家长和项目工作人员一起确定学生...
这篇报告主要涵盖了巴克莱银行对美国专业制药行业的深度研究,特别是针对美股市场中的制药公司。报告日期为2019年6月10日,由Barclays Capital Inc.及其关联公司发布。报告中提到了可能存在的利益冲突,因为该机构...
例如,题目可能会给出一篇关于爵士乐(jazz)多样性和演变的文章,讨论爵士乐是否代表了人民的声音,或是人们喜欢的音乐类型。文章指出,爵士乐的定义随着时间和风格的变化而模糊,不同种族的音乐家都曾受到彼此的影响...
本篇文章将详细介绍一个简单的C# MP3标签读取器的实现原理与代码逻辑。此组件可以帮助开发者在C#应用程序中轻松读取MP3文件中的元数据(如艺术家、专辑等信息),从而为用户提供更丰富的媒体播放体验。 #### 技术...
本篇文章将根据“KSD-866LCD规格书”的内容,深度解析该模块的关键特性、操作方式以及支持的功能,旨在为开发者提供详实的技术指南。 ### 一、模块核心特性 KSD-866LCD模块最显著的特点是其强大的媒体处理能力,...
这篇内容主要涉及的是高考英语复习中的高频词汇及其相关练习,旨在帮助考生加强记忆和应用。以下是对这些词汇及其用法的详细解析: 1. **eager** adj. 渴望的,热切的 - 表示对某事充满期待或急切的心情,如:She ...