For investors
股价:
5.36 美元 %For investors
股价:
5.36 美元 %认真做教育 专心促就业
需求变更相信各位程序员在开发软件的时候应该会经常遇到这样的情况吧,今天我们就通过案例分析来简单了解一下,敏捷开发需求变更应对方法分享。
一、设置ProductBacklog与SprintBacklog
Scrum框架针对需求变更,设置了ProductBacklog(产品待办列表)和SprintBacklog(迭代待办列表)。在每个迭代开始时,产品负责人需要在ProductBacklog中,通过优先级排序来筛选、整理出这一迭代的SprintBacklog,也就是这一迭代需要完成的产品需求。也就是说,ProductBacklog是不断变化的,而SprintBacklog是当前迭代中已经确定的产品需求,是不变的。这样就会保证需求的变更不会影响到当前迭代的产出。
二、做好需求排序
设置SprintBacklog就意味着我们要做好需求排序,那需求的优先级由哪些维度来决定呢?一个维度是需求的重要紧急程度,比较重要且紧急的需求要往前排,相对不重要不紧急的需求往后排。如果我们要交付一个电商平台的MVP版本,那下单支付的需求会比收藏某一商品的需求重要的多,所以我们自然需要优先解决下单支付的功能。
那另一个维度其实是需求的明确性,因为在项目的前期阶段,客户需求其实也不是那么清晰明确。所以我们要考虑一下优先做已经明确了的需求,同时和客户不断地沟通确认,将那些相对模糊、可能会产生变化的需求确定下来,然后再排进相应的SprintBacklog中。
三、对需求变更进行限制
确认好SprintBacklog后,原则上不允许再变更需求。所以这就要求产品负责人需要对SprintBacklog进行负责,提前与客户进行需求的沟通、确认。
如果遇到必须变更、优先级比较高且对迭代影响较小的需求,我们可以将这个需求放入迭代中,然后将原本迭代中优先级较低的需求替换出来;
如果遇到必须变更、优先级比较高且对迭代影响较大的需求,则需要和客户同步并确认后,将当前进行中的迭代暂停,产品负责人重新规划新一期的SprintBacklog。
在这种情况下,项目团队和产品负责人要做好足够的应急预案,例如产品负责人要提前规划出接下来的几期SprintBacklog,以便出现需求变更时,更快速地响应。
“欣然面对需求变化,即使在开发后期也一样。为了客户的竞争优势,敏捷过程掌控变化。”敏捷项目管理的过程是一个动态过程,在这一过程中,涉及客户、项目团队、利益相关者等多方因素,而且这些因素的变动会影响其他因素的活动。所以在变动不可预知的情况下,我们就需要化被动为主动,积极应对项目过程中的各种需求变化。以提高客户的竞争优势为目的,在变化中寻找解决的方法,寻求双方统一意见的达成,将需求变更的成本降至低,实现提高效率与保证质量的统一。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。