你好,欢迎使用 CODING ! 这份最佳实践将帮助你掌握 CODING 敏捷管理工具,更好地实践敏捷开发流程。
敏捷研发是涉及整个软件工程的理念与实践,它的核心是迭代和增量式软件开发方法。开发者快速发布一个可运行但不完美的版本投入市场,在后续迭代中根据用户的反馈改进产品,新增一到多个用户可以感知的完整功能,从而逼近产品的最终形态。迭代就是整个理论的核心,坦白的说迭代开发并不是新鲜词汇,但是敏捷研发理论大大完善了迭代开发的理论,使之能够被广大的软件开发团队认可,并开发了具体的实践方法如:Scrum 等。
敏捷研发比较特别的地方是它是组织文化,流程以及工具的结合体,在敏捷研发介绍中要着重强调三者的同样的重要而且缺一不可:“工具,流程,组织文化”。缺少工具支持的敏捷研发无法实现“高速”;缺少组织文化支持的敏捷研发会让团队成员之间无法团结一致完成共同的目标。
CODING 研发管理系统承载了最先进的敏捷研发理论,能够帮助您和您的团队快速入门敏捷研发,并通过标准化的流程和完整的信息统计成为企业实践敏捷研发的好工具。
敏捷研发的第一步是确认敏捷团队的人员构成,并选出对此次项目最为了解的成为 SCRUM 负责人,负责人不一定是团队中职级最高的那个人。
在确立好团队成员之后,在 CODING 研发管理中创建一个用于此次敏捷研发的项目,创建完项目之后将团队中所有的成员都加入到该项目中。CODING 的敏捷研发模块主要是由 5 个核心功能构成:迭代、需求管理、工作管理、缺陷管理和测试管理。同时在迭代中还有完整的统计功能,方便负责人实时查看整体研发进度。
首先要由本项目的产品经理在需求管理模块中制定项目的产品规划并负责维护和更新。因为接下来的产品迭代都是建立于需求之上的。
在规划需求的时候,优先级越高,时间要求最紧的需求文档需要越完善。同时可以使用 CODING 研发管理系统的文件功能上传原型图等必要文件,并关联到需求中。
当然整体需求是需要整个团队配合的,每个功能都需要经过团队评估。团队的其他成员在看到需求的时候可以通过线下会议或者线上讨论的形式( CODING 研发管理系统的需求管理模块支持团队成员之间在需求下留言进行讨论,并由产品负责人实时更新内容,同时支持版本控制,方便溯洄)进行需求讨论。
在团队已经到位且产品规划已经完善后,就是时候开工了。
这个时候需要 Scrum 负责人组织整个项目中至关重要的会议-冲刺规划会议,Scrum 负责人可以通过 CODING 研发管理系统中的项目公告功能提醒大家并同步会议的整体信息。这个会议是所有敏捷会议中最重要的会,因为它是接下来很长时间工作的基础。一个好的计划会议基本代表着整个迭代成功了一大半。通常这个会议的时间较长,所以需要各个成员提前做好准备。在会议中整个团队需要把之前做的初步产品计划进行更细颗粒度极的细化,把需求拆解成可以执行的事务,并对每个工作进行工时的预估。如果整体工作量超出了团队的产能,需要适当的将一些需求放到下个迭代;如果低于产能,需要将后续的需求前置。所以产品经理需要确保尽可能多将需求准备完善。
在会议结束以后,所有的工作都定义清晰之后,Scrum 负责人就会把规划好的需求、缺陷和工作添加进迭代中,并设定好开始和结束时间,同时 Scrum 负责人还可以在迭代中实时查看整个迭代的进度和距离此次迭代结束还有多少天等信息。
接下来就开始第一个迭代周期了,这个过程中,迭代模块中的统计面板将是所有团队成员最为关注的地方,根据进度调整自己手上的工作,而如何确保迭代按照原计划进行则是 Scrum 负责人所最关心的。
在迭代开始后,团队需要通过每天早上开站立会议来讨论和解决在执行过程中发现的问题。每天的站立会议尽可能的精简,控制在半个小时以内,团队成员每天早上需要描述昨天做的事情,今天要做的事情,以及遇到的问题。当有问题出现,相关的人需要一起协力解决。每天的会议纪要可以使用 CODING 研发管理系统中的 wiki 功能进行记录,方便查阅。
在迭代模块下的事物状态趋势通过堆叠式面积图的方式来展示事物(需求、缺陷和工作)的状态以及随时间而变化的程度,可以进一步帮助 Scrum 负责人了解每天哪些任务的进度。
当到了迭代预设的结束时间之后,就意味着迭代周期的结束,无论是不是所有事务都完成了。
在迭代真正结束之前,需要由相应的产品负责人对所有的成果进行评估,确保事务完成情况和计算最初设想目标的达成率,在所有事务评审完成之后。Scrum 负责人就可以点击迭代中完成迭代的按钮,正式宣告本次迭代的结束。
最后整个团队还需要进行一次回顾会议,回顾这次迭代有哪些做的好,哪些做的不好,并列出下次的可执行任务,便于改进整个团队的研发效能。
一般来说,每次迭代会产出一个可上线的版本,在正式部署之前还有一个重要的环节:测试。
现在 CODING 研发管理系统的测试管理功能由 18 年收购的专业测试工具飞蛾( FEIE.WORK )承载,现已实现了企业账号打通,可以直接在测试管理中点击跳转到飞蛾的工作界面。
在飞蛾中测试工程师可以根据功能情况,编写测试用例、规划和执行测试计划。在测试计划的执行过程中,会有多多少少出现一些问题,称之为 bug 或者缺陷。所以后续的迭代中,除了需求,我们需要将另一个任务类型考虑进来——缺陷。
在测试环节和正式上线之后,发现的问题,都可以在 CODING 研发管理系统的缺陷管理模块中归纳统一,并排出优先级作为下一个迭代中的工作来源之一。不过这也要具体问题具体分析,紧急程度高的缺陷需要第一时间反馈到产品进行修复,优先级不高的会安排到接下来迭代修复。缺陷管理也具有强大的统计功能,对缺陷类型、优先级、模块、发现时间等关键指标进行全面的统计,方便测试工程师了解项目的整体进度。
敏捷研发讲究的就是在可控的情况下进行一个一个短频快的迭代,每个迭代环环相扣,快速反馈,快速验证。
想要更好的实践敏捷在选对合适的流程和工具之外,组织的支持也是必不可少的。毕竟敏捷研发带来的是一种全新的更灵活的组织架构,要适应新的体系远没有上面说的那么轻松。而且每个团队遇到的问题也不一样,但是好在实践敏捷本身就是一个迭代的过程,每一次回顾都会发现一些问题,并在新的迭代中改进。
欢迎试用 CODING 研发管理系统。体验敏捷研发,拥抱变化!
点击阅读原文,更多实践案例持续更新中。