金钱- 9337
海拔- 8716 米
- 积分
- 9939
- 精华
- 0
- 帖子
- 943
- UID
- 111117

|
发表于 2012-2-22 21:06:43
|显示全部楼层
本帖最后由 技术狂人 于 2012-2-22 21:27 编辑
/ Q% }9 p% `6 n* M! [' {1 o7 Z+ H
必须先安装的软件2 f, W/ W n3 R/ u( D
为了完成本文中介绍内容的学习,您需要运行以下的软件,并进行适当的配置:0 |9 M6 O) h8 V6 M1 ^* Y
- IBM® Rational Team Concert™ 3.0 版本,在 IBM® Rational® Jazz™ 服务器上运行
- Rational Team Concert 3.0,Eclipse IDE 的客户端4 H( ^( L" n& X3 w/ K7 P+ y) @
该软件可以按照“Extending Rational Team Concert”指南(参见 参考资料 以得到其链接)中提供的指导进行安装与配置。在完成该指南之后,您就有了一个本地的 IBM® Rational® Jazz™ 服务器并且可以运行,名为 localrtcjazz.com。您可以使用公共的 URI:https://localrtcjazz.com:9443/ccm 来访问它。该服务器上默认的管理员访问是禁止的,而一个新的管理员用户可以作为 seemag 添加,因为这些定制工作是由一个管理员用户执行的。
2 N% W/ I. c( [# V G) l在您运行服务器之后,您可以为 Eclipse IDE 打开 Rational Team Concert 客户端,并使用 创建一个新的 Jazz 储存库连接 的选项来创建一个对该本地储存库的联系。提供公共的 URI,https://localrtcjazz.com:9443/ccm,以及储存库的管理员用户名以及密码。6 F, s/ O9 u. V/ u9 e
+ T( z' V/ T7 t6 n
# g. R2 L: i( d7 y
用例场景, D- x6 M3 t f1 b
设想一下一个团队领导的角色,他在一个敏捷开发项目内工作,并且使用 Rational Team Concert 进行项目规划,追踪以及管理活动。假设项目环境是动态的并且有很大的风险,所以您需要非常谨慎地识别每一个风险,并追踪它直到结束。如果项目团队创建一个名为 Risk 的通用工作项目类型并追踪它,就可以实现这一点了。本文向您展示了怎样在 Rational Team Concert 3.0 中执行该操作。
6 E1 E9 W1 {. n) S* j3 W在您对工作项创建任意的定制之前,您需要创建一个项目区域,并将其命名为 TestProject。对于该指南,该项目区域已经使用 Scrum Process 模板创建了。
0 N5 M. m! p# H' ~
* w5 S G, S1 N9 s, E* \
, h, | F* e6 z! |3 q3 s+ j1 L创建一个新的 Risk 工作项目类型6 A- ^" M( k' u, d
一个工作项的创建或者定制需要在 Rational Team Concert 中配置工作项的不同方面:枚举、工作项类型分类、类型、属性、工作流程以及工作流程绑定。在任意的项目领域内,所有的实体都是独立创建的,并且绑定在一起,以创建一个具有完整功能的工作项目类型。" O$ g& H9 q% {5 }
您需要接下来的步骤,来创建一个新的 Risk 工作项目,可以归类为 High Risk、Low Risk 或者 Medium Risk:- j L% a# V% E e% S
- 定义一个带有属性的新工作项目类型。; F- \8 }4 H) y* d6 M) X
- 为工作项目定义一个通用属性(它应该含有枚举值)
! N* M5 E/ f$ ^% ^) e
- 创建一个工作项。, r( c# Y% {, B
- 添加 Risk 工作项目的所有状态。
- 为风险添加所有的可应用操作。
- 为风险添加所有可应用的解决方案。
- 将适当的操作与解决方案相联系。
- 识别各种状态风险的转换。
N2 U' m4 _* s
- 创建一个编辑器演示。
- 将工作流程及编辑器演示与新的工作项类型联系起来。+ j! B2 T! k: I
定义一个名为 Risk Level 的枚举
6 U/ I; p$ k1 w在 Rational Team Concert 之中,所有的过程配置都是在 Process Configuration 项中完成的。4 K, `" k' T: U; V' I
- 选择 Process Configuration > Project Configuration > Project Configuration Data > WorkItems > Enumerations。% s# G' [* e: Y( n
3 N, D% e& o6 T6 h
图 1. 在 Rational Team Concert 中创建枚举
4 f5 ]( ]& |' W2 ?' D- I6 _! g + v/ ?" E6 ?$ f) T1 Q
3 O6 q$ | r3 Z. k' l9 L- 点击 Add 以打开如图 2 所示的对话框窗口。
7 M5 n5 ^5 B. u ! K# l* B3 {, C F- I; d
图 2. 为一个枚举提供 ID 以及名字- g8 x& `2 ?; c7 \' o' k$ J" g
5 s0 @. t I0 I2 T' W2 _6 e
, H! T9 H3 h1 u U0 k% I3 V- 提供如前面所示的值,并点击 OK。这将会创建一个名为“Risk Level”的新枚举。, }$ b1 H b; ] x& X
- j1 s" o4 X( F. m: q( H5 c2 [5 A
图 3. Risk Level 枚举" A+ H1 K! p6 t6 W; h+ v8 |+ ~5 ^( Q
1 ~, E+ J3 ~, z9 f) y
+ R4 x5 G2 H& I5 W" w% z8 N
因为一个风险可能的值是 High Risk,Low Risk 或者 Medium Risk,接下来的一步是将这些值与前面创建的 Risk Level 枚举联系起来。
4 P" x1 i0 P7 l: D- 为了向 Risk Level 枚举添加这些内容,您可以点击 Add 按钮(查看以前的界面,图 5),这将会打开如图 4 所示的对话框窗口。
, [* y' j& b2 ~( G# a6 g
3 C6 O0 `+ M( o6 z图 4. 在 Eclipse 客户端内添加一个高风险的枚举内容, S' M1 P4 X* K( \0 Z. C* W( a! S
, @ n1 P1 q, A' `/ I+ A( ^) T) a; J; L/ F
- 对于每一个内容,您可以选择一个名字以及(可选择)一个图标。7 n5 C, h" V6 `
使用图标作为一个可见的线索,是最佳的实践方式,并使得与使用完整屏幕的文本相比,找出有用的信息变得更加轻松起来。如果您没有看到您想要的图标,那么您可以向已得到的图标列表添加更多的图标。点击 OK 可以添加 High Risk。
- g' i2 ^6 Z' s$ t( o. M( N- 以相同的方式添加另外的两个内容,Low Risk 以及 Medium Risk。
- z1 x) e8 S0 ~9 r1 ]! _- L0 ? 定义一个带有属性的新工作项类型# M. @# O9 t& M& Z
在创建枚举之后,您需要创建一个新类型的工作项。4 n9 D8 s; h' g3 L) Q1 M) @
- 为了添加一个工作项,您可以在 Project Area 目录之中,选择 Process Configuration > Project Configuration > Project Configuration Data > WorkItems > Types and Attributes。
' W6 n9 @2 z" `- ^, [
8 d& v. t4 [8 r$ M0 e/ @3 Y# B, g图 5. 添加新类型的工作项$ b* l6 k+ s* L: U
# w" X e+ r1 ^3 V" X/ o
* a* d% |: M: H刚开始,选择 Types and Attributes 项将会列出 Project Area 当前过程模板可得到所有类型的工作项,在这里的范例中它是 Scrum Project 模板。
. B9 G% B' r! C6 V$ _; }& r/ x* e- 为了向该列表添加一个新的类型,您可以点击 Add 以打开如图 6 所示的 Add Type 对话框窗口,这样您就可以为新类型提供一个名字和 ID。4 a [5 A8 T9 S( n/ T2 K5 i' c' N4 c
; ~$ D% A. }5 c图 6. 为工作项提供名字,ID 以及类别 {. A8 j& W; X
7 Y" n+ }+ s+ {. m+ y4 i+ i
0 _9 r7 _& v1 ~% u- g每一种类型的工作项都与一个 类别 相联系。您可以为 Risk 工作项类型选择一个新类别或者重使用已存在的默认类别。( E( D, z8 ~2 I6 ?! d. c6 I
- 对于这里的范例,您可以为 Risk 创建一个新的类别。
- 点击 OK。
- 在选择的结果界面(参见图 7)之中,为该新类型 Risk 提供一个可见的图标。- n- ]* g6 N1 D2 o. s8 r* z
. t8 y) R" Q" c" \2 X( {
图 7. 创建 Risk 类型之后的初始界面4 z2 c5 C5 \2 a% R6 X
( l) P7 t/ r7 F/ T! C( g2 o
+ L+ U8 J: c# `3 h* u; i
往下拉界面,将会显示一个工作项类型的其他部分,例如 WorkFlow、Attributes,等等。首先您要向 Risk 类型添加一个新的属性。3 q/ Z& X* ^7 H& w, V' U
- 往下拉至 Attributes 窗口。
- 确定您选中了名为 Show only custom attributes 的复选框,以避免查看工具功能所需要的所有默认属性。刚开始,新的 Risk 工作项类型没有通用属性。# z% @; c6 V: o4 @
定义一个可以拥有枚举值的通用属性 2 ]7 e7 p5 S* l. e8 Z& ^) h5 w+ A, }
您要定义一个新的通用属性,该属性可以拥有来自枚举风险层次的值,并将其命名为 Risk Level。% u. f1 N/ a* h% j
- 为了添加该通用属性,您可以在 Attributes 部分的右边点击 Add 以打开图图 8 所示的对话框窗口。
5 v! h4 J+ C1 b. I$ d3 M' V ; T+ @) [8 i6 S6 V
图 8.为工作项添加通用属性
) d9 J) z& B. \* q1 {8 B! X% V 8 [0 [$ _' z6 p- T) X; r) H
- b& I4 d4 T4 y s( q- _- 除了 Name 以及 ID,对于 Type,您可以选择 Risk Level 枚举,您创建将其创建了。
- 点击 OK,然后确定 Risk 工作项目的属性部分反映了这个新的通用属性。( Z4 G& m+ P5 c! |
为新创建的工作项目类型创建一个工作流程
- K# r1 T( W, o: X+ G3 E9 @一个 工作流程 是反映任意工作项生命周期的状态、操作、解决方案,以及转换。因此,任意的工作项必须拥有一个工作流程。基于涉众的讨论,图 9 中演示的以下工作流程识别了 Risk 工作项类型。2 K Y4 e. v. I& q4 |3 P- h
+ G) i6 z* m; W5 j图 9. Risk 类型的工作流程/ x3 \8 L: J3 Z) A" G9 t- k
" z( I/ y2 [; `+ U
2 j# p, c* C" q* ^: j; j, x- c
- 在 Rational Team Concert 中为一个工作项创建工作流程时,您可以打开项目区域并选择 Process Configuration > Project Configuration > Configuration Data > WorkItems > Workflows(参见 图 5)。
- 在 Workflows 窗格的右边,您可以点击 Add 以打开一个新的对话框窗口,这样您就可以为定义的工作流程提供 ID 和名字:. H) I( Y( S5 S! u& Y4 d
- ID: RiskWorkFlow
- 名字:Risk WorkFlow$ P3 {& R1 N, q& ]
- 点击 OK,名为 Risk WorkFlow 的新工作流程得到了创建。
$ q- I) ~! Y; d0 f( s) ] 该状态中创建的工作流程会作为一个容器,放入 Risk 的五个数据元素,如下面步骤中的描述所示:# R7 O& L) r1 h
- 添加所有状态的 Risk 工作项目。
- 为一个风险添加所有可应用的操作。
- 为一个风险添加所有可应用的解决方案。
- 将适当的操作与解决方案相联系。
- 识别不同状态风险之间的转换。
6 R8 R7 V% a( ~; l$ ~ 在接下来的部分中,您将用以前的数据来实现 Risk WorkFlow。
5 O. }- Y( K! i4 R0 N6 y添加所有状态的 Risk 工作项目
9 f2 u. P9 i# T. @- ~- 为了在工作流程添加状态,切换至 Workflows 项并选择您创建的 Risk Workflow。7 f. Y; \. W8 X# w
正如图 9 中的状态图所示的那样,一个 Risk 可以是四个状态中的一个:Identified、Analyzing、Blocking,以及 Closed。工作流程拥有各种不同的部分,例如 States,Actions,以及 Transitions。: f, T- x3 B$ ^6 K& Y4 T
- 切换回 States 部分并点击 Add 以打开如图 10 所示的 Add State 对话框(该界面是使用 Identified 状态指定的不同值获取的)。2 U3 F0 }8 k3 r! ]
除了 Name、Icon,以及 Description 区域之外,这里有两个其他的参数:Group 以及 Show Resolution。
1 z* y2 e. |; }* F) V+ r& L# K c, \" C* R4 q: @. y6 z3 N
图 10. 向 Risk 工作流程添加一个新的状态 P4 J/ @2 F9 k: e* _, A
) W( Z, h0 f* }: m# x
, L2 _/ e! Z$ p% bRational Team Concert 中的任意状态都可以分类为三个标准组中的一个:
2 v- r! j* w9 O/ A1 ?( q- P- Open
- In Progress
- Closed
, s" f1 Z" ? k3 N& f; r 因为 Identified 状态之中的 Risk 是一个开放性的工作项,Open 组被选中了。; {2 H j6 ]: q0 W3 d
- 只是在工作项标记为 Closed 时,您才需要选中 Show Resolution 复选框。在图 10 之中,该复选框出于未选中状态,因为 Identified 状态没有将工作项标记为 Closed。
- 点击 OK 以创建识别的状态。
: ]: `5 k r) N7 P/ @ 您可以按照相同的方法来创建 Analyzing,Blocking 以及 Closed 状态。唯一的区别在于,当您在创建一个 Closed 状态时,您需要选中 Show Resolution 复选框。在创建所有的状态之后,States 部分将会如图 11 所示。4 {. |3 P! ?/ [0 x
3 [' j+ a/ o$ g6 j- Z5 o5 Y5 {
图 11. Risk 工作流程中 Risk 工作项的状态) U0 g- b6 @, P: [$ a v
( h; H8 }% N6 I# _& X
; \1 F# j5 W4 T$ U( B7 H
为一项风险添加所有可应用的操作 4 W$ u7 b3 H7 w3 k5 a! k& J
在这一步中,关于 Risk 所有可应用的操作都会被添加。在状态图中(图 9),箭头代表了操作,而省略号代表了状态。例如,Risk 的初始操作是 Open,它会创建一个处于 Identified 状态之下的 Risk。* ]4 A. N& q- H! d: H) c# @
- 为了添加该操作,您可以切换至 Risk Workflow 编辑器的 Actions 部分,并点击 Add 以打开一个对话框窗口添加关于操作的具体信息,如图 12 所示。; e; u( n# c- C$ \% m& N
3 h- `1 j/ J/ x: j% j图 12. 在 Risk Workflow 中添加 Open Action
, ^. r6 m3 ]' t. {! B7 {4 Z ' M3 a! O; k6 d% p7 M9 c
/ K% I; m9 H- l此时,Name、Icon 以及 Description 区域内的信息看起来开始变得十分熟悉。在这些规则的属性之外,每个操作都需要为 Target State 提供一个其他的参数。因为 Open 操作将会导致 Identified 状态。以前的图中 Target State 被选中为 Identified。
# E& X' K! E* h8 { O- 点击 OK 以创建 Open 操作。
- 以相同的方式为 Risk 工作项添加所有其他的操作。
0 O4 O: o8 \3 l T2 Q7 Y 在添加所有的操作之后,Risk 工作流程的 Actions 部分如图 13 所示。1 _& I5 E2 N6 t# X4 m/ f, J0 S
; O/ K" R$ M* M; b图 13. 为 Risk 添加所有操作之后工作流程的 Actions 部分$ h; ^+ P, G) U5 u$ g$ D
t: n i* p5 m6 y( Q
5 X _. F( T$ a一个工作项的工作流程需要提供主要的操作,例如 Start action、Resolve action,以及 Reopen action。Risk 工作项有以下的操作:
) s7 o+ Q" a/ ]/ ]- Start action = Open
- Resolve Action = Close
- Reopen action = Reopen0 {5 C, J3 Y6 o8 v/ D P
您可以在工作流程中添加这些值。
) n- f W) {! P; j1 v5 e( r6 d0 a( ]! ~; i9 X
图 14. 将 Risk 工作流程与 Start、Resolve 与 Reopen 操作联系起来
+ H6 T2 m: X0 q, m
$ i% V9 F0 K; L* S/ s' t* X; E; |0 P* |9 d
为一项风险添加所有可应用的解决方案
1 f. _, [9 B* v) a% _3 n在这一步中,在 Risk 工作流程中将会对 Risk 工作项添加所有可能的解决方案。假设基于涉众的讨论,您可以以三种方式来处理一项风险:缓和、抑制或者宣布其无效。所以您要添加三个解决方案:缓和的、抑制的,以及无效的。
8 m- T- V' `5 S% j) U- 切换至 Resolutions 部分并点击 Add 以打开如图 15 所示的对话框窗口。# D5 s) @( w# W, Y
& V, P4 m; X% G图 15. Risk 工作流程之中的添加解决方案对话框窗口
. C0 _# [1 ?6 |' |* m 5 y. x$ ^# t" j* p
1 s( s+ [$ J$ l! W$ M7 ]* G' \
注意: " T ^2 K1 t# ~+ {* [, _% Y
这里提供的屏幕截图反映了 Contained 解决方案的值。( [. V* B, R4 }# E# J
- 点击 OK 以创建 Contained 解决方案。
- 按照相同的方式添加其他的两个解决方案,Mitigated 以及 Invalid。
% A! Q) P4 e0 W5 S9 h4 t 在您添加所有的解决方案之后,工作流程的 Resolutions 部分,如图 16 所示。0 T' c" l J. m- l; l
& b: q' W5 j d6 R( n; W
图 16. Risk 工作流程的 Resolutions 部分
q3 H( M9 ]- j% v) ?2 F: N 9 B. S) `4 P" |" V5 v! `
7 T) T+ r8 b% R2 w7 H( W
将适当的操作与解决方案联系起来
* a, G F8 u5 a7 ]在您添加所有的解决方案之后,就该在工作流程中重新访问操作,并将解决方案与可以导致 Risk 解决方案的操作联系在一起。在当前的场景之中,只有 Close 操作可以解决 Risk。" c: A7 d2 t4 v4 n; F
- 为了将该操作与解决方案联系在一起,您可以选择 Close 并为所有的解决方案(Contained,Mitigated 以及 Invalid)选择复选框。然后 Risk 工作流程的操作窗格将会显示如图 7 所示的场景。! w3 K' o6 f% e6 R
. i1 \3 B7 g$ C( R" U2 t0 r, c. ]) U4 G
图 17. 向操作添加解决方案之后 Risk 工作流程之中的操作8 c5 { P8 `- d/ j) n
. ~! B* ^/ g' ]; I1 q$ s
; K- X7 |6 ^% [
末端用户会按照与工作流程中出现的相同顺序展示这些解决方案。您可以使用 Actions 窗格右边的按钮来将项目移上或移下。
, Y# ` }( P$ d) B% O j6 d/ c识别 Risk 项目各种状态之间的转换 + G Y) x/ Q- v8 i
在这一步中,您需要识别一个工作项各种状态之间的转换。如果您不能识别这些,那么 Risk 工作流程的 Transitions 窗格将会如 图 18 中的表格所示。! F! |1 f4 v% L f4 L
- F( R; m$ k0 U5 f, s; u! a5 P7 `! z! k图 18. Risk 工作流程之中的 Initial Transitions Section: v& s7 F5 t* l
9 P( n' A0 y# S% j, c/ |
( ?0 h! I2 W* Z$ l) ^各种状态的表格已经得到了创建。您需要在表格中识别并应用各种阶段。仔细地查看状态图,可以做以下的观察:/ _! O3 v4 g1 W) J5 {9 {! |" B# l
- 一个已识别的风险只能设置成 Analyzing 状态,而可以更改状态的操作是 Assign。它不能变为其他的状态。
- Analyzing 状态之中的风险可以设置为 Blocking 状态或者 Closed 状态,这取决于是采取了 Escalate 操作还是 Close 操作。
- Blocking 状态中的风险可以进入到 Analyzing 或者 Closed 状态,这取决于是否可以采取 Revisit 或者 Close 操作。
- 如果采取 Reopen 操作的话,Closed 状态中的风险可以成为 Analyzing 状态了。
1 Y$ \+ T r, w% R2 t( V$ A7 U 基于以上的观察,您可以提供如图 19 所示的转换:* |# W- {! d0 O) m. H0 n! d/ }
- 识别以分享一项 Assign 操作
- 分析以暂停一项 Escalate 操作并分析以关闭 close 操作
- 使用 Revisit 操作来暂停以分析,或者使用 Close 操作来暂停以关闭
- 使用 Reopen 操作来关闭以分析
0 C# {' V/ `, ~* o' X3 ^% }& E L- U+ k0 b% l+ l
图 19. Risk 工作流程中的 Final Transitions 部分& J5 F+ O+ E+ _3 X, g" m
9 N4 H, x- j( o8 X W6 I: ?4 M3 [5 R& ]0 p8 I- L
创建了转换之后,您已经完成了为 Risk 工作项创建工作流程的操作。
* x+ J0 m. U. x为新工作项类型创建一个编辑器演示
+ |% |. h( V. }$ m9 k# _3 u一个 编辑器演示 的功能就是向用户展示一个工作项。在 Rational Team Concert 的当前版本之中,一个工作项可以以四种方式展示:
3 A- f9 L8 h: b% U- Work Item Editor,在 Editor 视图中显示一个工作项时,Eclipse 客户端及网络客户端中使用的演示
- Inline Work Item Editor,网络客户端在 Plan 视图下显示工作项的具体内容
- Lightweight Work Item Creation 对话框,创建工作项时网络客户端中将会使用它
- Plan Editor Preview,当用户在 Plan Editor 视图下将鼠标移动到一个工作项上时,Eclipse 客户端中出现的弹出窗口7 l+ ^5 Z; |/ K: p/ ~
重点: 1 [, w# l. E q5 b
您可以以任意类型的演示来查看一个工作项,所以您需要为任意的工作项类型创建所有四种编辑器展示。所有的编辑器展示都是以相同的方式创建的。本文只涉及到了一个 Risk 工作项编辑器的创建过程,但是在项目区域内使用新工作项目类型之前您需要创建三个其他的编辑器演示。* b$ z/ _( ]& r7 b7 O1 Y
Rational Team Concert 提供了一个默认的编辑器演示,该演示包含了大多数的区域,项,等等,您需要它们来展示任意的工作项。您可以添加一些通用属性来更改默认的布局。6 v% `6 V* ^' G" V1 Z$ K( a
- 开始添加或者编辑 Risk 工作项编辑器演示,您可以切换至 Process Configuration > Project Configuration > Project Configuration Data > WorkItems > Editor Presentations,如图 20 所示。
- 查看标题为 选择编辑器展示以编辑 的组合框。默认条件下,其值应该是 com.ibm.team.workitem.editor.default。保持默认值不变,并点击 Duplicate。
- 一个对话框窗口将会出现,向您提供复制编辑器演示的 ID。给其起一个适当的名字,例如 RiskWorkitemEditorPresentation,并点击 OK。
+ p$ n2 ], _8 E, x: K( a 图 20 显示了 RiskWorkitemEditorPresentation。( x- w% e- I3 ~9 w" I+ M
8 ]# L8 D, j; E( H
图 20. 基于默认值的复制 Risk 编辑器演示
$ }) B2 u3 [, z% i6 n* v# ?
& B2 E7 J2 R, w$ n+ t- C- B$ n" H# ]& c0 t* M) g0 s
一个演示或者视图被分为若干个项目、部分,以及演示。每个项目的 Header、Overview、Links、Approvals 包含了工作项目的所有具体内容。取决于您想在什么地方更改视图,您需要编辑编辑器演示。对于这里的范例,您要为工作项只添加一个属性,它可以拥有 Risk Level 的值。
3 ~. v+ b: _! t: O J# @( j具体内容是 Overview 项的一部分,这样您就可以开始编辑过程了。
+ A( p9 D; z: o# D重点: ! c. o! J2 x& M* Y: V# _
您不应该在编辑器演示中直接编辑共享的内容,因为在各种编辑器演示中可以将其实现共享。9 B( \- ]! V2 y) ]# F0 X
Risk Work Item 编辑器演示中的 Overview 项有一个“content shared”标签,在做任何编辑操作之前您可以将其复制。
6 A: A: Q5 k# ^0 }% l% f; \- 选择 Overview,并点击 Duplicate。
- 在打开的对话框窗口之中,提供一个适当的名字(在这里的范例中起的名字是 Overview),并点击 OK。
9 l8 e; ^4 Q0 J" F 这将会创建一个另外的 Overview 项,它没有一个 [content shared] 注释。在创建 Overview 项之后,就该编辑 Details 部分,以在工作项编辑器演示之中显示新的 Risk Level 通用属性。Details 部分会再次带有注释 [content shared];因此,首先您需要将其复制。
- u# |& W0 F6 L# d5 s7 E- 选择 Details 并再一次点击 Duplicate 。
- 当您需要为复制的部分添加一个 ID 时,您可以提供名字并点击 OK。6 y4 q: n/ a4 `' o
在这一阶段中,会有两个 Overview 项以及两个 Details 部分,一个有 [content shared] 注释,另一个没有,如图 21 所示。
# ~5 ^3 z. v8 e; \% p) V: f r" Q5 z$ n1 G: N- q1 F- D4 [
图 21. 复制 Overview 以及 Details 之后的 Risk Work Item 编辑器演示& u& L" m6 Q+ k3 n& k! p8 F- m
' F# g5 ]+ y3 u) n
# D) ]$ [- V5 C0 V% X0 n$ t' I因为您为 Risk 编辑器演示创建了 Overview 项以及 Details 部分,所以您不再需要共享的 Overview 项以及 Details 部分。
! r+ K3 O) Q5 k9 E+ n: g6 G- 为了删除编辑器演示的这些部分或者特定的元素,您可以选择适当的元素(Overview [shared content] 以及Details [shared content]),并点击 Remove。1 y! d% k) T4 W7 }
在您删除共享的 Overview 项与 Details 之后,您会注意到您只有一个 Overview 以及 Details 部分,在 RiskWorkitemEditorPresentation 视图中没有共享的内容。
# X6 ~9 C0 S8 n& o* R接下来的一步是为您要在 Risk 工作项编辑器中展示的通用属性编辑演示:Risk Level。- A, f) o6 f# s- M) e( T- R' V
- 点击 Overview 项的加号“+”展开 Details 部分,然后点击 Add Presentation。
. c% s* y+ t/ N- s) C' z& g 这将会打开一个对话框窗口,以为演示区域提供值。演示可以是基于属性的或者基于非属性的。
: Z) ?9 m/ s. J1 c7 ~8 w- 因为您要为 Risk 工作项目的通用属性添加演示区域,所以您可以选择 基于属性的演示 。, g+ ~& t/ X& A F" \8 c
" x- w* z ]* d3 s) N6 z3 `
图 22. 为基于属性的演示提供值) i/ t# O8 f X& U
4 s; M7 [* Q/ I ^, k
9 u- e( T+ } M/ }2 {) E$ e6 z9 pRisk Level 可以选作属性,因为为 Risk 工作项目类型的 Risk Level 属性添加了演示。5 N' x% J9 [- d0 \! Z+ s! ]4 E
- 选择 Kind 作为一项 Enumeration,因为 Risk Level 是一个枚举类型。
- 演示区域的可视证明需要一个标签。
- 点击 OK。
" y3 w7 m3 [' @ Detail 部分的 Risk Level 中创建了一个新的演示。您可以点击 Move Up 或者 Move Down 按钮更改该演示的位置。/ W3 ]: w! V9 l
# T3 T4 Y2 L& @6 u( j( q4 \图 23. 添加至演示的 Risk Level 演示
8 }" b4 p y8 k; O6 Q# E
9 Y4 i, [- z4 B0 I1 D4 V: {! ^8 W$ g( m
有了它,您就完成了 Risk 工作项 Work Item Editor 的创建过程。" F# H6 f: e) L" Z# m
提醒: + r& N4 e8 o" g8 K$ Q3 L! B
记住添加其他三种类型的编辑器演示,以便能够在所有的视图中查看工作项。
; a* O' q5 V2 D: i5 R2 ?! o将工作流程和编辑器演示与 Risk 工作项绑定起来
5 [, _* H( @' B( n& v1 k! _/ T直到现在,您所创建的工作流程和编辑器演示可以作为独立的实体存在,而不再与前面创建的 Risk 工作项目联系起来。
- ? M$ t5 P) S- s# {- 为了联系这些实体,您可以切换至 Process Configuration > Project Configuration > Configuration Data > WorkItems > Types and Attributes,并选择新创建的类型,Risk。
5 E% N! q3 G# {$ b- h0 Y( I( e# M' {5 ] 该位置中的任意工作项都有选择其各种属性的选项框,这些属性例如 Work Item Editor、Inline Work Item Editor、Lightweight Work Item Creation Dialog、Plan Editor Preview、Workflow,等等。; [5 g& Q s6 ~& C4 B2 K5 Z
- 为了将您创建的编辑器演示和工作流程选作 Work Item 编辑器演示和工作流程的值,您可以在以下的两个屏幕截图中选择值。5 ~2 {1 g, w- ^$ I2 M# c
- (图 24)在 Project Area 界面中,Types 及 Attributes 视图之下,从列表中为 Work Item Types 选择 Risk 。
- 从 Work Item Editor 区域中的下拉列表中,选择 RiskWorkItemEditorPresentation。
- (图 25)在接下来的视图中,Workflow 之下,从下拉菜单中选择 Risk Workflow。& s! O, S9 m, [5 g n n, |) r; m \
- V+ v& R. t9 b' E) y$ f3 _图 24. 将 Work Item Editor Presentation 与工作项目的 Risk 类型联系起来
2 w) ~" p. B; W/ a* g
% P. ~$ S4 Z. _+ ~ M
* u& A0 Y8 B9 q- u$ E% a
Y n! d! w. L% w# H图 25. 将工作流程与 Risk 类型联系起来
5 V8 j% @( d7 l1 I# F , u7 S7 G6 w. ~* k+ F) `: Y
$ N- n) B! b; i" E$ [' c提醒:
! T& a2 P$ G( F0 R8 P记住将其他三个类型的编辑器演示(在线工作项编辑器,Lightweight Workitem Creation 对话框以及 Plan Edior Preview)绑定起来,以适当的方式来在所有的视图中查看工作项。1 ` t; x/ j* |. B* {5 I
- 使用您起的名字,来为其他三种类型的编辑器演示,选择适当的值。; Q' M+ s0 W! w0 f z
现在您已经创建了一个名为“Risk”的完全功能类型的工作项。' v% k+ A! Z# S0 w+ {
8 g) |4 n; {6 i2 Q+ h( Z6 m
5 ^! i6 Q( y4 Z1 L8 g5 x0 Q Z测试新的 Risk 工作项
L0 J. N% F) k Q/ t) ], I3 E2 p- 在 Team Artifacts 视图之中,为了测试您创建的新工作项类型,您可以打开 TestProject 项目,并选择 Create Work Item。$ H# [+ P/ I" R: H
图 26 显示了结果得到的 Create Work Item 界面。/ s! S" `/ v, |9 d1 I# j
7 O% f/ W% h7 D z图 26. 在 Rational Team Concert 中创建一个新工作项( V( J& |# h& z4 G5 r
1 E; P* x9 f: D
5 v% B* ^5 G# w" U) U- 注意有一个名为 Risk 的工作项目。将其选中,然后点击 Finish。
3 O. K. G+ U. K; ?, q7 m 这将会创建一个新的 Risk 工作项目。注意屏幕截图中强调显示的部分(图 27):Low Risk 以及 Uninitiated [inactive]。在第三行显示了 Risk Level 属性,以及 Low Risk 的默认值,而 Risk 的初始状态是 Uninitialized。
& V8 S+ U% g8 ^$ ^2 w% P1 V* a8 Q. k- k% b
图 27. 创建的新风险& \& Y. F( D3 e7 ?
; a+ c1 t4 f& m) W& Q! [* A7 G T8 M* _
当您回忆工作流程时,一旦将其打开,风险就会转移至 Identified 状态。当期保存到项目中时,Rational Team Concert 会将 Risk 当做 Opened。: d6 a% ]2 A( _3 V8 s9 ?& a+ T
- 保存 该 Risk,而状态将会更改为 Identified。
; S! q& j$ U2 d- i" d) H
+ j: c+ I2 D0 @( s, u图 28. Identified 状态中显示的 Risk
6 ~$ H% M# g. t
) R1 u* W; c! U: l5 m l: w% `/ C
3 I5 Y6 r* K+ Y! d. |# V# _为了测试 Risk 工作项目的工作流程,您可以采取特定的操作。) I8 A& y1 p' t8 N( _* W( F
- 举个例子,您可以为该新 Risk 选择 Assign。
. e7 [- o, R" w/ V) V5 P# Q0 Q* e $ [( B0 V; x5 @2 i/ s
图 29. 对 Risk 执行一次 Assign 操作
, i7 M( k* V8 |9 Y# f4 h 3 O* [% u f3 i
5 P7 h! I' A( @一旦应用 Assign 操作,风险的状态就会更改为 Analyzing。
2 e9 Z4 F8 n3 K) E0 `
( J O* d# W& i图 30. 执行Assign 操作之后分析状态9 ?9 H9 X" [0 P& J' n% Z
: `$ B: ]( E) _% R
" b3 j' f- B- z: [- n1 {在这里,只要在当前状态的风险条件下合理的话,您可以选择执行操作。基于执行的操作,Risk 工作项的状态会不断发生变化。例如,一个 Escalate 操作将会导致产生一个 Blocking 状态,如图 31 所示。" {% Z" x3 u- v
& f) i, V5 N! g. V+ p7 e图 31. Escalate 之后 Blocking 状态中的风险, e* B" T% _3 V( I3 X' p& u4 b$ l
3 S/ y, S: o4 w8 j* v5 [
' O/ \) V6 H" E- q' u# w' c9 z1 x5 n
您还可以在执行 Close 操作并选择不同的解决方案时,测试显示的 Resolutions。使用第二个强调显示的下拉菜单,在状态区域的右边,您可以选择各种解决方案。它们与您在工作流程中定义的部分拥有相同的顺序。当解决方案被选中并保存至 Project Area 时,解决方案就不能进行编辑了。7 Q% F9 I2 S1 K1 `2 V5 x$ Z2 A# ]
5 S4 {5 }# z' ]1 w6 |" p' w图 32. 对 Risk 工作项目执行一次 Close 操作4 U: p. A7 o1 r/ r
# n4 d, g# D4 G: \. z
r I7 ^( u: H: `
& y+ d, j# o0 E: W9 M7 B
% r8 N8 U8 X( t8 G4 q
3 q& F* a* h ~! [总结
) W5 N8 V4 G7 D) I1 P/ m# fRational Team Concert 提供了深入的过程配置选项,以满足几乎所有人的需求。本文涉及到了 Rational Team Concert 中工作项的那些定制过程。作为该定制的一部分,会为风险及其各个方面,包括枚举、通用属性工作流程等等创建一个新类型的工作项。文章介绍了工作流程各个方面,集中讨论了状态、转换、解决方案,以及操作。在所有独立项目被创建和联系之后,新创建的工作项会得到测试。现在团队成员可以在 Risk 工作项目的“雨伞类型”基础之上,为不同的风险创建通用风险。7 w6 w2 Y5 E4 O& \5 W! P6 N' G$ X
|
|