它山之石可以攻玉! //注:本BLOG中标注“原创”的文章为本人版权所有,未经许可不得擅自使用,如有引用请注明作者“谷雨霖”。msn: cabinhome@sohu.com

敏捷开发大家谈(三)

上一篇 / 下一篇  2008-05-15 12:52:20 / 个人分类:项目管理

(三) CrystalITPUB个人空间!]+nUU]%D$MSF[

T U#A(VIh0Crystal是Alistair Cockburn提出的一组开发方法,分为Crystal Clear,Crystal Yellow, Crystal Orange和Crystal Red分别适用于不同的项目。项目可以按照参加的人员和重要性划分。重要性根据项目中的错误引发的后果分为:ITPUB个人空间J2kJ*MEs C
C Loss of comfort (某些不舒适)ITPUB个人空间5O|g{C'xY&A
D Loss of discretionary money (经济损失)
7W8h)BFvA M0E Loss of Essential Money (严重经济损失)
4Z;Vo}Wg0L Life Critical (生命危险)
~ETs#Np0一个项目称为C6说明参加人员在6人以下,重要性是C级,D20说明人员在6-20人,重要性是D级。ITPUB个人空间Uy,}~`L2CT3aq
ITPUB个人空间SX5d+Fk R;FB h
Crystal Clear适用于 C6,D6项目
3Q#[/v$i8jR0Crystal Yellow适用于 C20,D20,E20项目
8R.tt5@ P,E0Crystal Orange 适用于 C40,D40,E40项目ITPUB个人空间u}7}:oP"D,S1i
Crystal Red 适用于 C80,D80,E80项目
.m?*P*t/A9{*{7H0ITPUB个人空间XN:m vG
Crystal Clear
"Xd,i4l+x@2D lA0ITPUB个人空间y]$e\)w
适用于一个办公室内的一个小组ITPUB个人空间o8V Y-G7m0h0U/DG.c2]
ITPUB个人空间%bA{$Bv
角色有: sponsor发起人,任务下达者
Lv7bZ`8h,v0Senior Designer-Programmer 高级设计开发人员
(~3ZD jV,]1qN\0Designer-Programmer 设计开发人员ITPUB个人空间V0w i^V+}Z
User 用户ITPUB个人空间/sd/X_"H#F
其中一个人是项目协调者(Project Coordinator)。Senior Designer-Programmer是关键人员ITPUB个人空间)c B9I!V;z
ITPUB个人空间 jRr&|:hb6A R
策略:
"k,C Oacu#V j#XPR01 软件的开发采用有规则的周期性递增方法,每2-3个月提交(deliver)一个版本ITPUB个人空间fGsl.\+B
2 使用里程碑(milestone)跟踪进度(包括delvier和开发期间的重大决定)
-F Viah3w6{/Z03 自动回归测试(automated regression test)
b5n7~5rK7o9lt04 用户直接参与
)If9^ Ii05 每个release有两个user viewings(用户审核?)ITPUB个人空间 ]o'AUd4U Uj
6 在上一个步骤足够稳定(stable enough to review)时立即开始下一个步骤,尽量并行开发
n(t TaVU0K |07 在每个周期的开始和中间进行产品和过程调整
]x|}#sG;U0
%D(\Zi8^|+P?0过程产品(指整个过程产生的所有产品,包括软件和文档)
-]fkC3m&xK3~01 软件释放顺序(release sequence)ITPUB个人空间7O,j*M o7m6D5r!l
2 用户审核的计划ITPUB个人空间4Zq n\+Z?`*~[
3 用户案例(usecase)或需求描述ITPUB个人空间q\a%h C(p9yem6|r
4 设计框架和必要的说明ITPUB个人空间7AE/n0jA.E*VG
5 界面草图ITPUB个人空间+o[uo ivc cGGt
6 基本的对象模型
!A;j2EZR7Wb3w:o A,A07 执行代码ITPUB个人空间 ~Z$o z'c$L#\*B/rJ
8 migration codeITPUB个人空间g3SeO'}5s2wu*O
9 测试用例
SU {4C;[,D+dK010 用户手册
2xb zM9a7aK1|011 local matters有项目组决定:ITPUB个人空间 }hc(z,{4rf*F]^A
上述product的摸班ITPUB个人空间 @ |X3}+AUyHJ
编码和用户界面的标准
x9n K bb0回归测试的标准和细节
l~*h8@%G,Q0其他文档
Z jU {*~0需要的工具:ITPUB个人空间+]~h"kp3N
版本控制工具
}:l Vg-Y0白板(最好可打印)ITPUB个人空间j's7iT-@r4I'u1eY
ITPUB个人空间!j6e};^$z/b:q9l1D

[)LPen'B0Crystal Orange
_R"eX L7Z2x2W+qY0
k'\ S,p5Te&z#Aw9N0角色:sponsor 发起人
(Sdvf3b0business export/usage export 业务专家ITPUB个人空间(PvFvGT
technical facilitator 技术专家
1}?;GSm0business analyst/designer 业务分析和设计人员ITPUB个人空间,zv*o k!Y`7g
project manager 项目管理员ITPUB个人空间#x#a$wu;G3g!Y%]
architect 系统架构人员ITPUB个人空间&Cn%W;wpMf.U.dm
Design Mentor 设计指导人员ITPUB个人空间7H w;d l_ M R.K&tW
Lead Designer-Programmer 主要设计编码人员、
W,z@9ir|6m0Other Designer-Programmer设计编码人员
:B'~b5LZm1wn-c0UI Designer 用户界面设计人员
;i;a4b,z_7w-@0Writer 文档写作人员
R-Dv2am9i;]%i0Tester 测试人员ITPUB个人空间K2F!Q PAM

-sv klr0策略:ITPUB个人空间?F!u V'Bt"IW2E
同Crystal Clear (周期可以为3-4个月)ITPUB个人空间6W}k'A^'B#r
过程产品:ITPUB个人空间ZBU:Z h6J"k
需求文档ITPUB个人空间H?)~8l,FX
计划
c`mr0]#HY0状态报告ITPUB个人空间 }ED;eX,~Nl r

+b H&fJBp9Pd g0基本对象模型ITPUB个人空间~T fH*M
外部接口标准ITPUB个人空间?uq5gLo(A/z1N~
用户手册
5K!KK%c9V/N{0源代码ITPUB个人空间1D J)XG'KsH
测试用例
G*Kay*gP _hG+}0migration codeITPUB个人空间 rp eu%Si(aF;QZ i
local matters 同Crystal Clear
&w K+FMGa6oA0
4nF&`t].j7|0
['_8qM b0(四) The Agile Alliance
+xVsl&]BX?c0Yq b0
},}x}y0敏捷联盟是17位不同敏捷开发方法的提倡者共同成立的,目的是推进敏捷开发方法的研究和应用,他们并不要求强制使用某种开发方法,而是提出了敏捷开发的几个核心价值和基本原则:ITPUB个人空间ys:lw9rT
core value:
$y@0U M q$} m"t0ITPUB个人空间.xa/Xl9OZ#wuRb%D
Individuals and interactions over processes and toolsITPUB个人空间~E8Uvz B
个人和交流重于过程和工具ITPUB个人空间*GGc,G \&q
Working software over comprehensive documentation
5JKF_FUm)B,S0正在运行的软件本身重于复杂的文档ITPUB个人空间3v(J xx9`[u4t
Customer collaboration over contract negotiation
.p!V7VFa}y)X0与客户的沟通和交流重于使用合同约束客户
}l3b} d~*yq0Responding to change over following a plan
B@-CM!hyS0对变化的快速响应重于跟随计划
i-a ?,Q,~M+e4j;^.u0ITPUB个人空间e&`$QaI3Dm
principles
F$^3F*z7B0ITPUB个人空间 _ d,A&G9k KLG9ezC
1 最高目标是通过快速的和经常的发布软件满足客户的需要ITPUB个人空间I L OA4?#u
2 提交软件的周期为几个星期到几个月ITPUB个人空间lkb#`H[)H;cu,S
3 产生正确的软件是衡量进度的首要标准
~#f x1l_W*]04 主动接受需求的改变而不是拒绝ITPUB个人空间0\tD0nv m
5 商务人员和开发人员工作在一起ITPUB个人空间LkOK&_&|x-Z
6 个人必须有动力,要创造环境支持他们的要求,信任他们
6l&B5X6lBe!T07 最有效的交流方法是面对面的交流ITPUB个人空间1E4UcX.K
8 最好的结构,需求和设计来自于自组织的团队(self-organizing team),允许任何人提出想法和建议
S+q(b#_vZJ u/X7Y09 持续改进设计和编码
'zZLb0a4w2Wg7y010 鼓励正常工作,减少长时间加班ITPUB个人空间2`Owi3a?.ydlE
11 保持简单,减少不必要的部分,认识到简单的设计比复杂的设计更难(simple design is harder to produce)ITPUB个人空间!l6zJb`Nd
12 定期调整过程,获得更高效率ITPUB个人空间? uHq3jR {-C!k
ITPUB个人空间)z#{ jF^F

TAG: 敏捷开发

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2008-10-16  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 29806
  • 日志数: 709
  • 文件数: 6
  • 书签数: 4
  • 建立时间: 2008-01-14
  • 更新时间: 2008-10-13

RSS订阅

Open Toolbar