Continuous Integration: Improving Software Quality & Reducing Risk

(häftad)

Improving Software Quality and Reducing Risk

av Paul Duvall, Steve Matyas, Andrew Glover

Bloggar      
Format:
Häftad (paperback)
Utgiven:
2007-07-01
Språk:
Engelska

For any software developer who has spent days in integration hell, cobbling together myriad software components, Continuous Integration: Improving Software Quality and Reducing Risk illustrates how to transform integration from a necessary evil into an everyday part of the development process. The key, as the authors show, is to integrate regularly and often using continuous integration (CI) practices and techniques.

 

The authors first examine the concept of CI and its practices from the ground up and then move on to explore other effective processes performed by CI systems, such as database integration, testing, inspection, deployment, and feedback. Through more than forty CI-related practices using application examples in different languages, readers learn that CI leads to more rapid software development, produces deployable software at every step in the development lifecycle, and reduces the time between defect introduction and detection, saving time and lowering costs. With successful implementation of CI, developers reduce risks and repetitive manual processes, and teams receive better project visibility.

 

The book covers

  • How to make integration a non-event on your software development projects
  • How to reduce the amount of repetitive processes you perform when building your software
  • Practices and techniques for using CI effectively with your teams
  • Reducing the risks of late defect discovery, low-quality software, lack of visibility, and lack of deployable software
  • Assessments of different CI servers and related tools on the market

The books companion Web site, www.integratebutton.com , provides updates and code examples.

 

Passar bra ihop

Continuous Integration: Improving Software Quality & Reducing Risk + Continuous Delivery: A Handbook for Building, Deploying, Testing and Releasing Software
De som köpt den här boken har ofta också köpt Continuous Delivery: A Handbook for Building, Deploying, Testing and Rel... (inbunden) av Jez Humble, David Farley
Pris för båda:
572:-Köp

Fler böcker av författarna

Groovy in Action (häftad)
Groovy im Einsatz (häftad)
Java Testing Patterns (häftad)

Groovy in Action

Dierk Koenig, Andrew Glover, Paul King, Guillaume Laforge, Jon Skeet (häftad)

Groovy im Einsatz

Dierk König, Andrew Glover, Paul King, Guillaume Laforge, Jon Skeet (inbunden)

Java Testing Patterns

J Thomas, Matthew Young, Kyle Brown, Andrew Glover (häftad)
282:- Köp
454:- Köp
290:- Köp

Kundrecensioner

Bli först med att recensera och betygsätt boken Continuous Integration: Improving Software Quality & Reducing Risk - du kan vinna 200 kr varje månad i tävlingen "Månadens recension".

Bloggat om Continuous Integration: Improving Software Quality &...

Övrig information

PAUL DUVALL has spent years implementing CI systems and has spoken on Continuous Integration at the Better Software Expo and will continue to speak at other conferences on this topic. STEPHEN M. MATYAS III is a senior software engineer at Number Six Software. He is a Sun Certified Java Programmer and Web Component Developer, and an IBM Rational Certified Consultant. ANDREW GLOVER is the President of Stelligent Incorporated and an author for multiple online publications including IBM's developerWorks and Oreilly's ONJava and ONLamp portals.

Innehållsförteckning

Foreword by Martin Fowler xiiiForeword by Paul Julius xv

Preface xixAbout the Authors xxxiAbout the Contributors xxxiiiPart I: A Background on CI: Principles and Practices 1Chapter 1: Getting Started 3

Build Software at Every Change 4

Features of CI 12

Summary 20

Questions 20

Chapter 2: Introducing Continuous Integration 23

A Day in the Life of CI 25

What Is the Value of CI? 29

What Prevents Teams from Using CI? 32

How Do I Get to Continuous Integration? 33

When and How Should a Project Implement CI? 35

The Evolution of Integration 36

How Does CI Complement Other Development Practices? 37

How Long Does CI Take to Set Up? 38

CI and You 39

Commit Code Frequently 39

Don't Commit Broken Code 41

Fix Broken Builds Immediately 41

Write Automated Developer Tests 41

All Tests and Inspections Must Pass 42

Run Private Builds 42

Avoid Getting Broken Code 43

Summary 44

Questions 44

Chapter 3: Reducing Risks Using CI 47

Risk: Lack of Deployable Software 49

Risk: Late Discovery of Defects 53

Risk: Lack of Project Visibility 55

Risk: Low-Quality Software 57

Summary 62

Questions 62

Chapter 4: Building Software at Every Change 65

Automate Builds 67

Perform Single Command Builds 69

Separate Build Scripts from Your IDE 73

Centralize Software Assets 74

Create a Consistent Directory Structure 75

Fail Builds Fast 76

Build for Any Environment 77

Build Types and Mechanisms 78

Use a Dedicated Integration Build Machine 81

Use a CI Server 85

Run Manual Integration Builds 86

Run Fast Builds 87

Stage Builds 92

How Will This Work for You? 96

Summary 101

Questions 102

Part II: Creating a Full-Featured CI System 105Chapter 5: Continuous Database Integration 107

Automate Database Integration 110

Use a Local Database Sandbox 117

Use a Version Control Repository to Share Database Assets 119

Continuous Database Integration 121

Give Developers the Capability to Modify the Database 123

The Team Focuses Together on Fixing Broken Builds 124

Make the DBA Part of the Development Team 124

Database Integration and the Integrate Button 125

Summary 126

Questions 128

Chapter 6: Continuous Testing 129

Automate Unit Tests 132

Automate Component Tests 134

Automate System Tests 136

Automate Functional Tests 137

Categorize Developer Tests 138

Run Faster Tests First 141

Write Tests for Defects 143

Make Component Tests Repeatable 148

Limit Test Cases to One Assert 156

Summary 158

Questions 159

Chapter 7: Continuous Inspection 161

What Is the Difference between Inspection and Testing? 164

How Often Should You Run Inspectors? 165

Code Metrics: A History 166

...

De som köpt "Continuous Integration: Improving Software Quality & Reducing Risk" har även köpt:

Test Driven Development By Example (häftad)

Test Driven Development By Example

Kent Beck (häftad)
236:-
Bridging The Communication Gap (häftad)

Bridging The Communication Gap

Gojko Adzic (häftad)
271:-
Continuous Integration: Improving Software Quality & Reducing Risk (häftad)

Fler böcker inom

  • Titel: Continuous Integration: Improving Software Quality & Reducing Risk
  • ISBN: 9780321336385
  • Förlag: ADDISON-WESLEY
  • Utgivningsland: USA
  • Utgivningsort: Boston
  • Medarbetare: Matyas, Steve / Glover, Andrew
  • Illustrationer: illustrations
  • Upplaga: 1
  • Antal sidor: 283
  • Vikt: 640 g
  • Höjd: 233 mm
  • Antal komponenter: 1
  • Format: Häftad (paperback)