Continuous Integration Improving Software Quality and Reducing Risk

ISBN-10: 0321336380
ISBN-13: 9780321336385
Edition: 2007
List price: $59.99
30 day, 100% satisfaction guarantee

If an item you ordered from TextbookRush does not meet your expectations due to an error on our part, simply fill out a return request and then return it by mail within 30 days of ordering it for a full refund of item cost.

Learn more about our returns policy

Description: 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  More...

what's this?
Rush Rewards U
Members Receive:
coins
coins
You have reached 400 XP and carrot coins. That is the daily max!
You could win $10,000

Get an entry for every item you buy, rent, or sell.

Study Briefs

Limited time offer: Get the first one free! (?)

All the information you need in one place! Each Study Brief is a summary of one specific subject; facts, figures, and explanations to help you learn faster.

Add to cart
Study Briefs
History of Western Art Online content $4.95 $1.99
Add to cart
Study Briefs
History of World Philosophies Online content $4.95 $1.99
Add to cart
Study Briefs
American History Volume 1 Online content $4.95 $1.99
Add to cart
Study Briefs
History of Western Music Online content $4.95 $1.99

Customers also bought

Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading

Book details

List price: $59.99
Copyright year: 2007
Publisher: Addison Wesley Professional
Publication date: 6/29/2007
Binding: Paperback
Pages: 336
Size: 6.75" wide x 9.00" long x 0.75" tall
Weight: 1.386
Language: English

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 coversHow to make integration a " non-event" on your software development projectsHow to reduce the amount of repetitive processes you perform when building your softwarePractices and techniques for using CI effectively with your teamsReducing the risks of late defect discovery, low-quality software, lack of visibility, and lack of deployable softwareAssessments of different CI servers and related tools on the market The book' s companion Web site, www.integratebutton.com, provides updates and code examples.

Foreword
Foreword
Preface
About the Authors
About the Contributors
A Background on CI: Principles and Practices
Getting Started
Build Software at Every Change
Developer
Version Control Repository
CI Server
Build Script
Feedback Mechanism
Integration Build Machine
Features of CI
Source Code Compilation
Database Integration
Testing
Inspection
Deployment
Documentation and Feedback
Summary
Questions
Introducing Continuous Integration
A Day in the Life of CI
What Is the Value of CI?
Reduce Risks
Reduce Repetitive Processes
Generate Deployable Software
Enable Better Project Visibility
Establish Greater Product Confidence
What Prevents Teams from Using CI?
How Do I Get to "Continuous" Integration?
When and How Should a Project Implement CI?
The Evolution of Integration
How Does CI Complement Other Development Practices?
How Long Does CI Take to Set Up?
CI and You
Commit Code Frequently
Don't Commit Broken Code
Fix Broken Builds Immediately
Write Automated Developer Tests
All Tests and Inspections Must Pass
Run Private Builds
Avoid Getting Broken Code
Summary
Questions
Reducing Risks Using CI
Risk: Lack of Deployable Software
Scenario: "It Works on My Machine"
Scenario: Synching with the Database
Scenario: The Missing Click
Risk: Late Discovery of Defects
Scenario: Regression Testing
Scenario: Test Coverage
Risk: Lack of Project Visibility
Scenario: "Did You Get the Memo?"
Scenario: Inability to Visualize Software
Risk: Low-Quality Software
Scenario: Coding Standard Adherence
Scenario: Architectural Adherence
Scenario: Duplicate Code
Summary
Questions
Building Software at Every Change
Automate Builds
Perform Single Command Builds
Separate Build Scripts from Your IDE
Centralize Software Assets
Create a Consistent Directory Structure
Fail Builds Fast
Build for Any Environment
Build Types and Mechanisms
Build Types
Build Mechanisms
Triggering Builds
Use a Dedicated Integration Build Machine
Use a CI Server
Run Manual Integration Builds
Run Fast Builds
Gather Build Metrics
Analyze Build Metrics
Choose and Implement Improvements
Stage Builds
Reevaluate
How Will This Work for You?
Summary
Questions
Creating a Full-Featured CI System
Continuous Database Integration
Automate Database Integration
Creating Your Database
Manipulating Your Database
Creating a Build Database Orchestration Script
Use a Local Database Sandbox
Use a Version Control Repository to Share Database Assets
Continuous Database Integration
Give Developers the Capability to Modify the Database
The Team Focuses Together on Fixing Broken Builds
Make the DBA Part of the Development Team
Database Integration and the Integrate Button
Testing
Inspection
Deployment
Feedback and Documentation
Summary
Questions
Continuous Testing
Automate Unit Tests
Automate Component Tests
Automate System Tests
Automate Functional Tests
Categorize Developer Tests
Run Faster Tests First
Unit Tests
Component Tests
System Tests
Write Tests for Defects
Make Component Tests Repeatable
Limit Test Cases to One Assert
Summary
Questions
Continuous Inspection
What Is the Difference between Inspection and Testing?
How Often Should You Run Inspectors?
Code Metrics: A History
Reduce Code Complexity
Perform Design Reviews Continuously
Maintain Organizational Standards with Code Audits
Reduce Duplicate Code
Using PMD-CPD
Using Simian
Assess Code Coverage
Evaluate Code Quality Continuously
Coverage Frequency
Coverage and Performance
Summary
Questions
Continuous Deployment
Release Working Software Any Time, Any Place
Label a Repository's Assets
Produce a Clean Environment
Label Each Build
Run All Tests
Create Build Feedback Reports
Possess Capability to Roll Back Release
Summary
Questions
Continuous Feedback
All the Right Stuff
The Right Information
The Right People
The Right Time
The Right Way
Use Continuous Feedback Mechanisms
E-mail
SMS (Text Messages)
Ambient Orb and X10 Devices
Windows Taskbar
Sounds
Wide-Screen Monitors
Summary
Questions
Epilogue: The Future of CI
CI Resources
Continuous Integration Web Sites/Articles
CI Tools/Product Resources
Build Scripting Resources
Version Control Resources
Database Resources
Testing Resources
Automated Inspection Resources
Deployment Resources
Feedback Resources
Documentation Resources
Evaluating CI Tools
Considerations When Evaluating Tools
Functionality
Compatibility with Your Environment
Reliability
Longevity
Usability
Automated Build Tools
Build Scheduler Tools
Conclusion
Bibliography
Index

×
Free shipping on orders over $35*

*A minimum purchase of $35 is required. Shipping is provided via FedEx SmartPost® and FedEx Express Saver®. Average delivery time is 1 – 5 business days, but is not guaranteed in that timeframe. Also allow 1 - 2 days for processing. Free shipping is eligible only in the continental United States and excludes Hawaii, Alaska and Puerto Rico. FedEx service marks used by permission."Marketplace" orders are not eligible for free or discounted shipping.

Learn more about the TextbookRush Marketplace.

×