说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

敏捷开发的6个实战经验

HTML文档下载 WORD文档下载 PDF文档下载
Ulf Eriksson根据自己多年的敏捷开发经历,总结了6个实施敏捷开发的技巧:快速迭代、让测试人员和开发者参与需求讨论、编写可测试的需求文档、多沟通&尽量减少文档、做好产品原型、及早考虑测试等。

在大型企业中经常是各种软件开发模式混用,一些采用敏捷开发,一些则是采用传统的瀑布式或RUP(统一软件开发过程)。敏捷开发,相对传统软件开发模式,它主要是针对快速变化的需求,不断优化管理流程,最终推出优质软件。 

原文作者Ulf Eriksson,是一家在线问题跟踪软件公司的创始人之一,他是敏捷开发的忠实粉丝,已经进行了多年敏捷开发的实践。下面内容主要是作者根据自己多年经历进行的经验总结。 


1. 快速迭代

相对那种半年一次的大版本发布来说,小版本的需求、开发和测试更加简单快速。一些公司,一年仅发布仅2~3个版本,发布流程缓慢,它们仍采用瀑布开发模式,更严重的是对敏捷开发模式存在误解。 

由一年发布2个版本转到一个月发布2个版本,这也不太可能。但是现在来看,快速迭代已经成为事实标准,关键是要比目前的版本发布速度更快一些。 

快速迭代,可以逼迫团队不断优化流程、提升工作效率,不要在无足轻重的事情上浪费时间。如果离deadline还有6个月,那么整个工作节奏必然悠哉。如果每月发布一个版本,那么较以前效率必然会更高。如果发布周期过长,导致无法尽快发现用户需求,进而无法及时改进产品。 

2. 让测试人员和开发者参与需求讨论

需求讨论以研讨组的形式展开最有效率。研讨组,需要包括测试人员和开发者,这样可以更加轻松定义可测试的需求,将需求分组并确定优先级。 

同时,该种方式也可以充分利用团队成员间的互补特性。如此确定的需求往往比开需求讨论大会的形式效率更高,大家更活跃,参与感更强。 

确定需求时,不要过度盯在细节上。需求报告过于详细,就是一种不敏捷的习惯,还浪费大家的时间。当然,不能错过好点子,但就是不要太细,因为项目真正实施起来时需求将会产生很大的变动。 

3. 编写可测试的需求文档

开始就要用“用户故事”(User Story)的方法来编写需求文档。这种方法,可以让我们将注意力放在需求上,而不是解决方法和实施技术上。过早的提及技术实施方案,会降低对需求的注意力。 

规划业务需求,可以采用“3W模板”,也就是: 

  • 谁(Who)
  • 是什么(What)
  • 为什么(Why)
上面的3W实际上就是描述了相关利益者是谁,他们想要什么,他们为什么有这种需求。下面举一例子进行说明: 

谁(Who) 是什么(What) 为什么(Why)
用户
希望借助一个应用程序在不同服务器间传输文件
为了存储项目数据

为了更加接近“用户故事”,我们可以改写为:

谁(Who) 是什么(What) 为什么(Why)
消费者/用户 想将归档过程数字化 为了增强沟通,提高分享效率

敏捷项目中编写用户故事有一个常用模板:作为一名[用户类型],我想要[需求],以便于[原因]。应用到这个例子,就是:作为一名用户,我想要将归档程序数字化,以便于增强沟通、提高分享效率。 

多数情况下,需求内容需要更加充实和详细,这一步要放到后面做,开始不要这样。用户故事的方法有时会因过于简短、不断重复而受到批评。这里我们必须明白:需求文档不是散文或诗歌,应该清晰、简明地描述用户需求;需求文档的重点也在于此,不要管形式多变或内容是否重复这样的问题。 

4. 多沟通,尽量减少文档

任何项目中,沟通都是一个常见的问题。好的沟通,是敏捷开发的先决条件。在圈子里面混得越久,越会强调良好高效的沟通的重要性。 

团队要确保日常的交流,面对面沟通比邮件强得多。 

敏捷开发鼓励日常的协调会议和碰头会,5~7人参与的会议尽量控制在10分钟内。碰头时,要过一遍昨天完成了什么,今天要做什么,哪些问题仍待讨论。可以用Burndown Chart(燃尽图)来形象展示工作进度。每次迭代的时候也都要开一个计划会议和评审会议,一般需要的时间可能会长些,比如半天。这些会议的目的就是对工作查缺补漏。 

