可伸缩敏捷开发:企业级最佳实践
分類: 图书,管理,管理信息系统,
作者: (美)兰芬维奥 著,李冬冬 等译
出 版 社: 电子工业出版社
出版时间: 2009-5-1字数:版次: 1页数: 304印刷时间:开本: 16开印次:纸张:I S B N : 9787121082160包装: 平装编辑推荐
“尽管公司实施大型敏捷项目已经许多年了,但是“敏捷方法只适用于小型项目”这样的话依旧是新手所面临的普遍障碍,并且成为制定敏捷标准的战斗口号。关于敏捷开发的资料很多,但是缺少一本关于使用敏捷方式开发大型项目细节的可靠且具有实用性的书。Dean Leffingwell 的这本书 《可伸缩敏捷开发(Scaling Software Agility )》极好地填补了这一空白。它为架构、需求开发、多级发布计划以及团队组织等大型项目问题提供了有实际意义的指导。Leffingwell 在这本书中也为大型项目和大型组织向敏捷开发过渡提供了必要的指导。”
——Jim Highsmith,主管,Agile Practice,Cutter Consortium, 敏捷项目管理(Agile Project Management)的作者
“快速构建软件与交付可持续软件之间,以及保持对市场变化的响应与维持稳定程度之间存在着矛盾。 Dean Leffingwell 在其最新的著作《可伸缩敏捷开发(Scaling Software Agility )》中,介绍了如何实现这些方面之间的实际平衡。Leffingwell 对问题的观察、对解决方案的建议以及对结果的最佳实践的描述都来自于他的经验:他本人一直参与在敏捷实践当中,并且看到了效果。”
——Grady Booch,IBM Fellow (IBM院士,即IBM最高级别的专家)
内容简介
敏捷开发实践虽然在一些圈子内仍然存在着争议,但是它却给我们带来了不可否认的益处,例如:更加快速地向市场交付、更好地响应变化的客户需求以及提供更高的软件质量。然而,敏捷方法一直定义或者推荐在小型团队中应用。在《可伸缩敏捷开发(Scaling Software Agility )》这本书中,Dean Leffingwell 介绍了如何将敏捷方法应用于企业级的开发上。
第1部分介绍了最通用且最有效的敏捷方法。
第2部分介绍了扩展到企业级规模的7个敏捷最佳实践。
第3部分介绍了公司所能掌握的获得企业范围内软件敏捷性全部好处的另外一套实践,即7个组织能力。
该书对于软件开发人员、测试人员及 QA 人员、经理和团队领导,以及软件组织的执行人员是非常有价值的,这些组织的目标是提高软件开发过程的质量和生产率,但是这些组织面临着在企业范围内开发软件的所有挑战。
作者简介
Dean Leffingwell是一位知名的软件开发方法论者和作者,也是一个软件团队指导,他用自己的经历帮助软件开发团队实现他们的目标。他是Requisite公司的创始人和前CEO,是RequisitePro的创造者,也是Rational公司的前副总裁并在Rational公司负责RUP商业化。在过去的五年里,他的工作角色是独立顾问,并担任Rally软件公司的顾问兼方法论者。Leffingwell先生致力于将敏捷方法应用于跨国公司分布式大型开发团队,他以在此过程中获得的经验为基础,写成了此书。
目录
第1部分 软件敏捷概述
第1章 敏捷方法介绍
1.1 在软件经济中获得竞争优势
1.2 走进敏捷方法
1.3 敏捷的规模
1.4 了解敏捷方法
1.5 采用敏捷方法的趋势
1.6 软件敏捷的企业效益
1.6.1 提高生产力
1.6.2 提高质量
1.6.3 提升团队士气和工作满意度
1.6.4 更快地面市
1.7 XP、Serum及RUP的简介
1.7.1 极限编程(XP)
1.7.2 Serum
1.7.3 Rational统一过程
1.8 小结
第2章 为什么瀑布模型不适用
2.1 瀑布模型的问题
2.2 瀑布模型的假设
2.2.1 假设1:如果我们花时间来理解的话,存在着一套定义相当明确的需求
2.2.2 假设2:改变是小型且便于管理的
2.2.3 假设3:系统集成会顺利进行
2.2.4 假设4:我们完全可以按计划交付
2.3 利用敏捷方法来纠正行为
第3章 XP的本质
3.1 什么是XP
3.2 有关XP的争议
3.3 有关XP的极限
3.4 XP的基本原则
3.5 XP的价值、原则及实践方法
3.5.1 XP的5个核心价值
3.5.2 基本原则
3.5.3 XP的13个关键实践技巧
3.5.4 对结对编程的注释
3.6 XP的过程模型
3.7 XP方法的应用
阅读参考
第4章 Scrum的本质
4.1 Serum是什么
4.2 Serum的角色
4.3 Serum的哲学根基
4.4 Serum的价值观、原则及实践方法
4.5 Serum的关键实践方法
4.6 Serum的基本原则:经验过程控制
4.7 Serum的过程模型
4.8 对Serum和组织的变更
4.9 方法的应用
阅读参考
窘5章 RUP的本质
5.1 什么是RUP
5.2 RUP的关键特征
5.3 RUP的根源
5.3.1 RUP的原理与实践
5.3.2 迭代:RUP的基本原则
5.3.3 架构驱动和用例中心化
5.3.4 RUP开发过程模型
5.3.5 时间轴
5.3.6 规程轴
5.3.7 RUP生命周期迭代类型
5.4 敏捷RUP变体
5.4.1 开放统一过程(OpenUP)
5.4.2 敏捷统一过程
5.5 方法的适用性
阅读参考
第6章 精益软件开发
第7章 敏捷的本质
第8章 可伸缩敏捷的挑战
第2部分 7种可伸缩的敏捷团队实践
第9章 定义/构建/测试模块团队
第10章 计划和追踪两个级别
第11章 掌握迭代
第12章 更小、更频繁的发布
第13章 并发测试
第14章 持续集成
第15章 定期反雀和调整
第3部分 创建敏捷企业
第16章 有意识的架构
第17章 伸缩时的精益需求:愿景、路线图、适时的细化
第18章 系统的系统及敏捷发布序列
第19章 管理高度分布式开发
第20章 对客户和操作的影响
第21章 组织变更
第22章 度量业绩
结论:敏捷是可伸缩的
索引
书摘插图
第1部分 软件敏捷概述
第1章 敏捷方法介绍
敏捷方法改革了软件开发的方法。
1.1 在软件经济中获得竞争优势
软件行业已经发展为当今时代最重要的行业之一。这个行业在世界各地的所有发达国家雇佣数百万从业者,创造一些最基本的产品来维持并扩充我们的生活方式。从控制我们所吃的食品到为我们所驾驭的交通工具提供安全与控制,再到提供维持生命的医疗,以及使我们的业务自动化,软件已经成为世界上最有价值财产的代表。
在这个竞争激烈的环境中,怎样区分成功者与失败者,领先者与落后者呢?在许多事例中,都是能够更快速地提出并交付软件解决方案,满足其用户和客户真正需求的人获得了成功。对于经营软件销售业务的企业来说,成功者通常有下列特征:
他们通常最先面市:
他们的解决方案直接满足客户真正的需求,并有内置机制来保证其产品实现功能;
他们交付的解决方案包含必需的质量和功能;
他们比竞争者更快速地调整业务和更新技术。
换句话说,领先者能够更快速地生产出更好的软件,并且能够不断地完善其解决方案,以确保持续满足客户的需求。
这个法则看上去似乎很简单,但是为什么不能所有人都遵循呢?答案就在于软件开发方法本身,我们已经发现,那些掌握了这个苛刻、困难方注的人最可能脱颖而出成为优胜者。
……