SCMLife.com

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 5058|回复: 2

[推荐] 使用RMC和Jazz实现开发过程的文档化和自动化(1):各种开发方...

[复制链接]
发表于 2013-3-3 21:02:01 | 显示全部楼层 |阅读模式
使用 Rational Method Composer 和 Jazz 实现开发过程的文档化和自动化,第 1 部分: 各种开发方法在敏捷领域中的价值
5 d  c/ Q* _( ]3 k) ~
简介
方法 是团队协力实现其目标的工作方式。它描述如何确定和分配责任、要应用哪些技术、如何确定成功的标准,以及如何达到这些标准。
. N& h* |9 v  Y  }2 a* l+ }; i: Q曾经,方法是位于布满灰尘的绑定者中的静态文档——是强制性的,但几乎无法理解和应用。团队在最低限度地应用方法,以便不引起流程警察的注意。几年的时间很快就过去了,敏捷的革命已经推翻了流程警察。自由的时代。一切都是和平、友爱和协作!/ q) b: H. o$ F1 W- t
但敏捷并不意味着无秩序。正确应用敏捷方法需要纪律。原则是存在的,如在 Agile Manifesto(敏捷宣言)中看到的那些原则。有许多替代技术可供选择,如待办事项梳理、计划扑克和测试优先的开发。对于许多组织来说,敏捷方法是不够的。随着组织和技术复杂性的增加,需要考虑额外的扩展因素,并且需要扩展流程来匹配。
, \' G" W  y; l随着方法变得越来越复杂,文档变得越来越重要,自动化的方法也变得更有价值。本文利用 IBM® Rational® Method Composer 和基于 Jazz™ 技术的制定工具来探讨记录和自动化方法的价值。
, f4 m2 j+ ]2 f0 F8 Q. P

  Y6 U) k* R, @9 p; N6 G& j1 G" o9 ?' P/ x' Z  h& L8 z5 W
为什么方法很重要
每个人、每个团队都遵循一些方法。有些是临时性的,在有需要时创造,而另一些则是正式的、刚性的、强制的。有些方法与特定的角色、工作产品、任务、模板、检查表和指南一起记录。其他方法是没有记录的,所以开发人员依赖于团队成员之间的共识,以及知道要找谁去获得更多信息。大多数组织处于两种极端之间,原因有两个:
* a4 T& r2 w# w3 N3 p  W6 e0 @' O
  • 刚性的方法可在需求出现时避免发生更改,但临时性方法会导致混乱
  • 详细记录的方法可能很难创建和维护,而没有记录的方法则限制了最佳实践的沟通和共享。4 m9 \: C5 V1 }- Y) n
