迭代开发需要快速反应,这需要各种不通角色人员的配合。如果人们做事情总是拖拖拉拉,就会延缓软件项目的进度。而且每个人对自己在迭代中应该做什么事情必须很清楚,这需要事前的准备和角色的合理分配。
迭代需要用户的配合,实际上最好能够有客户方真正的系统使用者参加到迭代过程中来,因为他们是最有发言权的。很多项目中会让 项目经理或是 系统分析师担当客户代表的角色,这样做有很多弊病。有时出于各种原因客户确实不能到现场配合的,我们也可以通过其他的途径获得客户反馈。比如一个阶段迭代完成以后,可以把相关操作用截屏加文字说明的方式发给客户,让他们对产品有一个直观的印象。
为了让 团队能够有效快速地配合,应该尽可能使用各种自动化工具。比如自动化 测试管理工具,以及 配置管理,集成以及发布之类的工具。通过对这些工具的有效应用,使得各个成员能够快速获得信息。
迭代开发要拥抱变化,主动适应变化。要让每个参与者都认识到这一点:不能够固步自封,或者满足于现有的成就,不去思考可改进的地方。从管理者的角度上,必须重视每一个反馈信息。
迭代开发追求对任务的度量。很多组织会把这种度量和员工的绩效考评联系起来。这种做法可能是合适的,但是如果只是简单衡量工作量或者工作完成速度和质量,有可能会比较片面。毕竟软件开发是一个环环相扣的过程,表面上来看这个环节处理不好,实际上可能是准备工作做得不好,或者其他人的配合不好。
所以如果在迭代过程中出现了问题,一定要客观地分析,特别是应该挖掘导致这些问题出现的深层次原因。譬如在一次迭代中测试人员发现了一些bug,但是两次迭代过去了,这些bug仍然存在,这就说明对bug的处理不够迅速(当然如果因为某些原因这些事情被故意推迟了的情况不算)。这时就必须分析一下到底是什么原因造成了信息的不通畅。而不能简单地批评相关责任人。
总结
本文对迭代开发的五个关键(变化,周期,目标,反馈,合作)方面进行了讨论。作为一种方法论,迭代开发的好处在于它使软件团队变得更加灵活。在实施迭代开发的过程中,应注意不能流于形式化,切实做好每个环节的工作,这样才能获得满意的结果。
文章来源于领测软件测试网 https://www.ltesting.net/