敏捷开发,相对传统软件开发模式,它主要是针对快速变化的需求,不断优化管理流程,最终推出优质软件。

  1. 快速迭代

  相对那种半年一次的大版本发布来说,小版本的需求、开发和测试更加简单快速。一些公司,一年仅发布仅2~3 个版本,发布流程缓慢,它们仍采用瀑布开发模式,更严重的是对敏捷开发模式存在误解。

  由一年发布 2 个版本转到一个月发布 2 个版本,这也不太可能。但是现在来看,快速迭代已经成为事实标准,关键是要比目前的版本发布速度更快一些。

  快速迭代,可以逼迫团队不断优化流程、提升工作效率,不要在无足轻重的事情上浪费时间。如果离 deadline 还有 6 个月,那么整个工作节奏必然悠哉。如果每月发布一个版本,那么较以前效率必然会更高。如果发布周期过长,导致无法尽快发现用户需求,进而无法及时改进产品。

  2. 让测试人员和开发者参与需求讨论

  需求讨论以研讨组的形式展开最有效率。研讨组,需要包括测试人员和开发者,这样可以更加轻松定义可测试的需求,将需求分组并确定优先级。

  同时,该种方式也可以充分利用团队成员间的互补特性。如此确定的需求往往比开需求讨论大会的形式效率更高,大家更活跃,参与感更强。

  确定需求时,不要过度盯在细节上。需求报告过于详细,就是一种不敏捷的习惯,还浪费大家的时间。当然,不能错过好点子,但就是不要太细,因为项目真正实施起来时需求将会产生很大的变动。

  3. 编写可测试的需求文档

  开始就要用“用户故事”(User Story)的方法来编写需求文档。这种方法,可以让我们将注意力放在需求上,而不是解决方法和实施技术上。过早的提及技术实施方案,会降低对需求的注意力。

  规划业务需求,可以采用“3W 模板”,也就是:

谁(Who)

是什么(What)

为什么(Why)

上面的 3W 实际上就是描述了相关利益者是谁,他们想要什么,他们为什么有这种需求。下面举一例子进行说明:

谁(Who):用户

是什么(What):希望借助一个应用程序在不同服务器间传输文件

为什么(Why):为了存储项目数据;为了更加接近“用户故事”,我们可以改写为:

谁(Who):消费者/用户

是什么(What):想将归档过程数字化

为什么(Why):为了增强沟通,提高分享效率

  敏捷项目中编写用户故事有一个常用模板:作为一名[用户类型],我想要[需求],以便于[原因]。应用到这个例子,就是:作为一名用户,我想要将归档程序数字化,以便于增强沟通、提高分享效率。

  多数情况下,需求内容需要更加充实和详细,这一步要放到后面做,开始不要这样。用户故事的方法有时会因过于简短、不断重复而受到批评。这里我们必须明白:需求文档不是散文或诗歌,应该清晰、简明地描述用户需求;需求文档的重点也在于此,不要管形式多变或内容是否重复这样的问题。

  4. 多沟通,尽量减少文档

  任何项目中,沟通都是一个常见的问题。好的沟通,是敏捷开发的先决条件。在圈子里面混得越久,越会强调良好高效的沟通的重要性。

  团队要确保日常的交流,面对面沟通比邮件强得多。

  敏捷开发鼓励日常的协调会议和碰头会,5~7 人参与的会议尽量控制在 10 分钟内。碰头时,要过一遍昨天完成了什么,今天要做什么,哪些问题仍待讨论。可以用 Burndown Chart(燃尽图)来形象展示工作进度。每次迭代的时候也都要开一个计划会议和评审会议,一般需要的时间可能会长些,比如半天。这些会议的目的就是对工作查缺补漏。

  评审会议很重要,传统开发模式往往略过该环节,导致一些错误做法不断重复,好的做法无法推广。

  开会时,可以将原先的分组打散,让整个团队都参与到项目的需求讨论和测试中来,这样可以突出成员个人,让大家更乐意参与。

 5. 做好产品原型

 

  建议使用草图和模型来阐明用户界面。并不是所有人都可以理解一份复杂的文档,但人人都会看图。

  一个常见的问题是软件新的功能与用户想要的不一致。为了避免这一问题,可以模拟真实操作,改进模拟操作过程中难以理解和不清楚的操作行为。

 6. 及早考虑测试

  及早地考虑测试在敏捷开发中很重要。传统的软件开发,测试用例很晚才开始写,这导致过晚发现需求中存在的问题,使得改进成本过高。较早地开始编写测试用例,当需求完成时,可以接受的测试用例也基本一块完成了。

  敏捷开发中一个常见问题就是开发者没有对已有的代码库进行充分的回归测试。迭代周期很短,从开始到交付就是 4 周的时间,这样可以对迭代的设计、实现和底层测试一块进行回归测试。

  一系列迭代之后,可以只针对测试活动再补充一个迭代。这个迭代可以将重点放在系统测试、与其他系统的集成度、性能等方面。敏捷开发过程中,可能会导致过少的测试文档。如果迭代周期为 1 个月左右,可以不必对测试文档过于要求,但要制定好测试策略。

  最后

  可能大多数公司或团队还没有开始尝试敏捷开发,不过可以开始从点滴做起,比如开碰头会、为项目管理采用一个更加高效的管理工具等等。最后,希望上面的建议能够为大家的软件开发管理带来帮助。

光环国际PMI-ACP敏捷认证独家学习培训方案,敏捷实践专家亲临授课

