看得见的开发管理方法—缺陷管理
看得见的开发管理方法—缺陷管理
摘要:如果一个项目的每个步骤实实在在的眼皮底下进行,而且随时可以翻阅,那么这个项目的成功一定不会远了。开发过程的管理也是这样,控制每一个细节,水到渠成。
最近陪家人逛了几集电视连续剧《情迷天使》和《玉观音》,《玉观音》算是重播了,只是以前也没注意,现在看了几集,真是看不下去了,其中给我最大的感受就是一群人,一时的冲动,种下恶果,然后前方百计的企图改变或是掩盖这个结果,苦苦挣扎着。既然希望有个严肃的结果,行为就一定要严谨。那么是否行为严谨就一定能有严肃的结果。
由此我一直在想着,行为决定结果的问题,也想着这其中和软件开发管理之间存在的紧密关系。任何一个项目,就算是最资深的开发组长,最团结优秀的开发团队,也不能保证开发过程一定能按计划完全顺利进行,更别说放任计划随意进行的开发了(实际上这样进行开发的项目很多)。这根源到底是什么呢?我想说的就是可控性,如何实现可控性,是项目计划工具—Microsoft Project 2002,是软件开发管理工具—美国Intersolv 公司的PVCS,是软件配置管理工具—ClearCase, 是画出优美项目周期的Viso,不,都不是,各位别见笑,我并没有看轻它们的意思,这些都是举世之作,不是我狂妄的地方。之所以说不是,是因为这完全是两码子事,它们进行的是宏观的调控,不够细分,控制不到细节。结果是由每个细节的过程来决定的,要控制项目就要控制到每个开发的细节,所以今天要说的是微软的开发管理理念之一—BMS 缺陷管理理念(这里说的是广义的缺陷管理) 好好了解如何运用这个理念和工具真正掌控细节,从而实现开发的最优路径。
(一)BMS 缺陷管理的作用
保持进度、保证质量
我们都知道,管理的目标是争取让每个事情都能按时完成并保证质量,使“客户满意、公司获利”,其实还有一个当然就是“员工受益”,通过软件开发管理提高,提高软件质量,创造效益,最终达到大家满意。
(二)BMS 缺陷管理如何运作
1、如何保持进度
缺陷管理理念讲究的是将工作细分成小模块甚至是最小的单元,列出要完成的模块,每个模块工作安排具体还细分到要完成的每个步骤,具体分配到人。比如软件项目中的一个小模块就可以分成:需求(或bug)、指派、开发、测试、构造、验收、发布。项目主管可以把每个小模块分配到开发组长,开发组长可以继续指派到每个开发人员手中,开发中的每个人都有他对应的位置,每个人都可以轻松看到他在每个模块中的任务内容及时间安排。主管也很容易了解到每个人完成的情况,从而可以随时修正方向,及时调整工作安排,保持项目不偏不离继续按计划进行。这也就是缺陷管理真正的精髓:将原来隐含的关系变成清晰的、易于管理的关系,使项目开发更有计划和有效地运行。
2、如何保证质量
既然要让工作具有质量,那么就要极力预防错误的发生,就算发生了,也要能及早发现,及时修正。缺陷管理的理念就是每个环节都有相对应的人员在进行稽核,一直循环,直到达到要求为止,每个开发人员分别完成自己的功能,针对要修改的任务进行修改,每个测试人员针对可测试的功能进行测试,测试不合格,再重新返回修改。把bug扼杀在交给客户使用之前。我们知道开发过程中,bug越迟清除,时间花得越多,立刻除虫,时间是节省最多的(既然有时间还不如听听音乐,侃侃大山),也不用到后面弄得浑身乏术,筋疲力尽,连对开发软件的兴趣都没了。甚至还被客户投诉,连奖金都没了。