Scaling Software Agility: Best Practices for Large Enterprises
暫譯: 擴展軟體敏捷性:大型企業的最佳實踐
Dean Leffingwell
- 出版商: Addison Wesley
- 出版日期: 2007-03-01
- 售價: $2,300
- 貴賓價: 9.5 折 $2,185
- 語言: 英文
- 頁數: 384
- 裝訂: Paperback
- ISBN: 0321458192
- ISBN-13: 9780321458193
-
相關分類:
專案管理 PM、Agile Software、軟體工程
海外代購書籍(需單獨結帳)
買這商品的人也買了...
-
$1,176Microelectronic Circuit Design, 2/e (IE)(美國版ISBN:0072505036)
-
$1,570$1,492 -
$550$435 -
$1,140C++ How to Program, 5/e (美國版ISBN:0131857576)
-
$490$382 -
$880$695 -
$1,080$1,058 -
$490$417 -
$650$514 -
$1,068An Introduction to Formal Languages and Automata, 4/e
-
$550$468 -
$650$507 -
$1,080$1,058 -
$720$569 -
$680$666 -
$1,160$1,102 -
$580$458 -
$580$493 -
$880$695 -
$520$442 -
$750$593 -
$600$480 -
$720$612 -
$399CCNP ISCW Official Exam Certification Guide
-
$380$300
相關主題
商品描述
Description
“Companies have been implementing large agile projects for a number of years, but the ‘stigma’ of ‘agile only works for small projects’ continues to be a frequent barrier for newcomers and a rallying cry for agile critics. What has been missing from the agile literature is a solid, practical book on the specifics of developing large projects in an agile way. Dean Leffingwell’s book Scaling Software Agility fills this gap admirably. It offers a practical guide to large project issues such as architecture, requirements development, multi-level release planning, and team organization. Leffingwell’s book is a necessary guide for large projects and large organizations making the transition to agile development.”
—Jim Highsmith, director, Agile Practice, Cutter Consortium, author of Agile Project Management“There’s tension between building software fast and delivering software that lasts, between being ultra-responsive to changes in the market and maintaining a degree of stability. In his latest work, Scaling Software Agility, Dean Leffingwell shows how to achieve a pragmatic balance among these forces. Leffingwell’s observations of the problem, his advice on the solution, and his description of the resulting best practices come from experience: he’s been there, done that, and has seen what’s worked.”
—Grady Booch, IBM FellowAgile development practices, while still controversial in some circles, offer undeniable benefits: faster time to market, better responsiveness to changing customer requirements, and higher quality. However, agile practices have been defined and recommended primarily to small teams. In Scaling Software Agility, Dean Leffingwell describes how agile methods can be applied to enterprise-class development.
- Part I provides an overview of the most common and effective agile methods.
- Part II describes seven best practices of agility that natively scale to the enterprise level.
- Part III describes an additional set of seven organizational capabilities that companies can master to achieve the full benefits of software agility on an enterprise scale.
This book is invaluable to software developers, testers and QA personnel, managers and team leads, as well as to executives of software organizations whose objective is to increase the quality and productivity of the software development process but who are faced with all the challenges of developing software on an enterprise scale.
Table of Contents
Foreword xvii
Preface xxi
Acknowledgments xxvii
About the Author xxix
Part I: Overview of Software Agility 1
Chapter 1: Introduction to Agile Methods 5
Achieving Competitive Advantage in a Software Economy 5
Enter Agile Methods 6
Agile at Scale 7
A Look at the Methods 8
The Trend to Agile Adoption 10
Business Benefits of Software Agility 11
A Brief Look at XP, Scrum, and RUP 13
Summary 15
Chapter 2: Why the Waterfall Model Doesn’t Work 17
Problems with the Model 19
Assumptions Underlying the Model 20
Enter Corrective Actions via Agile Methods 26
Chapter 3: The Essence of XP 29
What Is XP? 29
What’s So Controversial about XP? 30
What’s So Extreme about XP? 30
The Fundamental Tenet of XP 31
The Values, Principles, and Practices of XP 33
The Process Model for XP 38
Applicability of the Method 39
Suggested Reading 40
Chapter 4: The Essence of Scrum 41
What Is Scrum? 41
The Roles in Scrum 42
The Philosophical Roots of Scrum 42
The Values, Principles, and Practices of Scrum 43
Key Practices of Scrum 44
The Fundamental Tenet of Scrum: Empirical Process Control 45
The Process Model for Scrum 46
On Scrum and Organizational Change 48
Applicability of the Method 48
Suggested Reading 49
Chapter 5: The Essence of RUP 51
What Is RUP? 51
Key Characteristics of RUP 51
Roots of RUP 52
Agile RUP Variants 60
Applicability of the Method 61
Suggested Reading 62
Chapter 6: Lean Software, DSDM, and FDD 63
Lean Software Development 63
Dynamic Systems Development Method 65
Feature-Driven Development 70
Chapter 7: The Essence of Agile 75
What Are We Changing with Agile? 75
The Heartbeat of Agile: Working Code in a Short Time Box 81
Summary 85
Chapter 8: The Challenge of Scaling Agile 87
Apparent Impediments of the Methods 88
Impediments of the Enterprise 90
Summary 94
Part II: Seven Agile Team Practices That Scale 95
Chapter 9: The Define/Build/Test Component Team 101
What Is the Define/Build/Test Component Team? 102
Eliminating the Functional Silos 104
The Roles and Responsibilities of an Agile Component Team 106
Creating Self-Organizing, Self-Managing Define/Build/Test Teams 109
Distributed Teams 114
Chapter 10: Two Levels of Planning and Tracking 115
A Generalized Agile Framework 116
Summary: Two Levels of Planning 120
Chapter 11: Mastering the Iteration 123
Iteration: The Heartbeat of Agility 123
The Standard, Two-Week Iteration? 123
Planning and Executing the Iteration 124
Iteration Planning 125
Iteration Execution 129
Iteration Tracking and Adjusting 132
Iteration Cadence Calendar 135
Chapter 12: Smaller, More Frequent Releases 139
Benefits of Small Releases 139
Defining and Scheduling the Release 141
Planning the Release 144
Release Tracking 147
The Release Roadmap 149
Agile at Scale Preview: Release Planning and Tracking in the Large 150
Chapter 13: Concurrent Testing 155
Introduction to Agile Testing 155
Agile Testing Principles 156
Unit Testing 158
Acceptance Testing 160
Component Testing 162
System and Performance Testing 162
Summary: Agile Testing Strategy in a Nutshell 164
Chapter 14: Continuous Integration 169
What Is Continuous Integration? 169
Continuous Integration 171
The Three Steps to Continuous Integration 172
What Is Continuous Integration Success? 175
Chapter 15: Regular Reflection and Adaptation 179
Iteration Retrospective 180
Release Retrospective 184
Part III: Creating the Agile Enterprise189
Chapter 16: Intentional Architecture 195
What Is Software Architecture? 195
Agile and Architecture 197
On Refactoring and Systems of Scale 201
What Are You Building? 202
An Agile Architectural Approach for Enterprise Class Systems 203
Building Architectural Runway 204
Chapter 17: Lean Requirements at Scale: Vision, Roadmap, and Just-in-Time Elaboration 213
Overview: The Requirements Pyramid 213
What’s Different About Requirements in Agile? 217
A Scalable, Agile Requirements Approach: Vision, Roadmap, and Just-in-time Elaboration 222
Summary 235
Chapter 18: Systems of Systems and the Agile Release Train 237
An Agile Component Release Schedule 238
The Agile Release Train 242
Release Train Retrospective 247
Chapter 19: Managing Highly Distributed Development 249
At Scale, All Development Is Distributed Development 249
Case Study 1. Ping Identity: The Distributed Define/Build/Test Component Team 251
Case Study 2. BMC Software, Incorporated: An Agile Transformation in a Highly Distributed, Large-Scale Enterprise 255
Emphasizing Communications 261
Tooling Infrastructure for Enterprise Agility 265
Summary 269
Chapter 20: Impact on Customers and Operations 271
The Benefits of Agile Methods to Sales and Marketing 272
Impact on Product Marketing/Product Management 273
Smaller and More Frequent Releases 275
Optimizing the Agile Release Process 276
Real Challenges and Misconceptions Regarding Agility from Real Sales and Marketing Executives 284
Chapter 21: Changing the Organization 289
Overview 289
Why Does Agile Require Organizational Change? 290
Preparing for Scrum and Agility 295
Eliminating Impediments to Software Productivity 298
An Agile Model for Executive Management 299
Rolling Out Scrum/Agile in a Large Organization 304
Summary 309
Chapter 22: Measuring Business Performance 311
Agility Measures: The Key Difference 311
Measuring Team Performance 312
On Metrics, “Process Police,” and Team Self-Assessment 318
Scaling to Organizational Performance: A Balanced Scorecard Approach 319
Agile Metrics at Scale: Implementing a Flexible, Automated, and Meaningful BSC for the Enterprise 322
Conclusion: Agility Works at Scale 325
Bibliography 327
Index 331
商品描述(中文翻譯)
**描述**
「公司已經實施大型敏捷專案多年,但「敏捷僅適用於小型專案」的「污名」仍然是新手的常見障礙,也是敏捷批評者的口號。敏捷文獻中缺少的是一本關於如何以敏捷方式開發大型專案的具體、實用的書籍。Dean Leffingwell的書籍《Scaling Software Agility》完美地填補了這一空白。它提供了針對大型專案的實用指南,涵蓋架構、需求開發、多層次發佈規劃和團隊組織等問題。Leffingwell的書籍是大型專案和大型組織轉型為敏捷開發的必要指南。」
—Jim Highsmith,Cutter Consortium敏捷實踐總監,《Agile Project Management》作者
「在快速構建軟體和交付持久軟體之間,在對市場變化的超高反應能力和保持一定穩定性之間存在緊張關係。在他最新的作品《Scaling Software Agility》中,Dean Leffingwell展示了如何在這些力量之間實現務實的平衡。Leffingwell對問題的觀察、對解決方案的建議以及對最佳實踐的描述都來自於經驗:他親身經歷過,並看到了有效的方法。」
—Grady Booch,IBM Fellow
敏捷開發實踐雖然在某些圈子中仍具爭議,但其帶來的好處不容忽視:更快的上市時間、更好地響應不斷變化的客戶需求以及更高的質量。然而,敏捷實踐主要是針對小型團隊進行定義和推薦。在《Scaling Software Agility》中,Dean Leffingwell描述了如何將敏捷方法應用於企業級開發。
- 第一部分提供了最常見和有效的敏捷方法概述。
- 第二部分描述了七個本質上可擴展到企業級的敏捷最佳實踐。
- 第三部分描述了公司可以掌握的七個額外組織能力,以在企業規模上實現軟體敏捷性的全部好處。
這本書對於軟體開發人員、測試人員和質量保證人員、經理和團隊負責人,以及那些希望提高軟體開發過程的質量和生產力但面臨企業級開發挑戰的軟體組織高層來說,都是無價的。
**目錄**
前言 xvii
序言 xxi
致謝 xxvii
關於作者 xxix
第一部分:軟體敏捷概述 1
第一章:敏捷方法介紹 5
在軟體經濟中獲得競爭優勢 5
進入敏捷方法 6
大規模敏捷 7
方法概覽 8
敏捷採用的趨勢 10
軟體敏捷的商業好處 11
XP、Scrum和RUP簡介 13
總結 15
第二章:為什麼瀑布模型無法運作 17
模型的問題 19
模型的假設 20
通過敏捷方法進行糾正行動 26
第三章:XP的本質 29
什麼是XP? 29
XP有什麼爭議? 30
XP有什麼極端之處? 30
XP的基本信條 31
XP的價值觀、原則和實踐 33
XP的過程模型 38
方法的適用性 39
建議閱讀 40
第四章:Scrum的本質 41
什麼是Scrum? 41
Scrum中的角色 42
Scrum的哲學根源 42
Scrum的價值觀、原則和實踐 43
Scrum的關鍵實踐 44
Scrum的基本信條:經驗過程控制 45
Scrum的過程模型 46
關於Scrum和組織變革 48
方法的適用性 48
建議閱讀 49
第五章:RUP的本質 51
什麼是RUP? 51
RUP的主要特徵 51
RUP的根源 52
敏捷RUP變體 60
方法的適用性 61
建議閱讀 62
第六章:精益軟體、DSDM和FDD 63
精益軟體開發 63
動態系統開發方法 65
特徵驅動開發 70
第七章:敏捷的本質 75
我們用敏捷改變了什麼? 75
敏捷的心跳:在短時間內交付可運行的代碼 81
總結 85
第八章:擴展敏捷的挑戰 87
方法的明顯障礙 88
企業的障礙 90
總結 94
第二部分:七個可擴展的敏捷團隊實踐 95
第九章:定義/構建/測試組件團隊 101
什麼是定義/構建/測試組件團隊? 102
消除功能孤島 104
敏捷組件團隊的角色和責任 106
創建自組織、自管理的定義/構建/測試團隊 109
分散團隊 114
第十章:兩級規劃和跟蹤 115
通用敏捷框架 116
總結:兩級規劃 120
第十一章:掌握迭代 123
迭代:敏捷的心跳 123
標準的兩週迭代? 123
規劃和執行迭代 124
迭代規劃 125
迭代執行 129
迭代跟蹤和調整 132
迭代節奏日曆 135
第十二章:更小、更頻繁的發佈 139
小型發佈的好處 139
定義和安排發佈 141
發佈規劃 144
發佈跟蹤 147
發佈路線圖 149
大規模敏捷預覽:大型發佈規劃和跟蹤 150
第十三章:並行測試 155
敏捷測試介紹 155
敏捷測試原則 156
單元測試 158
驗收測試 160
組件測試 162
系統和性能測試 162
總結:敏捷測試策略概述 164
第十四章:持續整合 169
什麼是持續整合? 169
持續整合 171
持續整合的三個步驟 172
什麼是持續整合的成功? 175
第十五章:定期反思和調整 179
迭代回顧 180
發佈回顧 184
第三部分:創建敏捷企業 189
第十六章:有意識的架構 195
什麼是軟體架構? 195
敏捷與架構 197
關於重構和規模系統 201
你在建造什麼? 202
企業級系統的敏捷架構方法 203
建立架構跑道 204
第十七章:大規模精益需求:願景、路線圖和即時細化 213
概述:需求金字塔 213
敏捷中的需求有什麼不同? 217
可擴展的敏捷需求方法:願景、路線圖和即時細化 222