Continuous Integration: Technical Practices

In software engineering, continuous integration (CI) implements continuous processes of applying quality control — small pieces of effort, applied frequently. Continuous integration aims to improve the quality of software, and to reduce the time taken to deliver it, by replacing the traditional practice of applying quality control after completing all development.

– Source: Wikipedia

Build Software At Every Change

  • Automate builds
  • Separate build scripts from IDE
  • Centralize software assets
  • Use consistent directory structure
  • Use a dedicated build machine
  • Use a CI server
  • Run integration builds
  • Stage builds

Continuous Database Integration

  • Automate database integration
  • Use a local database sandbox
  • Use version control for db assets
  • Give developers access to modify db
  • Make DBA part of dev team

Continuous Inspection

  • Reduce code complexity
  • Perform design reviews continuously
  • Maintain code standards with code audits
  • Reduce duplicate code
  • Assess code coverage

Continuous Testing

  • Automate tests: unit, component, functional
  • Run faster tests first
  • Write test for defects
  • Make component tests repeatable

Continuous Deployment

  • Release working software, any time
  • Produce a clean environment
  • Label each build
  • Run all tests
  • Create feedback reports
  • Possess capability to roll back release

Book Recommendation

If you are interested in continuous integration, then I would highly recommend the book.

Did you like my blog post?

Signup now and receive an email when I publish new luv2code content.

I will never give away, trade or sell your email address. You can unsubscribe at any time.

Share

2 Comments

  1. Comments  Nikhildas   |  Sunday, 28 May 2017 at 3:06 am

    Hi Chad,

    May I know what is the book name?

    Thanks
    Nikhildas

  2. Comments  Chad Darby   |  Sunday, 28 May 2017 at 8:46 am

    Hi Nikhildas,

    Here’s the book title:

    Continuous Integration: Improving Software Quality and Reducing Risk 1st Edition
    http://amzn.to/2rLiOsZ

Leave a Reply