课前预习:预习制定学习资料,了解考试范围和框架;班主任邮件、电话指导 预习;QQ群交流。

实战精讲解阶段:敏捷课程Donmain I-VI实战精讲学习;组建EMBA学习小组,互相探讨,结合老师的案例强化敏捷技术的应用。

全真模考:2天全真模考体验,检测学习成果;系统梳理考试知识点,全面解决考前疑难问题。

光环敏捷认证:http://acp.aura.cn

咨询热线:400-7060-559

PMI-ACP敏捷认证:敏捷开发的6个实战经验相关推荐

  1. 敏捷开发的6个实战经验

    在大型企业中经常是各种软件开发模式混用,一些采用敏捷开发,一些则是采用传统的瀑布式或RUP(统一软件开发过程).敏捷开发,相对传统软件开发模式,它主要是针对快速变化的需求,不断优化管理流程,最终推出优 ...

  2. 权威的国际敏捷认证Certified Scrum Master (CSM)

    权威的国际敏捷认证Certified Scrum Master (CSM) A. 认证前 在学习Certified Scrum Master (CSM)之前,你需要了解: 什么是CSM CSM认证与其 ...

  3. 考ACP敏捷认证多少分算通过?

    PMI-ACP®(敏捷管理专业人士)考试是由美国项目管理协会(PMI)于2011年推出一门敏捷管理专业人士论证项目,全称Agile Certified Practitioner.PMI于2015年9月 ...

  4. ACP敏捷认证能学到什么?

    PMI-ACP®证书认可证书持有者针对不同敏捷方法的原则.实践.工具与技能所掌握的知识,且不对从业者限定某一种敏捷方法.与其他仅基于考试或培训的敏捷认证不同,PMI-ACP®要求申请者参加多种敏捷培训 ...

  5. 2021年ACP敏捷认证考哪些内容?

    PMI-ACP®的中文含义为敏捷项目管理专业人士,一般指的是PMI-ACP®认证考试,也就是我们常说的PMI-ACP®考试. PMI经过多年调查发现许多项目需求不断地变更,成员小于10人的团队,套用以 ...

  6. CSM(Certified Scrum Master) 敏捷认证是什么?

    Scrum 是用于开发和持续支持复杂产品的一个框架.Scrum 基于试验性过程控制理论,借鉴了精益思想.时间盒.模块化设计等,并完整地体现了敏捷宣言和敏捷原则.Scrum 采用一种迭代.增量式的方法来 ...

  7. 记一次CRM敏捷认证培训学习总结

    前言 最近公司组织了一次关于CRM敏捷认证的培训和考试活动.为了加深记忆和留待以后回顾复习,也为了想要了解敏捷的同学提供一定的帮助,特此写了一篇关于敏捷培训的总结. 学习链接: Scrum指南2020 ...

  8. 敏捷测试——打通开发与测试的壁垒!

    DevOps是当前软件行业最热门的话题,无论是互联行业,还是传统行业,大家都在拥抱DevOps,享受引入DevOps后带来的团队效能提升.但是也有不少的团队对DevOps的理解还存在误区,导致在实践过 ...

  9. DevOps是敏捷在软件开发团队的另一应用

    DevOps是敏捷在软件开发团队的另一应用.那么相比之下,哪个更胜一筹? 一边,有业界认可的scrum master,它的朋友极限编程者,以及由其衍生的 LeSS.SAFe.DAD等,是敏捷. 另一边 ...

最新文章

  1. 1096 Consecutive Factors
  2. python基础 while循环练习
  3. 数学建模学习笔记——时间序列分析
  4. 冒泡排序python例题_零基础学python 15 经典算法:冒泡排序法(课后习题答案)...
  5. 『设计模式』大话西游的移魂大法竟移出来了桥接模式
  6. leetcode389. 找不同
  7. linux shell 0403-011,shell脚本出现 test:0403-004 Specify a paramater with this command
  8. 语法分析-C语言程序
  9. SQL查询环比增长 前后行数据对比操作
  10. PHP利用FPDI 制作PDF 档案 (php合并pdf, php签名pdf)
  11. GARFIELD@03-26-2005
  12. 【Java从0到架构师】日志处理 - SLF4J、Logback、Log4j 2.x
  13. 3.指定IP地址抓包
  14. webpack笔记_(1)_webpack 安装
  15. 一种全新易用的基于Word-Word关系的NER统一模型,刷新了14种数据集并达到新SoTA...
  16. 淘宝京东拼多多淘客源码,三合一淘客php源码cms搭建教程
  17. golang struct数组排序_go语言中排序sort的使用方法示例
  18. 想长胖的人看过来,几招教你变胖|猎人营
  19. 将m3u8格式转化为想要的格式
  20. 根据ppt模板修改ppt内容

热门文章

  1. 【AGA三维路径规划】基于matlab自适应遗传算法单无人机三维路径规划【含Matlab源码 214期】
  2. python写的多线程 代理服务器 抓取,保存,验证程序
  3. K歌伴奏与人声延迟测试
  4. bjoj1911 [Apio2010] 序列分割
  5. 外企的面试时自我介绍范例
  6. 基于ZETA技术的叉车加速度状态监测传感器为叉车装上“智慧大脑”
  7. 【Git 教程(5)】 Git基本操作
  8. 实验吧[WEB]——what a fuck!这是什么鬼东西?
  9. 享受挨踢的人生,分享技术的乐趣
  10. 【报名开启】CCKS 2022教科书示意图问答任务