首页 Soft PlugIn RAN乱 Dev开发 Info资料 English WAP 留言 登陆 注册
-
Posted by Yippee | 评论(0) | 引用(0) | 阅读1469次
敏捷开发

极限建模与可执行模型
敏捷宣言是:“我们通过亲身实践以及帮助他人实践,找到了更好的软件开发方法”。在宣言中有四个“价值声明”:
“我们认为:<左边的部分>比<右边的部分>更有价值。”,这里关键点是我们并不认为<右边的部分>是错误的,只是说<左边的部分>应该得到更多的强调。

个体和交互 胜过 过程和工具
可以工作的软件 胜过 面面俱到的文档
客户合作 胜过 合同谈判
响应变化 胜过 遵循计划

敏捷软件开发 译者邓辉 揭开UML美丽的面纱--实话实说《UML:Java程序员指南》

我在软件开发方面有不少实践和研究,也参与过不少项目的开发。在合作过的许多程序员当中,我发现其中大部分人存在着这样一种情况:他们不是努力去提高自己开发高质量程序的能力,而是把大量的精力都投入到研究一些CASE工具的操作使用和UML的语言细节上。他们认为只要使用CASE工具绘制出一些漂亮、规范的UML图,就是在进行面向对象设计,就是一种高级的软件设计行为。这种错误的想法非但不可能帮助这些程序员产生出高质量的软件,还会成为他们职业生涯发展的绊脚石。糟糕的是,目前的一些教育培训并没有对这个问题给予足够的关注,而且一些市场炒作使问题变得更加严重。
UML自“出道”以来,一直被美丽的面纱笼罩着,“走到哪里,亮到哪里”。喜欢尝鲜的软件精英们为之着迷,为之疯狂,甚至于迷失了方向。国内很多软件企业也纷纷聘请UML培训机构进行企业内训,期望UML能立即带来丰厚的回报。有的企业则惟UML为尊,要求我们的开发人员无论项目大小,一律用UML,大有“杀鸡用牛刀之嫌”。但后果呢,不分青红皂白滥用UML,带给他们的只有失望。遗憾的是,很少有人注意到问题的根源在哪里。
UML只是一种工具,不是最终产品,它可以帮助你思考、帮助你交流。但是不要过度使用它,否则会造成很大的浪费。”
:“美的系统是灵活、易于理解的,构建、维护它们就是一种快乐。”他告诉我们,作为一个程序员,我们的职业是开发出美的软件,不是去绘制那些“中看不中用”(表面漂亮实际却蕴涵着糟糕设计理念)的UML图。而要创造出美的软件需要长期、不断地学习和实践。

平衡敏捷与规范
Balancing Agility and Discipline: A Guide for the Perplexed
出版社:清华大学出版社
作者:Barry Boehm, Richard Turner 邓辉 孙鸣 译

很久以前,在一片充满隐喻的土地上,住着一头大象。很多年来,这头忠实的大象一直都是他所居住村庄主要的食物采集者,并且非常清楚这个村庄需要什么。他在丛林中修建了一条路,这条路总是能指引他找到最好的根茎、蔬菜、坚果和水果等食物。他知道哪种水果用鼻子可以够得着,也知道哪种水果需要鼻子去晃动才能摘取。他很强壮,能够一次带回足够好几天吃的食物,所以他总是预先估计这个村庄的需要,并提供恰当的供给。他恪尽职守,整个村庄的人都很感激他,并认为他的工作很有价值。
 
唉!就像生活和寓言中常常发生的那样,情况发生了变化。村庄里的厨师想要一些奇特、罕见的原料来烹饪。这些原料大象曾经听说过,但是不在他每天要走的路上。他还在为存储那些无人需要的食物疲于奔命,却没有时间去修建新的道路以满足新的需求。村庄里的人渐渐地对这头无法满足他们需求、越来越气馁的大象失去了耐心。 
 