评审会议很重要,传统开发模式往往略过该环节,导致一些错误做法不断重复,好的做法无法推广。 

开会时,可以将原先的分组打散,让整个团队都参与到项目的需求讨论和测试中来,这样可以突出成员个人,让大家更乐意参与。 

5. 做好产品原型

建议使用草图和模型来阐明用户界面。并不是所有人都可以理解一份复杂的文档,但人人都会看图。 

一个常见的问题是软件新的功能与用户想要的不一致。为了避免这一问题,可以模拟真实操作,改进模拟操作过程中难以理解和不清楚的操作行为。 

6. 及早考虑测试

及早地考虑测试在敏捷开发中很重要。传统的软件开发,测试用例很晚才开始写,这导致过晚发现需求中存在的问题,使得改进成本过高。较早地开始编写测试用例,当需求完成时,可以接受的测试用例也基本一块完成了。 

敏捷开发中一个常见问题就是开发者没有对已有的代码库进行充分的回归测试。迭代周期很短,从开始到交付就是4周的时间,这样可以对迭代的设计、实现和底层测试一块进行回归测试。 

一系列迭代之后,可以只针对测试活动再补充一个迭代。这个迭代可以将重点放在系统测试、与其他系统的集成度、性能等方面。敏捷开发过程中,可能会导致过少的测试文档。如果迭代周期为1个月左右,可以不必对测试文档过于要求,但要制定好测试策略。 

最后

可能大多数公司或团队还没有开始尝试敏捷开发,不过可以开始从点滴做起,比如开碰头会、为项目管理采用一个更加高效的管理工具等等。最后,希望上面的建议能够为大家的软件开发管理带来帮助。(编译/王殿进)

