书籍作者:理查德·哈德豪森 | ISBN:9787302616023 |
书籍语言:简体中文 | 连载状态:全集 |
电子书格式:pdf,txt,epub,mobi,azw3 | 下载次数:2017 |
创建日期:2024-06-25 | 发布日期:2024-06-25 |
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板 |
Scrum作为全球范围内应用较广的敏捷框架,有广泛的使用场景。《专业SCRUM:基于Azure DevOps的敏捷实践》着眼于如何基于微软的Azure DevOps来更好地使用Scrum,全书共3部分11章,分别介绍Scrum基础、如何基于Azure DevOps来实践专业Scrum以及如何实现持续改进和加速流动。通过本书,读者可以了解团队组建、积压工作、Sprint、测试计划、协作、流程、持续改进、Azure Boards、Azure 测试计划以及与 DevOps ,掌握实用技巧,少走弯路。
《专业SCRUM:基于Azure DevOps的敏捷实践》可以作为 Scrum.org 的专业 Scrum 开发人员 (PSD) 计划的补充,适合所有使用Scrum来实现价值交付的人员阅读和参考,包括开发/测试团队、产品负责人、Scrum Master及设计师、架构师、业务分析师、管理人员等其他干系人。
理查德·哈德豪森(Richard Hundhausen)
Accentient总裁,致力于利用DevOps和Scrum帮助软件组织和团队交付更好的产品。他是专业Scrum培训师以及Nexus ScaledScrum框架的联合创始人,作为软件开发人员、顾问和培训师,拥有近四十年经验。他深刻地认识到,软件是由人而非流程或工具来构建和交付的。
徐磊
英捷创软(LEANSOFT)创始人、首席架构师&CEO、第一批PSD授权讲师、IDCF社区联合发起人、连续十四年微软最有价值专家、微软区域技术总监、华为云MVP、认证ScrumMaster、EXINDevOps Master/Professional认证讲师、DevOps凤凰沙盘认证讲师、微软技术大会讲师及DevOpsDays讲师。
薄涛
英捷创软(LEANSOFT)咨询服务总监及敏捷/DevOps专家,服务于华为/农行/北京银行/兴业银行等客户。为企业提供研发效能改进解决方案十余年,帮助国内上百家企业提供过DevOps咨询及解决方案落地解决方案,熟悉金融、通信、制造、互联网、快销等多种行业。
李强
英捷创软(LEANSOFT)联合创始人及销售市场总监。拥有近20年的软件行业从业经验,先后就职于汇丰银行、IBM和微软等公司,担任软件工程领域技术专家。
周文洋
英捷创软(LEANSOFT)研发总监及敏捷/DevOps专家。致力于DevOps实施咨询服务十余年,连任多年微软DevOps方向MVP,帮助过多家500强企业(涉及金融、保险、基金、通信等行业)完成DevOps的咨询、服务、实施落地等工作。
Scrum是一种用来开发和维护复杂产品(比如软件)的框架。Scrum实际上提供了很多规则,这些规则在《Scrum指南》(https://scrumguides.org/)中都有描述,《Scrum指南》中同时描述了角色、活动和工件及其关联的规则。如果能够正确使用这个框架,Scrum就可以帮助团队高效且创造性地交付最有价值的产品,解决各种复杂的问题。Scrum是一种敏捷开发方法,实际上也是当今中使用最为广泛的敏捷开发方法。
Scrum 采用基于迭代和增量的方法来优化可预测性和对风险的控制能力。这得益于Scrum中所使用的经验型过程控制方法。通过运用检视、适应和透明理论,Scrum团队可以在一个很短的迭代中尝试新的方法(实验)并评估其有效
性。然后,团队可以有选择地决定是否要引入、扩展或者放弃这次实践,其中也包括团队使用的工具以及这些工具的用法。
将Scrum与Azure DevOps中的工具结合使用,会将非常强大。这是本书的目标,帮助大家了解Scrum以及如何使用Azure DevOps来运作Scrum。
在软件开发中,唯一不变的是变化。健康的团队非常熟悉这种情况,他们知道持续检视和适应是日常工作的一部分。高效能团队甚至会在此基础上更进一步,把每一个障碍和问题都看作是学习和改进的机会。阅读本书其实就是朝着这个方向迈进的第一步。
谁应该阅读此书
本书对任何正在使用Scrum或者考虑使用Scrum的软件开发团队成员来说都是有价值的。虽然我主要关注开发人员的职责和任务(一个Scrum团队包括设计师、架构师、编码人员、测试人员、技术文档编写人员等),但这本书同样可以帮助到产品负责人和Scrum Master,让他们从中了解到如何使用Azure DevOps来规划和管理日常工作与进展。其他干系人,比如客户、用户、出资人和管理者,同样可以从本书中获益,可以从中了解到如何与基于Azure DevOps场景来运作Scrum的团队协作,了解哪些事情应该做,哪些事情不应该做。
本书主要关注如何使用Scrum来开发软件产品,因为Azure DevOps主要针对的是软件产品。但本书的大部分内容其实也适用于非软件和非IT类项目,因为Scrum本身是一个用来解决复杂问题的框架。本书的很多内容其实也适合任何类型的产品,比如,服务类、实体类产品或者更加抽象的其他产品。
本书不适合谁阅读
本书面向正在使用Scrum和Azure DevOps进行复杂软件产品开发的团队。对于非Scrum团队或开发的产品并不复杂,那么这本书不会提供太多帮助。如果团队正在使用瀑布式或顺序式开发过程,那么这本书也提供不了任何价值(除非正在考虑转换思路或者工作方式)。同样,如果团队并没有使用Azure DevOps,那么本书的大部分内容也没有什么用处(除非只希望关注有关专业Scrum开发的内容并且想看看自己团队有哪些地方还可以改进)。还有,如果团队正在使用老版本的Team Foundation Server,这本书同样不适合,因为旧版本的TFS缺少支持团队协作、规划和管理工作等高价值的新功能。
对于正在寻找“最佳实践”的读者,对不起,这本书也不适合您,我也不适合您。我拒绝使用这个术语,因为它意味着几个错误的假设:该实践对所有组织中从事所有产品的所有团队来说确实是“最好的”;团队一旦发现最佳实践,就可以停止寻找和实验;我更喜欢“经过验证的实践”这个术语。本书有许多实践供您和团队在改进过程中进行参考。
本书的组织方式
本书聚焦于如何更为有效地结合专业Scrum和Azure DevOps,包含三个部分。第Ⅰ部分“Scrum基础”为读者提供针对Scrum框架、专业Scrum和Azure DevOps(特别是Azure Boards服务)的基础知识。第Ⅱ部分“实践专业Scrum”通过描述专业Scrum团队,其中包括如何使用Azure DevOps的不同特性来创建和管理产品Backlog、冲刺计划和冲刺Backlog以及如何在冲刺内更加有效地进行团队协作。第Ⅲ部分“持续改进”描述如何帮助Scrum团队加速流动,以应对常见的挑战和问题,并且使用技术手段持续改进团队Scrum水平。同时,还针对规模化专业Scrum介绍了如何使用Nexus 规模化Scrum框架。如果按照本书的结构顺序阅读,会看到如何将Azure DevOps和Scrum结合起来有效地管理Scrum团队,会看到团队如何转变成高效能专业Scrum团队。
书中为大家提供和推荐了很多实践和工作模式。我会使用专业Scrum团队或者高效能Scrum团队这两个术语来区分那些根本不进行检视、适应和改进的僵尸Scrum团队。也许有些时候您会觉得这些建议不切实际,对您的团队根本没用。不清楚您的团队是怎样的,所以您的想法当然很有可能是对的,但我坚信这些建议对您肯定有帮助。事实上,我和其他几百名专业Scrum培训讲师都见证了其他很多团队的改进。记住,这些高效能团队的行为都应该作为团队要达成的愿景或“完美目标”。这个过程可能非常耗时费力,但最终一定会帮到您和您的团队,而您也会成为带领团队走过这个历程的领导者。
本书的最佳阅读起点
本书内容丰富,您可以根据需要以及对Scrum、Azure DevOps和相关实践的理解程度,直接跳到特定的主题开始阅读。下面这个表格会帮助您了解最佳的阅读起点。
当前的情况 阅读起点
刚开始学习Scrum,不了解Scrum
先阅读《Scrum指南》再从第1章开始
刚开始学习专业Scrum,不了解专业Scrum 从第1章开始
刚开始学习Azure DevOps,未实际用过 从第2章开始
刚开始学习Azure Boards或想了解如何配置一个定制化的专业Scrum过程(模板) 从第3章开始
了解Scrum和Azure DevOps,希望学习如何为Scrum团队配置Azure DevOps环境 从第4章开始
比较熟悉Scrum和Azure DevOps,希望学习如何进行冲刺规划和创建冲刺Backlog 从第6章开始
刚开始学习验收测试驱动开发(ATDD),希望了解如何使用Azure Test Plan来规划和管理冲刺 从第7章开始
刚开始学习流动(flow)概念以及开始在Scrum团队内使用看板来可视化工作和管理流动(flow) 从第9章开始
正面临各种常见的Scrum挑战并希望找到相应的解决方案 从第10章开始
正面临规模化问题,希望帮助多个Scrum团队有效地协作开发同一个产品 从第11章开始
图例和注释
本书使用以下的图例和注释来帮助读者更好地进行阅读:
截图:针对Azure DevOps特定功能的截图,供读者参考
注释性的段落:标注成“说明”或者“提示”的框线区域,为特定内容提供相关的信息
有些注释性的段落内容来自本书的审阅者提供的实践指导,他们是专业Scrum开发者或者专业Scrum开发讲师
除此之外,本书还使用了两种特殊的注释性段落,一个叫 “坏味道”,另外一个叫“Fabrikam Fiber案例研究”。
本书会指出Scrum团队和成员常犯的一些错误和常见误区,这些内容统称为“坏味道”。坏味道的出现一般说明代表团队有问题或者不良习惯。刚刚开始实践Scrum的团队很难发现这些坏味道。一旦被暴露出来,团队就应该立即着手解决并借机得以学习改进。当团队步入正轨后,团队应该能够自主发现这些坏味道并自行改进。专业Scrum团队有能力识别问题和浪费,进行风险分析并且自主决定采取特定的行动(包括那些不了解Scrum的人认为可能是坏味道的)。
阅读本书的过程中,会看到Fabrikam Fiber案例。Fabrikam Fiber是一个虚构的宽带通信提供商(想一下Cox,Sparklight,Charter/Spectrum或者Comcast),为美国多个州提供服务。这家大型企业使用本地部署的web应用程序为他们的客户服务代表提供服务,针对客户支持请求创建和管理工单。他们使用Scrum已经有一段时间了,最近刚刚迁移至Azure DevOps。通过Fabrikam Fiber Scrum团队做的抉择,可以看出我对健康行为和不健康行为的看法。
系统要求
尽管本书不包含任何动手练习,但还是建议大家注册Azure DevOps Services,以便在阅读过程中进行实验和学习。在Azure DevOps上创建一个组织只需要几分钟,5个用户以下的“基础”功能是免费的,对本书提到的所有特性足够的。Azure DevOps Services是一种基于云的SaaS服务,每三周提供一次版本更新,所以本书中的截图可能与您在浏览器中看到的不一致。
此外,也可以下载Visual Studio Community Edition或Visual Studio Code,并尝试使用它们如何连接到Azure DevOps以及如何使用Azure Board和Azure Repos进行协作。这两个产品都是免费的。
术语
关于本书各章累计166个术语,请扫码添加小助手,申请访问权限。
致谢
写作本书的过程中,我得到了很多人的帮助。感谢Loretta Yates使我有机会与微软出版社再次合作: Charvi Arora、Tracey Croom、Elizabeth Welch、Songlin Qiu、Vaishnavi Venkatesan和Donna Mulder,感谢大家耐心审阅内容并帮助我找到正确的写作风格;感谢Donis Marshall激励我再次提笔写书,并给我如此直接且有价值的反馈;感谢Dan Hellem解答了很多Azure Board相关问题,并评审了书中很多章节;Phil Japikse、Simon Reindl、Brian Randell、Ognjen Baji、Ana Roje Ivani、Martin Kulov、Cory Isakson、David Corbin、Charles Revell、Daniel Vacanti和Christian Hassa提供了一些很棒的建议和思路,使得本书更加清晰流畅;感谢Ken Schwaber和Jeff Sutherland在我快要写完本书时更新了《Scrum指南》。
勘误表、更新和图书支持
我们已经尽最大努力确保这本书及其配套内容的准确性。大家可以通过提交的勘误表和相关的更正来访问这本书的更新:MicrosoftPressStore.com/ProfScrumDevelopment/errata。如果发现此页面尚未列出的错误,请提交给我们。
第Ⅰ部分
Scrum基础
第1章??专业Scrum
第2章??Azure DevOps概述
第3章??Azure Boards
第Ⅱ部分
实践专业 Scrum
第4章??赛前准备
第5章??产品Backlog
第6章??冲刺
第7章??测试计划
第8章??高效协作
第Ⅲ部分
改进
第9章??加速流动
第10章??持续改进
第11章??规模化专业Scrum
详细目录
第Ⅰ部分??Scrum基础
第1章??专业Scrum 002
1.1??Scrum指南 003
1.2??Scrum基石 004
1.3??Scrum的价值观 042
1.4??专业Scrum 044
术语回顾 046
第2章??Azure DevOps概述 048
2.1??简史 048
2.2??持续交付价值 050
2.3??Azure DevOps Service 053
2.4??Azure DevOps Server 059
2.5??Visual Studio 061
2.6??Azure DevOps访问级别 064
2.7??Github和未来 066
术语回顾 066
第3章??Azure Boards 068
3.1??选择一个“过程” 068
3.2??Scrum过程 071
3.3??过程定制 092
术语回顾 095
第Ⅱ部分??实践专业 Scrum
第4章??赛前准备 098
4.1??搭建开发环境 099
4.2??产品开发配置 109
4.3??准备阶段检查清单 124
术语回顾 126
第5章??产品Backlog 128
5.1??创建产品Backlog 128
5.2??报告缺陷 146
5.3??梳理产品Backlog 155
5.4??发布计划 171
5.5??用户故事地图 174
5.6??产品Backlog检查表 177
术语回顾 178
第6章??冲刺 180
6.1??冲刺规划 181
6.2??使用Azure Boards进行冲刺 182
6.3??创建冲刺Backlog 183
6.4??冲刺活动事项 197
6.5??冲刺规划检查表 220
术语回顾 221
第7章??测试计划 223
7.1??Azure Test Plans 224
7.2??检视进度 231
7.3??验收测试驱动开发 234
7.4??自动化验收测试 237
7.5??验收不等于验收测试 242
7.6??测试重用 244
7.7??验收测试检查表 247
术语回顾 249
第8章??高效协作 251
8.1??个体和互动 251
8.2??开发协作实践 264
术语回顾 279
第Ⅲ部分??改进
第9章??加速流动 282
9.1??可视化流动 283
9.2??看板 285
9.3??管理流动 286
9.4??限制在制品 288
9.5??管理在制品限制 289
9.6??检视和调整工作流程 291
9.7??基于流动的Scrum活动 297
术语回顾 306
第10章??持续改进 308
10.1??常规挑战 309
10.2??常见的机能障碍 329
10.3??成为专业Scrum团队 348
术语回顾 355
第11章??规模化专业Scrum 357
11.1??Nexus框架 358
11.2??Azure DevOps对Nexus的支持 368
术语回顾 373