方法是重要的,因为它们决定团队合作得究竟有多好。方法确定在项目上应用的技术是否有效,它们甚至可以定义我们心目中成功 的标准。问题不在于是否有一种方法,而是如何确保您的方法有效。
; I3 J) A) {' t: W

. V% Y1 g7 c5 ~6 q' m; g
3 N  {; J! q% {6 P2 M0 {
记录方法的原因
临时性的、没有记录的方法会很有吸引力,因为它们不需要投资并且非常敏捷,因为您是在工作中创造它们。然而,这会变得难以扩展。Rational Method Composer 中包括了一些来自 Disciplined Agile Delivery(纪律敏捷交付)流程(另请参阅 参考资料 中的引文)的扩展因素:
团队规模 主流敏捷流程在小团队 (10-15) 中可良好应用,但如果团队有 50 人呢?一百人?一千人?
  H& a3 q; h: d' a: O3 E4 G8 j  合规性要求 如果有监管问题适用,如 Sarbanes Oxley、ISO9000 或 FDA CFR21?
; G& r% ?& ?8 `8 v5 ?& p  地理分布 如果团队分散在大厦中,或在世界各地?
0 e7 d' f5 p& Z- {% x% z- G  域复杂性 如果问题域错综复杂(如生化过程监控或空中交通管制),或者快速变化(如金融衍生品交易或电子安全保证)?
2 c, t8 V/ K9 t  组织分布 有时一个项目团队的成员来自不同部门、不同的合作伙伴公司,或来自外部机构。
5 X1 |# g$ a$ w+ e( d; w  技术复杂性 使用遗留系统、多平台,或混合不同的技术,可能会增加技术的复杂性。; Z  `+ a- w  _4 ^
  组织复杂性 组织结构和文化可以反映传统的价值观,从而增加采用和扩展敏捷战略的复杂性。组织内不同的部门机构对自己应该如何工作可能有不同的看法。' T3 Z2 H" ~* |6 u6 N
  企业纪律 组织希望利用通用的基础架构平台,以较低成本,减少产品上市时间,并提高一致性。他们需要有效的企业架构、企业业务建模、战略重用和组合管理等纪律。这些纪律必须与软件开发过程协同工作,更好的是,利用它们来增强该流程。2 Q( I& b% ^" e3 r* Q' g
  . d- U9 t6 \9 f8 l3 T1 [
图 1. 规范敏捷交付扩展因素
3 g7 \" o0 v$ N4 p: T6 W - P6 Z/ P. C2 Y  {
随着项目和组织复杂性的增加,记录这些方法变得越来越重要。记录的方法使组织能够:. |; [0 c+ S' `9 d0 C+ m8 |# F) e
  • 定义明确的责任和关键的事件顺序) h+ m) C. `% _' y8 i
    由于团队变得高度分散,随时随地都能以某种记录的形式提供信息就变得非常重要。没有时间去等待一个解释,也承担不起对由谁在什么时候需要做什么事情这种问题感到困惑。
  • 捕获和推广该组织的最佳实践
    4 B+ @4 R9 V% f1 \, h7 x6 i为了保持竞争力,企业必须使用行业标准的最佳实践,并从自己的错误和成功中总结经验。
  • 对变更的效果设定基线并进行测量, W! h7 v% N% _$ c9 u
    如果不建立一个基线方法,您要改善什么呢?文档可帮助您实现基于回顾的持续改进这一敏捷原则。
  • 满足合规性与审计  V4 D+ m$ U, w& M' s" n
    例如,CMMi、DO-178B、ITIL、COBIT、SOX。合规性可能是一个挑战。记录方法通常是必需的,以实现合规性并作为演示合规性的证据。
  • 使用符合项目特征的方法快速启动项目。& `+ a$ f  N8 N: X/ T5 K& e1 R
越来越明显的是,问题并不在于有否记录的方法,而是要记录什么以及如何记录。3 O7 r/ e9 E0 K7 a$ v4 V

1 N! i8 U* b. J1 [
8 k* k& O3 G. J9 {
使用方法创造工具的好处
最常见的方法创作工具是文字处理程序和维基。它们提供了一些明显的优点,因为只需要很少或根本不需要培训,而且对如何组织和展示信息的限制极少。/ v2 M+ [0 N1 |! F/ |. F, H  B; ^/ @
其缺点是,这样的非结构化信息就像一本书。使用它的惟一途径就是阅读它。方法创作工具提供了一个方法数据库。数据库具有以下优点:0 a5 [& k/ a& k1 |; |8 q! _
可配置性与自定义 您可以从其他方法的片断和部分来创建或调整方法。您可以扩展方法,以适应小型和大型项目。自定义可以是协作式的,其中团队成员对方法进行评论,并共同作出更改和补充。! Z* @$ O, }1 r+ `
  流程构建器向导 您可以创建提出问题以及根据答案来调整方法的向导。
- k- k9 z2 `4 a7 q7 r& q' K  一致性和完整性 流程感知的方法编制工具,确保信息是一致的和完整的。表单填写界面使得提供正确的信息很容易。可以生成信息(如相关元素之间的交叉引用),从而确保一致性。
/ D3 @+ R0 ?. ]9 `5 u& F. U  F  自动化 可以使用方法信息来配置流程自动化的工具。自动化包括生成最初的项目计划或工作项列表、触手可及的特定于上下文的流程指南、自动工具配置。未来还有更多可能。
* j- g+ m6 G$ H5 _' [3 h  查询、混搭和报表 方法数据库可以支持 RSS 提要以及其他混搭技术,以提高方法信息的可访问性和价值。查询和报表可以用来以不同的方式查看方法信息,这些方式包括表格、摘要表单、卡片,或 Portlet。您可以挂接到不同的信息源,如在线帮助、社区和工具数据库。3 Y  o7 P5 K7 X; f' c, [
  问题不再是 “我们是否应该使用方法创作工具”,而是 “我们应该如何构建我们的方法信息,以便我们可以优化我们对方法的使用?”
3 }& Z; U+ o2 D! [! a
- }, S  L2 K: j  r5 i. A% S, X! O

% _% ?9 Y( V5 ~2 D" G' X. r
Rational Method Composer 的价值
Rational Method Composer 包括以下特性和功能:
9 G+ |) |; O& n
  • 一个巨大的实践库,包括一套集成了实际业务和技术控制的丰富敏捷实践
  • 工具集成特性,如:
    2 A/ }1 v" P( C- l  D  Q3 M
    • 自动配置工具,以匹配记录的流程
    • 从流程定义创建计划和工作项模板
    • 工作时 “触手可及” 的流程指南
      # p/ h& v& R+ R# l  Q5 Y" {( O
  • 综合的流程和工具解决方案,适用于不同行业中不同类型的开发,如:
    # u: K, O- t$ t, G$ Q
    • Collaborative Lifecycle Management for IT agility@scale™(参见 参考资料
    • 系统和软件工程
    • 汽车
    • 航空航天
      ) b! ?9 ?1 ?+ B( h' Z
  • 可定制性特性:+ _) c# ^$ U) ]$ m7 k& K
    • 皮肤(可选显示),定制信息的呈现方式
    • 定义自己的方法元素类型、规则和关系的选项
    • 项目或组织现有方法的简单定制* [' R( {( l: Y4 g  s- V1 q, C! U0 b. j
  • 针对富文本编辑、图表、分解结构、适应性、报表和查询的大量特性
  • 针对衡量项目绩效及作出改进的指南和标准
  • 配套资产,如 “自我检查” 和 “测量改进”,提高团队和组织的绩效/ A7 U& F' h8 V; J# U7 ~( Z: o
如图 2 所示,Rational Method Composer 由一个记录流程的工具和一个可重用实践库组成。可使用开发工具对记录的流程进行制定。已测量的改进方法使您能够改进流程。* e3 H: i7 c; T( M
0 X/ z" Z: d" c! a7 s  B3 o9 L/ m
图 2. 记录、制定、测量和改进
' E; {( n. g" w . J  i& i" ]( e( C" |* t


' [0 {; N7 A6 m- Q" {# N1 H7 J6 j" v+ i" d
结束语
方法对于您的组织是重要的,因为它们定义了您的组织如何运作。记录这些方法,以便交流和改进这些操作。% u, W4 l, a- e
利用 Rational Method Composer,您可以创建一致的、可定制的方法,从而利用敏捷和扩展的敏捷实践的丰富的库。Rational Method Composer 集成基于 Jazz 的工具,使团队可以更高效地工作。配套资产,如自我检查、测量改进,和特定于行业的解决方案,可以帮助您有效地部署可以开展真正业务价值的组织性改进。& z8 n( i' ^) r
本系列的后续文章将使用这里介绍的特性来探讨记录和自动化流程的场景。
% d* \- ?+ T0 h" d0 I2 q' F8 R8 }3 O2 e/ l' ~6 [2 G+ T! z

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
 楼主| 发表于 2013-3-3 21:03:32 | 显示全部楼层
回复 支持 反对

使用道具 举报

发表于 2013-7-30 09:28:36 | 显示全部楼层
这个技术有点深奥,哪位有把公司流程图全部整合。方便浏览的实践经验?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

SCMLife推荐上一条 /4 下一条

QQ|小黑屋|手机版|无图版|SCMLife.com ( 京ICP备06056490号-1 )

GMT+8, 2019-3-23 13:25 , Processed in 0.069502 second(s), 8 queries , Gzip On, MemCache On.

Powered by SCMLife X3.4 Licensed

© 2001-2017 JoyShare.

快速回复 返回顶部 返回列表