为啥敏捷开发会让人感觉这么难

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥敏捷开发会让人感觉这么难相关的知识,希望对你有一定的参考价值。

敏捷开发最重要的特点是:以用户需求为中心,快速灵活,团队合作度高。

觉得难可能是实践路子不太对噢~

敏捷开发有很多方法,例如XP、精益开发。其中以scrum最为普遍。Scrum本义为带球过人,双方队员比赛前要摆开阵势,计划好进攻路线,而在软件开发中,团队领导人要做好迭代计划,排列优先级,规定必须完成的任务。

scrum3.0中有6个角色,3个工具,4个会议。

scrum3.0中的6个角色

    利益相关者(Stakeholders):

    运营、市场、销售等,他们负责向产品经理提出产品需求。

    业务所有者(Business Owner):

    通常是产品经理,他负责对利益相关者提出的需求进行拆解以及进行优先级排序,并负责后期的产品评审,同时负责预测一个sprint周期的时间。

    团队队长(Team Captain):

    通常是我们的开发经理,负责安排一个sprint内的工作安排,通过合理安排让scrum团队的效率以及价值最大化。

    行业专家(Subject Matter Experts):

    行业专家拥有Scrum团队需要的,但团队中没有的知识和专业技能。

    协调人/教练(Facilitator/Coach):

    scrum制度的落实者,让scrum在团队中流畅的运作,消除他们的障碍,提高Scrum和敏捷的使用。

    变更代理 (Change Agent):

    Scrum的咨询顾问,将Scrum引入团队中,并帮助教练理解如何最好地支持和与Scrum团队合作。

    3个工具:交付清单、工作清单、正在进行的工作。

    4个会议:计划会议、产品评审、进度回顾、团队回顾。

    因此,scrum3.0既有计划会议、产品评审、进度和产品回顾会议,也有迭代期内的灵活应变过程,是一种轻重结合的比较好的敏捷方法。

    随着各种敏捷团队在国内成熟,很多应用于敏捷的工具也层出不穷。

    在工具集中挑选适合的工具使用,可以提高工作效率。以日事清团队为例:

    在日事清软件中,利益相关者如销售、市场、运营等,在与用户平日的接触中积累的功能、缺陷、创意上的建议,并收集于计划看板的【BUG看板】、【建议看板】。

    接下来,业务所有者(BO)需要维护精细的需求池,这个职责通常由产品经理担任,他需要非常明白产品的定位和发展,将需求池中的任务按照优先级排序,并拆解为一个个小的用户故事。然后设置具体的实施时间和项目名称,将可交付成果和待办清单,记录于road map中。

    之后,我们的scrum团队会创建一个计划为【产品开发】,产品经理(业务所有者)以及开发经理(团队负责人)会从【roadmap】中提取功能形成work backlog,复制到【产品开发】的【规划池】中,work backlog中还包含一些开发团队必须做的工作,会直接记录在【规划池】中。

    正式开始开启sprint (sprint:整个开发过程中若干个短的迭代周期组成)的第一件事,就是召开sprint计划会议。sprint会议上会确定本次sprint周期的目标是什么,我们需要完成哪些功能。在会议中,开发经理(团队负责人)需要将【规划池】中的功能拖动到【开发中】,从【开发中】到【测试中】就是日事清所实践的正在进行的工作(WIP)。

    会议上会评估每个功能所需的工时以及功能的负责人,我们为确定好的功能添加时间以及任务成员。通常计划会议会开比较长的时间,它是之后迭代开始运作最关键的会议。

    为使得这个会议得到很好地传达,可以通过日事清的日程应用创建好会议任务,并下发给团队成员。

    sprint计划会议的开启,意味着第一个sprint开始了:从开发到测试,形成的工作成果都发布到beta版本中。执行sprint的过程中也有很多问题被发现,需要解决,应此需每日召开约15分钟的站立会。

    在每日站立会上,每个团队成员需要回答三个问题:

    ● 昨天做了什么工作?

    ● 今天要做什么?

    ● 完成目标是否存在什么问题?

    当测试人员完成了本个周期内的所有功能的测试工作时,预示着本个sprint结束。

    在迭代结束前,产品负责人需要进行产品评审,产品会对测试中的功能进行验收。将达到了产品目标的成果拖动到【待发布】中。

    最后整个团队还需要进行一次回顾总结会议,回顾这次迭代有哪些做的好,哪些做的不好,有什么计划。团队成员需轮流发言,完成自评和他评,分析和总结上一个迭代中遇到的问题,并列出下次的可执行任务,便于改进整个团队的效能。

    至此,一个sprint周期完成,以此开始下一个sprint,不断循环往复。

参考技术A 刷成 稳定版的就行了

以上是关于为啥敏捷开发会让人感觉这么难的主要内容,如果未能解决你的问题,请参考以下文章

敏捷开发为何在中国难落地?

敏捷开发签名人建议开发者放弃“敏捷”

好的每日站会,应该这么开 | 敏捷开发落地指南

为什么这么多程序员和IT公司讨厌敏捷开发?

为什么敏捷开发落地那么难?

敏捷开发中的架构设计