Home > Store > Software Development & Management > Agile

DevOps: A Software Architect's Perspective

Register your product to gain access to bonus material or receive a coupon.

DevOps: A Software Architect's Perspective

Best Value Purchase

Book + eBook Bundle

  • Your Price: $43.19
  • List Price: $71.98
  • Includes EPUB, MOBI, and PDF
  • About eBook Formats
  • This eBook includes the following formats, accessible from your Account page after purchase:

    ePub EPUB The open industry format known for its reflowable content and usability on supported mobile devices.

    MOBI MOBI The eBook format compatible with the Amazon Kindle and Amazon Kindle applications.

    Adobe Reader PDF The popular standard, used most often with the free Adobe® Reader® software.

    This eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.

More Purchase Options

Book

  • Your Price: $31.99
  • List Price: $39.99
  • Usually ships in 24 hours.

eBook (Watermarked)

  • Your Price: $25.59
  • List Price: $31.99
  • Includes EPUB, MOBI, and PDF
  • About eBook Formats
  • This eBook includes the following formats, accessible from your Account page after purchase:

    ePub EPUB The open industry format known for its reflowable content and usability on supported mobile devices.

    MOBI MOBI The eBook format compatible with the Amazon Kindle and Amazon Kindle applications.

    Adobe Reader PDF The popular standard, used most often with the free Adobe® Reader® software.

    This eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.

About

Features

  • Teaches students to:
  • Deploy DevOps more efficiently, avoid problems, and drive far more value
  • Design systems to be compatible with DevOps practices
  • Understand the tradeoffs implicit in using each key DevOps practice
  • Integrate DevOps with agile methods

Description

  • Copyright 2015
  • Dimensions: 6-1/4 X 9-1/4
  • Pages: 352
  • Edition: 1st
  • Book
  • ISBN-10: 0-13-404984-5
  • ISBN-13: 978-0-13-404984-7

The First Complete Guide to DevOps for Software Architects

DevOps promises to accelerate the release of new software features and improve monitoring of systems in production, but its crucial implications for software architects and architecture are often ignored.

In DevOps: A Software Architect’s Perspective, three leading architects address these issues head-on. The authors review decisions software architects must make in order to achieve DevOps’ goals and clarify how other DevOps participants are likely to impact the architect’s work. They also provide the organizational, technical, and operational context needed to deploy DevOps more efficiently, and review DevOps’ impact on each development phase. The authors address cross-cutting concerns that link multiple functions, offering practical insights into compliance, performance, reliability, repeatability, and security.

This guide demonstrates the authors’ ideas in action with three real-world case studies: datacenter replication for business continuity, management of a continuous deployment pipeline, and migration to a microservice architecture.

Comprehensive coverage includes

• Why DevOps can require major changes in both system architecture and IT roles

• How virtualization and the cloud can enable DevOps practices

• Integrating operations and its service lifecycle into DevOps

• Designing new systems to work well with DevOps practices

• Integrating DevOps with agile methods and TDD

• Handling failure detection, upgrade planning, and other key issues

• Managing consistency issues arising from DevOps’ independent deployment models

• Integrating security controls, roles, and audits into DevOps

• Preparing a business plan for DevOps adoption, rollout, and measurement

Extras

Related Article

What Software Architects Need to Know About DevOps

Author's Site

Please visit the author's site at reliableops.com.

Companion Site

Please visit the website associated with DevOps at www.reliableops.com.

Sample Content

Online Sample Chapter

DevOps: A Software Architect's Perspective of Overall Architecture

Sample Pages

Download the sample pages (includes Chapter 4 and Index)

Table of Contents

Preface xi

Previewing the Book xiii

Acknowledgments xv

Legend xvii

Part I: Background 1

Chapter 1: What Is DevOps? 3

1.1 Introduction 3

1.2 Why DevOps? 7

1.3 DevOps Perspective 11

1.4 DevOps and Agile 12

1.5 Team Structure 13

1.6 Coordination 17

1.7 Barriers 20

1.8 Summary 23

1.9 For Further Reading 24

Chapter 2: The Cloud as a Platform 27

2.1 Introduction 27

2.2 Features of the Cloud 29

2.3 DevOps Consequences of the Unique Cloud Features 41

2.4 Summary 44

2.5 For Further Reading 45

Chapter 3: Operations 47

3.1 Introduction 47

3.2 Operations Services 47

3.3 Service Operation Functions 57

3.4 Continual Service Improvement 58

3.5 Operations and DevOps 59

3.6 Summary 61

3.7 For Further Reading 61

Part II: The Deployment Pipeline 63

