从持续交付看敏捷开发的自相似性(敏捷开发的心跳)
作者:陈勇
出处:blog.csdn.net/cheny_com
自相似性是指一个事物的局部与其更大的局部乃至整体具有相似性。
从大的方面看,敏捷开发具有重视客户价值,提倡持续交付等思想。但一般而言,Product Owner常常具备相当好的客户价值意识,而一线开发人员则比较关注技术本身,所以一旦仅仅停留在思想层面,在实际工作的时候就会发现有所背离。因此应该从自相似性的眼光看待敏捷开发的整体思想与局部实践,从而做到年年月月日日事事均符合敏捷开发的思想。
本文只从“持续交付”这一个敏捷开发思想来分析敏捷开发的自相似性。
“持续交付?是不是就是每个冲刺结束都要有一个可运行的版本?”是,也不是。
冲刺末尾的持续交付
敏捷最大的特色之一,就是阶段性地交付可运行的软件,而不是一堆暂时无法使用的文档。按照精益生产的思想,文档只是一种“中间产物”,不但不容易写好,还很难评审;即使在初期看到了完美的需求文档,也很难保证最后能看到完美的软件。因此敏捷开发决定只要可能(不是绝对的),就尽量绕开这个中间产物,而用可运行的软件来表明软件的进度和质量。
在冲刺的末尾,Product Owner和干系人们不是看着文档,而是看着一个可运行的软件进行评审,是这里持续交付的核心目的。为了方便评审,被交付的往往是一组相关的故事群,而不是“当前最重要的需求”。
冲刺内的持续交付
冲刺期内看平静,大家忙忙碌碌只待最后交付,其实不然。如果每个迭代都始自“需求分析”而终于“系统测试”,敏捷开发就变成迭代开发了。然而即使每个用户故事都独立开发,仍可能发生一堆故事都在“开发中”,但因为这些故事无法独立成章因而无法形成可运行软件的状态。为了防止这种情况,好故事一般都独立、可测试、完整地交付某个客户价值,因而每当完成一个故事,都能形成一个临时的可运行软件。
若能遵循MoSCoW方法(另有博文详述),则可以保证即使冲刺结束时无法完成所有Sprint Backlog项,仍能向Product Owner交付一个可用的软件。
“日创建”的持续交付
“日创建(Daily Build)”因能在每天结束时都能交付软件而闻名(这是微软在开发Windows时的创举),但对于小型软件开发,已经能做到每人每次提交代码在10分钟后就能看到结果的能力。1000人在开发了1000天的软件里边定位1,000,000个缺陷是不可思议的(平均1人1天1个缺陷),但每人在自己每天的代码中定位一个缺陷却是很现实的,前提是你能找到它,日创建就是这个逻辑。
一般常常提到的持续集成+自动化测试指的就是这个层面的持续交付活动,其目标是在提交代码后最短的时间内形成可运行软件,并确认是否存在问题。
版本间的持续交付
很多软件看似越来越强大,但市场反响却并不好(比如很多人安装的“免费”Office都是2003的,也就是7年间完全没有和MS做生意的打算),原因就在于这些软件并没有解决好一个问题:“下个版本到底面向哪个市场的哪类客户?他们为什么购买它?”这时软件很容易跟随公司领导的思绪梦游,或者被一两个大客户牵着鼻子走,或盲目地试图覆盖竞争对手的所有功能而迷失本性。
还是之前那句话:按照商业步调计划版本内容,也就是每个版本出来后,都要满足某些需求、获取某些客户、打败某些对手、取代某些产品……如果能持续找到这些“某些”是谁,那么下一个版本就能成功,如果找不到,兴许产品已经到达退出市场的阶段。如果不能持续找到市场和客户,怎样持续交付可运行的软件都是一件没有意义的事情。
点击下载免费的敏捷开发教材:《火星人敏捷开发手册》
转载于:https://www.cnblogs.com/JPAORM/archive/2011/04/24/2510516.html
从持续交付看敏捷开发的自相似性(敏捷开发的心跳)相关推荐
- 测试开发必会:正确理解持续集成和持续交付 CI/CD
正确理解并掌握持续集成和持续交付(CI/CD)是当下测试和质量保障相关同学的必备技能.本文作者为霍格沃兹测试学院特邀嘉宾,资深技术专家蒋刚毅,原文首发 TesterHome 社区,标题为<持续交 ...
- 十诫诗串词_持续交付的十诫
十诫诗串词 每个人都希望实现持续交付. 毕竟,好处太大了,不容忽视. 提高交付速度,提高质量,降低成本,使人们有更多时间来投入带来价值的事情,等等. 对于任何决策者而言,这些改进就像音乐. 特别是如果 ...
- 谈谈企业的持续交付流水线设计
有一天,业务人员急冲冲的跑过来,对你说生产上出现了一个严重BUG,必须要尽快修复.你听完问题描述后,胸有成竹坐定并迅速定位问题,随后改动了一行代码并提交,系统开始自动编译.各个环境自动化测试.发布上线 ...
- 持续交付:价值主张
过去十年中,一个划时代的改变就是:基于Web的业务模式对传统企业业务模式的冲击.亚马逊就是历史最长,也最明显的例子之一,而越来越多的公司(从航空到金融服务)开始依赖软件打造其竞争优势了. 依靠软件来 ...
- 敏捷文章总索引及敏捷开发培训课程扩展阅读
以下内容及链接,是两天培训课程<Scrum敏捷开发>的扩展阅读部分,正好可将所有博文索引起来. 所谓扩展阅读,就是对于那些限于课堂时间而无法深入展开的知识点,讲师会编写额外的资料以供参考. ...
- 获得Jolt 大奖的《持续交付》作者David Farley又一新作《现代软件工程》
戴维 ·法利 (David Farley) 是持续交付的先驱.思想领袖, 也是持续交付. DevOps. 测试驱动开发和软件开发领域的专家. 从现代计算的早期开始,戴维曾担任过程序员.软件工程师.系统 ...
- 参考行标对云效以及LinKE的“持续交付”及“敏捷开发管理”能力打了下分,大家看肿么样?
中国信息通信研究院发布(已在中国通信标准化协会立项)的行标,其中"研发运营一体化(DevOps)能力成熟度模型"中对"持续交付""敏捷开发管理&quo ...
- 【华为敏捷/DevOps实践】8. 持续交付,持续部署,傻傻分不清楚
文:姚冬(华为云DevCloud首席技术布道师,资深DevOps与精益/敏捷专家,金融解决方案技术Leader,中国DevOpsDays社区核心组织者) 前言 "持续交付与持续部署,到底谁应 ...
- 从优先级排序看敏捷开发的自相似性
作者:陈勇 出处:blog.csdn.net/cheny_com 自相似性是指一个事物的局部与其更大的局部乃至整体具有相似性. 从大的方面看,敏捷开发具有重视客户价值,提倡持续交付等思想.但一般而言, ...
最新文章
- C语言基础语法总结(一)
- 前端学习(2946):vue-cli使用
- linux shell跳板机,用shell开发跳板机
- Aliyun Serverless VSCode Extension 上架并开源
- 容易被忽略的label标签
- Week04《Java程序设计》第四周学习总结
- 马超计算机博士,湖南大学设计院马超民等博士生团队发明“手势”控制汽车
- 去掉CSDN blog 多余的版权申明部分[转贴]
- android 注解创建对象,Android ORM 框架:GreenDao 使用详解
- html兼容ie低版本,jquery不兼容低版本ie浏览器怎么办?
- 【Alist + Teracloud】WebDAV免费畅游互联网个人方案总结,一些支持WebDAV的应用推荐
- echarts 自定义legend 初始化为灰色
- VB.Net 解决winForm界面卡死
- 【Alpha】阶段第十次Scrum Meeting
- 《程序员修炼之道》读书笔记(二)--第三周
- 《查令十字街84号》读后感
- 程序员3~5年后如何规划自己
- 天府一品 茶叶商城平台 uni app 开发总结 H5商城
- pkcs5 padding和pkcs7 padding的区别
- Linux 探索之旅 | 第四部分第二课:SSH 连接,安全快捷
热门文章
- HDU 4932 Miaomiao#39;s Geometry(推理)
- Andriod Studio 使用心得,持续更新中
- 利用jquery 控制select 实例代码
- 重读博弈论(四)-重要的基本概念的理解:风险爱好、风险中性、风险厌恶(风险避规)...
- 【Java从0到架构师】Spring - 事务管理
- 江苏大学21考研计算机技术上岸
- 通过命令行安装或卸载Tomcat服务
- AD域控exchange邮箱(四)——获取AD域控中计算机有哪些账号登录过
- Linux搭建smb共享ftp服务器——windows无法写入samba共享路径 无操作权限的问题解决
- 重装也无法修复此计算机,遇到Win7系统崩溃无法修复的情况怎么办