测试Android软件性能主要方法 自定义Android标题栏TitleBar布局 获取Android屏幕方向及键盘状态 Android平台XML解析库功能不完整 GestureDetector手势识别类 - 入门篇 不会Java或C,Android123告诉你还有选择 Splash Screen开场屏在Android中的实现 Android游戏开发性能改进要点 Android的Activity你知多少呢? JSONObject在Android上的应用 Android高性能文件类MemoryFile 判断Android文件名是否安全技巧 让你的Android程序兼容多种分辨率 Android Button按钮控件美化方法 Android堆内存也可自己定义大小 TextUtils类-Android字符串处理类 InputSream输入流转String字符串,Android开发工具类 Android中的正则表达式Regex使用 优化Dalvik虚拟机的堆内存分配 Android标题栏进度指示器使用方法 Thread和Looper以及Handler和Message详解 Android开发必读 layout资源包含,android开发必读 Android本地化开发技巧 Android开发网将推出每天一类专题 ExifInterface使用,Android 2.0新增类 GraphableButton类实现Android UI开发 Android控件开发之ToggleButton原理 Android标题栏TitleBar全攻略 AsyncTask实例代码演示Android异步任务 重绘TextView类演示Android的Handler Android的SoundPool类使用与利弊 汽车与电脑谁重要(转) 转让 全新飞利普 820 彩屏手机一部(个人) 请问是否有可以统计数据的电子表格控件? 给点看法? 是不是来这里的人混得好的不多,搞得我都不敢跳槽了 倒霉就一个字,我只说一次。 一个关于Delphi的简单循环外提(编译优化)的测试,有兴趣进来看看 大家遇到这样的问题了吗? DTPicker的问题,急急急!!!! sun的ultra5启动时显示没有键盘设备,可能是键盘坏了,哪里能找到这种8芯的鬼键盘? softice调试时出现的有意思的问题 怎样终止一个函数? 关于j2ee的几个问题 谁有数值计算方法与c语言工程函数库的代码,急!!! 麻烦有项目开发经验的大虾进来看看,给项目估个价!谢谢! 急!!大问题!!求助!!发扬你们的美德吧! JAVA的配置问题 菊花在水里跳舞!!! 用什么来写啊!!!jdk还是jbuilder TP-LINK的RTL8029(AS)芯片的网卡怎么装? w32dasm怎么把程序中的中文字符串反汇编成指令了呢? 曾用B/S四层结构开发过OA的,请进!! sql语句的问题? 关于QUERY->SQL的赋值 c++学习中的问题,拿来和大家一起讨论。 求助!要写一个MP3的播放程序~~ Project Settings里面的设置怎么设为默认值,让以后新建的每个工程都适用? 怎样读取数码相机的照片,并将它存入sqlserver数据库中(100分) VB6菜单设计器设计的菜单跟到WINDOWSXP下面,会自动变成XP类型的菜单吗? 请问openpicturedialog的用法? 紧急求教:ScktSrvr(Borland Socket Server)设置问题????????? 关于com与asp的疑惑 怎样读取数码相机的照片,并将它存入sqlserver数据库中 JSP里连接DB2的疑问? 为什么dbgrid的网格颜色属性的更改不是每次都可以。 请教名位大虾!~怎么安装.NET?今天刚买的,却不会装,七张光盘的!~ rose 的问题, SELECT 语句中的WITH TIES作用是什么? 西南交大 农历这么转换成公历?UP有分!急用!问题解决马上给分!不够再加。 关于数组的问题!在线等,谢谢了 不从新发送信息,则无法刷新页面!!! 一个旧声卡怎么才能知道它的型号? 我使出浑身解数,还是装不上sql server2000 ,怎么办? 各位师兄,想问一本书(王国荣的)的书具体内容?! 请问该如何处理?? 请教:关于excel2000链接对象.谢谢() CBC6使用手记--鸡肋 在线等待 如何从一个数据表的某字节中只提出来N个字符!!!!(帮我看一下,谢谢) dbgrid 与 adoquery 的记录如何...? After dinner,we like to talk with each other in living room.同义句After dinner,we like to _____ _____each other in the living room. 如何依据性格因材施教 乔布斯属于四种气质类型中的哪一种?或者是哪几种的混合?求心理学高手分析,谢谢 娃娃鱼是什么,它怎么生活,都吃什么,怎样养,怎样繁殖?娃娃鱼的介绍,生活习性,吃什么,怎么繁殖…谢谢娃娃鱼多少钱一条,在哪里能大批买到…谢谢 因材施教是什么?请从实际出发讲解几个方面. I need to buy a lot of things 改为反义疑问句 He seems at little nervous这个地方为什么要用at呢?用a 不是也可以么?不太明白这个at在这的意思但是我刚搜了下,原句意思也是他显得有点紧张。还有这句:He strolls about the town about在这的用法也 什么的暑假生活为题的作文 She was covered in mud.in为什么不能换成with? 动物的交流方式 暑假为题的作文不用你把文章给写出来,只是希望得到一些别出心裁的点子. 谜语,什么锁没有孔?什么书没有字?什么情说不出?答案可以连成一句很浪漫的话, 各种动物的交流方式要求是常见的动物,比如狗,猫,蜜蜂,蝴蝶,语言通俗易懂,适合幼儿园孩子的口味, 某炼油厂有一批石油,用甲种油车装要45辆,如果用乙种油车装要36辆.已知甲车比乙车多2辆,问:"总共多少吨?某炼油厂有一批石油,用甲种油车装要45辆,如果用乙种油车装要36辆。已知甲车比乙车2 什么锁没有孔 什么书没有字 什么心不会跳 什么情说不出 什么灯不会亮 答案会连成一句浪漫的话, 动物的沟通方式 最让难忘的一句名言 什么锁没孔,什么书没字,什么心不会跳,什么情说不出,什么灯不会亮,答案连成一句浪漫的话, 世界之最(用成语描述下列句子的意思) 1.最遥远的地方( ) 2.最昂贵世界之最(用成语描述下列句子的意思)1.最遥远的地方( )2.最昂贵的稿费( )3.最吝啬的人( ) 观察一组数:-3 -15 -35 -63 第100个数是多少第N个数是多少? 为什么真空包装后会漏气 十种昆虫的名字 一批石油,用甲种车装要20辆,用乙种车装要25辆,已知甲种油罐比乙种油罐每辆多装2吨,求这批石油重多少吨 She covered the well with a big stone 的被动语态及The workers are buiding a new road. 中关村,好像很火阿?很多人喷他~ 一批货物,用甲种车装要用45辆,如果用乙种车装,只要36辆,已知乙种车比甲种车每辆多装4吨,求这顿货物重量不要用解方程方式,怎么列方程式啊,不要解方程 帮帮忙猜猜,什么锁没有孔 什么书没有字 什么心不会跳 什么情说不出 什么灯不会亮 答案会连成一句浪 shake it 数学题阅读及理解(好的另加分)!题:某项工程,甲队单独做需12天完成,乙队单独做需9天完成,若按整日安排两队工作,有几种方案可以使这项工程完工的天数不超过8天?解法:①设甲乙合作x 第三周期金属元素都为碱性氧化物吗 We need to eat a lot of g______(grain)lke ice and wheat 简短现代诗 蜗牛爬树 树有10米白天爬4米晚上落3米几天爬完 请问什么是孵化器?一般有什么作用?对企业有什么好处? Now,the rain___只能一个词 蜗牛某天早上开始从树根沿着树干往上爬,白天爬四米,夜间下滑三米,按这个速度,蜗牛爬到高十米的树顶,需要的天数为().A.5 B.6 C.7 D.8 《最让我难忘的一句名言》作文,不知道不要乱回答. Now,the rain_______.这个空格只能填一个单词急快! She is not-----she used to be.A what B whom C that D which 为什么谢谢. 我与 同行为题目的作文,别跟我说奥运 一批货,用甲车装,要45辆;如用乙车装,要36辆.已知乙种车比甲种车每辆多装4吨,求这批货的重量 蜗牛沿着树干向上爬,白天向上爬90厘米,夜晚向下滑70厘米,第5天结束时到达树顶.这棵树有多高? 最让我难忘的一句名言,急 请看下图.答案为[-8,1], bag的复数形式是什么?如题. 一个数的70%是35,这个数是( ). 请阅读下列材料:谈祥柏是中国人民解放军军医大学数学教授,在科普领域辛勤耕耘,创作出不少优秀作品,深受广大青少年喜爱.此外,他对文学诗歌很有研究,将数学与文学诗歌有机地结合在一 look!my room is--------bigger than yours -------填什么 最让我难忘的一句名言结尾咱奥比给丸子妹妹头、我叫、Doy_卡哇伊要快、快、快、快、快、快、 whom did you meet yesterday?That man?yes,he's the man whom I met yesterday.为啥上面的meet不用过去式 上山速度为5千米每小时,下山速度要达到多少,才能使上山下山的平均速度达到10千米每小时?请列方程解,无解的话需要解释为什么为什么会无解,题目有什么问题?请解释一下, 不要就方程 一个数的70%加63等于它本身,这个数是? how do you men in Amerrica greet each other wehn they meet? My schoolbag is bigger and heavier than .A.you B.yours C.your 当小记者的简历怎么写啊?我要申请山东体育晨报社的小记者,申请单里有简历一栏,谁知道怎么写啊? 一个数的35%是70,这个数的1/5是( )一个数的35%是70,这个数的1/5是( ) 直接引语转间接引语 She said,"Did you meet this man at the station two hours ago,Mr Li?" 当小记者要注意什么,要做什么? 利用心理学的相关知识谈谈如何因材施教 描写蝉的句子 日本东北地区发生6.8级地震上海居民沈勇死亡 官方:正在组织调查黎巴嫩北部教派冲突伤亡人数升至50多联合国人权理事会工作组通过审查中国人意大利媒体称英美合作监控意通讯 政府白俄罗斯总统提议格鲁吉亚重返独联体遭马达加斯加总统选举平稳结束郝柏村:抗日战争的胜利属于整个中华民马尼拉市长拟为人质事件筹集2000万第九届两岸经贸文化论坛今举行 为交流明星进入考题屡见不鲜 “杨幂题”引争赵本山亮相春晚节目一审 冯小刚今答网伦敦股市《金融时报》100种股票平均土耳其与伊拉克外长表示将加强两国关系31省区市9月CPI涨幅出炉 物价“西共体轮值主席呼吁国际社会支持西共体德国法兰克福股市DAX指数25日上涨白俄罗斯总统提议格鲁吉亚重返独联体遭巴黎股市CAC40股指25日下跌德国政府:默克尔被窃听手机泄密可能性美国10月份消费者信心降至今年以来新数独游戏“熊掌出没”的冷饮店: 爱贝丽意大利老爸台上唱 小女睡得香“大客户”少了 樱桃蓝莓降价卖“智能”戒烟维生素饮料 你得这样选商场撤旧迎新迟到一周 “娜”迎500胜宁夏美食节开幕深井爆炸 200余人亡 获救者黑手抹王延奇任玉树州委常委、纪委书记(图|重庆三警察逼供案宣判乌东部两州宣布脱乌谋合并 挑战总统大进军法国 史泰龙带“队”功能饮料 当白水喝降食欲养生私人订制 靠“谱”吃陈寅恪对来李庄任专职一事装聋作哑维族老人 “真爱”感动中国微博喊话未应 强执“夏萨沙”5分钟养生简餐中国古装剧 展翅“东南飞”
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