دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش: Tenth printing نویسندگان: Farley. David, Humble. Jez سری: The Addison-Wesley Signature Series; A Martin Fowler Signature Book ISBN (شابک) : 9780321601919, 0321601912 ناشر: Addison-Wesley Professional سال نشر: 2015;2010 تعداد صفحات: 0 زبان: English فرمت فایل : EPUB (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) حجم فایل: 5 مگابایت
کلمات کلیدی مربوط به کتاب تحویل مداوم: انتشار نرم افزار قابل اعتماد از طریق اتوماسیون ساخت، آزمایش و استقرار): اتوماسیون، نرم افزار کامپیوتری / توسعه، نرم افزار کامپیوتری / قابلیت اطمینان، نرم افزار کامپیوتری / تست، نرم افزار، تست، توزیع
در صورت تبدیل فایل کتاب Continuous Delivery: Reliable Software Releases Through Build, Test, and Deployment Automation ) به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب تحویل مداوم: انتشار نرم افزار قابل اعتماد از طریق اتوماسیون ساخت، آزمایش و استقرار) نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
Winner of the 2011 Jolt Excellence Award!
Getting software released to users is often a painful, risky, and time-consuming process.
This groundbreaking new book sets out the principles and technical practices that enable
rapid, incremental delivery of high quality, valuable new functionality to users. Through
automation of the build, deployment, and testing process, and improved collaboration between
developers, testers, and operations, delivery teams can get changes released in a matter of hours
sometimes even minutesno matter what the size of a project or the complexity of its code base.
Jez Humble and David Farley begin by presenting the foundations of a rapid, reliable, low-risk
delivery process. Next, they introduce the deployment pipeline, an automated process for
managing all changes, from check-in to release. Finally, they discuss the ecosystem needed to
support continuous delivery, from infrastructure, data and configuration management to governance.
The authors introduce state-of-the-art techniques, including automated infrastructure management
and data migration, and the use of virtualization. For each, they review key issues, identify best
practices, and demonstrate how to mitigate risks. Coverage includes
Automating all facets of building, integrating, testing, and deploying software
Implementing deployment pipelines at team and organizational levels
Improving collaboration between developers, testers, and operations
Developing features incrementally on large and distributed teams
Implementing an effective configuration management strategy
Automating acceptance testing, from analysis to implementation
Testing capacity and other non-functional requirements
Implementing continuous deployment and zero-downtime releases
Managing infrastructure, data, components and dependencies
Navigating risk management, compliance, and auditing
Whether youre a developer, systems administrator, tester, or manager, this book will help your
organization move from idea to release faster than everso you can deliver value to your business
rapidly and reliably.
**
If you need to deploy software more frequently, this book is for you. Applying it will help you reduce risk, eliminate tedious work, and increase confidence. Ill be using the principles and practices here on all my current projects.
Kent Beck, Three Rivers Institute
Whether or not your software development team already understands that continuous integration is every bit as necessary as source code control, this is required reading. This book is unique in tying the whole development and delivery process together, providing a philosophy and principles, not just techniques and tools. The authors make topics from test automation to automated deployment accessible to a wide audience. Everyone on a development team, including programmers, testers, system administrators, DBAs, and managers, needs to read this book.
Lisa Crispin, co-author of Agile Testing
For many organizations Continuous Delivery isnt just a deployment methodology, its critical to doing business. This book shows you how to make Continuous Delivery an effective reality in your environment.
James Turnbull, author of Pulling Strings with Puppet
A clear, precise, well-written book that gives readers an idea of what to expect for the release process. The authors give a step-by-step account of expectations and hurdles for software deployment. This book is a necessity for any software engineers library.
Leyna Cotran, Institute for Software Research, University of California, Irvine
Humble and Farley illustrates what makes fast-growing web applications successful. Continuous deployment and delivery has gone from controversial to commonplace and this book covers it excellently. Its truly the intersection of development and operations on many levels, and these guys nailed it.
John Allspaw, VP Technical Operations, Etsy.com and author of
The Art of Capacity Planning and Web Operations
If you are in the business of building and delivering a software-based service, you would be well served to internalize the concepts that are so clearly explained in Continuous Delivery. But going beyond just the concepts, Humble and Farley provide an excellent playbook for rapidly and reliably delivering change.
Damon Edwards, President of DTO Solutions and co-editor of dev2ops.org
I believe that anyone who deals with software releases would be able to pick up this book, go to any chapter and quickly get valuable information; or read the book from cover to cover and be able to streamline their build and deploy process in a way that makes sense for their organization. In my opinion, this is an essential handbook for building, deploying, testing, and releasing software.
Sarah Edrie, Director of Quality Engineering, Harvard Business School
Continuous Delivery is the logical next step after Continuous Integration for any modern software team. This book takes the admittedly ambitous goal of constantly delivering valuable software to customers, and makes it achievable through a set of clear, effective principles and practices.
Rob Sanheim, Principal at Relevance, Inc.
Getting software released to users is often a painful, risky, and time-consuming process. This groundbreaking new book sets out the principles and technical practices that enable rapid, incremental delivery of high quality, valuable new functionality to users. Through automation of the build, deployment, and testing process, and improved collaboration between developers, testers, and operations, delivery teams can get changes released in a matter of hours- sometimes even minutes-no matter what the size of a project or the complexity of its code base. Jez Humble and David Farley begin by presenting the foundations of a rapid, reliable, low-risk delivery process. Next, they introduce the "deployment pipeline," an automated process for managing all changes, from check-in to release. Finally, they discuss the "ecosystem" needed to support continuous delivery, from infrastructure, data and configuration management to governance. The authors introduce state-of-the-art techniques, including automated infrastructure management and data migration, and the use of virtualization. For each, they review key issues, identify best practices, and demonstrate how to mitigate risks. Coverage includes - Automating all facets of building, integrating, testing, and deploying software - Implementing deployment pipelines at team and organizational levels - Improving collaboration between developers, testers, and operations - Developing features incrementally on large and distributed teams - Implementing an effective configuration management strategy - Automating acceptance testing, from analysis to implementation - Testing capacity and other non-functional requirements - Implementing continuous deployment and zero-downtime releases - Managing infrastructure, data, components and dependencies - Navigating risk management, compliance, and auditing Whether you're a developer, systems administrator, tester, or manager, this book will help your organization move from idea to release faster than ever-so you can deliver value to your business rapidly and reliably.
Contents......Page 9
Foreword......Page 21
Preface......Page 23
Acknowledgments......Page 31
About the Authors......Page 33
Part I: Foundations......Page 35
Introduction......Page 37
Some Common Release Antipatterns......Page 38
How Do We Achieve Our Goal?......Page 45
What Are the Benefits?......Page 51
The Release Candidate......Page 56
Principles of Software Delivery......Page 58
Summary......Page 63
Introduction......Page 65
Using Version Control......Page 66
Managing Dependencies......Page 72
Managing Software Configuration......Page 73
Managing Your Environments......Page 83
Summary......Page 88
Introduction......Page 89
Implementing Continuous Integration......Page 90
Prerequisites for Continuous Integration......Page 93
Using Continuous Integration Software......Page 97
Essential Practices......Page 100
Suggested Practices......Page 105
Distributed Teams......Page 109
Distributed Version Control Systems......Page 113
Summary......Page 116
Introduction......Page 117
Types of Tests......Page 118
Real-Life Situations and Strategies......Page 126
Process......Page 133
Summary......Page 135
Part II: The Deployment Pipeline......Page 137
Introduction......Page 139
What Is a Deployment Pipeline?......Page 140
Deployment Pipeline Practices......Page 147
The Commit Stage......Page 154
The Automated Acceptance Test Gate......Page 156
Subsequent Test Stages......Page 160
Preparing to Release......Page 162
Implementing a Deployment Pipeline......Page 167
Metrics......Page 171
Summary......Page 174
Introduction......Page 177
An Overview of Build Tools......Page 178
Principles and Practices of Build and Deployment Scripting......Page 186
Project Structure for Applications That Target the JVM......Page 191
Deployment Scripting......Page 194
Tips and Tricks......Page 198
Summary......Page 202
Introduction......Page 203
Commit Stage Principles and Practices......Page 204
The Results of the Commit Stage......Page 208
Commit Test Suite Principles and Practices......Page 211
Summary......Page 219
Introduction......Page 221
Why Is Automated Acceptance Testing Essential?......Page 222
Creating Acceptance Tests......Page 227
The Application Driver Layer......Page 232
Implementing Acceptance Tests......Page 238
The Acceptance Test Stage......Page 247
Acceptance Test Performance......Page 252
Summary......Page 256
Introduction......Page 259
Managing Nonfunctional Requirements......Page 260
Programming for Capacity......Page 262
Measuring Capacity......Page 265
The Capacity-Testing Environment......Page 268
Automating Capacity Testing......Page 272
Adding Capacity Tests to the Deployment Pipeline......Page 278
Additional Benefits of a Capacity Test System......Page 281
Summary......Page 282
Introduction......Page 283
Creating a Release Strategy......Page 284
Deploying and Promoting Your Application......Page 287
Rolling Back Deployments and Zero-Downtime Releases......Page 293
Emergency Fixes......Page 299
Continuous Deployment......Page 300
Tips and Tricks......Page 304
Summary......Page 307
Part III: The Delivery Ecosystem......Page 309
Introduction......Page 311
Understanding the Needs of the Operations Team......Page 313
Modeling and Managing Infrastructure......Page 317
Managing Server Provisioning and Configuration......Page 322
Managing the Configuration of Middleware......Page 329
Managing Infrastructure Services......Page 334
Virtualization......Page 337
Cloud Computing......Page 346
Monitoring Infrastructure and Applications......Page 351
Summary......Page 357
Introduction......Page 359
Database Scripting......Page 360
Incremental Change......Page 361
Rolling Back Databases and Zero-Downtime Releases......Page 365
Managing Test Data......Page 368
Data Management and the Deployment Pipeline......Page 372
Summary......Page 377
Introduction......Page 379
Keeping Your Application Releasable......Page 380
Dependencies......Page 385
Components......Page 390
Managing Dependency Graphs......Page 397
Managing Binaries......Page 407
Managing Dependencies with Maven......Page 409
Summary......Page 413
Introduction......Page 415
A Brief History of Revision Control......Page 416
Branching and Merging......Page 422
Distributed Version Control Systems......Page 427
Stream-Based Version Control Systems......Page 433
Develop on Mainline......Page 439
Branch for Release......Page 442
Branch by Feature......Page 444
Branch by Team......Page 446
Summary......Page 449
Introduction......Page 451
A Maturity Model for Configuration and Release Management......Page 453
Project Lifecycle......Page 455
A Risk Management Process......Page 463
Common Delivery Problems—Their Symptoms and Causes......Page 466
Compliance and Auditing......Page 470
Summary......Page 476
Bibliography......Page 477
A......Page 479
B......Page 481
C......Page 482
D......Page 484
E......Page 486
G......Page 487
I......Page 488
L......Page 489
N......Page 490
P......Page 491
R......Page 492
S......Page 493
T......Page 495
V......Page 496
Z......Page 497