与此同时,附近村庄有一只猴子做着和这头大象类似的工作。但是,和这头大象不同,这只敏捷的小猴在这片丛林中快速地穿梭,采摘它所看到的果实。他只去寻找那些挂得很低的果实并迅速把它们送回到厨师那里。这只猴子不像大象那样依赖于一条久经考验的道路,他依赖于自己的记忆和本能去找到食物,并且只带回当天所需的食物。有时,他会跑出去寻找那些日益珍奇的食物,偶尔还会迷路。但事实证明,他的速度和敏捷完全能胜任村庄分派给他的任务。和那头大象一样,他也颇受爱戴。
 
很不幸,这只猴子的生活也发生了变化。他所生活的村庄一天天地扩大起来。这只小猴需要满足太多的需求,以至于他总是疲于奔命,努力记住在每个地方的所有需要。他不得不来来回回地跑很多次,因为他没有足够的力量一次运回人们需要的所有东西。同样地,这个村庄渐渐对这只猴子失去了耐心,而这只猴子也开始怀疑自己是否能够胜任这项工作。

碰巧有一天,这只疲倦的猴子遇到了那头气馁的大象。这只试图在背负重物的情况下快速奔跑的猴子发现大象背上的筐可以装得下那么多的食物。而大象也被猴子的速度震撼了,他能跑得那么远,他能那么轻而易举地就拿到大象竭尽全力也无法获得的食物。这两只动物,虽然都以自己的技能而自豪,但还是承认了对方在某些方面技高一筹。 
大象和猴子认识到一起工作的好处,于是决定联合起来。猴子利用他的敏捷去满足对于远距离水果的新需求,并让大象带回到他的村庄。大象则把充足的食物运到猴子的村庄去满足那里逐渐增多的需要。虽然他们花了一些时间去找出协作的方法,但是很快他们就能够很好地满足两个村庄的需要了。从此,他们过着快乐的生活,彼此互相信任,从此丰衣足食的村民们又开始看重他们了。 

12条原则, 敏捷实践区别于重型过程的特征所在。

1.我们最优先要做的是通过尽早的、持续的交付有价值的软件来使客户满意。

2.即使到了开发的后期,也欢迎改变需求。

3.经常性地交付可以工作的软件,交付的间隔可以从几个星期到几个月,交付的时间间隔越短越好。

4.在整个项目开发期间,商务人员和开发人员必须天天都工作在一起。

5.围绕被激励起来的个体来构建项目。

6.在团队内部,最具有效果并且富有效率的传递信息的方法,就是面对面的交谈。

7.工作的软件是首要的进度度量标准。敏捷项目通过度量当前软件满足客户需求的数量来度量开发进度。

8.敏捷过程提倡可持续的开发速度。

9.不断地关注优秀的技能和好的设计会增强敏捷能力。

10.简单——使未完成的工作最大化的艺术——是根本的。

11.最好的构架、需求和设计出自于自组织的团队。

12.每隔一定时间,团队会在如何才能更有效地工作方面进行反省,然后相应地对自己的行为进行调整。


字体:

Permanant URI永久地址 http://www.shengfang.org/blog/p/XPDEV.php
Trackback URI引用地址 http://www.shengfang.org/blog/tb.php?tb_id=1125380406

2005年8月30日13:40星期二  [Info资料] 追踪此文的RSS
提示:
此文还没有评论。

称呼:    登陆   注册
   不注册,但记住我的信息
邮件:
(非必须)
评论: [UBB代码帮助]
粗体 斜体 下划线 链接 水平线 引用



验证码: 请输入你看见的数字
关闭UBB      提交时自动将内容复制到剪贴板

公告
Fire and Motion!

统计信息
[Yippee]||[统计]||日志:1790
在线: 25||用户: 2562 [列表]
今日:2156||到访:2671655
Rss:838442||评论:1584

最新日志

最新评论

友情链接

日历

最新引用

搜索

归档

杂项
Get RSS Feed (Version 2.0)
Get Atom Feed (Version 0.3)
编码:  UTF-8