业务实践
作者:程序员罗尼 | 发布:2021-01-12 | 原文:https://mp.weixin.qq.com/s/xbBuphefrhJLKYHoZbU2Mg
2021 年第一篇
本篇文章为《Clean Agile》第三章的读书笔记
为了成功,软件开发必须遵循许多面向业务的实践,主要包括如下几个方面
一、计划游戏
项目初期,都要做一些计划,估算一下大概需要做什么事情,需要多少时间,估算应该尽量准确,又不花费太多的时间
估算依赖于对项目的拆分,对项目拆分的越细,估算的就越准确,极端情况就是将项目拆分为一行一行的代码,但是这样估算就失去了意义,对于开发者而言,技巧在于花少量的时间,选定较小的范围,保证该范围内的确切估计
三元分析
先介绍一种三元分析方法,分别考虑最好情况,一般情况,最坏情况,这种分析适用于长期的项目,对于敏捷开发,我们使用故事点
故事和点数
对故事进行估算,确定工作量,比如1-6,确定业务价值,比如1-10,根据成本收益四象限,决定一次迭代做哪些事情
对于第一次迭代,拍脑门即可,比如完成30个故事点
迭代中期要进行评审,看看实际完成了多少,然后根据情况调整剩余的故事点
一个迭代完成之后就产生了真实的速率数据,可以用于指导下一个迭代,每个迭代都需要做中期回顾,进行相应的调整
故事的原则
INVEST
- Independent(独立)
- Negotiable(可协商的)
- Valuable(有价值的),架构设计,代码清理等不算故事
- Estimable(可估算的)
- Small(小),不应该大于一到两个开发人员可以在一个迭代中完成的工作量
- Testable(可测试的)
故事估算
有几种方法可以对故事大小进行度量
- 衬衫尺码法(Small,Middle,Large)
- 斐波那切数列法(1,2,3,5,8)
- 伸手指头法
分解、合并和穿刺
分解、合并比较好理解
穿刺可以理解为任务调研,是为了估计一个故事需要多长时间而进行的故事
对迭代进行管理
- 完成故事而不是任务
- 开发人员主动拣选任务
- QA 应该先于开发人员完成验收测试的编写
- 定期向利益相关者进行演示
迭代速率问题
迭代速率加快并不一定是好事,也可能是管理人员在向团队施加压力
速率减慢则通常是由于代码质量差
黄金故事,为了避免故事通货膨胀,始终以将实现的故事所需要的故事点数与黄金故事做比较
二、小步发布
持续交付
三、验收测试
业务分析师、QA和开发要相互合作
- 业务分析师描述乐观路径
- QA找出所有悲观路径
- 开发人员确保这些测试在技术角度看也是合理的
验收测试通过即表示故事开发完成
四、完整团队
尽量使整个团队的人坐到一起
此实践被视为业务实践而不是团队实践,因为业务才是从完整团队实践中获益最大的一方
本系列的文章列表
END