CODING 敏捷实践完全指南
你好,欢迎使用 CODING!
这份最佳实践将帮助你掌握 CODING 敏捷管理工具,更好地实践敏捷开发流程。
什么是敏捷研发
敏捷研发是涉及整个软件工程的理念与实践,它的核心是迭代和增量式软件开发方法。开发者快速发布一个可运行但不完美的版本投入市场,在后续迭代中根据用户的反馈改进产品,新增一到多个用户可以感知的完整功能,从而逼近产品的最终形态。迭代就是整个理论的核心,坦白的说迭代开发并不是新鲜词汇,但是敏捷研发理论大大完善了迭代开发的理论,使之能够被广大的软件开发团队认可,并开发了具体的实践方法如:Scrum 等。
敏捷研发比较特别的地方是它是组织文化,流程以及工具的结合体,在敏捷研发介绍中要着重强调三者的同样的重要而且缺一不可:“工具,流程,组织文化”。缺少工具支持的敏捷研发无法实现“高速”;缺少组织文化支持的敏捷研发会让团队成员之间无法团结一致完成共同的目标。
如何使用 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 研发管理系统。体验敏捷研发,拥抱变化!
CODING 敏捷实践完全指南的更多相关文章
- 激活效能,CODING 敏捷研发模块上线
昨晚,巴黎圣母院失火,而我们当中的许多人都还没来得及去欣赏它的真容.我们曾以为美好的事物会等待我们,伟大的目标也会等待我们.世事无常,唯一不变的就是变化.在软件研发领域,敏捷研发就是这么一个小步快跑来 ...
- CODING 敏捷看板全新上线,助力研发管理可视化升级
在服务企业研发团队的过程中,我们发现不少团队碰到了类似的问题: 团队成员声称完成了自己的大部分任务,但团队实际交付的需求却寥寥无几? 由于某些问题导致工序一直处于等待状态,怎么识别和处理这些延迟? 成 ...
- CODING 敏捷实战系列课第五讲:敏捷中国史
敏捷软件开发方法自 2001 年传入中国以来,历经十多年的发展变迁,目前已经成为国内 IT 企业主流的研发管理方法.敏捷方法的传播和发展历程,是中国 IT 行业发展的剪影.CODING 特邀敏捷顾问. ...
- 菜鸟Scrum敏捷实践系列(三)用户故事的组织---功能架构的规划
菜鸟Scrum敏捷实践系列索引 菜鸟Scrum敏捷实践系列(一)用户故事概念 菜鸟Scrum敏捷实践系列(二)用户故事验收 菜鸟Scrum敏捷实践系列(三)用户故事的组织---功能架构的规划 采用Sc ...
- 菜鸟Scrum敏捷实践系列(二)用户故事验收
菜鸟Scrum敏捷实践系列索引 菜鸟Scrum敏捷实践系列(一)用户故事概念 菜鸟Scrum敏捷实践系列(二)用户故事验收 菜鸟Scrum敏捷实践系列(三)用户故事的组织---功能架构的规划 一.用户 ...
- 菜鸟Scrum敏捷实践系列(一)用户故事概念
菜鸟Scrum敏捷实践系列索引 菜鸟Scrum敏捷实践系列(一)用户故事概念 菜鸟Scrum敏捷实践系列(二)用户故事验收 菜鸟Scrum敏捷实践系列(三)用户故事的组织---功能架构的规划 敏捷开发 ...
- Scrum 敏捷实践中的三大角色
在我过去的近两年工作中,我们一直在应用 Scrum 敏捷项目管理方法来开展工作,今天,我先从它的角色划分来讲起,毕竟这可是它最鲜明的特征. 首先,为什么这种项目管理方法叫 Scrum ? Scrum ...
- CODING 敏捷实战系列课第二讲:Scrum 敏捷项目管理核心要素之 3355
Scrum 是敏捷开发流派中最著名和最落地的一支,全球 70% 以上公司的敏捷转型都是以 Scrum 起步.CODING 特邀敏捷顾问.CST & CTC 认证敏捷教练申健老师将在本课程< ...
- CODING 敏捷实战系列课第四讲:从头搭建持续集成 DevOps 流水线
<从头搭建持续集成 DevOps 流水线>由资深敏捷教练.极限编程学院高级讲师.CODING 特邀敏捷顾问李小波老师主讲,将基于 CODING 展示如何编写 Jenkinsfile 搭建 ...
随机推荐
- CXF整合spring
近公司需要弄webservics,还说不用框架整合(提倡使用hessian,他们既然说与操作系统有兼容问题,由于人员单薄,不得不屈服,哎),我想了老半天没弄明白他说的不用框架整合spring,尝试过直 ...
- libevent库简单使用
一.libevent库简介 Libevent是一个用于开发可扩展性网络服务器的基于事件驱动(event-driven)模型的网络库.Libevent有几个显著的亮点: (1)事件驱动(event-dr ...
- maven重新导入,不能拉到最新jar包的问题
需要删除本地jar,再重新reimport pom.xml
- 用nginx缓存静态文件
这篇教程说明你应该怎样配置 nginx.设置 HTTP 头部过期时间,用 Cache-Control 中的 max-age 标记为静态文件(比如图片. CSS 和 Javascript 文件) ...
- Flask开发微电影网站(二)
1.安装数据库连接依赖包 pip install flask-sqlalchemy 2.创建movie数据库 在CentOS虚拟机,进入MaridDB数据库提示符,创建movie数据库 create ...
- 什么是设计思维Design Thinking——风靡全球的创造力培养方法
“把学习带到现实中,让孩子用自己的力量创造改变,可以直接提升他们的幸福感和竞争力.” 这是“全球孩童创意行动”的发起人——Kiran Sethi在TED演讲时说的一句话,这个行动旨在引导中小学生主动寻 ...
- js中函数的写法
js提供了灵活的函数写法,我们常见的函数写法和调用可能是: function ask(){ console.log(1); } ask(); 这样就完成了函数的定义和调用,司空见惯. 还有js里面的匿 ...
- jQuery学习之旅 Item9 动画效果
1.元素的显示和隐藏 display:none; 隐藏 display:block; 显示 简单显示和隐藏方法 a) show() 显示 b) hide() 隐藏 c) toggle() 开关,显示则 ...
- HashMap浅入理解
HashMap不能保证元素的顺序,HashMap能够将键设为null,也可以将值设为null,与之对应的是Hashtable,(注意大小写:不是HashTable),Hashtable不能将键和值设为 ...
- SimpleDateFormat安全的时间格式化
SimpleDateFormat安全的时间格式化 想必大家对SimpleDateFormat并不陌生.SimpleDateFormat 是 Java 中一个非常常用的类,该类用来对日期字符串进行解析和 ...