Chapter 4: Overall Architecture 65

4.1 Do DevOps Practices Require Architectural Change? 65

4.2 Overall Architecture Structure 66

4.3 Quality Discussion of Microservice Architecture 72

4.4 Amazon’s Rules for Teams 75

4.5 Microservice Adoption for Existing Systems 76

4.6 Summary 77

4.7 For Further Reading 78

Chapter 5: Building and Testing 79

5.1 Introduction 79

5.2 Moving a System Through the Deployment Pipeline 81

5.3 Crosscutting Aspects 84

5.4 Development and Pre-commit Testing 86

5.5 Build and Integration Testing 91

5.6 UAT/Staging/Performance Testing 95

5.7 Production 96

5.8 Incidents 98

5.9 Summary 98

5.10 For Further Reading 99

Chapter 6: Deployment 101

6.1 Introduction 101

6.2 Strategies for Managing a Deployment 102

6.3 Logical Consistency 105

6.4 Packaging 111

6.5 Deploying to Multiple Environments 114

6.6 Partial Deployment 117

6.7 Rollback 118

6.8 Tools 121

6.9 Summary 121

6.10 For Further Reading 122

Part III: Crosscutting Concerns 125

Chapter 7: Monitoring 127

7.1 Introduction 127

7.2 What to Monitor 129

7.3 How to Monitor 134

7.4 When to Change the Monitoring Configuration 139

7.5 Interpreting Monitoring Data 139

7.6 Challenges 143

7.7 Tools 147

7.8 Diagnosing an Anomaly from Monitoring Data–the Case of Platformer.com 148

7.9 Summary 152

7.10 For Further Reading 153

Chapter 8: Security and Security Audits 155

8.1 What Is Security? 156

8.2 Threats 157

8.3 Resources to Be Protected 159

8.4 Security Roles and Activities 162

8.5 Identity Management 165

8.6 Access Control 169

8.7 Detection, Auditing, and Denial of Service 172

8.8 Development 173

8.9 Auditors 174

8.10 Application Design Considerations 175

8.11 Deployment Pipeline Design Considerations 176

8.12 Summary 177

8.13 For Further Reading 178

Chapter 9: Other Ilities 181

9.1 Introduction 181

9.2 Repeatability 183

9.3 Performance 186

9.4 Reliability 188

9.5 Recoverability 190

9.6 Interoperability 191

9.7 Testability 192

9.8 Modifiability 194

9.9 Summary 195

9.10 For Further Reading 196

Chapter 10: Business Considerations 197

10.1 Introduction 197

10.2 Business Case 197

10.3 Measurements and Compliance to DevOps Practices 206

10.4 Points of Interaction Between Dev and Ops 209

10.5 Summary 211

10.6 For Further Reading 211

Part IV: Case Studies 213

Chapter 11: Supporting Multiple Datacenters 215

11.1 Introduction 215

11.2 Current State 216

11.3 Business Logic and Web Tiers 216

11.4 Database Tier 220

11.5 Other Infrastructure Tools 223

11.6 Datacenter Switch 225

11.7 Testing 232

11.8 Summary 233

11.9 For Further Reading 234

Chapter 12: Implementing a Continuous Deployment Pipeline for Enterprises 237

12.1 Introduction 237

12.2 Organizational Context 238

12.3 The Continuous Deployment Pipeline 240

12.4 Baking Security into the Foundations of the CD Pipeline 257

12.5 Advanced Concepts 259

12.6 Summary 261

12.7 For Further Reading 262

Chapter 13: Migrating to Microservices 263

13.1 Introduction to Atlassian 263

13.2 Building a Platform for Deploying Microservices 265

13.3 BlobStore: A Microservice Example 268

13.4 Development Process 273

13.5 Evolving BlobStore 279

13.6 Summary 284

13.7 For Further Reading 284

Part V: Moving into the Future 285

Chapter 14: Operations as a Process 287

14.1 Introduction 287

14.2 Motivation and Overview 288

14.3 Offline Activities 289

14.4 Online Activities 294

14.5 Error Diagnosis 296

14.6 Monitoring 296

14.7 Summary 298

14.8 For Further Reading 298

Chapter 15: The Future of DevOps 299

15.1 Introduction 299

15.2 Organizational Issues 300

15.3 Process Issues 302

15.4 Technology Issues 305

15.5 What About Error Reporting and Repair? 309

15.6 Final Words 310

15.7 For Further Reading 310

References 311

About the Authors 315

Index 317

Updates

Submit Errata

More Information

Unlimited one-month access with your purchase
Free Safari Membership